Order Catalog Implementation Guide
current - CI Build

Order Catalog Implementation Guide, published by HL7 International - Orders and Observations Work Group. This is not an authorized publication; it is the continuous build for version current). This version is based on the current content of https://github.com/HL7/fhir-order-catalog/ and changes regularly. See the Directory of published versions

Resource Profile: CatalogMessageDefinition Profile

Defining URL:http://hl7.org/fhir/uv/order-catalog/StructureDefinition/CatalogMessageDefinition
Version:current
Name:CatalogMessageDefinition
Title:Message definition for messaging order-catalog content
Status:Draft as of 2020-04-02
Definition:

This profile constrains MessageDefinition in the context of messaging the content of catalogs, in conformance with the FHIR messaging framework

Publisher:HL7 International - Orders and Observations Work Group
Source Resource:XML / JSON / Turtle

The official URL for this profile is:

http://hl7.org/fhir/uv/order-catalog/StructureDefinition/CatalogMessageDefinition

Formal Views of Profile Content

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

This structure is derived from MessageDefinition

Summary

Mandatory: 1 element
Must-Support: 2 elements
Fixed Value: 1 element

This structure is derived from MessageDefinition

NameFlagsCard.TypeDescription & Constraintsdoco
.. MessageDefinition 0..*MessageDefinitionA resource that defines a type of message that can be exchanged between systems
... event[x] S1..1CodingEvent code
Binding: Message event codes for exchanging order catalog content (extensible): message events for messages conveying order-catalog content

... category 0..1codeconsequence | currency | notification
Fixed Value: consequence
... responseRequired S1..1codealways | on-error | never | on-success

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. MessageDefinition I0..*MessageDefinitionA resource that defines a type of message that can be exchanged between systems
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred): IETF language tag

Additional BindingsPurpose
AllLanguagesMax Binding
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... url Σ0..1uriBusiness Identifier for a given MessageDefinition
... identifier Σ0..*IdentifierPrimary key for the message definition on a given server
... version Σ0..1stringBusiness version of the message definition
... name ΣI0..1stringName for this message definition (computer friendly)
... title Σ0..1stringName for this message definition (human friendly)
... replaces Σ0..*canonical(MessageDefinition)Takes the place of
... status ?!Σ1..1codedraft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.

... experimental Σ0..1booleanFor testing purposes, not real usage
... date Σ1..1dateTimeDate last changed
... publisher Σ0..1stringName of the publisher (organization or individual)
... contact Σ0..*ContactDetailContact details for the publisher
... description Σ0..1markdownNatural language description of the message definition
... useContext Σ0..*UsageContextThe context that the content is intended to support
... jurisdiction Σ0..*CodeableConceptIntended jurisdiction for message definition (if applicable)
Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use.


... purpose Σ0..1markdownWhy this message definition is defined
... copyright 0..1markdownUse and/or publishing restrictions
... base Σ0..1canonical(MessageDefinition)Definition this one is based on
... parent Σ0..*canonical(ActivityDefinition | PlanDefinition)Protocol/workflow this is part of
... event[x] SΣ1..1CodingEvent code
Binding: Message event codes for exchanging order catalog content (extensible): message events for messages conveying order-catalog content

... category Σ0..1codeconsequence | currency | notification
Binding: MessageSignificanceCategory (required): The impact of the content of a message.


Fixed Value: consequence
... focus ΣI0..*BackboneElementResource(s) that are the subject of the event
.... id 0..1idUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... code Σ1..1codeType of resource
Binding: ResourceType (required): One of the resource types defined as part of this version of FHIR.

.... profile 0..1canonical(StructureDefinition)Profile that must be adhered to by focus
.... min Σ1..1unsignedIntMinimum number of focuses of this type
.... max I0..1stringMaximum number of focuses of this type
... responseRequired S1..1codealways | on-error | never | on-success
Binding: messageheader-response-request (required): This enables the capability currently available through MSH-16 (Application Level acknowledgement) in HL7 Version 2 to declare at a message definition level whether a response is required or only upon error or success, or never.


Example General: always
... allowedResponse 0..*BackboneElementResponses to this message
.... id 0..1idUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... message 1..1canonical(MessageDefinition)Reference to allowed message definition response
.... situation 0..1markdownWhen should this response be used
... graph 0..*canonical(GraphDefinition)Canonical reference to a GraphDefinition

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. MessageDefinition I0..*MessageDefinitionA resource that defines a type of message that can be exchanged between systems
... event[x] Σ1..1CodingEvent code
Binding: Message event codes for exchanging order catalog content (extensible): message events for messages conveying order-catalog content

... responseRequired 1..1codealways | on-error | never | on-success
Binding: messageheader-response-request (required): This enables the capability currently available through MSH-16 (Application Level acknowledgement) in HL7 Version 2 to declare at a message definition level whether a response is required or only upon error or success, or never.


doco Documentation for this format

This structure is derived from MessageDefinition

Summary

Mandatory: 1 element
Must-Support: 2 elements
Fixed Value: 1 element

Differential View

