HL7中国发布订阅框架实施指南
2025.03.10 - release

HL7中国发布订阅框架实施指南 - Local Development build (v2025.03.10) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: 通用订阅本地化定义

官方URL: http://hl7.org.cn/fhir-ig/pubsub/StructureDefinition/profile-base-subscription 版本: 2025.03.10
Draft as of 2025-03-10 机读名称: BaseSubscription

由HL7中国设计的适用于中国健康信息化的通用订阅本地化定义。

Usage:

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraintsdoco
.. Subscription 0..* Subscription Notification about a SubscriptionTopic
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
... 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
... contained 0..* Resource Contained, inline Resources
... 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 ?!Σ 1..1 code 订阅的状态
Binding: SubscriptionStatusCodes (required): The status of a subscription.


ele-1: All FHIR elements must have a @value or children
... topic Σ 1..1 canonical(SubscriptionTopic) 订阅的主题
ele-1: All FHIR elements must have a @value or children
... end Σ 0..1 instant 订阅的结束时间
ele-1: All FHIR elements must have a @value or children
... filterBy ΣC 0..* BackboneElement 订阅的过滤参数
ele-1: All FHIR elements must have a @value or children
scr-1: Subscription filters may only contain a modifier or a comparator
.... 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
.... filterParameter Σ 1..1 string Filter label defined in SubscriptionTopic
ele-1: All FHIR elements must have a @value or children
.... value Σ 1..1 string Literal value or resource path
ele-1: All FHIR elements must have a @value or children
... channelType Σ 1..1 Coding 发送通知的通道类型
Binding: SubscriptionChannelType (extensible): The type of method used to execute a subscription.


ele-1: All FHIR elements must have a @value or children
... endpoint Σ 0..1 url 接收通知的服务端点
ele-1: All FHIR elements must have a @value or children
... parameter 0..* BackboneElement 接收通知的服务端点的相关连接参数
ele-1: All FHIR elements must have a @value or children
.... 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
.... name 1..1 string Name (key) of the parameter
ele-1: All FHIR elements must have a @value or children
.... value 1..1 string Value of the parameter to use or pass through
ele-1: All FHIR elements must have a @value or children
... heartbeatPeriod Σ 0..1 unsignedInt 心跳通知发送的间隔时间,以秒为单位
ele-1: All FHIR elements must have a @value or children
... timeout Σ 0..1 unsignedInt 通知递送的超时时间,以秒为单位
ele-1: All FHIR elements must have a @value or children
... content Σ 1..1 code 通知发送内容的载体类型: empty | id-only | full-resource
Binding: SubscriptionPayloadContent (required): Codes to represent how much resource content to send in the notification payload.


ele-1: All FHIR elements must have a @value or children
... maxCount Σ 0..1 positiveInt 在单个通知中可以合并转发的最大事件数量
ele-1: All FHIR elements must have a @value or children

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Subscription.statusrequiredSubscriptionStatusCodes
http://hl7.org/fhir/ValueSet/subscription-status|5.0.0
from the FHIR Standard
Subscription.channelTypeextensibleSubscriptionChannelType
http://hl7.org/fhir/ValueSet/subscription-channel-type
from the FHIR Standard
Subscription.contentrequiredSubscriptionPayloadContent
http://hl7.org/fhir/ValueSet/subscription-payload-content|5.0.0
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorSubscriptionIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorSubscriptionIf 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorSubscriptionIf 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-5errorSubscriptionIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceSubscriptionA 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()
scr-1errorSubscription.filterBySubscription filters may only contain a modifier or a comparator
: (comparator.exists() and modifier.exists()).not()

该结构继承自 Subscription

NameFlagsCard.TypeDescription & Constraintsdoco
.. Subscription 0..* Subscription Notification about a SubscriptionTopic
... name 1..1 string 订阅的人读名称
... status 1..1 code 订阅的状态
... topic 1..1 canonical(SubscriptionTopic) 订阅的主题
... filterBy 0..* BackboneElement 订阅的过滤参数
... channelType 1..1 Coding 发送通知的通道类型
... endpoint 0..1 url 接收通知的服务端点
... parameter 0..* BackboneElement 接收通知的服务端点的相关连接参数
... heartbeatPeriod 0..1 unsignedInt 心跳通知发送的间隔时间,以秒为单位
... timeout 0..1 unsignedInt 通知递送的超时时间,以秒为单位
... content 1..1 code 通知发送内容的载体类型: empty | id-only | full-resource
... maxCount 0..1 positiveInt 在单个通知中可以合并转发的最大事件数量

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Subscription 0..* Subscription Notification about a SubscriptionTopic
... 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
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier Additional identifiers (business identifier)
... name Σ 1..1 string 订阅的人读名称
... status ?!Σ 1..1 code 订阅的状态
Binding: SubscriptionStatusCodes (required): The status of a subscription.

