SMART Base
0.2.0 - ci-build

This page is part of the SMART Base (v0.2.0: Releases Draft) based on FHIR (HL7® FHIR® Standard) R4. This is the current published version. For a full list of available versions, see the Directory of published versions

Resource Profile: SMART Guidelines GraphDefinition

Official URL: http://smart.who.int/base/StructureDefinition/SGGraphDefinition Version: 0.2.0
Draft as of 2025-04-02 Computable Name: SGGraphDefinition

SMART Guidelines Transaction Definition

Usage:

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

NameFlagsCard.TypeDescription & Constraintsdoco
.. GraphDefinition C 0..* GraphDefinition Definition of a graph of resources
dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
dom-5: If a resource is contained in another resource, it SHALL NOT have a security label
dom-6: A resource should have narrative for robust management
gdf-0: Name should be usable as an identifier for the module by machine processing applications such as code generation
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
ele-1: All FHIR elements must have a @value or children
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... extension:node S 0..* (Complex) Optional Extensions Element
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-GraphDefinition.node
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... status ?!SΣ 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.


ele-1: All FHIR elements must have a @value or children
... experimental Σ 1..1 boolean For testing purposes, not real usage
ele-1: All FHIR elements must have a @value or children
... description 1..1 markdown Natural language description of the graph definition
ele-1: All FHIR elements must have a @value or children
... start Σ 1..1 code Type of resource at which the graph starts
Binding: ResourceType (required): One of the resource types defined as part of this version of FHIR.


ele-1: All FHIR elements must have a @value or children
... link 1..* BackboneElement Links this graph makes rules about
ele-1: All FHIR elements must have a @value or children
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... extension:sourceId 0..* id Extension
URL: http://smart.who.int/base/StructureDefinition/LinkIdExt
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... extension:targetId 0..* id Extension
URL: http://smart.who.int/base/StructureDefinition/LinkIdExt
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
GraphDefinition.statusrequiredPublicationStatus
http://hl7.org/fhir/ValueSet/publication-status|4.0.1
from the FHIR Standard
GraphDefinition.startrequiredResourceType
http://hl7.org/fhir/ValueSet/resource-types|4.0.1
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorGraphDefinitionIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorGraphDefinitionIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorGraphDefinitionIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorGraphDefinitionIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceGraphDefinitionA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
gdf-0warningGraphDefinitionName should be usable as an identifier for the module by machine processing applications such as code generation
: name.matches('[A-Z]([A-Za-z0-9_]){0,254}')

This structure is derived from GraphDefinition

NameFlagsCard.TypeDescription & Constraintsdoco
.. GraphDefinition 0..* GraphDefinition Definition of a graph of resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:node S 0..* (Complex) Optional Extensions Element
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-GraphDefinition.node
... name S 1..1 string Name for this graph definition (computer friendly)
... status S 1..1 code draft | active | retired | unknown
... description 1..1 markdown Natural language description of the graph definition
... link 1..* BackboneElement Links this graph makes rules about
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
..... extension:sourceId 0..* id Extension
URL: http://smart.who.int/base/StructureDefinition/LinkIdExt
..... extension:targetId 0..* id Extension
URL: http://smart.who.int/base/StructureDefinition/LinkIdExt

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. GraphDefinition C 0..* GraphDefinition Definition of a graph of resources
gdf-0: Name should be usable as an identifier for the module by machine processing applications such as code generation
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text 0..1 Narrative Text summary of the resource, for human interpretation
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:node S 0..* (Complex) Optional Extensions Element
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-GraphDefinition.node
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... url Σ 0..1 uri Canonical identifier for this graph definition, represented as a URI (globally unique)
... version Σ 0..1 string Business version of the graph definition
... name SΣC 1..1 string Name for this graph definition (computer friendly)
... status ?!SΣ 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.

... experimental Σ 1..1 boolean For testing purposes, not real usage
... date Σ 0..1 dateTime Date last changed
... publisher Σ 0..1 string Name of the publisher (organization or individual)
... contact Σ 0..* ContactDetail Contact details for the publisher
... description 1..1 markdown Natural language description of the graph definition
... useContext Σ 0..* UsageContext The context that the content is intended to support
... jurisdiction Σ 0..* CodeableConcept Intended jurisdiction for graph definition (if applicable)
Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use.


... purpose 0..1 markdown Why this graph definition is defined
... start Σ 1..1 code Type of resource at which the graph starts
Binding: ResourceType (required): One of the resource types defined as part of this version of FHIR.

... profile 0..1 canonical(StructureDefinition) Profile on base resource
... link 1..* BackboneElement Links this graph makes rules about
.... id 0..1 string Unique id for inter-element referencing
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
..... extension:sourceId 0..* id Extension
URL: http://smart.who.int/base/StructureDefinition/LinkIdExt
..... extension:targetId 0..* id Extension
URL: http://smart.who.int/base/StructureDefinition/LinkIdExt
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... path 0..1 string Path in the resource that contains the link
.... sliceName 0..1 string Which slice (if profiled)
.... min 0..1 integer Minimum occurrences for this link
.... max 0..1 string Maximum occurrences for this link
.... description 0..1 string Why this link is specified
.... target 0..* BackboneElement Potential target for the link
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... type 1..1 code Type of resource this link refers to
Binding: ResourceType (required): One of the resource types defined as part of this version of FHIR.