This structure is derived from MessageDefinition

NameFlagsCard.TypeDescription & Constraintsdoco
.. MessageDefinition 0..*MessageDefinitionA resource that defines a type of message that can be exchanged between systems
... event[x] S1..1CodingEvent code
Binding: Message event codes for exchanging order catalog content (extensible): message events for messages conveying order-catalog content

... category 0..1codeconsequence | currency | notification
Fixed Value: consequence
... responseRequired S1..1codealways | on-error | never | on-success

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. MessageDefinition I0..*MessageDefinitionA resource that defines a type of message that can be exchanged between systems
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred): IETF language tag

Additional BindingsPurpose
AllLanguagesMax Binding
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... url Σ0..1uriBusiness Identifier for a given MessageDefinition
... identifier Σ0..*IdentifierPrimary key for the message definition on a given server
... version Σ0..1stringBusiness version of the message definition
... name ΣI0..1stringName for this message definition (computer friendly)
... title Σ0..1stringName for this message definition (human friendly)
... replaces Σ0..*canonical(MessageDefinition)Takes the place of
... status ?!Σ1..1codedraft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.

... experimental Σ0..1booleanFor testing purposes, not real usage
... date Σ1..1dateTimeDate last changed
... publisher Σ0..1stringName of the publisher (organization or individual)
... contact Σ0..*ContactDetailContact details for the publisher
... description Σ0..1markdownNatural language description of the message definition
... useContext Σ0..*UsageContextThe context that the content is intended to support
... jurisdiction Σ0..*CodeableConceptIntended jurisdiction for message definition (if applicable)
Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use.


... purpose Σ0..1markdownWhy this message definition is defined
... copyright 0..1markdownUse and/or publishing restrictions
... base Σ0..1canonical(MessageDefinition)Definition this one is based on
... parent Σ0..*canonical(ActivityDefinition | PlanDefinition)Protocol/workflow this is part of
... event[x] SΣ1..1CodingEvent code
Binding: Message event codes for exchanging order catalog content (extensible): message events for messages conveying order-catalog content

... category Σ0..1codeconsequence | currency | notification
Binding: MessageSignificanceCategory (required): The impact of the content of a message.


Fixed Value: consequence
... focus ΣI0..*BackboneElementResource(s) that are the subject of the event
.... id 0..1idUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... code Σ1..1codeType of resource
Binding: ResourceType (required): One of the resource types defined as part of this version of FHIR.

.... profile 0..1canonical(StructureDefinition)Profile that must be adhered to by focus
.... min Σ1..1unsignedIntMinimum number of focuses of this type
.... max I0..1stringMaximum number of focuses of this type
... responseRequired S1..1codealways | on-error | never | on-success
Binding: messageheader-response-request (required): This enables the capability currently available through MSH-16 (Application Level acknowledgement) in HL7 Version 2 to declare at a message definition level whether a response is required or only upon error or success, or never.


Example General: always
... allowedResponse 0..*BackboneElementResponses to this message
.... id 0..1idUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... message 1..1canonical(MessageDefinition)Reference to allowed message definition response
.... situation 0..1markdownWhen should this response be used
... graph 0..*canonical(GraphDefinition)Canonical reference to a GraphDefinition

doco Documentation for this format

 

Other representations of profile: CSV, Excel, Schematron

Terminology Bindings

PathConformanceValueSet / Code
MessageDefinition.languagepreferredCommonLanguages
Max Binding: AllLanguages
MessageDefinition.statusrequiredPublicationStatus
MessageDefinition.jurisdictionextensibleJurisdiction ValueSet
MessageDefinition.event[x]extensibleCatalogMessageEventVS
MessageDefinition.categoryrequiredFixed Value: consequence
MessageDefinition.focus.coderequiredResourceType
MessageDefinition.responseRequiredrequiredmessageheader-response-request

Constraints

IdGradePathDetailsRequirements
cnl-0warningMessageDefinitionName 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-1errorMessageDefinition.metaAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.implicitRulesAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.languageAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorMessageDefinition.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorMessageDefinition.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorMessageDefinition.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorMessageDefinition.urlAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.identifierAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.versionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.nameAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.titleAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.replacesAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.statusAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.experimentalAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.dateAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.publisherAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.contactAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.descriptionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.useContextAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.jurisdictionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.purposeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.copyrightAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.baseAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.parentAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.event[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.categoryAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.focusAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
md-1errorMessageDefinition.focusMax must be postive int or *
: max='*' or (max.toInteger() > 0)
ele-1errorMessageDefinition.focus.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorMessageDefinition.focus.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorMessageDefinition.focus.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorMessageDefinition.focus.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorMessageDefinition.focus.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.focus.profileAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.focus.minAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.focus.maxAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.responseRequiredAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.allowedResponseAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.allowedResponse.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorMessageDefinition.allowedResponse.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorMessageDefinition.allowedResponse.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1errorMessageDefinition.allowedResponse.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1errorMessageDefinition.allowedResponse.messageAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.allowedResponse.situationAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1errorMessageDefinition.graphAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())