... topic Σ 1..1 canonical(SubscriptionTopic) 订阅的主题
... contact Σ 0..* ContactPoint Contact details for source (e.g. troubleshooting)
... end Σ 0..1 instant 订阅的结束时间
... managingEntity Σ 0..1 Reference(CareTeam | HealthcareService | Organization | RelatedPerson | Patient | Practitioner | PractitionerRole) Entity responsible for Subscription changes
... reason Σ 0..1 string Description of why this subscription was created
... filterBy ΣC 0..* BackboneElement 订阅的过滤参数
scr-1: Subscription filters may only contain a modifier or a comparator
.... 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
.... resourceType Σ 0..1 uri Allowed Resource (reference to definition) for this Subscription filter
Binding: SubscriptionTypes (extensible): A type of resource, or a Reference (from all versions)

Additional BindingsPurpose
AllResourceTypes UI Binding
.... filterParameter Σ 1..1 string Filter label defined in SubscriptionTopic
.... comparator C 0..1 code eq | ne | gt | lt | ge | le | sa | eb | ap
Binding: SearchComparator (required): Search Comparator Codes applied to this filter.

.... modifier C 0..1 code missing | exact | contains | not | text | in | not-in | below | above | type | identifier | of-type | code-text | text-advanced | iterate
Binding: SearchModifierCode (required): Search Modifier Code applied to this filter.

.... value Σ 1..1 string Literal value or resource path
... channelType Σ 1..1 Coding 发送通知的通道类型
Binding: SubscriptionChannelType (extensible): The type of method used to execute a subscription.

... endpoint Σ 0..1 url 接收通知的服务端点
... parameter 0..* BackboneElement 接收通知的服务端点的相关连接参数
.... 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
.... name 1..1 string Name (key) of the parameter
.... value 1..1 string Value of the parameter to use or pass through
... heartbeatPeriod Σ 0..1 unsignedInt 心跳通知发送的间隔时间,以秒为单位
... timeout Σ 0..1 unsignedInt 通知递送的超时时间,以秒为单位
... contentType Σ 0..1 code MIME type to send, or omit for no payload
Binding: MimeTypes (required): BCP 13 (RFCs 2045, 2046, 2047, 4288, 4289 and 2049)

... content Σ 1..1 code 通知发送内容的载体类型: empty | id-only | full-resource
Binding: SubscriptionPayloadContent (required): Codes to represent how much resource content to send in the notification payload.

... maxCount Σ 0..1 positiveInt 在单个通知中可以合并转发的最大事件数量

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Subscription.languagerequiredAllLanguages
http://hl7.org/fhir/ValueSet/all-languages|5.0.0
from the FHIR Standard
Subscription.statusrequiredSubscriptionStatusCodes
http://hl7.org/fhir/ValueSet/subscription-status|5.0.0
from the FHIR Standard
Subscription.filterBy.resourceTypeextensibleSubscriptionTypes
http://hl7.org/fhir/ValueSet/subscription-types
from the FHIR Standard
Subscription.filterBy.comparatorrequiredSearchComparator
http://hl7.org/fhir/ValueSet/search-comparator|5.0.0
from the FHIR Standard
Subscription.filterBy.modifierrequiredSearchModifierCode
http://hl7.org/fhir/ValueSet/search-modifier-code|5.0.0
from the FHIR Standard
Subscription.channelTypeextensibleSubscriptionChannelType
http://hl7.org/fhir/ValueSet/subscription-channel-type
from the FHIR Standard
Subscription.contentTyperequiredMimeTypes (a valid code from urn:ietf:bcp:13)
http://hl7.org/fhir/ValueSet/mimetypes|5.0.0
from the FHIR Standard
Subscription.contentrequiredSubscriptionPayloadContent
http://hl7.org/fhir/ValueSet/subscription-payload-content|5.0.0
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorSubscriptionIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorSubscriptionIf 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorSubscriptionIf 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-5errorSubscriptionIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceSubscriptionA 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()
scr-1errorSubscription.filterBySubscription filters may only contain a modifier or a comparator
: (comparator.exists() and modifier.exists()).not()