..... params 0..1 string Criteria for reverse lookup
..... profile 0..1 canonical(StructureDefinition) Profile for the target resource
..... compartment 0..* BackboneElement Compartment Consistency Rules
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
...... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
...... use 1..1 code condition | requirement
Binding: GraphCompartmentUse (required): Defines how a compartment rule is used.

...... code 1..1 code Patient | Encounter | RelatedPerson | Practitioner | Device
Binding: CompartmentType (required): Identifies a compartment.

...... rule 1..1 code identical | matching | different | custom
Binding: GraphCompartmentRule (required): How a compartment must be linked.

...... expression 0..1 string Custom rule, as a FHIRPath expression
...... description 0..1 string Documentation for FHIRPath expression
..... link 0..* See link (GraphDefinition) Additional links from target resource

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
GraphDefinition.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
GraphDefinition.statusrequiredPublicationStatus
http://hl7.org/fhir/ValueSet/publication-status|4.0.1
from the FHIR Standard
GraphDefinition.jurisdictionextensibleJurisdiction ValueSet
http://hl7.org/fhir/ValueSet/jurisdiction
from the FHIR Standard
GraphDefinition.startrequiredResourceType
http://hl7.org/fhir/ValueSet/resource-types|4.0.1
from the FHIR Standard
GraphDefinition.link.target.typerequiredResourceType
http://hl7.org/fhir/ValueSet/resource-types|4.0.1
from the FHIR Standard
GraphDefinition.link.target.compartment.userequiredGraphCompartmentUse
http://hl7.org/fhir/ValueSet/graph-compartment-use|4.0.1
from the FHIR Standard
GraphDefinition.link.target.compartment.coderequiredCompartmentType
http://hl7.org/fhir/ValueSet/compartment-type|4.0.1
from the FHIR Standard
GraphDefinition.link.target.compartment.rulerequiredGraphCompartmentRule
http://hl7.org/fhir/ValueSet/graph-compartment-rule|4.0.1
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorGraphDefinitionIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorGraphDefinitionIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorGraphDefinitionIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorGraphDefinitionIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceGraphDefinitionA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
gdf-0warningGraphDefinitionName should be usable as an identifier for the module by machine processing applications such as code generation
: name.matches('[A-Z]([A-Za-z0-9_]){0,254}')

This structure is derived from GraphDefinition

Summary

Mandatory: 3 elements
Must-Support: 3 elements

Extensions

This structure refers to these extensions:

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. GraphDefinition C 0..* GraphDefinition Definition of a graph of resources
dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
dom-5: If a resource is contained in another resource, it SHALL NOT have a security label
dom-6: A resource should have narrative for robust management
gdf-0: Name should be usable as an identifier for the module by machine processing applications such as code generation
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
ele-1: All FHIR elements must have a @value or children
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... extension:node S 0..* (Complex) Optional Extensions Element
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-GraphDefinition.node
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... status ?!SΣ 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.


ele-1: All FHIR elements must have a @value or children
... experimental Σ 1..1 boolean For testing purposes, not real usage
ele-1: All FHIR elements must have a @value or children
... description 1..1 markdown Natural language description of the graph definition
ele-1: All FHIR elements must have a @value or children
... start Σ 1..1 code Type of resource at which the graph starts
Binding: ResourceType (required): One of the resource types defined as part of this version of FHIR.


ele-1: All FHIR elements must have a @value or children
... link 1..* BackboneElement Links this graph makes rules about
ele-1: All FHIR elements must have a @value or children
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... extension:sourceId 0..* id Extension
URL: http://smart.who.int/base/StructureDefinition/LinkIdExt
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
..... extension:targetId 0..* id Extension
URL: http://smart.who.int/base/StructureDefinition/LinkIdExt
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
GraphDefinition.statusrequiredPublicationStatus
http://hl7.org/fhir/ValueSet/publication-status|4.0.1
from the FHIR Standard
GraphDefinition.startrequiredResourceType
http://hl7.org/fhir/ValueSet/resource-types|4.0.1
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorGraphDefinitionIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorGraphDefinitionIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorGraphDefinitionIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorGraphDefinitionIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceGraphDefinitionA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
gdf-0warningGraphDefinitionName should be usable as an identifier for the module by machine processing applications such as code generation
: name.matches('[A-Z]([A-Za-z0-9_]){0,254}')

Differential View

This structure is derived from GraphDefinition

