SHACL Shapes
https://meta.linked.archi/leanix/shapes#
SHACL shapes for validating SAP LeanIX Meta Model fact sheet data. Covers both published LeanIX ontologies — v4 (lmm:) and v3 (lmm3:) — because both are live namespaces rooted at FactSheet. Two kinds of rule: the fact sheet naming policy, which applies to both versions, and the value-set and cardinality rules for the v4 fact sheet attributes, which are where DD-23 is actually enforced — the ontology deliberately does not close those vocabularies in OWL. This is not an official SAP document.
| Property | Constraint | Value | Severity | Message |
|---|---|---|---|---|
source |
class | Objective | Violation | |
target |
class | BusinessCapability | Violation |
| Property | Constraint | Value | Severity | Message |
|---|---|---|---|---|
source |
class | ITComponent | Violation | |
target |
class | TechCategory | Violation |
| Property | Constraint | Value | Severity | Message |
|---|---|---|---|---|
source |
class | BusinessContext | Violation | |
target |
class | BusinessCapability | Violation |
| Property | Constraint | Value | Severity | Message |
|---|---|---|---|---|
source |
class | Application | Violation | |
target |
class | BusinessContext | Violation |
| Property | Constraint | Value | Severity | Message |
|---|---|---|---|---|
target |
class | DataObject | Violation | |
source |
sh:or class | Application | Interface | Violation | A lmm:DataUsage must run from an Application or an Interface. |
| Property | Constraint | Value | Severity | Message |
|---|---|---|---|---|
source |
class | Objective | Violation | |
target |
class | Initiative | Violation |
| Property | Constraint | Value | Severity | Message |
|---|---|---|---|---|
source |
class | FactSheet | Violation | |
target |
class | FactSheet | Violation |
| Property | Constraint | Value | Severity | Message |
|---|---|---|---|---|
source |
class | Initiative | Violation | |
target |
sh:or class | Application | Platform | Violation | A lmm:Impact must run to an Application or a Platform. |
| Property | Constraint | Value | Severity | Message |
|---|---|---|---|---|
source |
class | Application | Violation | |
target |
class | Interface | Violation |
| Property | Constraint | Value | Severity | Message |
|---|---|---|---|---|
source |
class | Application | Violation | |
target |
class | Interface | Violation |
| Property | Constraint | Value | Severity | Message |
|---|---|---|---|---|
atLifecycleStage |
in | 45b8cbb517f68db3 |
Violation | |
atLifecycleStage |
maxCount | 1 |
Violation | |
completion |
datatype | decimal | Violation | |
completion |
maxCount | 1 |
Violation | |
factSheetStatus |
in | 45b8cbb517f68db8 |
Violation | |
factSheetStatus |
maxCount | 1 |
Violation |
| Property | Constraint | Value | Severity | Message |
|---|---|---|---|---|
prefLabel |
datatype | langString | Violation | |
prefLabel |
datatype | langString | Violation | |
prefLabel |
minCount | 1 |
Violation | |
prefLabel |
minCount | 1 |
Violation |
| Property | Constraint | Value | Severity | Message |
|---|---|---|---|---|
atLifecycleStage |
in | 45b8cbb517f68dad |
Violation | |
atLifecycleStage |
maxCount | 1 |
Violation | |
atLifecycleStage |
minCount | 1 |
Violation | |
phaseStart |
datatype | date | Violation | |
phaseStart |
maxCount | 1 |
Violation | |
phaseStart |
minCount | 1 |
Violation |
| Property | Constraint | Value | Severity | Message |
|---|---|---|---|---|
subscriber |
class | Stakeholder | Violation | |
subscriber |
maxCount | 1 |
Violation | |
subscriberEmail |
datatype | string | Violation | |
subscriberEmail |
maxCount | 1 |
Violation | |
subscriptionRole |
datatype | string | Violation | |
subscriptionType |
in | 45b8cbb517f68da6 |
Violation | |
subscriptionType |
maxCount | 1 |
Violation |
| Property | Constraint | Value | Severity | Message |
|---|---|---|---|---|
tagGroup |
datatype | string | Violation | |
tagGroup |
maxCount | 1 |
Violation | |
tagName |
datatype | string | Violation | |
tagName |
maxCount | 1 |
Violation | |
tagName |
minCount | 1 |
Violation |
| Property | Constraint | Value | Severity | Message |
|---|---|---|---|---|
source |
class | Organization | Violation | |
target |
class | Application | Violation |
| Property | Constraint | Value | Severity | Message |
|---|---|---|---|---|
target |
class | Platform | Violation | |
source |
sh:or class | Application | BusinessCapability | ITComponent | Violation | A lmm:PlatformMembership must run from an Application, a BusinessCapability or an ITComponent. |
| Property | Constraint | Value | Severity | Message |
|---|---|---|---|---|
source |
class | ITComponent | Violation | |
target |
class | Provider | Violation |
| Property | Constraint | Value | Severity | Message |
|---|---|---|---|---|
source |
class | Application | Violation | |
target |
class | ITComponent | Violation |
| Property | Constraint | Value | Severity | Message |
|---|---|---|---|---|
source |
class | Application | Violation | |
target |
class | BusinessCapability | Violation |
| Property | Constraint | Value | Severity | Message |
|---|---|---|---|---|
source |
class | System | Violation | |
target |
sh:or class | Application | ITComponent | Violation | A lmm:SystemComposition must run to an Application or an ITComponent. |