Relationships
Node classes are the vertices of the Atlas graph. These object properties are the edges. Each has a typed domain and range — Atlas’s SHACL shapes enforce them, so a fact that violates a domain or range fails ingestion before it lands.
The diagram below is a single plan’s traversal through the graph. Every edge labeled on the diagram appears in the tables underneath; pick any row and trace the corresponding edge here.
Artifact and document edges
Section titled “Artifact and document edges”Edges that tie SAP artifacts, their documentation, and their context together.
| Edge | Domain | Range | Meaning |
|---|---|---|---|
atlas:hasSection | atlas:Document | atlas:DocumentSection | A document is composed of sections. |
atlas:belongsToModule | atlas:SAPArtifact | atlas:SAPModule | An artifact lives in a functional module (FI, MM, SD). |
atlas:hasVersionScope | atlas:SAPArtifact | atlas:VersionScope | An artifact is scoped to a product + release. |
atlas:references | atlas:Document | atlas:SAPArtifact | A document mentions an artifact. |
atlas:supportedByStatement | (any) | atlas:DocumentSection | Links any derived claim back to the exact document section that supports it. The evidence-trail substrate. |
Supersession edges
Section titled “Supersession edges”The supersedes / replacedBy pair models “X replaces Y” as an inverse relationship, so queries can traverse in either direction.
| Edge | Domain | Range | Inverse of |
|---|---|---|---|
atlas:supersedes | atlas:SAPArtifact | atlas:SAPArtifact | — |
atlas:replacedBy | atlas:SAPArtifact | atlas:SAPArtifact | atlas:supersedes |
Guidance edges
Section titled “Guidance edges”How derived guidance points at artifacts and the documents that justify it.
| Edge | Domain | Range | Meaning |
|---|---|---|---|
atlas:guidesFrom | atlas:Guidance | atlas:SAPArtifact | The source side of a guidance path (the thing being migrated away from). |
atlas:guidesTo | atlas:Guidance | atlas:SAPArtifact | The target side (the thing being migrated to). |
atlas:citesDocument | atlas:Guidance | atlas:Document | The document that backs a piece of guidance. |
Version-scope edges
Section titled “Version-scope edges”How version-scope nodes bind to products and releases.
| Edge | Domain | Range | Meaning |
|---|---|---|---|
atlas:validForProduct | atlas:VersionScope | atlas:SAPProduct | This scope applies to this product. |
atlas:validForRelease | atlas:VersionScope | atlas:SAPRelease | This scope applies to this release. |
Plan edges
Section titled “Plan edges”The dependency graph Atlas emits for a task is a set of plan steps linked by these edges.
| Edge | Domain | Range | Meaning |
|---|---|---|---|
atlas:hasStep | atlas:Plan | atlas:PlanStep | A plan contains plan steps. |
atlas:dependsOnStep | atlas:PlanStep | atlas:PlanStep | A step requires another step to complete first. |
atlas:involvesArtifact | atlas:PlanStep | atlas:SAPArtifact | A step operates on an SAP artifact. |
atlas:basedOnTemplate | atlas:Plan | atlas:PlanTemplate | A plan was instantiated from a template. |
Case and bundle edges
Section titled “Case and bundle edges”How engineering cases relate to each other, to the bundles Atlas emits, and to the governance signals that can block them.
| Edge | Domain | Range | Meaning |
|---|---|---|---|
atlas:recommendsPattern | atlas:Recommendation | atlas:Pattern | A recommendation endorses a modernization pattern. |
atlas:generatedFrom | atlas:BundleArtifact | atlas:EngineeringCase | A bundle is the output of a case. |
atlas:similarToCase | atlas:EngineeringCase | atlas:EngineeringCase | Links to prior similar cases — drives calibration. |
atlas:blockedBy | atlas:EngineeringCase | atlas:RiskSignal | A risk is gating a case. |
atlas:usesReleasedApi | atlas:BundleArtifact | atlas:ReleasedAPI | A bundle depends on a released SAP API. |
atlas:needsWrapper | atlas:BundleArtifact | atlas:WrapperRequirement | A bundle requires an adapter Atlas has identified. |
Estimate edges
Section titled “Estimate edges”How forecasts link to the cases they cover and to observed outcomes.
| Edge | Domain | Range | Meaning |
|---|---|---|---|
atlas:estimatedBy | atlas:EngineeringCase | atlas:EstimateSnapshot | A case has an estimate snapshot. |
atlas:calibratedAgainst | atlas:EstimateSnapshot | atlas:DeliveryOutcome | An estimate was calibrated against an observed outcome. |
Governance edges
Section titled “Governance edges”| Edge | Domain | Range | Meaning |
|---|---|---|---|
atlas:resolvedBy | atlas:RiskSignal | atlas:MigrationDecision | A risk is cleared by a recorded decision. |
SAP source-intelligence edges (sap: prefix)
Section titled “SAP source-intelligence edges (sap: prefix)”The detailed CDS / OData sub-graph. These are the edges Atlas’s planner walks when picking a binding for a generated view.
| Edge | Domain | Range | Meaning |
|---|---|---|---|
sap:hasField | sap:CDSView | sap:CDSField | A view has a field. |
sap:hasKeyField | sap:CDSView | sap:CDSField | A field is part of the view’s semantic key. |
sap:hasMeasureField | sap:CDSView | sap:CDSField | A field is a measure (only on analytical cubes). |
sap:hasCurrencyField | sap:CDSView | sap:CDSField | A field carries currency semantics. |
sap:hasAssociation | sap:CDSView | sap:CDSAssociation | A view declares an association. |
sap:targetsView | sap:CDSAssociation | sap:CDSView | An association points at its target view. |
sap:hasReleaseContract | sap:CDSView | sap:ReleaseContract | A view is bound to a C0 / C1 / C2 contract. |
sap:exposedByService | sap:CDSView | sap:ODataService | A view is exposed via an OData service. |
sap:mapsToEntitySet | sap:CDSView | sap:EntitySet | A view backs a specific entity set. |
sap:observedBy | sap:CDSView | sap:TenantObservation | Confirmed to exist in a customer tenant. |
sap:supersededByView | sap:CDSView | sap:CDSView | This view has a successor — the planner prefers the successor. |
sap:contradicts | (any) | (any) | Flags a fact that conflicts with another — raised by the validator. |
The provenance edge
Section titled “The provenance edge”The single most-traversed edge in the whole graph. Every instance Atlas writes has at least one of these.
?claim atlas:supportedByStatement ?section .?section atlas:sourceURL ?url .?section atlas:fetchedAt ?ts .When a reviewer opens atlas evidence, the printed output is the traversal across that edge, plus the document properties the section is attached to.