NameFlagsCard.TypeDescription & Constraintsdoco
.. GraphDefinition 0..* GraphDefinition Definition of a graph of resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:node S 0..* (Complex) Optional Extensions Element
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-GraphDefinition.node
... name S 1..1 string Name for this graph definition (computer friendly)
... status S 1..1 code draft | active | retired | unknown
... description 1..1 markdown Natural language description of the graph definition
... link 1..* BackboneElement Links this graph makes rules about
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
..... extension:sourceId 0..* id Extension
URL: http://smart.who.int/base/StructureDefinition/LinkIdExt
..... extension:targetId 0..* id Extension
URL: http://smart.who.int/base/StructureDefinition/LinkIdExt

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. GraphDefinition C 0..* GraphDefinition Definition of a graph of resources
gdf-0: Name should be usable as an identifier for the module by machine processing applications such as code generation
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text 0..1 Narrative Text summary of the resource, for human interpretation
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:node S 0..* (Complex) Optional Extensions Element
URL: http://hl7.org/fhir/5.0/StructureDefinition/extension-GraphDefinition.node
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... url Σ 0..1 uri Canonical identifier for this graph definition, represented as a URI (globally unique)
... version Σ 0..1 string Business version of the graph definition
... name SΣC 1..1 string Name for this graph definition (computer friendly)
... status ?!SΣ 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.

... experimental Σ 1..1 boolean For testing purposes, not real usage
... date Σ 0..1 dateTime Date last changed
... publisher Σ 0..1 string Name of the publisher (organization or individual)
... contact Σ 0..* ContactDetail Contact details for the publisher
... description 1..1 markdown Natural language description of the graph definition
... useContext Σ 0..* UsageContext The context that the content is intended to support
... jurisdiction Σ 0..* CodeableConcept Intended jurisdiction for graph definition (if applicable)
Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use.


... purpose 0..1 markdown Why this graph definition is defined
... start Σ 1..1 code Type of resource at which the graph starts
Binding: ResourceType (required): One of the resource types defined as part of this version of FHIR.

... profile 0..1 canonical(StructureDefinition) Profile on base resource
... link 1..* BackboneElement Links this graph makes rules about
.... id 0..1 string Unique id for inter-element referencing
.... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
..... extension:sourceId 0..* id Extension
URL: http://smart.who.int/base/StructureDefinition/LinkIdExt
..... extension:targetId 0..* id Extension
URL: http://smart.who.int/base/StructureDefinition/LinkIdExt
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... path 0..1 string Path in the resource that contains the link
.... sliceName 0..1 string Which slice (if profiled)
.... min 0..1 integer Minimum occurrences for this link
.... max 0..1 string Maximum occurrences for this link
.... description 0..1 string Why this link is specified
.... target 0..* BackboneElement Potential target for the link
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... type 1..1 code Type of resource this link refers to
Binding: ResourceType (required): One of the resource types defined as part of this version of FHIR.

..... params 0..1 string Criteria for reverse lookup
..... profile 0..1 canonical(StructureDefinition) Profile for the target resource
..... compartment 0..* BackboneElement Compartment Consistency Rules
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
...... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
...... use 1..1 code condition | requirement
Binding: GraphCompartmentUse (required): Defines how a compartment rule is used.

...... code 1..1 code Patient | Encounter | RelatedPerson | Practitioner | Device
Binding: CompartmentType (required): Identifies a compartment.

...... rule 1..1 code identical | matching | different | custom
Binding: GraphCompartmentRule (required): How a compartment must be linked.

...... expression 0..1 string Custom rule, as a FHIRPath expression
...... description 0..1 string Documentation for FHIRPath expression
..... link 0..* See link (GraphDefinition) Additional links from target resource

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
GraphDefinition.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
GraphDefinition.statusrequiredPublicationStatus
http://hl7.org/fhir/ValueSet/publication-status|4.0.1
from the FHIR Standard
GraphDefinition.jurisdictionextensibleJurisdiction ValueSet
http://hl7.org/fhir/ValueSet/jurisdiction
from the FHIR Standard
GraphDefinition.startrequiredResourceType
http://hl7.org/fhir/ValueSet/resource-types|4.0.1
from the FHIR Standard
GraphDefinition.link.target.typerequiredResourceType
http://hl7.org/fhir/ValueSet/resource-types|4.0.1
from the FHIR Standard
GraphDefinition.link.target.compartment.userequiredGraphCompartmentUse
http://hl7.org/fhir/ValueSet/graph-compartment-use|4.0.1
from the FHIR Standard
GraphDefinition.link.target.compartment.coderequiredCompartmentType
http://hl7.org/fhir/ValueSet/compartment-type|4.0.1
from the FHIR Standard
GraphDefinition.link.target.compartment.rulerequiredGraphCompartmentRule
http://hl7.org/fhir/ValueSet/graph-compartment-rule|4.0.1
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorGraphDefinitionIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorGraphDefinitionIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorGraphDefinitionIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorGraphDefinitionIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceGraphDefinitionA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
gdf-0warningGraphDefinitionName should be usable as an identifier for the module by machine processing applications such as code generation
: name.matches('[A-Z]([A-Za-z0-9_]){0,254}')

This structure is derived from GraphDefinition

Summary

Mandatory: 3 elements
Must-Support: 3 elements

Extensions

This structure refers to these extensions:

 

Other representations of profile: CSV, Excel, Schematron