该结构继承自 Subscription

Summary

Mandatory: 2 elements

关键元素视图

NameFlagsCard.TypeDescription & Constraintsdoco
.. Subscription 0..* Subscription Notification about a SubscriptionTopic
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
... 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
... contained 0..* Resource Contained, inline Resources
... 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 ?!Σ 1..1 code 订阅的状态
Binding: SubscriptionStatusCodes (required): The status of a subscription.


ele-1: All FHIR elements must have a @value or children
... topic Σ 1..1 canonical(SubscriptionTopic) 订阅的主题
ele-1: All FHIR elements must have a @value or children
... end Σ 0..1 instant 订阅的结束时间
ele-1: All FHIR elements must have a @value or children
... filterBy ΣC 0..* BackboneElement 订阅的过滤参数
ele-1: All FHIR elements must have a @value or children
scr-1: Subscription filters may only contain a modifier or a comparator
.... 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
.... filterParameter Σ 1..1 string Filter label defined in SubscriptionTopic
ele-1: All FHIR elements must have a @value or children
.... value Σ 1..1 string Literal value or resource path
ele-1: All FHIR elements must have a @value or children
... channelType Σ 1..1 Coding 发送通知的通道类型
Binding: SubscriptionChannelType (extensible): The type of method used to execute a subscription.


ele-1: All FHIR elements must have a @value or children
... endpoint Σ 0..1 url 接收通知的服务端点
ele-1: All FHIR elements must have a @value or children
... parameter 0..* BackboneElement 接收通知的服务端点的相关连接参数
ele-1: All FHIR elements must have a @value or children
.... 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
.... name 1..1 string Name (key) of the parameter
ele-1: All FHIR elements must have a @value or children
.... value 1..1 string Value of the parameter to use or pass through
ele-1: All FHIR elements must have a @value or children
... heartbeatPeriod Σ 0..1 unsignedInt 心跳通知发送的间隔时间,以秒为单位
ele-1: All FHIR elements must have a @value or children
... timeout Σ 0..1 unsignedInt 通知递送的超时时间,以秒为单位
ele-1: All FHIR elements must have a @value or children
... content Σ 1..1 code 通知发送内容的载体类型: empty | id-only | full-resource
Binding: SubscriptionPayloadContent (required): Codes to represent how much resource content to send in the notification payload.


ele-1: All FHIR elements must have a @value or children
... maxCount Σ 0..1 positiveInt 在单个通知中可以合并转发的最大事件数量
ele-1: All FHIR elements must have a @value or children

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Subscription.statusrequiredSubscriptionStatusCodes
http://hl7.org/fhir/ValueSet/subscription-status|5.0.0
from the FHIR Standard
Subscription.channelTypeextensibleSubscriptionChannelType
http://hl7.org/fhir/ValueSet/subscription-channel-type
from the FHIR Standard
Subscription.contentrequiredSubscriptionPayloadContent
http://hl7.org/fhir/ValueSet/subscription-payload-content|5.0.0
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorSubscriptionIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorSubscriptionIf 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorSubscriptionIf 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-5errorSubscriptionIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceSubscriptionA 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()
scr-1errorSubscription.filterBySubscription filters may only contain a modifier or a comparator
: (comparator.exists() and modifier.exists()).not()

差异视图

该结构继承自 Subscription

NameFlagsCard.TypeDescription & Constraintsdoco
.. Subscription 0..* Subscription Notification about a SubscriptionTopic
... name 1..1 string 订阅的人读名称
... status 1..1 code 订阅的状态
... topic 1..1 canonical(SubscriptionTopic) 订阅的主题
... filterBy 0..* BackboneElement 订阅的过滤参数
... channelType 1..1 Coding 发送通知的通道类型
... endpoint 0..1 url 接收通知的服务端点
... parameter 0..* BackboneElement 接收通知的服务端点的相关连接参数
... heartbeatPeriod 0..1 unsignedInt 心跳通知发送的间隔时间,以秒为单位
... timeout 0..1 unsignedInt 通知递送的超时时间,以秒为单位
... content 1..1 code 通知发送内容的载体类型: empty | id-only | full-resource
... maxCount 0..1 positiveInt 在单个通知中可以合并转发的最大事件数量

doco Documentation for this format

快照视图

