This page is part of the Clinical Guidelines (v1.0.0: STU 1) based on FHIR R4. This is the current published version. For a full list of available versions, see the Directory of published versions
The official URL for this profile is:
http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-shareablegraphdefinition
Profile of GraphDefinition to establish minimum expectations for sharing an GraphDefinition resource, including URL, version, and name. This profile also provides the ability to declare knowledge representation level and knowledge artifact capabilities.
This profile builds on GraphDefinition.
This profile was published on Thu Jun 06 00:00:00 UTC 2019 as a draft by Health Level Seven, Inc. - CDS WG.
Description of Profiles, Differentials, and Snapshots.
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
GraphDefinition | 0..* | GraphDefinition | Definition of a graph of resources | |
cpg-knowledgeCapability | S | 1..* | code | shareable | computable | publishable | executable URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-knowledgeCapability Binding: CPG Knowledge Capability (required): A knowledge capability provided by a knowledge artifact |
cpg-knowledgeRepresentationLevel | S | 0..* | code | narrative | semi-structured | structured | executable URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-knowledgeRepresentationLevel Binding: CPG Knowledge Representation Level (required): A level of knowledge representation provided by this artifact |
cpg-identifier | S | 0..* | Identifier | Business identifier URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-identifier |
cpg-title | S | 0..1 | string | Name for this artifact (human friendly) URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-title |
url | 1..1 | uri | Canonical identifier for this graph definition, represented as a URI (globally unique) | |
version | 1..1 | string | Business version of the graph definition | |
experimental | 1..1 | boolean | For testing purposes, not real usage | |
date | S | 0..1 | dateTime | Date last changed |
publisher | 1..1 | string | Name of the publisher (organization or individual) | |
contact | S | 0..* | ContactDetail | Contact details for the publisher |
description | 1..1 | markdown | Natural language description of the graph definition | |
useContext | S | 0..* | UsageContext | The context that the content is intended to support |
jurisdiction | S | 0..* | CodeableConcept | Intended jurisdiction for graph definition (if applicable) |
Documentation for this format |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
GraphDefinition | I | 0..* | GraphDefinition | Definition of a graph of resources |
id | Σ | 0..1 | string | 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 |
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred) Max Binding: AllLanguages: A human language. | |
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |
contained | 0..* | Resource | Contained, inline Resources | |
extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
cpg-knowledgeCapability | S | 1..* | code | shareable | computable | publishable | executable URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-knowledgeCapability Binding: CPG Knowledge Capability (required): A knowledge capability provided by a knowledge artifact |
cpg-knowledgeRepresentationLevel | S | 0..* | code | narrative | semi-structured | structured | executable URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-knowledgeRepresentationLevel Binding: CPG Knowledge Representation Level (required): A level of knowledge representation provided by this artifact |
cpg-identifier | S | 0..* | Identifier | Business identifier URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-identifier |
cpg-title | S | 0..1 | string | Name for this artifact (human friendly) URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-title |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
url | Σ | 1..1 | uri | Canonical identifier for this graph definition, represented as a URI (globally unique) |
version | Σ | 1..1 | string | Business version of the graph definition |
name | ΣI | 1..1 | string | Name for this graph definition (computer friendly) |
status | ?!Σ | 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 | SΣ | 0..1 | dateTime | Date last changed |
publisher | Σ | 1..1 | string | Name of the publisher (organization or individual) |
contact | SΣ | 0..* | ContactDetail | Contact details for the publisher |
description | 1..1 | markdown | Natural language description of the graph definition | |
useContext | SΣ | 0..* | UsageContext | The context that the content is intended to support |
jurisdiction | SΣ | 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 | 0..* | BackboneElement | Links this graph makes rules about | |
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 |
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 | |
Documentation for this format |
Differential View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
GraphDefinition | 0..* | GraphDefinition | Definition of a graph of resources | |
cpg-knowledgeCapability | S | 1..* | code | shareable | computable | publishable | executable URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-knowledgeCapability Binding: CPG Knowledge Capability (required): A knowledge capability provided by a knowledge artifact |
cpg-knowledgeRepresentationLevel | S | 0..* | code | narrative | semi-structured | structured | executable URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-knowledgeRepresentationLevel Binding: CPG Knowledge Representation Level (required): A level of knowledge representation provided by this artifact |
cpg-identifier | S | 0..* | Identifier | Business identifier URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-identifier |
cpg-title | S | 0..1 | string | Name for this artifact (human friendly) URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-title |
url | 1..1 | uri | Canonical identifier for this graph definition, represented as a URI (globally unique) | |
version | 1..1 | string | Business version of the graph definition | |
experimental | 1..1 | boolean | For testing purposes, not real usage | |
date | S | 0..1 | dateTime | Date last changed |
publisher | 1..1 | string | Name of the publisher (organization or individual) | |
contact | S | 0..* | ContactDetail | Contact details for the publisher |
description | 1..1 | markdown | Natural language description of the graph definition | |
useContext | S | 0..* | UsageContext | The context that the content is intended to support |
jurisdiction | S | 0..* | CodeableConcept | Intended jurisdiction for graph definition (if applicable) |
Documentation for this format |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
GraphDefinition | I | 0..* | GraphDefinition | Definition of a graph of resources |
id | Σ | 0..1 | string | 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 |
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred) Max Binding: AllLanguages: A human language. | |
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |
contained | 0..* | Resource | Contained, inline Resources | |
extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
cpg-knowledgeCapability | S | 1..* | code | shareable | computable | publishable | executable URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-knowledgeCapability Binding: CPG Knowledge Capability (required): A knowledge capability provided by a knowledge artifact |
cpg-knowledgeRepresentationLevel | S | 0..* | code | narrative | semi-structured | structured | executable URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-knowledgeRepresentationLevel Binding: CPG Knowledge Representation Level (required): A level of knowledge representation provided by this artifact |
cpg-identifier | S | 0..* | Identifier | Business identifier URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-identifier |
cpg-title | S | 0..1 | string | Name for this artifact (human friendly) URL: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-title |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
url | Σ | 1..1 | uri | Canonical identifier for this graph definition, represented as a URI (globally unique) |
version | Σ | 1..1 | string | Business version of the graph definition |
name | ΣI | 1..1 | string | Name for this graph definition (computer friendly) |
status | ?!Σ | 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 | SΣ | 0..1 | dateTime | Date last changed |
publisher | Σ | 1..1 | string | Name of the publisher (organization or individual) |
contact | SΣ | 0..* | ContactDetail | Contact details for the publisher |
description | 1..1 | markdown | Natural language description of the graph definition | |
useContext | SΣ | 0..* | UsageContext | The context that the content is intended to support |
jurisdiction | SΣ | 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 | 0..* | BackboneElement | Links this graph makes rules about | |
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 |
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 | |
Documentation for this format |
Path | Conformance | ValueSet |
GraphDefinition.language | preferred | CommonLanguages Max Binding: AllLanguages |
GraphDefinition.status | required | PublicationStatus |
GraphDefinition.jurisdiction | extensible | Jurisdiction ValueSet |
GraphDefinition.start | required | ResourceType |
GraphDefinition.link.target.type | required | ResourceType |
GraphDefinition.link.target.compartment.use | required | GraphCompartmentUse |
GraphDefinition.link.target.compartment.code | required | CompartmentType |
GraphDefinition.link.target.compartment.rule | required | GraphCompartmentRule |
Id | Path | Details | Requirements |
dom-2 | GraphDefinition | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | GraphDefinition | 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 : 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-4 | GraphDefinition | If 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-5 | GraphDefinition | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | GraphDefinition | A resource should have narrative for robust management : text.`div`.exists() | |
gdf-0 | GraphDefinition | Name 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}') | |
ele-1 | GraphDefinition.meta | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.implicitRules | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.language | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.text | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | GraphDefinition.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | GraphDefinition.extension:knowledgeCapability | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | GraphDefinition.extension:knowledgeCapability | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | GraphDefinition.extension:knowledgeRepresentationLevel | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | GraphDefinition.extension:knowledgeRepresentationLevel | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | GraphDefinition.extension:identifier | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | GraphDefinition.extension:identifier | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | GraphDefinition.extension:title | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | GraphDefinition.extension:title | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | GraphDefinition.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | GraphDefinition.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | GraphDefinition.url | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.version | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.name | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.status | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.experimental | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.date | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.publisher | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.contact | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.description | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.useContext | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.jurisdiction | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.purpose | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.start | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.profile | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.link | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.link.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | GraphDefinition.link.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | GraphDefinition.link.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | GraphDefinition.link.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | GraphDefinition.link.path | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.link.sliceName | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.link.min | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.link.max | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.link.description | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.link.target | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.link.target.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | GraphDefinition.link.target.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | GraphDefinition.link.target.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | GraphDefinition.link.target.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | GraphDefinition.link.target.type | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.link.target.params | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.link.target.profile | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.link.target.compartment | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.link.target.compartment.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | GraphDefinition.link.target.compartment.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | GraphDefinition.link.target.compartment.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | GraphDefinition.link.target.compartment.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | GraphDefinition.link.target.compartment.use | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.link.target.compartment.code | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.link.target.compartment.rule | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.link.target.compartment.expression | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.link.target.compartment.description | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | GraphDefinition.link.target.link | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |