This page is part of the FHIR Specification (v1.8.0: STU 3 Draft). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3
FHIR Infrastructure Work Group | Maturity Level: 3 | Ballot Status: STU 3 |
The FHIR specification defines a set of data types that are used for the resource elements. There are four categories of data types:
This page describes the metadata types.
Table of Contents
ContactDetail | Contributor | DataRequirement | ParameterDefinition |
RelatedArtifact | TriggerDefinition | UsageContext |
See also Examples, Detailed Descriptions and Mappings.
The ContactDetail structure defines general contact details.
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
ContactDetail | Σ | Element | Contact information | |
name | Σ | 0..1 | string | Name of an individual to contact |
telecom | Σ | 0..* | ContactPoint | Contact details for individual or organization |
Documentation for this format |
UML Diagram (Legend)
XML Template
<[name] xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <name value="[string]"/><!-- 0..1 Name of an individual to contact --> <telecom><!-- 0..* ContactPoint Contact details for individual or organization --></telecom> </[name]>
JSON Template
{ "resourceType" : "ContactDetail", // from Element: extension "name" : "<string>", // Name of an individual to contact "telecom" : [{ ContactPoint }] // Contact details for individual or organization }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:ContactDetail.name [ string ]; # 0..1 Name of an individual to contact fhir:ContactDetail.telecom [ ContactPoint ], ... ; # 0..* Contact details for individual or organization ]
Changes since DSTU2
This complex-type did not exist in Release 2
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
ContactDetail | Σ | Element | Contact information | |
name | Σ | 0..1 | string | Name of an individual to contact |
telecom | Σ | 0..* | ContactPoint | Contact details for individual or organization |
Documentation for this format |
XML Template
<[name] xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <name value="[string]"/><!-- 0..1 Name of an individual to contact --> <telecom><!-- 0..* ContactPoint Contact details for individual or organization --></telecom> </[name]>
JSON Template
{ "resourceType" : "ContactDetail", // from Element: extension "name" : "<string>", // Name of an individual to contact "telecom" : [{ ContactPoint }] // Contact details for individual or organization }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:ContactDetail.name [ string ]; # 0..1 Name of an individual to contact fhir:ContactDetail.telecom [ ContactPoint ], ... ; # 0..* Contact details for individual or organization ]
Constraints
ContactDetail is used in the following places: ActivityDefinition, CapabilityStatement, CodeSystem, CompartmentDefinition, ConceptMap, DataElement, ExpansionProfile, ImplementationGuide, Library, Measure, MessageDefinition, NamingSystem, OperationDefinition, PlanDefinition, ResearchStudy, SearchParameter, ServiceDefinition, StructureDefinition, StructureMap, TestScript and ValueSet
See also Examples, Detailed Descriptions and Mappings.
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Contributor | Σ | Element | Contributor information | |
type | Σ | 1..1 | code | author | editor | reviewer | endorser ContributorType (Required) |
name | Σ | 1..1 | string | Name of the contributor |
contact | Σ | 0..* | ContactDetail | Contact details of the contributor |
Documentation for this format |
UML Diagram (Legend)
XML Template
<[name] xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <type value="[code]"/><!-- 1..1 author | editor | reviewer | endorser --> <name value="[string]"/><!-- 1..1 Name of the contributor --> <contact><!-- 0..* ContactDetail Contact details of the contributor --></contact> </[name]>
JSON Template
{ "resourceType" : "Contributor", // from Element: extension "type" : "<code>", // R! author | editor | reviewer | endorser "name" : "<string>", // R! Name of the contributor "contact" : [{ ContactDetail }] // Contact details of the contributor }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:Contributor.type [ code ]; # 1..1 author | editor | reviewer | endorser fhir:Contributor.name [ string ]; # 1..1 Name of the contributor fhir:Contributor.contact [ ContactDetail ], ... ; # 0..* Contact details of the contributor ]
Changes since DSTU2
This complex-type did not exist in Release 2
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Contributor | Σ | Element | Contributor information | |
type | Σ | 1..1 | code | author | editor | reviewer | endorser ContributorType (Required) |
name | Σ | 1..1 | string | Name of the contributor |
contact | Σ | 0..* | ContactDetail | Contact details of the contributor |
Documentation for this format |
XML Template
<[name] xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <type value="[code]"/><!-- 1..1 author | editor | reviewer | endorser --> <name value="[string]"/><!-- 1..1 Name of the contributor --> <contact><!-- 0..* ContactDetail Contact details of the contributor --></contact> </[name]>
JSON Template
{ "resourceType" : "Contributor", // from Element: extension "type" : "<code>", // R! author | editor | reviewer | endorser "name" : "<string>", // R! Name of the contributor "contact" : [{ ContactDetail }] // Contact details of the contributor }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:Contributor.type [ code ]; # 1..1 author | editor | reviewer | endorser fhir:Contributor.name [ string ]; # 1..1 Name of the contributor fhir:Contributor.contact [ ContactDetail ], ... ; # 0..* Contact details of the contributor ]
Constraints
Contributor is used in the following places: ActivityDefinition, Library, Measure, PlanDefinition and ServiceDefinition
See also Examples, Detailed Descriptions and Mappings.
The DataRequirement structure defines a general data requirement for a knowledge asset such as a decision support rule or quality measure.
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
DataRequirement | Σ | Element | Describes a required data item | |
type | Σ | 1..1 | code | The type of the required data FHIRAllTypes (Required) |
profile | Σ | 0..* | uri | The profile of the required data |
mustSupport | Σ | 0..* | string | Indicates that specific structure elements are referenced by the knowledge module |
codeFilter | Σ | 0..* | Element | Code filters for the data |
path | Σ | 1..1 | string | The code-valued attribute of the filter |
valueSet[x] | Σ | 0..1 | Valueset for the filter | |
valueSetString | string | |||
valueSetReference | Reference(ValueSet) | |||
valueCode | Σ | 0..* | code | Code value of the filter |
valueCoding | Σ | 0..* | Coding | Coding value of the filter |
valueCodeableConcept | Σ | 0..* | CodeableConcept | CodeableConcept value of the filter |
dateFilter | Σ | 0..* | Element | Date filters for the data |
path | Σ | 1..1 | string | The date-valued attribute of the filter |
value[x] | Σ | 0..1 | The value of the filter, as a Period, DateTime, or Duration value | |
valueDateTime | dateTime | |||
valuePeriod | Period | |||
valueDuration | Duration | |||
Documentation for this format |
UML Diagram (Legend)
XML Template
<[name] xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <type value="[code]"/><!-- 1..1 The type of the required data --> <profile value="[uri]"/><!-- 0..* The profile of the required data --> <mustSupport value="[string]"/><!-- 0..* Indicates that specific structure elements are referenced by the knowledge module --> <codeFilter> <!-- 0..* Code filters for the data --> <path value="[string]"/><!-- 1..1 The code-valued attribute of the filter --> <valueSet[x]><!-- 0..1 string|Reference(ValueSet) Valueset for the filter --></valueSet[x]> <valueCode value="[code]"/><!-- 0..* Code value of the filter --> <valueCoding><!-- 0..* Coding Coding value of the filter --></valueCoding> <valueCodeableConcept><!-- 0..* CodeableConcept CodeableConcept value of the filter --></valueCodeableConcept> </codeFilter> <dateFilter> <!-- 0..* Date filters for the data --> <path value="[string]"/><!-- 1..1 The date-valued attribute of the filter --> <value[x]><!-- 0..1 dateTime|Period|Duration The value of the filter, as a Period, DateTime, or Duration value --></value[x]> </dateFilter> </[name]>
JSON Template
{ // from Element: extension "type" : "<code>", // R! The type of the required data "profile" : ["<uri>"], // The profile of the required data "mustSupport" : ["<string>"], // Indicates that specific structure elements are referenced by the knowledge module "codeFilter" : [{ // Code filters for the data "path" : "<string>", // R! The code-valued attribute of the filter // valueSet[x]: Valueset for the filter. One of these 2: "valueSetString" : "<string>", "valueSetReference" : { Reference(ValueSet) }, "valueCode" : ["<code>"], // Code value of the filter "valueCoding" : [{ Coding }], // Coding value of the filter "valueCodeableConcept" : [{ CodeableConcept }] // CodeableConcept value of the filter }], "dateFilter" : [{ // Date filters for the data "path" : "<string>", // R! The date-valued attribute of the filter // value[x]: The value of the filter, as a Period, DateTime, or Duration value. One of these 3: "valueDateTime" : "<dateTime>" "valuePeriod" : { Period } "valueDuration" : { Duration } }] }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:DataRequirement.type [ code ]; # 1..1 The type of the required data fhir:DataRequirement.profile [ uri ], ... ; # 0..* The profile of the required data fhir:DataRequirement.mustSupport [ string ], ... ; # 0..* Indicates that specific structure elements are referenced by the knowledge module fhir:DataRequirement.codeFilter [ # 0..* Code filters for the data fhir:DataRequirement.codeFilter.path [ string ]; # 1..1 The code-valued attribute of the filter # DataRequirement.codeFilter.valueSet[x] : 0..1 Valueset for the filter. One of these 2 fhir:DataRequirement.codeFilter.valueSetString [ string ] fhir:DataRequirement.codeFilter.valueSetReference [ Reference(ValueSet) ] fhir:DataRequirement.codeFilter.valueCode [ code ], ... ; # 0..* Code value of the filter fhir:DataRequirement.codeFilter.valueCoding [ Coding ], ... ; # 0..* Coding value of the filter fhir:DataRequirement.codeFilter.valueCodeableConcept [ CodeableConcept ], ... ; # 0..* CodeableConcept value of the filter ], ...; fhir:DataRequirement.dateFilter [ # 0..* Date filters for the data fhir:DataRequirement.dateFilter.path [ string ]; # 1..1 The date-valued attribute of the filter # DataRequirement.dateFilter.value[x] : 0..1 The value of the filter, as a Period, DateTime, or Duration value. One of these 3 fhir:DataRequirement.dateFilter.valueDateTime [ dateTime ] fhir:DataRequirement.dateFilter.valuePeriod [ Period ] fhir:DataRequirement.dateFilter.valueDuration [ Duration ] ], ...; ]
Changes since DSTU2
This complex-type did not exist in Release 2
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
DataRequirement | Σ | Element | Describes a required data item | |
type | Σ | 1..1 | code | The type of the required data FHIRAllTypes (Required) |
profile | Σ | 0..* | uri | The profile of the required data |
mustSupport | Σ | 0..* | string | Indicates that specific structure elements are referenced by the knowledge module |
codeFilter | Σ | 0..* | Element | Code filters for the data |
path | Σ | 1..1 | string | The code-valued attribute of the filter |
valueSet[x] | Σ | 0..1 | Valueset for the filter | |
valueSetString | string | |||
valueSetReference | Reference(ValueSet) | |||
valueCode | Σ | 0..* | code | Code value of the filter |
valueCoding | Σ | 0..* | Coding | Coding value of the filter |
valueCodeableConcept | Σ | 0..* | CodeableConcept | CodeableConcept value of the filter |
dateFilter | Σ | 0..* | Element | Date filters for the data |
path | Σ | 1..1 | string | The date-valued attribute of the filter |
value[x] | Σ | 0..1 | The value of the filter, as a Period, DateTime, or Duration value | |
valueDateTime | dateTime | |||
valuePeriod | Period | |||
valueDuration | Duration | |||
Documentation for this format |
XML Template
<[name] xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <type value="[code]"/><!-- 1..1 The type of the required data --> <profile value="[uri]"/><!-- 0..* The profile of the required data --> <mustSupport value="[string]"/><!-- 0..* Indicates that specific structure elements are referenced by the knowledge module --> <codeFilter> <!-- 0..* Code filters for the data --> <path value="[string]"/><!-- 1..1 The code-valued attribute of the filter --> <valueSet[x]><!-- 0..1 string|Reference(ValueSet) Valueset for the filter --></valueSet[x]> <valueCode value="[code]"/><!-- 0..* Code value of the filter --> <valueCoding><!-- 0..* Coding Coding value of the filter --></valueCoding> <valueCodeableConcept><!-- 0..* CodeableConcept CodeableConcept value of the filter --></valueCodeableConcept> </codeFilter> <dateFilter> <!-- 0..* Date filters for the data --> <path value="[string]"/><!-- 1..1 The date-valued attribute of the filter --> <value[x]><!-- 0..1 dateTime|Period|Duration The value of the filter, as a Period, DateTime, or Duration value --></value[x]> </dateFilter> </[name]>
JSON Template
{ // from Element: extension "type" : "<code>", // R! The type of the required data "profile" : ["<uri>"], // The profile of the required data "mustSupport" : ["<string>"], // Indicates that specific structure elements are referenced by the knowledge module "codeFilter" : [{ // Code filters for the data "path" : "<string>", // R! The code-valued attribute of the filter // valueSet[x]: Valueset for the filter. One of these 2: "valueSetString" : "<string>", "valueSetReference" : { Reference(ValueSet) }, "valueCode" : ["<code>"], // Code value of the filter "valueCoding" : [{ Coding }], // Coding value of the filter "valueCodeableConcept" : [{ CodeableConcept }] // CodeableConcept value of the filter }], "dateFilter" : [{ // Date filters for the data "path" : "<string>", // R! The date-valued attribute of the filter // value[x]: The value of the filter, as a Period, DateTime, or Duration value. One of these 3: "valueDateTime" : "<dateTime>" "valuePeriod" : { Period } "valueDuration" : { Duration } }] }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:DataRequirement.type [ code ]; # 1..1 The type of the required data fhir:DataRequirement.profile [ uri ], ... ; # 0..* The profile of the required data fhir:DataRequirement.mustSupport [ string ], ... ; # 0..* Indicates that specific structure elements are referenced by the knowledge module fhir:DataRequirement.codeFilter [ # 0..* Code filters for the data fhir:DataRequirement.codeFilter.path [ string ]; # 1..1 The code-valued attribute of the filter # DataRequirement.codeFilter.valueSet[x] : 0..1 Valueset for the filter. One of these 2 fhir:DataRequirement.codeFilter.valueSetString [ string ] fhir:DataRequirement.codeFilter.valueSetReference [ Reference(ValueSet) ] fhir:DataRequirement.codeFilter.valueCode [ code ], ... ; # 0..* Code value of the filter fhir:DataRequirement.codeFilter.valueCoding [ Coding ], ... ; # 0..* Coding value of the filter fhir:DataRequirement.codeFilter.valueCodeableConcept [ CodeableConcept ], ... ; # 0..* CodeableConcept value of the filter ], ...; fhir:DataRequirement.dateFilter [ # 0..* Date filters for the data fhir:DataRequirement.dateFilter.path [ string ]; # 1..1 The date-valued attribute of the filter # DataRequirement.dateFilter.value[x] : 0..1 The value of the filter, as a Period, DateTime, or Duration value. One of these 3 fhir:DataRequirement.dateFilter.valueDateTime [ dateTime ] fhir:DataRequirement.dateFilter.valuePeriod [ Period ] fhir:DataRequirement.dateFilter.valueDuration [ Duration ] ], ...; ]
Constraints
A DataRequirement differs from a parameter in that it specifies the data to be provided in terms of the type of data, and specific filters on code-valued and/or date-valued attributes. Data requirements are not named because they are referenced by type within the evaluation context.
Data requirements are used by knowledge modules to communicate the set of required data to a consumer in a way that is computable (as opposed to a set of named parameters which must be integrated by hand based on the meaning of the parameter as communicated through the documentation).
DataRequirements are typically used to communicate patient-dependent information such as MedicationStatements and Encounters, whereas Parameters are typically used to communicate patient-independent information such as configuration values.
For example, consider the following CQL expression:
define "Total Colectomy Procedures":
[Procedure: "Total Colectomy Value Set"] P
where P.performedPeriod during "Measurement Period"
The criteria is looking for procedures matching the "Total Colectomy Value Set" that were performed during the "Measurement Period". In this case, "Measurement Period" is a parameter, referenced by name, whereas the reference to Procedure uses the name of the resource type, and so constitutes a data requirement of the criteria:
<dataRequirement>
<type value="Procedure"/>
<codeFilter>
<path value="code"/>
<valueSetString value="Total Colectomy Value Set"/>
</codeFilter>
<dateFilter>
<path value="performedPeriod"/>
<valuePeriod>
<start value="2016-01-01"/>
<end value="2016-12-31"/>
</valuePeriod>
</dateFilter>
</dataRequirement>
See also Examples, Detailed Descriptions and Mappings.
The ParameterDefinition structure defines a parameter to a knowledge asset such as a decision support rule or quality measure.
Parameters are typically used to communicate patient-independent information such as configuration values, whereas DataRequirements are typically used to communicate patient-dependent information such as MedicationStatements and Encounters.
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
ParameterDefinition | Σ | Element | Definition of a parameter to a module | |
name | Σ | 0..1 | code | Parameter name |
use | Σ | 1..1 | code | input | output OperationParameterUse (Required) |
min | Σ | 0..1 | integer | Minimum cardinality |
max | Σ | 0..1 | string | Maximum cardinality (a number of *) |
documentation | Σ | 0..1 | string | A brief description of the parameter |
type | Σ | 1..1 | code | Type for the parameter FHIRAllTypes (Required) |
profile | Σ | 0..1 | Reference(StructureDefinition) | The profile of the parameter, any |
Documentation for this format |
UML Diagram (Legend)
XML Template
<[name] xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <name value="[code]"/><!-- 0..1 Parameter name --> <use value="[code]"/><!-- 1..1 input | output --> <min value="[integer]"/><!-- 0..1 Minimum cardinality --> <max value="[string]"/><!-- 0..1 Maximum cardinality (a number of *) --> <documentation value="[string]"/><!-- 0..1 A brief description of the parameter --> <type value="[code]"/><!-- 1..1 Type for the parameter --> <profile><!-- 0..1 Reference(StructureDefinition) The profile of the parameter, any --></profile> </[name]>
JSON Template
{ // from Element: extension "name" : "<code>", // Parameter name "use" : "<code>", // R! input | output "min" : <integer>, // Minimum cardinality "max" : "<string>", // Maximum cardinality (a number of *) "documentation" : "<string>", // A brief description of the parameter "type" : "<code>", // R! Type for the parameter "profile" : { Reference(StructureDefinition) } // The profile of the parameter, any }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:ParameterDefinition.name [ code ]; # 0..1 Parameter name fhir:ParameterDefinition.use [ code ]; # 1..1 input | output fhir:ParameterDefinition.min [ integer ]; # 0..1 Minimum cardinality fhir:ParameterDefinition.max [ string ]; # 0..1 Maximum cardinality (a number of *) fhir:ParameterDefinition.documentation [ string ]; # 0..1 A brief description of the parameter fhir:ParameterDefinition.type [ code ]; # 1..1 Type for the parameter fhir:ParameterDefinition.profile [ Reference(StructureDefinition) ]; # 0..1 The profile of the parameter, any ]
Changes since DSTU2
This complex-type did not exist in Release 2
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
ParameterDefinition | Σ | Element | Definition of a parameter to a module | |
name | Σ | 0..1 | code | Parameter name |
use | Σ | 1..1 | code | input | output OperationParameterUse (Required) |
min | Σ | 0..1 | integer | Minimum cardinality |
max | Σ | 0..1 | string | Maximum cardinality (a number of *) |
documentation | Σ | 0..1 | string | A brief description of the parameter |
type | Σ | 1..1 | code | Type for the parameter FHIRAllTypes (Required) |
profile | Σ | 0..1 | Reference(StructureDefinition) | The profile of the parameter, any |
Documentation for this format |
XML Template
<[name] xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <name value="[code]"/><!-- 0..1 Parameter name --> <use value="[code]"/><!-- 1..1 input | output --> <min value="[integer]"/><!-- 0..1 Minimum cardinality --> <max value="[string]"/><!-- 0..1 Maximum cardinality (a number of *) --> <documentation value="[string]"/><!-- 0..1 A brief description of the parameter --> <type value="[code]"/><!-- 1..1 Type for the parameter --> <profile><!-- 0..1 Reference(StructureDefinition) The profile of the parameter, any --></profile> </[name]>
JSON Template
{ // from Element: extension "name" : "<code>", // Parameter name "use" : "<code>", // R! input | output "min" : <integer>, // Minimum cardinality "max" : "<string>", // Maximum cardinality (a number of *) "documentation" : "<string>", // A brief description of the parameter "type" : "<code>", // R! Type for the parameter "profile" : { Reference(StructureDefinition) } // The profile of the parameter, any }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:ParameterDefinition.name [ code ]; # 0..1 Parameter name fhir:ParameterDefinition.use [ code ]; # 1..1 input | output fhir:ParameterDefinition.min [ integer ]; # 0..1 Minimum cardinality fhir:ParameterDefinition.max [ string ]; # 0..1 Maximum cardinality (a number of *) fhir:ParameterDefinition.documentation [ string ]; # 0..1 A brief description of the parameter fhir:ParameterDefinition.type [ code ]; # 1..1 Type for the parameter fhir:ParameterDefinition.profile [ Reference(StructureDefinition) ]; # 0..1 The profile of the parameter, any ]
Constraints
See also Examples, Detailed Descriptions and Mappings.
The RelatedArtifact structure defines resources related to a module such as previous and next versions of documents, documentation, citations, etc. Note that the name resource here is being used in a more general sense than the FHIR-specific Resource. The related resource may be a FHIR resource, or it may be another type of resource, represented using the Attachment data type.
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
RelatedArtifact | Σ | Element | Related artifacts for a knowledge resource | |
type | Σ | 1..1 | code | documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of RelatedArtifactType (Required) |
display | Σ | 0..1 | string | Brief description of the related artifact |
citation | Σ | 0..1 | string | Bibliographic citation for the artifact |
url | Σ | 0..1 | uri | Url for the related artifact |
document | Σ | 0..1 | Attachment | The related document |
resource | Σ | 0..1 | Reference(Any) | The related resource |
Documentation for this format |
UML Diagram (Legend)
XML Template
<[name] xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <type value="[code]"/><!-- 1..1 documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of --> <display value="[string]"/><!-- 0..1 Brief description of the related artifact --> <citation value="[string]"/><!-- 0..1 Bibliographic citation for the artifact --> <url value="[uri]"/><!-- 0..1 Url for the related artifact --> <document><!-- 0..1 Attachment The related document --></document> <resource><!-- 0..1 Reference(Any) The related resource --></resource> </[name]>
JSON Template
{ "resourceType" : "RelatedArtifact", // from Element: extension "type" : "<code>", // R! documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of "display" : "<string>", // Brief description of the related artifact "citation" : "<string>", // Bibliographic citation for the artifact "url" : "<uri>", // Url for the related artifact "document" : { Attachment }, // The related document "resource" : { Reference(Any) } // The related resource }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:RelatedArtifact.type [ code ]; # 1..1 documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of fhir:RelatedArtifact.display [ string ]; # 0..1 Brief description of the related artifact fhir:RelatedArtifact.citation [ string ]; # 0..1 Bibliographic citation for the artifact fhir:RelatedArtifact.url [ uri ]; # 0..1 Url for the related artifact fhir:RelatedArtifact.document [ Attachment ]; # 0..1 The related document fhir:RelatedArtifact.resource [ Reference(Any) ]; # 0..1 The related resource ]
Changes since DSTU2
This complex-type did not exist in Release 2
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
RelatedArtifact | Σ | Element | Related artifacts for a knowledge resource | |
type | Σ | 1..1 | code | documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of RelatedArtifactType (Required) |
display | Σ | 0..1 | string | Brief description of the related artifact |
citation | Σ | 0..1 | string | Bibliographic citation for the artifact |
url | Σ | 0..1 | uri | Url for the related artifact |
document | Σ | 0..1 | Attachment | The related document |
resource | Σ | 0..1 | Reference(Any) | The related resource |
Documentation for this format |
XML Template
<[name] xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <type value="[code]"/><!-- 1..1 documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of --> <display value="[string]"/><!-- 0..1 Brief description of the related artifact --> <citation value="[string]"/><!-- 0..1 Bibliographic citation for the artifact --> <url value="[uri]"/><!-- 0..1 Url for the related artifact --> <document><!-- 0..1 Attachment The related document --></document> <resource><!-- 0..1 Reference(Any) The related resource --></resource> </[name]>
JSON Template
{ "resourceType" : "RelatedArtifact", // from Element: extension "type" : "<code>", // R! documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of "display" : "<string>", // Brief description of the related artifact "citation" : "<string>", // Bibliographic citation for the artifact "url" : "<uri>", // Url for the related artifact "document" : { Attachment }, // The related document "resource" : { Reference(Any) } // The related resource }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:RelatedArtifact.type [ code ]; # 1..1 documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of fhir:RelatedArtifact.display [ string ]; # 0..1 Brief description of the related artifact fhir:RelatedArtifact.citation [ string ]; # 0..1 Bibliographic citation for the artifact fhir:RelatedArtifact.url [ uri ]; # 0..1 Url for the related artifact fhir:RelatedArtifact.document [ Attachment ]; # 0..1 The related document fhir:RelatedArtifact.resource [ Reference(Any) ]; # 0..1 The related resource ]
Constraints
RelatedArtifact is used in the following places: ActivityDefinition, Library, Measure, PlanDefinition, RequestGroup, ResearchStudy and ServiceDefinition
See also Examples, Detailed Descriptions and Mappings.
The TriggerDefinition structure defines when a knowledge artifact is expected to be evaluated. The structure can represent three main kinds of triggering events:
A named event is an event identified by the implementation environment. This allows any event generated within the implementation environment to be used as a trigger, but it requires pre-coordination of the names involved with the consuming environments.
A scheduled event occurs on a fixed or periodic schedule.
And finally, a data event occurs in response to some data-related event in the integrated environment such as a record being added or updated. The data-of-interest for a data event is described using a DataRequirement. This allows for systems to automatically invoke based on data activity occurring within the system.
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
TriggerDefinition | Σ | Element | Defines an expected trigger for a module | |
type | Σ | 1..1 | code | named-event | periodic | data-added | data-modified | data-removed | data-accessed | data-access-ended TriggerType (Required) |
eventName | Σ | 0..1 | string | Name of the event |
eventTiming[x] | Σ | 0..1 | Timing of the event | |
eventTimingTiming | Timing | |||
eventTimingReference | Reference(Schedule) | |||
eventTimingDate | date | |||
eventTimingDateTime | dateTime | |||
eventData | Σ | 0..1 | DataRequirement | Triggering data of the event |
Documentation for this format |
UML Diagram (Legend)
XML Template
<[name] xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <type value="[code]"/><!-- 1..1 named-event | periodic | data-added | data-modified | data-removed | data-accessed | data-access-ended --> <eventName value="[string]"/><!-- 0..1 Name of the event --> <eventTiming[x]><!-- 0..1 Timing|Reference(Schedule)|date|dateTime Timing of the event --></eventTiming[x]> <eventData><!-- 0..1 DataRequirement Triggering data of the event --></eventData> </[name]>
JSON Template
{ // from Element: extension "type" : "<code>", // R! named-event | periodic | data-added | data-modified | data-removed | data-accessed | data-access-ended "eventName" : "<string>", // Name of the event // eventTiming[x]: Timing of the event. One of these 4: "eventTimingTiming" : { Timing }, "eventTimingReference" : { Reference(Schedule) }, "eventTimingDate" : "<date>", "eventTimingDateTime" : "<dateTime>", "eventData" : { DataRequirement } // Triggering data of the event }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:TriggerDefinition.type [ code ]; # 1..1 named-event | periodic | data-added | data-modified | data-removed | data-accessed | data-access-ended fhir:TriggerDefinition.eventName [ string ]; # 0..1 Name of the event # TriggerDefinition.eventTiming[x] : 0..1 Timing of the event. One of these 4 fhir:TriggerDefinition.eventTimingTiming [ Timing ] fhir:TriggerDefinition.eventTimingReference [ Reference(Schedule) ] fhir:TriggerDefinition.eventTimingDate [ date ] fhir:TriggerDefinition.eventTimingDateTime [ dateTime ] fhir:TriggerDefinition.eventData [ DataRequirement ]; # 0..1 Triggering data of the event ]
Changes since DSTU2
This complex-type did not exist in Release 2
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
TriggerDefinition | Σ | Element | Defines an expected trigger for a module | |
type | Σ | 1..1 | code | named-event | periodic | data-added | data-modified | data-removed | data-accessed | data-access-ended TriggerType (Required) |
eventName | Σ | 0..1 | string | Name of the event |
eventTiming[x] | Σ | 0..1 | Timing of the event | |
eventTimingTiming | Timing | |||
eventTimingReference | Reference(Schedule) | |||
eventTimingDate | date | |||
eventTimingDateTime | dateTime | |||
eventData | Σ | 0..1 | DataRequirement | Triggering data of the event |
Documentation for this format |
XML Template
<[name] xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <type value="[code]"/><!-- 1..1 named-event | periodic | data-added | data-modified | data-removed | data-accessed | data-access-ended --> <eventName value="[string]"/><!-- 0..1 Name of the event --> <eventTiming[x]><!-- 0..1 Timing|Reference(Schedule)|date|dateTime Timing of the event --></eventTiming[x]> <eventData><!-- 0..1 DataRequirement Triggering data of the event --></eventData> </[name]>
JSON Template
{ // from Element: extension "type" : "<code>", // R! named-event | periodic | data-added | data-modified | data-removed | data-accessed | data-access-ended "eventName" : "<string>", // Name of the event // eventTiming[x]: Timing of the event. One of these 4: "eventTimingTiming" : { Timing }, "eventTimingReference" : { Reference(Schedule) }, "eventTimingDate" : "<date>", "eventTimingDateTime" : "<dateTime>", "eventData" : { DataRequirement } // Triggering data of the event }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:TriggerDefinition.type [ code ]; # 1..1 named-event | periodic | data-added | data-modified | data-removed | data-accessed | data-access-ended fhir:TriggerDefinition.eventName [ string ]; # 0..1 Name of the event # TriggerDefinition.eventTiming[x] : 0..1 Timing of the event. One of these 4 fhir:TriggerDefinition.eventTimingTiming [ Timing ] fhir:TriggerDefinition.eventTimingReference [ Reference(Schedule) ] fhir:TriggerDefinition.eventTimingDate [ date ] fhir:TriggerDefinition.eventTimingDateTime [ dateTime ] fhir:TriggerDefinition.eventData [ DataRequirement ]; # 0..1 Triggering data of the event ]
Constraints
See also Examples, Detailed Descriptions and Mappings.
The UsageContext structure defines the context of use for a module.
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
UsageContext | Σ | Element | Describes the context of use for a conformance or knowledge resource | |
code | Σ | 1..1 | Coding | Type of context being specified UsageContextType (Extensible) |
value[x] | Σ | 1..1 | Value that defines the context | |
valueCodeableConcept | CodeableConcept | |||
valueQuantity | Quantity | |||
valueRange | Range | |||
Documentation for this format |
UML Diagram (Legend)
XML Template
<[name] xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <code><!-- 1..1 Coding Type of context being specified --></code> <value[x]><!-- 1..1 CodeableConcept|Quantity|Range Value that defines the context --></value[x]> </[name]>
JSON Template
{ "resourceType" : "UsageContext", // from Element: extension "code" : { Coding }, // R! Type of context being specified // value[x]: Value that defines the context. One of these 3: "valueCodeableConcept" : { CodeableConcept } "valueQuantity" : { Quantity } "valueRange" : { Range } }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:UsageContext.code [ Coding ]; # 1..1 Type of context being specified # UsageContext.value[x] : 1..1 Value that defines the context. One of these 3 fhir:UsageContext.valueCodeableConcept [ CodeableConcept ] fhir:UsageContext.valueQuantity [ Quantity ] fhir:UsageContext.valueRange [ Range ] ]
Changes since DSTU2
This complex-type did not exist in Release 2
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
UsageContext | Σ | Element | Describes the context of use for a conformance or knowledge resource | |
code | Σ | 1..1 | Coding | Type of context being specified UsageContextType (Extensible) |
value[x] | Σ | 1..1 | Value that defines the context | |
valueCodeableConcept | CodeableConcept | |||
valueQuantity | Quantity | |||
valueRange | Range | |||
Documentation for this format |
XML Template
<[name] xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <code><!-- 1..1 Coding Type of context being specified --></code> <value[x]><!-- 1..1 CodeableConcept|Quantity|Range Value that defines the context --></value[x]> </[name]>
JSON Template
{ "resourceType" : "UsageContext", // from Element: extension "code" : { Coding }, // R! Type of context being specified // value[x]: Value that defines the context. One of these 3: "valueCodeableConcept" : { CodeableConcept } "valueQuantity" : { Quantity } "valueRange" : { Range } }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:UsageContext.code [ Coding ]; # 1..1 Type of context being specified # UsageContext.value[x] : 1..1 Value that defines the context. One of these 3 fhir:UsageContext.valueCodeableConcept [ CodeableConcept ] fhir:UsageContext.valueQuantity [ Quantity ] fhir:UsageContext.valueRange [ Range ] ]
Constraints
UsageContext is used in the following places: ActivityDefinition, CapabilityStatement, CodeSystem, CompartmentDefinition, ConceptMap, DataElement, ExpansionProfile, ImplementationGuide, Library, Measure, MessageDefinition, NamingSystem, OperationDefinition, PlanDefinition, SearchParameter, ServiceDefinition, StructureDefinition, StructureMap, TestScript and ValueSet