NameFlagsCard.TypeDescription & Constraintsdoco
.. Subscription 0..* Subscription Notification about a SubscriptionTopic
... 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
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier Additional identifiers (business identifier)
... name Σ 1..1 string 订阅的人读名称
... status ?!Σ 1..1 code 订阅的状态
Binding: SubscriptionStatusCodes (required): The status of a subscription.

... topic Σ 1..1 canonical(SubscriptionTopic) 订阅的主题
... contact Σ 0..* ContactPoint Contact details for source (e.g. troubleshooting)
... end Σ 0..1 instant 订阅的结束时间
... managingEntity Σ 0..1 Reference(CareTeam | HealthcareService | Organization | RelatedPerson | Patient | Practitioner | PractitionerRole) Entity responsible for Subscription changes
... reason Σ 0..1 string Description of why this subscription was created
... filterBy ΣC 0..* BackboneElement 订阅的过滤参数
scr-1: Subscription filters may only contain a modifier or a comparator
.... 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
.... resourceType Σ 0..1 uri Allowed Resource (reference to definition) for this Subscription filter
Binding: SubscriptionTypes (extensible): A type of resource, or a Reference (from all versions)

Additional BindingsPurpose
AllResourceTypes UI Binding
.... filterParameter Σ 1..1 string Filter label defined in SubscriptionTopic
.... comparator C 0..1 code eq | ne | gt | lt | ge | le | sa | eb | ap
Binding: SearchComparator (required): Search Comparator Codes applied to this filter.

.... modifier C 0..1 code missing | exact | contains | not | text | in | not-in | below | above | type | identifier | of-type | code-text | text-advanced | iterate
Binding: SearchModifierCode (required): Search Modifier Code applied to this filter.

.... value Σ 1..1 string Literal value or resource path
... channelType Σ 1..1 Coding 发送通知的通道类型
Binding: SubscriptionChannelType (extensible): The type of method used to execute a subscription.

... endpoint Σ 0..1 url 接收通知的服务端点
... parameter 0..* BackboneElement 接收通知的服务端点的相关连接参数
.... 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
.... name 1..1 string Name (key) of the parameter
.... value 1..1 string Value of the parameter to use or pass through
... heartbeatPeriod Σ 0..1 unsignedInt 心跳通知发送的间隔时间,以秒为单位
... timeout Σ 0..1 unsignedInt 通知递送的超时时间,以秒为单位
... contentType Σ 0..1 code MIME type to send, or omit for no payload
Binding: MimeTypes (required): BCP 13 (RFCs 2045, 2046, 2047, 4288, 4289 and 2049)

... content Σ 1..1 code 通知发送内容的载体类型: empty | id-only | full-resource
Binding: SubscriptionPayloadContent (required): Codes to represent how much resource content to send in the notification payload.

... maxCount Σ 0..1 positiveInt 在单个通知中可以合并转发的最大事件数量

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Subscription.languagerequiredAllLanguages
http://hl7.org/fhir/ValueSet/all-languages|5.0.0
from the FHIR Standard
Subscription.statusrequiredSubscriptionStatusCodes
http://hl7.org/fhir/ValueSet/subscription-status|5.0.0
from the FHIR Standard
Subscription.filterBy.resourceTypeextensibleSubscriptionTypes
http://hl7.org/fhir/ValueSet/subscription-types
from the FHIR Standard
Subscription.filterBy.comparatorrequiredSearchComparator
http://hl7.org/fhir/ValueSet/search-comparator|5.0.0
from the FHIR Standard
Subscription.filterBy.modifierrequiredSearchModifierCode
http://hl7.org/fhir/ValueSet/search-modifier-code|5.0.0
from the FHIR Standard
Subscription.channelTypeextensibleSubscriptionChannelType
http://hl7.org/fhir/ValueSet/subscription-channel-type
from the FHIR Standard
Subscription.contentTyperequiredMimeTypes (a valid code from urn:ietf:bcp:13)
http://hl7.org/fhir/ValueSet/mimetypes|5.0.0
from the FHIR Standard
Subscription.contentrequiredSubscriptionPayloadContent
http://hl7.org/fhir/ValueSet/subscription-payload-content|5.0.0
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorSubscriptionIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorSubscriptionIf 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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorSubscriptionIf 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-5errorSubscriptionIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceSubscriptionA 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()
scr-1errorSubscription.filterBySubscription filters may only contain a modifier or a comparator
: (comparator.exists() and modifier.exists()).not()

该结构继承自 Subscription

Summary

Mandatory: 2 elements

 

本 Profile 的其它表示法: CSV, Excel, Schematron