FHIR Release 3 (STU) CI-Build

This page is part of the FHIR Specification (v3.0.2: STU 3). The current version which supercedes this version is 5.0.0 . For a full list Continuous Integration Build of available versions, see FHIR (will be incorrect/inconsistent at times).
See the Directory of published versions icon . Page versions: R5 R4B R4 R3

2.27.0 2.1.27.5.0 MetaData Types MetaDatatypes

Maturity Level : 4
Responsible Owner: FHIR Infrastructure icon Work Group Ballot Standards Status : Trial Use Normative

The FHIR specification defines Types Framework Cross Reference: Base Types | Datatypes | Resources | Patterns

This page describes a set of data types that are used for the resource elements. There are four categories of data types: simple / primitive types, which are single elements with a primitive value General purpose complex types, which are re-usable clusters of elements Complex data types for conveying metadata Special purpose data types: Reference , Narrative , Extension , Meta about knowledge resources (mainly for Terminology , Conformance and Dosage Clinical Definition This page describes the metadata types. resources).

Table of Contents

Contributor
ContactDetail DataRequirement ParameterDefinition RelatedArtifact
TriggerDefinition Expression UsageContext ExtendedContactDetail
VirtualServiceDetail Availability MonetaryComponent

For an index of all datatypes, see the Datatypes page .

See also Examples , Detailed Descriptions , Mappings , Profiles and Mappings . Extensions

The ContactDetail structure defines general contact details.

Structure

Name Flags Card. Type Description & Constraints      Filter: Filters doco
. . ContactDetail Σ N Element Contact information

Elements defined in Ancestors: id , extension
. . . name Σ 0..1 string Name of an individual to contact
. . . telecom Σ 0..* ContactPoint Contact details for individual or organization


doco Documentation for this format icon

Definition: XML | JSON

UML Diagram ( Legend )

Element Extensions - as described for all elements: additional information that is not part of the basic definition of the resource / type extension : Extension 0..* ContactDetail The name of an individual to contact name : string [0..1] The contact details for the individual (if a name was provided) or the organization telecom : ContactPoint [0..*] DataType

XML Template

<

<ContactDetail 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]>

</ContactDetail>

JSON Template


{doco
  "resourceType" : "",

  // 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: 
  fhir:
  fhir:

 # from Element: fhir:extension
  fhir:name [ string ] ; # 0..1 Name of an individual to contact
  fhir:telecom  ( [ ContactPoint ] ... ) ; # 0..* Contact details for individual or organization

]

Changes since DSTU2 Release 3



This complex-type did not exist in Release 2 Changes from both R4 and R4B

ContactDetail
  • No Changes

See the Full Difference for further information

Structure

Name Flags Card. Type Description & Constraints      Filter: Filters doco
. . ContactDetail Σ N Element Contact information

Elements defined in Ancestors: id , extension
. . . name Σ 0..1 string Name of an individual to contact
. . . telecom Σ 0..* ContactPoint Contact details for individual or organization


doco Documentation for this format icon

UML Diagram ( Legend )

Element Extensions - as described for all elements: additional information that is not part of the basic definition of the resource / type extension : Extension 0..* ContactDetail The name of an individual to contact name : string [0..1] The contact details for the individual (if a name was provided) or the organization telecom : ContactPoint [0..*] DataType

XML Template

<

<ContactDetail 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]>

</ContactDetail>

JSON Template

{doco
  "resourceType" : "",

  // 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: 
  fhir:
  fhir:

 # from Element: fhir:extension
  fhir:name [ string ] ; # 0..1 Name of an individual to contact
  fhir:telecom  ( [ ContactPoint ] ... ) ; # 0..* Contact details for individual or organization

]

Changes since DSTU2 Release 3

This complex-type did not exist in Release 2 Changes from both R4 and R4B

ContactDetail
  • No Changes

See the Full Difference for further information

Constraints

ContactDetail is used in the following places: ActivityDefinition , ActorDefinition , CanonicalResource , CapabilityStatement , CodeSystem , CompartmentDefinition , ConceptMap , DataElement ConditionDefinition , ExpansionProfile DeviceDefinition , GraphDefinition EventDefinition , Evidence , EvidenceVariable , ExampleScenario , FormularyItem , Group , ImplementationGuide , Library , Measure , MedicationKnowledge , MessageDefinition , MetadataResource , NamingSystem , ObservationDefinition , OperationDefinition , Parameters , PlanDefinition , Questionnaire , ResearchStudy Requirements , SearchParameter , ServiceDefinition SpecimenDefinition , StructureDefinition , StructureMap , TestScript SubscriptionTopic , Task , TerminologyCapabilities and ValueSet

2.27.0.0.1.1 Interpretation of ContactDetail in different contexts  

See also Examples , Detailed Descriptions , Mappings , Profiles and Mappings . Extensions

The DataRequirement structure defines a general data requirement for a knowledge asset such as a decision support rule or quality measure.

Structure

author | editor | reviewer | endorser 1..1 Who contributed Contact details of the contributor XML Template Flags author | editor | reviewer | endorser 0..* Contact details of UML The profile of the required data Indicates that specific structure elements are referenced by the knowledge module 1..1 The code-valued valueSetReference 0..* code What code is expected What Coding is expected What CodeableConcept is expected What dates/date ranges are expected 1..1 The date-valued attribute 0..1 valuePeriod
Name Flags Card. Type Description & Constraints      Filter: Filters doco
. . Contributor DataRequirement Σ N Element Describes a required data item
Contributor information
Elements defined in Ancestors: id , extension
. . . type Σ 1..1 code The type of the required data
ContributorType Binding: All FHIR Types ( Required )
. . name . profile Σ 0..* string canonical ( StructureDefinition ) The profile of the content required data

. contact . . subject[x] Σ 0..* ContactDetail 0..1 E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
Documentation for this format Binding: Participant Resource Types UML Diagram ( Legend Extensible ) Element Extensions - as described for all elements: additional information that is not part of the basic definition of the resource / type extension : Extension 0..* Contributor
The type of contributor type : code [1..1] . The type of contributor (Strength=Required) ContributorType ! . . . subjectCodeableConcept The name of the individual or organization responsible for the contribution name : string [1..1] Contact details to assist a user in finding and communicating with the contributor contact : ContactDetail CodeableConcept [0..*]
< <!-- from Element: --> < < <</contact> </[name]> . JSON Template .  { "resourceType" : "", // from Element: " " " } . Turtle Template . subjectReference  @prefix fhir: <http://hl7.org/fhir/> . [ # from Element: fhir: fhir: fhir: ] Changes since DSTU2  This complex-type did not exist in Release 2 Reference Structure Name ( Group )
. Contributor . . codeFilter Σ C 0..* Element What codes are expected
+ Rule: Either a path or a searchParam must be provided, but not both
Contributor information
Elements defined in Ancestors: id , extension
. . . . type path Σ C 1..1 0..1 code string A code-valued attribute to filter on
ContributorType ( Required )
. . name . . searchParam Σ C 1..1 0..1 string A coded (token) parameter to search on
Who contributed the content
. . contact . . valueSet Σ 0..1 ContactDetail canonical ( ValueSet ) ValueSet for the contributor filter
. . Documentation for this format . . code Σ UML Diagram ( Legend ) Element Extensions - as described for all elements: additional information that is not part of the basic definition of the resource / type extension : Extension 0..* Contributor Coding The type of contributor type : What code [1..1] The type of contributor (Strength=Required) ContributorType ! The name of the individual or organization responsible for the contribution name : string [1..1] is expected

Contact details to assist a user in finding and communicating with the contributor contact : ContactDetail [0..*]
. . . dateFilter XML Template < <!-- from Element: --> < < <</contact> </[name]> Σ JSON Template { "resourceType" : "", // from Element: " " " } C Turtle Template 0..* @prefix fhir: <http://hl7.org/fhir/> . [ # from Element: fhir: fhir: fhir: ] Element Changes since DSTU2 What dates/date ranges are expected
This complex-type did + Rule: Either a path or a searchParam must be provided, but not exist in Release 2 Constraints Contributor is used in the following places: ActivityDefinition , Library , Measure , PlanDefinition and ServiceDefinition 2.27.0.0.2.1 Interpretation of Contributor in different contexts   2.27.0.0.3 both DataRequirement
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
. XML . . JSON . path Turtle Σ R2 Diff C 0..1 All string Structure A date-valued attribute to filter on
Name
Flags . . . Card. . searchParam Type Σ Description & Constraints C 0..1 string A date valued parameter to search on
. DataRequirement . . . value[x] Σ Element 0..1 Describes The value of the filter, as a required data item Period, DateTime, or Duration value
Elements defined in Ancestors: id , extension
. type . . . Σ . valueDateTime 1..1 code dateTime The type of the required data FHIRAllTypes ( Required )
. profile . . . Σ . valuePeriod 0..* uri Period
. mustSupport . . . Σ . valueDuration 0..* string Duration
. codeFilter . . valueFilter Σ 0..* Element What codes values are expected

. . . . path Σ 0..1 string An attribute of the to filter on
. . . valueSet[x] . searchParam Σ 0..1 string A parameter to search on
Valueset for the filter
. . . . valueSetString comparator string Σ 0..1 code Reference eq | gt | lt | ge | le | sa | eb
Binding: Value Filter Comparator ( ValueSet Required )
. . valueCode . . value[x] Σ 0..1 The value of the filter, as a Period, DateTime, or Duration value
. . valueCoding . . Σ . valueDateTime 0..* Coding dateTime
. . valueCodeableConcept . . Σ . valuePeriod 0..* CodeableConcept Period
. dateFilter . . . Σ . valueDuration 0..* Element Duration
. . path . limit Σ 0..1 string positiveInt Number of the filter results
. value[x] . . sort Σ 0..* Element The value Order of the filter, as a Period, DateTime, or Duration value results

. . . valueDateTime . path dateTime Σ 1..1 Period string The name of the attribute to perform the sort
. . . valueDuration . direction Σ 1..1 Duration code ascending | descending
Binding: SortDirection ( Required )

doco Documentation for this format icon

Definition: XML | JSON

UML Diagram ( Legend )

Element Extensions - as described for all elements: additional information that is not part of the basic definition of the resource / type extension : Extension 0..* DataRequirement The type of the required data, specified as the type name of a resource. For profiles, this value is set to the type of the base resource of the profile type : code [1..1] « Either an abstract type, a resource or a List of FHIR types (resources, data type. types). (Strength=Required) FHIRAllTypes FHIRTypes ! » The profile of the required data, specified as the uri of the profile definition profile : uri canonical [0..*] « StructureDefinition » The intended subjects of the data requirement. If this element is not provided, a Patient subject is assumed subject[x] : DataType [0..1] « CodeableConcept | Reference ( Group ); The possible types of subjects for a data requirement (E.g., Patient, Practitioner, Organization, Location, etc.). (Strength=Extensible) ParticipantResourceTypes + » Indicates that specific elements of the type are referenced by the knowledge module and must be supported by the consumer in order to obtain an effective evaluation. This does not mean that a value is required for this element, only that the consuming system must understand the element and be able to provide values for it if they are available. Note that the The value for this element can of mustSupport SHALL be a path to allow references to nested elements. In that case, all FHIRPath resolvable on the elements along type of the DataRequirement. The path must be supported SHALL consist only of identifiers, constant indexers, and .resolve() (see the [Simple FHIRPath Profile](fhirpath.html#simple) for full details) mustSupport : string [0..*] Specifies a maximum number of results that are required (uses the _count search parameter) limit : positiveInt [0..1] CodeFilter The code-valued attribute of the filter. The specified path must SHALL be a FHIRPath resolvable from on the specified type of the required data. DataRequirement, and SHALL consist only of identifiers, constant indexers, and .resolve(). The path is allowed to contain qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to traverse multiple-cardinality sub-elements. sub-elements (see the [Simple FHIRPath Profile](fhirpath.html#simple) for full details). Note that the index must be an integer constant. The path must resolve to an element of type code, Coding, or CodeableConcept path : string [1..1] [0..1] « This element has or is affected by some invariants C » A token parameter that refers to a search parameter defined on the specified type of the DataRequirement, and which searches on elements of type code, Coding, or CodeableConcept searchParam : string [0..1] « This element has or is affected by some invariants C » The valueset for the code filter. The valueSet and value code elements are exclusive. additive. If valueSet is specified, the filter will return only those data items for which the value of the code-valued element specified in the path is a member of the specified valueset valueSet[x] valueSet : Type canonical [0..1] string | Reference ( « ValueSet ) » The codes for the code filter. Only one of valueSet, valueCode, valueCoding, or valueCodeableConcept may be specified. If values are given, the filter will return only those data items for which the code-valued attribute specified by the path has a value that is one of the specified codes valueCode : code [0..*] The Codings for the code filter. Only one of valueSet, valueCode, valueConding, or valueCodeableConcept may be specified. codes. If values codes are given, the filter will return only those data items for which the code-valued attribute specified by the path has in addition to a value that is one of the specified Codings valueCoding : Coding [0..*] The CodeableConcepts for the code filter. Only one of valueSet, valueCode, valueConding, or valueCodeableConcept may be specified. If values are given, set, the filter will return only those data returns items for which the code-valued attribute specified by the path has matching a code in the value that is set or one of the specified CodeableConcepts codes valueCodeableConcept code : CodeableConcept Coding [0..*] DateFilter The date-valued attribute of the filter. The specified path must SHALL be a FHIRPath resolvable from on the specified type of the required data. DataRequirement, and SHALL consist only of identifiers, constant indexers, and .resolve(). The path is allowed to contain qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to traverse multiple-cardinality sub-elements. sub-elements (see the [Simple FHIRPath Profile](fhirpath.html#simple) for full details). Note that the index must be an integer constant. The path must resolve to an element of type date, dateTime, Period, Schedule, or Timing path : string [1..1] [0..1] « This element has or is affected by some invariants C » A date parameter that refers to a search parameter defined on the specified type of the DataRequirement, and which searches on elements of type date, dateTime, Period, Schedule, or Timing searchParam : string [0..1] « This element has or is affected by some invariants C » The value of the filter. If period is specified, the filter will return only those data items that fall within the bounds determined by the Period, inclusive of the period boundaries. If dateTime is specified, the filter will return only those data items that are equal to the specified dateTime. If a Duration is specified, the filter will return only those data items that fall within Duration from before now value[x] : Type DataType [0..1] « dateTime | Period | Duration » ValueFilter The attribute of the filter. The specified path SHALL be a FHIRPath resolvable on the specified type of the DataRequirement, and SHALL consist only of identifiers, constant indexers, and .resolve(). The path is allowed to contain qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to traverse multiple-cardinality sub-elements (see the [Simple FHIRPath Profile](fhirpath.html#simple) for full details). Note that the index must be an integer constant. The path must resolve to an element of a type that is comparable to the valueFilter.value[x] element for the filter path : string [0..1] A search parameter defined on the specified type of the DataRequirement, and which searches on elements of a type compatible with the type of the valueFilter.value[x] for the filter searchParam : string [0..1] The comparator to be used to determine whether the value is matching comparator : code [0..1] « Possible comparators for the valueFilter element. (Strength=Required) ValueFilterComparator ! » The value of the filter value[x] : DataType [0..1] « dateTime | Period | Duration » Sort The attribute of the sort. The specified path must be resolvable from the type of the required data. The path is allowed to contain qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to traverse multiple-cardinality sub-elements. Note that the index must be an integer constant path : string [1..1] The direction of the sort, ascending or descending direction : code [1..1] « The possible sort directions, ascending or descending. (Strength=Required) SortDirection ! » DataType Code filters specify additional constraints on the data, specifying the value set of interest for a particular element of the data data. Each code filter defines an additional constraint on the data, i.e. code filters are AND'ed, not OR'ed codeFilter [0..*] Date filters specify additional constraints on the data in terms of the applicable date range for specific elements elements. Each date filter specifies an additional constraint on the data, i.e. date filters are AND'ed, not OR'ed dateFilter [0..*] Value filters specify additional constraints on the data for elements other than code-valued or date-valued. Each value filter specifies an additional constraint on the data (i.e. valueFilters are AND'ed, not OR'ed) valueFilter [0..*] Specifies the order of the results to be returned sort [0..*]

XML Template

<

<DataRequirement xmlns="http://hl7.org/fhir">

 <!-- from Element: extension -->
 <
 <
 <
 <
  <
  <</valueSet[x]>
  <
  <</valueCoding>
  <</valueCodeableConcept>

 <type value="[code]"/><!-- 1..1 The type of the required data -->
 <profile><!-- 0..* canonical(StructureDefinition) The profile of the required data --></profile>
 <subject[x]><!-- 0..1 CodeableConcept|Reference(Group) E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device --></subject[x]>
 <mustSupport value="[string]"/><!-- 0..* Indicates specific structure elements that are referenced by the knowledge module -->
 <codeFilter>  <!-- 0..* What codes are expected -->
  <path value="[string]"/><!-- I 0..1 A code-valued attribute to filter on -->
  <searchParam value="[string]"/><!-- I 0..1 A coded (token) parameter to search on -->
  <valueSet><!-- 0..1 canonical(ValueSet) ValueSet for the filter --></valueSet>
  <code><!-- 0..* Coding What code is expected --></code>

 </codeFilter>
 <
  <
  <</value[x]>

 <dateFilter>  <!-- 0..* What dates/date ranges are expected -->
  <path value="[string]"/><!-- I 0..1 A date-valued attribute to filter on -->
  <searchParam value="[string]"/><!-- I 0..1 A date valued parameter to search on -->
  <value[x]><!-- 0..1 dateTime|Period|Duration The value of the filter, as a Period, DateTime, or Duration value --></value[x]>

 </dateFilter>
</[name]>

 <valueFilter>  <!-- 0..* What values are expected -->
  <path value="[string]"/><!-- 0..1 An attribute to filter on -->
  <searchParam value="[string]"/><!-- 0..1 A parameter to search on -->
  <comparator value="[code]"/><!-- 0..1 eq | gt | lt | ge | le | sa | eb -->
  <value[x]><!-- 0..1 dateTime|Period|Duration The value of the filter, as a Period, DateTime, or Duration value --></value[x]>
 </valueFilter>
 <limit value="[positiveInt]"/><!-- 0..1 Number of results -->
 <sort>  <!-- 0..* Order of the results -->
  <path value="[string]"/><!-- 1..1 The name of the attribute to perform the sort -->
  <direction value="[code]"/><!-- 1..1 ascending | descending -->
 </sort>
</DataRequirement>

JSON Template


{doco
  // from Element: extension
  "
  "
  "
  "
    "
    
    ">",
    " },
    "
    "
    "

  "type" : "<code>", // R!  The type of the required data
  "profile" : ["<canonical(StructureDefinition)>"], // The profile of the required data
  // subject[x]: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device. One of these 2:

  "subjectCodeableConcept" : { CodeableConcept },
  "subjectReference" : { Reference(Group) },
  "mustSupport" : ["<string>"], // Indicates specific structure elements that are referenced by the knowledge module
  "codeFilter" : [{ // What codes are expected
    "path" : "<string>", // I A code-valued attribute to filter on
    "searchParam" : "<string>", // I A coded (token) parameter to search on
    "valueSet" : "<canonical(ValueSet)>", // ValueSet for the filter
    "code" : [{ Coding }] // What code is expected

  }],
  "
    "

  "dateFilter" : [{ // What dates/date ranges are expected
    "path" : "<string>", // I A date-valued attribute to filter on
    "searchParam" : "<string>", // I A date valued parameter to search on

    // value[x]: The value of the filter, as a Period, DateTime, or Duration value. One of these 3:
    ">"
    " }
    " }

    "valueDateTime" : "<dateTime>",
    "valuePeriod" : { Period },
    "valueDuration" : { Duration }
  }],
  "valueFilter" : [{ // What values are expected
    "path" : "<string>", // An attribute to filter on
    "searchParam" : "<string>", // A parameter to search on
    "comparator" : "<code>", // eq | gt | lt | ge | le | sa | eb
    // value[x]: The value of the filter, as a Period, DateTime, or Duration value. One of these 3:

    "valueDateTime" : "<dateTime>",
    "valuePeriod" : { Period },
    "valueDuration" : { Duration }
  }],
  "limit" : "<positiveInt>", // Number of results
  "sort" : [{ // Order of the results
    "path" : "<string>", // R!  The name of the attribute to perform the sort
    "direction" : "<code>" // R!  ascending | descending

  }]
}

Turtle Template


@prefix fhir: <http://hl7.org/fhir/> .

[
 # from Element: 
  fhir:
  fhir:
  fhir:
  fhir:
    fhir:
    # . One of these 2
      fhir: ]
      fhir:) ]
    fhir:
    fhir:
    fhir:
  ], ...;
  fhir:
    fhir:
    # . One of these 3
      fhir: ]
      fhir: ]
      fhir: ]
  ], ...;

 # from Element: fhir:extension
  fhir:type [ code ] ; # 1..1 The type of the required data
  fhir:profile  ( [ canonical(StructureDefinition) ] ... ) ; # 0..* The profile of the required data
  # subject[x] : 0..1 E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device. One of these 2
    fhir:subject [  a fhir:CodeableConcept ; CodeableConcept ]
    fhir:subject [  a fhir:Reference ; Reference(Group) ]
  fhir:mustSupport  ( [ string ] ... ) ; # 0..* Indicates specific structure elements that are referenced by the knowledge module
  fhir:codeFilter ( [ # 0..* What codes are expected
    fhir:path [ string ] ; # 0..1 I A code-valued attribute to filter on
    fhir:searchParam [ string ] ; # 0..1 I A coded (token) parameter to search on
    fhir:valueSet [ canonical(ValueSet) ] ; # 0..1 ValueSet for the filter
    fhir:code  ( [ Coding ] ... ) ; # 0..* What code is expected
  ] ... ) ;
  fhir:dateFilter ( [ # 0..* What dates/date ranges are expected
    fhir:path [ string ] ; # 0..1 I A date-valued attribute to filter on
    fhir:searchParam [ string ] ; # 0..1 I A date valued parameter to search on
    # value[x] : 0..1 The value of the filter, as a Period, DateTime, or Duration value. One of these 3
      fhir:value [  a fhir:DateTime ; dateTime ]
      fhir:value [  a fhir:Period ; Period ]
      fhir:value [  a fhir:Duration ; Duration ]
  ] ... ) ;
  fhir:valueFilter ( [ # 0..* What values are expected
    fhir:path [ string ] ; # 0..1 An attribute to filter on
    fhir:searchParam [ string ] ; # 0..1 A parameter to search on
    fhir:comparator [ code ] ; # 0..1 eq | gt | lt | ge | le | sa | eb
    # value[x] : 0..1 The value of the filter, as a Period, DateTime, or Duration value. One of these 3
      fhir:value [  a fhir:DateTime ; dateTime ]
      fhir:value [  a fhir:Period ; Period ]
      fhir:value [  a fhir:Duration ; Duration ]
  ] ... ) ;
  fhir:limit [ positiveInt ] ; # 0..1 Number of results
  fhir:sort ( [ # 0..* Order of the results
    fhir:path [ string ] ; # 1..1 The name of the attribute to perform the sort
    fhir:direction [ code ] ; # 1..1 ascending | descending
  ] ... ) ;

]

Changes since DSTU2 Release 3



This complex-type did not exist in Release 2 Changes from both R4 and R4B

DataRequirement
DataRequirement.type
  • Change value set from http://hl7.org/fhir/ValueSet/all-types|4.0.0 to All FHIR Types
  • Remove codes Address , Age , Annotation , Attachment , BackboneElement , CodeableConcept , Coding , ContactDetail , ContactPoint , Contributor , Count , DataRequirement , Distance , Dosage , Duration , Element , ElementDefinition , Expression , Extension , HumanName , Identifier , MarketingStatus , Meta , Money , MoneyQuantity , Narrative , ParameterDefinition , Period , Population , ProdCharacteristic , ProductShelfLife , Quantity , Range , Ratio , Reference , RelatedArtifact , SampledData , Signature , SimpleQuantity , SubstanceAmount , Timing , TriggerDefinition , UsageContext , base64Binary , boolean , canonical , code , date , dateTime , decimal , id , instant , integer , markdown , oid , positiveInt , string , time , unsignedInt , uri , url , uuid , xhtml , Account , ActivityDefinition , AdverseEvent , AllergyIntolerance , Appointment , AppointmentResponse , AuditEvent , Basic , Binary , BiologicallyDerivedProduct , BodyStructure , Bundle , CapabilityStatement , CarePlan , CareTeam , CatalogEntry , ChargeItem , ChargeItemDefinition , Claim , ClaimResponse , ClinicalImpression , CodeSystem , Communication , CommunicationRequest , CompartmentDefinition , Composition , ConceptMap , Condition , Consent , Contract , Coverage , CoverageEligibilityRequest , CoverageEligibilityResponse , DetectedIssue , Device , DeviceDefinition , DeviceMetric , DeviceRequest , DeviceUseStatement , DiagnosticReport , DocumentManifest , DocumentReference , DomainResource , EffectEvidenceSynthesis , Encounter , Endpoint , EnrollmentRequest , EnrollmentResponse , EpisodeOfCare , EventDefinition , Evidence , EvidenceVariable , ExampleScenario , ExplanationOfBenefit , FamilyMemberHistory , Flag , Goal , GraphDefinition , Group , GuidanceResponse , HealthcareService , ImagingStudy , Immunization , ImmunizationEvaluation , ImmunizationRecommendation , ImplementationGuide , InsurancePlan , Invoice , Library , Linkage , List , Location , Measure , MeasureReport , Media , Medication , MedicationAdministration , MedicationDispense , MedicationKnowledge , MedicationRequest , MedicationStatement , MedicinalProduct , MedicinalProductAuthorization , MedicinalProductContraindication , MedicinalProductIndication , MedicinalProductIngredient , MedicinalProductInteraction , MedicinalProductManufactured , MedicinalProductPackaged , MedicinalProductPharmaceutical , MedicinalProductUndesirableEffect , MessageDefinition , MessageHeader , MolecularSequence , NamingSystem , NutritionOrder , Observation , ObservationDefinition , OperationDefinition , OperationOutcome , Organization , OrganizationAffiliation , Parameters , Patient , PaymentNotice , PaymentReconciliation , Person , PlanDefinition , Practitioner , PractitionerRole , Procedure , Provenance , Questionnaire , QuestionnaireResponse , RelatedPerson , RequestGroup , ResearchDefinition , ResearchElementDefinition , ResearchStudy , ResearchSubject , Resource , RiskAssessment , RiskEvidenceSynthesis , Schedule , SearchParameter , ServiceRequest , Slot , Specimen , SpecimenDefinition , StructureDefinition , StructureMap , Subscription , Substance , SubstanceNucleicAcid , SubstancePolymer , SubstanceProtein , SubstanceReferenceInformation , SubstanceSourceMaterial , SubstanceSpecification , SupplyDelivery , SupplyRequest , Task , TerminologyCapabilities , TestReport , TestScript , ValueSet , VerificationResult , VisionPrescription , Type , Any
  • Add code Base
DataRequirement.subject[x]
  • Change value set from http://hl7.org/fhir/ValueSet/subject-type to Participant Resource Types
  • Change code system for extensibly bound codes from "http://hl7.org/fhir/resource-types" to "http://hl7.org/fhir/fhir-types"
DataRequirement.valueFilter
  • Added Element
DataRequirement.valueFilter.path
  • Added Element
DataRequirement.valueFilter.searchParam
  • Added Element
DataRequirement.valueFilter.comparator
  • Added Element
DataRequirement.valueFilter.value[x]
  • Added Element

See the Full Difference for further information

Structure

The 0..1 0..* What Coding is expected Σ What CodeableConcept is expected 1..1 0..1
Name Flags Card. Type Description & Constraints      Filter: Filters doco
. . DataRequirement Σ N Element Describes a required data item

Elements defined in Ancestors: id , extension
. . . type Σ 1..1 code The type of the required data
FHIRAllTypes Binding: All FHIR Types ( Required )
. . . profile Σ 0..* uri canonical ( StructureDefinition ) The profile of the required data

. . mustSupport . subject[x] Σ 0..1 E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device
Binding: Participant Resource Types ( Extensible )
Σ
. . . . subjectCodeableConcept 0..* CodeableConcept
.... subjectReference Reference ( Group )
. . . codeFilter Σ C 0..* Element What codes are expected
+ Rule: Either a path or a searchParam must be provided, but not both

. . . . path Σ C 1..1 0..1 string A code-valued attribute of the to filter on
. . . valueSet[x] . searchParam Σ C 0..1 string Σ A coded (token) parameter to search on
. . . . valueSet Σ Valueset 0..1 canonical ( ValueSet ) ValueSet for the filter
. . . valueSetString . code Σ 0..* string Coding What code is expected

. . . dateFilter valueSetReference Σ C 0..* Reference ( ValueSet Element ) What dates/date ranges are expected
+ Rule: Either a path or a searchParam must be provided, but not both

. . . valueCode . path Σ C 0..1 string Σ A date-valued attribute to filter on
. . . . searchParam Σ code C 0..1 What code is expected string A date valued parameter to search on
. . . valueCoding . value[x] Σ 0..1 The value of the filter, as a Period, DateTime, or Duration value
Σ
. . . . . valueDateTime 0..* Coding dateTime
. . . valueCodeableConcept . . valuePeriod Period
. . . . . valueDuration 0..* CodeableConcept Duration
. dateFilter . . valueFilter Σ 0..* Element What dates/date ranges values are expected

. . . . path Σ 0..1 string Σ An attribute to filter on
. . . . searchParam Σ 0..1 string A parameter to search on
The date-valued attribute of the filter
. . . value[x] . comparator Σ 0..1 code Σ eq | gt | lt | ge | le | sa | eb
Binding: Value Filter Comparator ( Required )
. . . . value[x] Σ 0..1 The value of the filter, as a Period, DateTime, or Duration value
. . . . . valueDateTime dateTime
. . . . . valuePeriod Period
. . . . . valueDuration Duration
. . . limit Σ 0..1 positiveInt Number of results
... sort Σ 0..* Element Order of the results

.... path Σ 1..1 string The name of the attribute to perform the sort
.... direction Σ 1..1 code ascending | descending
Binding: SortDirection ( Required )

doco Documentation for this format icon

UML Diagram ( Legend )

Element Extensions - as described for all elements: additional information that is not part of the basic definition of the resource / type extension : Extension 0..* DataRequirement The type of the required data, specified as the type name of a resource. For profiles, this value is set to the type of the base resource of the profile type : code [1..1] « Either an abstract type, a resource or a List of FHIR types (resources, data type. types). (Strength=Required) FHIRAllTypes FHIRTypes ! » The profile of the required data, specified as the uri of the profile definition profile : uri canonical [0..*] « StructureDefinition » The intended subjects of the data requirement. If this element is not provided, a Patient subject is assumed subject[x] : DataType [0..1] « CodeableConcept | Reference ( Group ); The possible types of subjects for a data requirement (E.g., Patient, Practitioner, Organization, Location, etc.). (Strength=Extensible) ParticipantResourceTypes + » Indicates that specific elements of the type are referenced by the knowledge module and must be supported by the consumer in order to obtain an effective evaluation. This does not mean that a value is required for this element, only that the consuming system must understand the element and be able to provide values for it if they are available. Note that the The value for this element can of mustSupport SHALL be a path to allow references to nested elements. In that case, all FHIRPath resolvable on the elements along type of the DataRequirement. The path must be supported SHALL consist only of identifiers, constant indexers, and .resolve() (see the [Simple FHIRPath Profile](fhirpath.html#simple) for full details) mustSupport : string [0..*] Specifies a maximum number of results that are required (uses the _count search parameter) limit : positiveInt [0..1] CodeFilter The code-valued attribute of the filter. The specified path must SHALL be a FHIRPath resolvable from on the specified type of the required data. DataRequirement, and SHALL consist only of identifiers, constant indexers, and .resolve(). The path is allowed to contain qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to traverse multiple-cardinality sub-elements. sub-elements (see the [Simple FHIRPath Profile](fhirpath.html#simple) for full details). Note that the index must be an integer constant. The path must resolve to an element of type code, Coding, or CodeableConcept path : string [1..1] [0..1] « This element has or is affected by some invariants C » A token parameter that refers to a search parameter defined on the specified type of the DataRequirement, and which searches on elements of type code, Coding, or CodeableConcept searchParam : string [0..1] « This element has or is affected by some invariants C » The valueset for the code filter. The valueSet and value code elements are exclusive. additive. If valueSet is specified, the filter will return only those data items for which the value of the code-valued element specified in the path is a member of the specified valueset valueSet[x] valueSet : Type canonical [0..1] string | Reference ( « ValueSet ) » The codes for the code filter. Only one of valueSet, valueCode, valueCoding, or valueCodeableConcept may be specified. If values are given, the filter will return only those data items for which the code-valued attribute specified by the path has a value that is one of the specified codes valueCode : code [0..*] The Codings for the code filter. Only one of valueSet, valueCode, valueConding, or valueCodeableConcept may be specified. codes. If values codes are given, the filter will return only those data items for which the code-valued attribute specified by the path has in addition to a value that is one of the specified Codings valueCoding : Coding [0..*] The CodeableConcepts for the code filter. Only one of valueSet, valueCode, valueConding, or valueCodeableConcept may be specified. If values are given, set, the filter will return only those data returns items for which the code-valued attribute specified by the path has matching a code in the value that is set or one of the specified CodeableConcepts codes valueCodeableConcept code : CodeableConcept Coding [0..*] DateFilter The date-valued attribute of the filter. The specified path must SHALL be a FHIRPath resolvable from on the specified type of the required data. DataRequirement, and SHALL consist only of identifiers, constant indexers, and .resolve(). The path is allowed to contain qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to traverse multiple-cardinality sub-elements. sub-elements (see the [Simple FHIRPath Profile](fhirpath.html#simple) for full details). Note that the index must be an integer constant. The path must resolve to an element of type date, dateTime, Period, Schedule, or Timing path : string [1..1] [0..1] « This element has or is affected by some invariants C » A date parameter that refers to a search parameter defined on the specified type of the DataRequirement, and which searches on elements of type date, dateTime, Period, Schedule, or Timing searchParam : string [0..1] « This element has or is affected by some invariants C » The value of the filter. If period is specified, the filter will return only those data items that fall within the bounds determined by the Period, inclusive of the period boundaries. If dateTime is specified, the filter will return only those data items that are equal to the specified dateTime. If a Duration is specified, the filter will return only those data items that fall within Duration from before now value[x] : Type DataType [0..1] « dateTime | Period | Duration » ValueFilter The attribute of the filter. The specified path SHALL be a FHIRPath resolvable on the specified type of the DataRequirement, and SHALL consist only of identifiers, constant indexers, and .resolve(). The path is allowed to contain qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to traverse multiple-cardinality sub-elements (see the [Simple FHIRPath Profile](fhirpath.html#simple) for full details). Note that the index must be an integer constant. The path must resolve to an element of a type that is comparable to the valueFilter.value[x] element for the filter path : string [0..1] A search parameter defined on the specified type of the DataRequirement, and which searches on elements of a type compatible with the type of the valueFilter.value[x] for the filter searchParam : string [0..1] The comparator to be used to determine whether the value is matching comparator : code [0..1] « Possible comparators for the valueFilter element. (Strength=Required) ValueFilterComparator ! » The value of the filter value[x] : DataType [0..1] « dateTime | Period | Duration » Sort The attribute of the sort. The specified path must be resolvable from the type of the required data. The path is allowed to contain qualifiers (.) to traverse sub-elements, as well as indexers ([x]) to traverse multiple-cardinality sub-elements. Note that the index must be an integer constant path : string [1..1] The direction of the sort, ascending or descending direction : code [1..1] « The possible sort directions, ascending or descending. (Strength=Required) SortDirection ! » DataType Code filters specify additional constraints on the data, specifying the value set of interest for a particular element of the data data. Each code filter defines an additional constraint on the data, i.e. code filters are AND'ed, not OR'ed codeFilter [0..*] Date filters specify additional constraints on the data in terms of the applicable date range for specific elements elements. Each date filter specifies an additional constraint on the data, i.e. date filters are AND'ed, not OR'ed dateFilter [0..*] Value filters specify additional constraints on the data for elements other than code-valued or date-valued. Each value filter specifies an additional constraint on the data (i.e. valueFilters are AND'ed, not OR'ed) valueFilter [0..*] Specifies the order of the results to be returned sort [0..*]

XML Template

<

<DataRequirement xmlns="http://hl7.org/fhir">

 <!-- from Element: extension -->
 <
 <
 <
 <
  <
  <</valueSet[x]>
  <
  <</valueCoding>
  <</valueCodeableConcept>

 <type value="[code]"/><!-- 1..1 The type of the required data -->
 <profile><!-- 0..* canonical(StructureDefinition) The profile of the required data --></profile>
 <subject[x]><!-- 0..1 CodeableConcept|Reference(Group) E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device --></subject[x]>
 <mustSupport value="[string]"/><!-- 0..* Indicates specific structure elements that are referenced by the knowledge module -->
 <codeFilter>  <!-- 0..* What codes are expected -->
  <path value="[string]"/><!-- I 0..1 A code-valued attribute to filter on -->
  <searchParam value="[string]"/><!-- I 0..1 A coded (token) parameter to search on -->
  <valueSet><!-- 0..1 canonical(ValueSet) ValueSet for the filter --></valueSet>
  <code><!-- 0..* Coding What code is expected --></code>

 </codeFilter>
 <
  <
  <</value[x]>

 <dateFilter>  <!-- 0..* What dates/date ranges are expected -->
  <path value="[string]"/><!-- I 0..1 A date-valued attribute to filter on -->
  <searchParam value="[string]"/><!-- I 0..1 A date valued parameter to search on -->
  <value[x]><!-- 0..1 dateTime|Period|Duration The value of the filter, as a Period, DateTime, or Duration value --></value[x]>

 </dateFilter>
</[name]>

 <valueFilter>  <!-- 0..* What values are expected -->
  <path value="[string]"/><!-- 0..1 An attribute to filter on -->
  <searchParam value="[string]"/><!-- 0..1 A parameter to search on -->
  <comparator value="[code]"/><!-- 0..1 eq | gt | lt | ge | le | sa | eb -->
  <value[x]><!-- 0..1 dateTime|Period|Duration The value of the filter, as a Period, DateTime, or Duration value --></value[x]>
 </valueFilter>
 <limit value="[positiveInt]"/><!-- 0..1 Number of results -->
 <sort>  <!-- 0..* Order of the results -->
  <path value="[string]"/><!-- 1..1 The name of the attribute to perform the sort -->
  <direction value="[code]"/><!-- 1..1 ascending | descending -->
 </sort>
</DataRequirement>

JSON Template

{doco
  // from Element: extension
  "
  "
  "
  "
    "
    
    ">",
    " },
    "
    "
    "

  "type" : "<code>", // R!  The type of the required data
  "profile" : ["<canonical(StructureDefinition)>"], // The profile of the required data
  // subject[x]: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device. One of these 2:

  "subjectCodeableConcept" : { CodeableConcept },
  "subjectReference" : { Reference(Group) },
  "mustSupport" : ["<string>"], // Indicates specific structure elements that are referenced by the knowledge module
  "codeFilter" : [{ // What codes are expected
    "path" : "<string>", // I A code-valued attribute to filter on
    "searchParam" : "<string>", // I A coded (token) parameter to search on
    "valueSet" : "<canonical(ValueSet)>", // ValueSet for the filter
    "code" : [{ Coding }] // What code is expected

  }],
  "
    "

  "dateFilter" : [{ // What dates/date ranges are expected
    "path" : "<string>", // I A date-valued attribute to filter on
    "searchParam" : "<string>", // I A date valued parameter to search on

    // value[x]: The value of the filter, as a Period, DateTime, or Duration value. One of these 3:
    ">"
    " }
    " }

    "valueDateTime" : "<dateTime>",
    "valuePeriod" : { Period },
    "valueDuration" : { Duration }
  }],
  "valueFilter" : [{ // What values are expected
    "path" : "<string>", // An attribute to filter on
    "searchParam" : "<string>", // A parameter to search on
    "comparator" : "<code>", // eq | gt | lt | ge | le | sa | eb
    // value[x]: The value of the filter, as a Period, DateTime, or Duration value. One of these 3:

    "valueDateTime" : "<dateTime>",
    "valuePeriod" : { Period },
    "valueDuration" : { Duration }
  }],
  "limit" : "<positiveInt>", // Number of results
  "sort" : [{ // Order of the results
    "path" : "<string>", // R!  The name of the attribute to perform the sort
    "direction" : "<code>" // R!  ascending | descending

  }]
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .

[
 # from Element: 
  fhir:
  fhir:
  fhir:
  fhir:
    fhir:
    # . One of these 2
      fhir: ]
      fhir:) ]
    fhir:
    fhir:
    fhir:
  ], ...;
  fhir:
    fhir:
    # . One of these 3
      fhir: ]
      fhir: ]
      fhir: ]
  ], ...;

 # from Element: fhir:extension
  fhir:type [ code ] ; # 1..1 The type of the required data
  fhir:profile  ( [ canonical(StructureDefinition) ] ... ) ; # 0..* The profile of the required data
  # subject[x] : 0..1 E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device. One of these 2
    fhir:subject [  a fhir:CodeableConcept ; CodeableConcept ]
    fhir:subject [  a fhir:Reference ; Reference(Group) ]
  fhir:mustSupport  ( [ string ] ... ) ; # 0..* Indicates specific structure elements that are referenced by the knowledge module
  fhir:codeFilter ( [ # 0..* What codes are expected
    fhir:path [ string ] ; # 0..1 I A code-valued attribute to filter on
    fhir:searchParam [ string ] ; # 0..1 I A coded (token) parameter to search on
    fhir:valueSet [ canonical(ValueSet) ] ; # 0..1 ValueSet for the filter
    fhir:code  ( [ Coding ] ... ) ; # 0..* What code is expected
  ] ... ) ;
  fhir:dateFilter ( [ # 0..* What dates/date ranges are expected
    fhir:path [ string ] ; # 0..1 I A date-valued attribute to filter on
    fhir:searchParam [ string ] ; # 0..1 I A date valued parameter to search on
    # value[x] : 0..1 The value of the filter, as a Period, DateTime, or Duration value. One of these 3
      fhir:value [  a fhir:DateTime ; dateTime ]
      fhir:value [  a fhir:Period ; Period ]
      fhir:value [  a fhir:Duration ; Duration ]
  ] ... ) ;
  fhir:valueFilter ( [ # 0..* What values are expected
    fhir:path [ string ] ; # 0..1 An attribute to filter on
    fhir:searchParam [ string ] ; # 0..1 A parameter to search on
    fhir:comparator [ code ] ; # 0..1 eq | gt | lt | ge | le | sa | eb
    # value[x] : 0..1 The value of the filter, as a Period, DateTime, or Duration value. One of these 3
      fhir:value [  a fhir:DateTime ; dateTime ]
      fhir:value [  a fhir:Period ; Period ]
      fhir:value [  a fhir:Duration ; Duration ]
  ] ... ) ;
  fhir:limit [ positiveInt ] ; # 0..1 Number of results
  fhir:sort ( [ # 0..* Order of the results
    fhir:path [ string ] ; # 1..1 The name of the attribute to perform the sort
    fhir:direction [ code ] ; # 1..1 ascending | descending
  ] ... ) ;

]

Changes since DSTU2 Release 3

This complex-type did not exist in Release 2 Changes from both R4 and R4B

DataRequirement
DataRequirement.type
  • Change value set from http://hl7.org/fhir/ValueSet/all-types|4.0.0 to All FHIR Types
  • Remove codes Address , Age , Annotation , Attachment , BackboneElement , CodeableConcept , Coding , ContactDetail , ContactPoint , Contributor , Count , DataRequirement , Distance , Dosage , Duration , Element , ElementDefinition , Expression , Extension , HumanName , Identifier , MarketingStatus , Meta , Money , MoneyQuantity , Narrative , ParameterDefinition , Period , Population , ProdCharacteristic , ProductShelfLife , Quantity , Range , Ratio , Reference , RelatedArtifact , SampledData , Signature , SimpleQuantity , SubstanceAmount , Timing , TriggerDefinition , UsageContext , base64Binary , boolean , canonical , code , date , dateTime , decimal , id , instant , integer , markdown , oid , positiveInt , string , time , unsignedInt , uri , url , uuid , xhtml , Account , ActivityDefinition , AdverseEvent , AllergyIntolerance , Appointment , AppointmentResponse , AuditEvent , Basic , Binary , BiologicallyDerivedProduct , BodyStructure , Bundle , CapabilityStatement , CarePlan , CareTeam , CatalogEntry , ChargeItem , ChargeItemDefinition , Claim , ClaimResponse , ClinicalImpression , CodeSystem , Communication , CommunicationRequest , CompartmentDefinition , Composition , ConceptMap , Condition , Consent , Contract , Coverage , CoverageEligibilityRequest , CoverageEligibilityResponse , DetectedIssue , Device , DeviceDefinition , DeviceMetric , DeviceRequest , DeviceUseStatement , DiagnosticReport , DocumentManifest , DocumentReference , DomainResource , EffectEvidenceSynthesis , Encounter , Endpoint , EnrollmentRequest , EnrollmentResponse , EpisodeOfCare , EventDefinition , Evidence , EvidenceVariable , ExampleScenario , ExplanationOfBenefit , FamilyMemberHistory , Flag , Goal , GraphDefinition , Group , GuidanceResponse , HealthcareService , ImagingStudy , Immunization , ImmunizationEvaluation , ImmunizationRecommendation , ImplementationGuide , InsurancePlan , Invoice , Library , Linkage , List , Location , Measure , MeasureReport , Media , Medication , MedicationAdministration , MedicationDispense , MedicationKnowledge , MedicationRequest , MedicationStatement , MedicinalProduct , MedicinalProductAuthorization , MedicinalProductContraindication , MedicinalProductIndication , MedicinalProductIngredient , MedicinalProductInteraction , MedicinalProductManufactured , MedicinalProductPackaged , MedicinalProductPharmaceutical , MedicinalProductUndesirableEffect , MessageDefinition , MessageHeader , MolecularSequence , NamingSystem , NutritionOrder , Observation , ObservationDefinition , OperationDefinition , OperationOutcome , Organization , OrganizationAffiliation , Parameters , Patient , PaymentNotice , PaymentReconciliation , Person , PlanDefinition , Practitioner , PractitionerRole , Procedure , Provenance , Questionnaire , QuestionnaireResponse , RelatedPerson , RequestGroup , ResearchDefinition , ResearchElementDefinition , ResearchStudy , ResearchSubject , Resource , RiskAssessment , RiskEvidenceSynthesis , Schedule , SearchParameter , ServiceRequest , Slot , Specimen , SpecimenDefinition , StructureDefinition , StructureMap , Subscription , Substance , SubstanceNucleicAcid , SubstancePolymer , SubstanceProtein , SubstanceReferenceInformation , SubstanceSourceMaterial , SubstanceSpecification , SupplyDelivery , SupplyRequest , Task , TerminologyCapabilities , TestReport , TestScript , ValueSet , VerificationResult , VisionPrescription , Type , Any
  • Add code Base
DataRequirement.subject[x]
  • Change value set from http://hl7.org/fhir/ValueSet/subject-type to Participant Resource Types
  • Change code system for extensibly bound codes from "http://hl7.org/fhir/resource-types" to "http://hl7.org/fhir/fhir-types"
DataRequirement.valueFilter
  • Added Element
DataRequirement.valueFilter.path
  • Added Element
DataRequirement.valueFilter.searchParam
  • Added Element
DataRequirement.valueFilter.comparator
  • Added Element
DataRequirement.valueFilter.value[x]
  • Added Element

See the Full Difference for further information

Constraints

id Level Location Description Expression
img  drq-1 Rule DataRequirement.codeFilter Either a path or a searchParam must be provided, but not both path.exists() xor searchParam.exists()
img  drq-2 Rule DataRequirement.dateFilter Either a path or a searchParam must be provided, but not both path.exists() xor searchParam.exists()

Terminology Bindings

Path ValueSet Type Documentation
DataRequirement.type FHIRTypes (a valid code from All FHIR Types ) Required

All FHIR types

DataRequirement.subject[x] ParticipantResourceTypes Extensible

All Resource Types that represent participant resources

DataRequirement.valueFilter.comparator ValueFilterComparator Required

The type of comparator operator to use

DataRequirement.sort.direction SortDirection Required

The possible sort directions, ascending or descending.

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 DataRequirements 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"
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 "Total Colectomy Value Set" Set" that were performed during the "Measurement Period". "Measurement Period". In this case, "Measurement Period" "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"/>

	<type value="Procedure"/>

	<codeFilter>
		<path value="code"/>
		<valueSetString value="Total Colectomy Value Set"/>

		<path value="code"/>
		<valueSetString value="Total Colectomy Value Set"/>

	</codeFilter>
	<dateFilter>
		<path value="performedPeriod"/>

		<path value="performed"/>

		<valuePeriod>
			<start value="2016-01-01"/>
			<end value="2016-12-31"/>

			<start value="2016-01-01"/>
			<end value="2016-12-31"/>

		</valuePeriod>
	</dateFilter>
</dataRequirement>

If a resource type has multiple date attributes, then it may be necessary to include multiple date criteria. For instance, in the example above the Procedure resource is using the performedPeriod date attribute. However, the Procedure resource also provides a performedDateTime (specific date and/or time when procedure was performed) attribute. Therefore, if the date criteria for the Procedure in the example was recorded using the performedDateTime attribute, the date criteria would be incomplete. To account for this additional date attribute, the example could be expanded as follows:

define "Total Colectomy Procedures": [Procedure: "Total Colectomy Value Set"] P where exists (P.performedPeriod during "Measurement Period") or exists (P.performedDateTime during "Measurement Period")
define "Total Colectomy Procedures":
  [Procedure: "Total Colectomy Value Set"] P
    where exists (P.performedPeriod during "Measurement Period")
	  or exists (P.performedDateTime during "Measurement Period")


The data requirement for the expanded criteria:

<dataRequirement>
	<type value="Procedure"/>

	<type value="Procedure"/>

	<codeFilter>
		<path value="code"/>
		<valueSetString value="Total Colectomy Value Set"/>

		<path value="code"/>
		<valueSetString value="Total Colectomy Value Set"/>

	</codeFilter>
	<dateFilter>
		<path value="performedPeriod"/>
		<path value="performedDateTime"/>

		<path value="performed"/>

	</dateFilter>
</dataRequirement>

DataRequirement is used in the following places: TriggerDefinition , GuidanceResponse , Library , Measure , Parameters , PlanDefinition , RequestOrchestration and ServiceDefinition Task

 

See also Examples , Detailed Descriptions , Mappings , Profiles and Mappings . Extensions

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      Filter: Filters doco
. . ParameterDefinition Σ N Element Definition of a parameter to a module

Elements defined in Ancestors: id , extension
. . . name Σ 0..1 code Name used to access the parameter value
. . . use Σ 1..1 code in | out
OperationParameterUse Binding: Operation Parameter Use ( Required )
. . . min Σ 0..1 integer Minimum cardinality
. . . documentation Σ 0..1 string A brief description of the parameter
. . . type Σ 1..1 code What type of value
FHIRAllTypes Binding: All FHIR Types ( Required )
. . . profile Σ 0..1 Reference canonical ( StructureDefinition ) What profile the value is expected to be

doco Documentation for this format icon

Definition: XML | JSON

XML Template

<

<ParameterDefinition xmlns="http://hl7.org/fhir">

 <!-- from Element: extension -->
 <
 <
 <
 <
 <
 <
 <</profile>
</[name]>

 <name value="[code]"/><!-- 0..1 Name used to access the parameter value -->
 <use value="[code]"/><!-- 1..1 in | out -->
 <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 What type of value -->
 <profile><!-- 0..1 canonical(StructureDefinition) What profile the value is expected to be --></profile>
</ParameterDefinition>

Turtle Template


@prefix fhir: <http://hl7.org/fhir/> .

[
 # from Element: 
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:

 # from Element: fhir:extension
  fhir:name [ code ] ; # 0..1 Name used to access the parameter value
  fhir:use [ code ] ; # 1..1 in | out
  fhir:min [ integer ] ; # 0..1 Minimum cardinality
  fhir:max [ string ] ; # 0..1 Maximum cardinality (a number of *)
  fhir:documentation [ string ] ; # 0..1 A brief description of the parameter
  fhir:type [ code ] ; # 1..1 What type of value
  fhir:profile [ canonical(StructureDefinition) ] ; # 0..1 What profile the value is expected to be

]

Changes since DSTU2 Release 3



This complex-type did not exist in Release 2 Changes from both R4 and R4B

ParameterDefinition
ParameterDefinition.type
  • Change value set from http://hl7.org/fhir/ValueSet/all-types|4.0.0 to All FHIR Types
  • Remove codes Address , Age , Annotation , Attachment , BackboneElement , CodeableConcept , Coding , ContactDetail , ContactPoint , Contributor , Count , DataRequirement , Distance , Dosage , Duration , Element , ElementDefinition , Expression , Extension , HumanName , Identifier , MarketingStatus , Meta , Money , MoneyQuantity , Narrative , ParameterDefinition , Period , Population , ProdCharacteristic , ProductShelfLife , Quantity , Range , Ratio , Reference , RelatedArtifact , SampledData , Signature , SimpleQuantity , SubstanceAmount , Timing , TriggerDefinition , UsageContext , base64Binary , boolean , canonical , code , date , dateTime , decimal , id , instant , integer , markdown , oid , positiveInt , string , time , unsignedInt , uri , url , uuid , xhtml , Account , ActivityDefinition , AdverseEvent , AllergyIntolerance , Appointment , AppointmentResponse , AuditEvent , Basic , Binary , BiologicallyDerivedProduct , BodyStructure , Bundle , CapabilityStatement , CarePlan , CareTeam , CatalogEntry , ChargeItem , ChargeItemDefinition , Claim , ClaimResponse , ClinicalImpression , CodeSystem , Communication , CommunicationRequest , CompartmentDefinition , Composition , ConceptMap , Condition , Consent , Contract , Coverage , CoverageEligibilityRequest , CoverageEligibilityResponse , DetectedIssue , Device , DeviceDefinition , DeviceMetric , DeviceRequest , DeviceUseStatement , DiagnosticReport , DocumentManifest , DocumentReference , DomainResource , EffectEvidenceSynthesis , Encounter , Endpoint , EnrollmentRequest , EnrollmentResponse , EpisodeOfCare , EventDefinition , Evidence , EvidenceVariable , ExampleScenario , ExplanationOfBenefit , FamilyMemberHistory , Flag , Goal , GraphDefinition , Group , GuidanceResponse , HealthcareService , ImagingStudy , Immunization , ImmunizationEvaluation , ImmunizationRecommendation , ImplementationGuide , InsurancePlan , Invoice , Library , Linkage , List , Location , Measure , MeasureReport , Media , Medication , MedicationAdministration , MedicationDispense , MedicationKnowledge , MedicationRequest , MedicationStatement , MedicinalProduct , MedicinalProductAuthorization , MedicinalProductContraindication , MedicinalProductIndication , MedicinalProductIngredient , MedicinalProductInteraction , MedicinalProductManufactured , MedicinalProductPackaged , MedicinalProductPharmaceutical , MedicinalProductUndesirableEffect , MessageDefinition , MessageHeader , MolecularSequence , NamingSystem , NutritionOrder , Observation , ObservationDefinition , OperationDefinition , OperationOutcome , Organization , OrganizationAffiliation , Parameters , Patient , PaymentNotice , PaymentReconciliation , Person , PlanDefinition , Practitioner , PractitionerRole , Procedure , Provenance , Questionnaire , QuestionnaireResponse , RelatedPerson , RequestGroup , ResearchDefinition , ResearchElementDefinition , ResearchStudy , ResearchSubject , Resource , RiskAssessment , RiskEvidenceSynthesis , Schedule , SearchParameter , ServiceRequest , Slot , Specimen , SpecimenDefinition , StructureDefinition , StructureMap , Subscription , Substance , SubstanceNucleicAcid , SubstancePolymer , SubstanceProtein , SubstanceReferenceInformation , SubstanceSourceMaterial , SubstanceSpecification , SupplyDelivery , SupplyRequest , Task , TerminologyCapabilities , TestReport , TestScript , ValueSet , VerificationResult , VisionPrescription , Type , Any
  • Add code Base

See the Full Difference for further information

Structure

Name Flags Card. Type Description & Constraints      Filter: Filters doco
. . ParameterDefinition Σ N Element Definition of a parameter to a module

Elements defined in Ancestors: id , extension
. . . name Σ 0..1 code Name used to access the parameter value
. . . use Σ 1..1 code in | out
OperationParameterUse Binding: Operation Parameter Use ( Required )
. . . min Σ 0..1 integer Minimum cardinality
. . . documentation Σ 0..1 string A brief description of the parameter
. . . type Σ 1..1 code What type of value
FHIRAllTypes Binding: All FHIR Types ( Required )
. . . profile Σ 0..1 Reference canonical ( StructureDefinition ) What profile the value is expected to be

doco Documentation for this format icon

XML Template

<

<ParameterDefinition xmlns="http://hl7.org/fhir">

 <!-- from Element: extension -->
 <
 <
 <
 <
 <
 <
 <</profile>
</[name]>

 <name value="[code]"/><!-- 0..1 Name used to access the parameter value -->
 <use value="[code]"/><!-- 1..1 in | out -->
 <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 What type of value -->
 <profile><!-- 0..1 canonical(StructureDefinition) What profile the value is expected to be --></profile>
</ParameterDefinition>

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .

[
 # from Element: 
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:

 # from Element: fhir:extension
  fhir:name [ code ] ; # 0..1 Name used to access the parameter value
  fhir:use [ code ] ; # 1..1 in | out
  fhir:min [ integer ] ; # 0..1 Minimum cardinality
  fhir:max [ string ] ; # 0..1 Maximum cardinality (a number of *)
  fhir:documentation [ string ] ; # 0..1 A brief description of the parameter
  fhir:type [ code ] ; # 1..1 What type of value
  fhir:profile [ canonical(StructureDefinition) ] ; # 0..1 What profile the value is expected to be

]

Changes since DSTU2 Release 3

This complex-type did not exist in Release 2 Changes from both R4 and R4B

ParameterDefinition
ParameterDefinition.type
  • Change value set from http://hl7.org/fhir/ValueSet/all-types|4.0.0 to All FHIR Types
  • Remove codes Address , Age , Annotation , Attachment , BackboneElement , CodeableConcept , Coding , ContactDetail , ContactPoint , Contributor , Count , DataRequirement , Distance , Dosage , Duration , Element , ElementDefinition , Expression , Extension , HumanName , Identifier , MarketingStatus , Meta , Money , MoneyQuantity , Narrative , ParameterDefinition , Period , Population , ProdCharacteristic , ProductShelfLife , Quantity , Range , Ratio , Reference , RelatedArtifact , SampledData , Signature , SimpleQuantity , SubstanceAmount , Timing , TriggerDefinition , UsageContext , base64Binary , boolean , canonical , code , date , dateTime , decimal , id , instant , integer , markdown , oid , positiveInt , string , time , unsignedInt , uri , url , uuid , xhtml , Account , ActivityDefinition , AdverseEvent , AllergyIntolerance , Appointment , AppointmentResponse , AuditEvent , Basic , Binary , BiologicallyDerivedProduct , BodyStructure , Bundle , CapabilityStatement , CarePlan , CareTeam , CatalogEntry , ChargeItem , ChargeItemDefinition , Claim , ClaimResponse , ClinicalImpression , CodeSystem , Communication , CommunicationRequest , CompartmentDefinition , Composition , ConceptMap , Condition , Consent , Contract , Coverage , CoverageEligibilityRequest , CoverageEligibilityResponse , DetectedIssue , Device , DeviceDefinition , DeviceMetric , DeviceRequest , DeviceUseStatement , DiagnosticReport , DocumentManifest , DocumentReference , DomainResource , EffectEvidenceSynthesis , Encounter , Endpoint , EnrollmentRequest , EnrollmentResponse , EpisodeOfCare , EventDefinition , Evidence , EvidenceVariable , ExampleScenario , ExplanationOfBenefit , FamilyMemberHistory , Flag , Goal , GraphDefinition , Group , GuidanceResponse , HealthcareService , ImagingStudy , Immunization , ImmunizationEvaluation , ImmunizationRecommendation , ImplementationGuide , InsurancePlan , Invoice , Library , Linkage , List , Location , Measure , MeasureReport , Media , Medication , MedicationAdministration , MedicationDispense , MedicationKnowledge , MedicationRequest , MedicationStatement , MedicinalProduct , MedicinalProductAuthorization , MedicinalProductContraindication , MedicinalProductIndication , MedicinalProductIngredient , MedicinalProductInteraction , MedicinalProductManufactured , MedicinalProductPackaged , MedicinalProductPharmaceutical , MedicinalProductUndesirableEffect , MessageDefinition , MessageHeader , MolecularSequence , NamingSystem , NutritionOrder , Observation , ObservationDefinition , OperationDefinition , OperationOutcome , Organization , OrganizationAffiliation , Parameters , Patient , PaymentNotice , PaymentReconciliation , Person , PlanDefinition , Practitioner , PractitionerRole , Procedure , Provenance , Questionnaire , QuestionnaireResponse , RelatedPerson , RequestGroup , ResearchDefinition , ResearchElementDefinition , ResearchStudy , ResearchSubject , Resource , RiskAssessment , RiskEvidenceSynthesis , Schedule , SearchParameter , ServiceRequest , Slot , Specimen , SpecimenDefinition , StructureDefinition , StructureMap , Subscription , Substance , SubstanceNucleicAcid , SubstancePolymer , SubstanceProtein , SubstanceReferenceInformation , SubstanceSourceMaterial , SubstanceSpecification , SupplyDelivery , SupplyRequest , Task , TerminologyCapabilities , TestReport , TestScript , ValueSet , VerificationResult , VisionPrescription , Type , Any
  • Add code Base

See the Full Difference for further information

Constraints

Terminology Bindings

Path ValueSet Type Documentation
ParameterDefinition.use OperationParameterUse Required

Whether an operation parameter is an input or an output parameter.

ParameterDefinition.type FHIRTypes (a valid code from All FHIR Types ) Required

All FHIR types

 

See also Examples , Detailed Descriptions , Mappings , Profiles and Mappings . Extensions

The RelatedArtifact structure defines resources related to a module an artifact such as previous and next versions of documents, documentation, citations, etc. Note that the name resource artifact here is being used in a more general sense than the FHIR-specific Resource. sense; The related resource artifact may be a FHIR resource, or it may be another type of resource, represented using the Attachment data type. datatype.

Structure

0..1 uri Σ
Name Flags Card. Type Description & Constraints      Filter: Filters doco
. . RelatedArtifact Σ N Element Related artifacts for a knowledge resource
+ Warning: Citation must be inline or a canonical reference to a Citation
+ Warning: Documentation must be an attachment
+ Warning: Justification must be an attachment or a reference to an ArtifactAssessment

Elements defined in Ancestors: id , extension
. . . type Σ 1..1 code documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of | part-of
Binding: RelatedArtifactType ( Required )
. . . display label Σ 0..1 string Σ Short label
. . . display Σ 0..1 string Brief description of the related artifact
. . url . document Σ 0..1 Σ Attachment What document is being referenced
0..1
. . . resource Where the Σ 0..1 canonical ( Any ) What artifact can be accessed is being referenced
. . document . resourceReference Σ 0..1 Reference ( Any ) What artifact, if not a conformance resource
. . . artifact[x] Σ 0..1 What document, citation, artifact, or resource is being referenced
.... artifactMarkdown 0..1 markdown
.... artifactAttachment Attachment What document is being referenced
. . resource . . artifactCanonical canonical ( Any )
. . . . artifactReference 0..1 Reference ( Any ) What resource is being referenced

doco Documentation for this format icon

Definition: XML | JSON

UML Diagram ( Legend )

Element Extensions - as described for all elements: additional information that is not part of the basic definition of the resource / type extension : Extension 0..* RelatedArtifact The type of relationship to the related artifact type : code [1..1] « The type of relationship to the related artifact artifact. (Strength=Required) RelatedArtifactType ! » A short label that can be used to reference the citation from elsewhere in the containing artifact, such as a footnote index label : string [0..1] A brief description of the document or knowledge resource being referenced, suitable for display to a consumer display : string [0..1] Deprecated in favor of the new artifact[x] element. A bibliographic citation for the related artifact. This text SHOULD be formatted according to an accepted citation format citation : string markdown [0..1] A url for the artifact that can be followed to access Deprecated in favor of the actual content url : uri [0..1] new artifact[x] element. The document being referenced, represented as an attachment. This is exclusive with the resource element document : Attachment [0..1] Deprecated in favor of the new artifact[x] element. The related resource, artifact, such as a library, value set, profile, or other knowledge resource resource : canonical [0..1] « Any » Deprecated in favor of the new artifact[x] element. The related artifact, if the artifact is not a canonical resource, or a resource reference to a canonical resource resourceReference : Reference [0..1] « Any » The related artifact represented as a canonical or direct reference to a FHIR resource, an Attachment, or directly inline as markdown artifact[x] : DataType [0..1] « markdown | Attachment | canonical ( Any )| Reference ( Any ) » DataType

XML Template

Turtle Template


@prefix fhir: <http://hl7.org/fhir/> .

[
 # from Element: 
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:

 # from Element: fhir:extension
  fhir:type [ code ] ; # 1..1 documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of | part-of
  fhir:label [ string ] ; # 0..1 Short label
  fhir:display [ string ] ; # 0..1 Brief description of the related artifact
  fhir:citation [ markdown ] ; # 0..1 Bibliographic citation for the artifact
  fhir:document [ Attachment ] ; # 0..1 What document is being referenced
  fhir:resource [ canonical(Any) ] ; # 0..1 What artifact is being referenced
  fhir:resourceReference [ Reference(Any) ] ; # 0..1 What artifact, if not a conformance resource
  # artifact[x] : 0..1 What document, citation, artifact, or resource is being referenced. One of these 4
    fhir:artifact [  a fhir:Markdown ; markdown ]
    fhir:artifact [  a fhir:Attachment ; Attachment ]
    fhir:artifact [  a fhir:Canonical ; canonical(Any) ]
    fhir:artifact [  a fhir:Reference ; Reference(Any) ]

]

Changes since DSTU2 Release 3



This complex-type did not exist in Release 2 Changes from both R4 and R4B

RelatedArtifact
RelatedArtifact.type
  • Add code part-of
RelatedArtifact.resourceReference
  • Added Element
RelatedArtifact.artifact[x]
  • Added Element
RelatedArtifact.url
  • Deleted (-> document)

See the Full Difference for further information

Structure

0..1 uri Σ
Name Flags Card. Type Description & Constraints      Filter: Filters doco
. . RelatedArtifact Σ N Element Related artifacts for a knowledge resource
+ Warning: Citation must be inline or a canonical reference to a Citation
+ Warning: Documentation must be an attachment
+ Warning: Justification must be an attachment or a reference to an ArtifactAssessment

Elements defined in Ancestors: id , extension
. . . type Σ 1..1 code documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of | part-of
Binding: RelatedArtifactType ( Required )
. . . display label Σ 0..1 string Σ Short label
. . . display Σ 0..1 string Brief description of the related artifact
. . url . document Σ 0..1 Σ Attachment What document is being referenced
0..1
. . . resource Where the Σ 0..1 canonical ( Any ) What artifact can be accessed is being referenced
. . document . resourceReference Σ 0..1 Reference ( Any ) What artifact, if not a conformance resource
. . . artifact[x] Σ 0..1 What document, citation, artifact, or resource is being referenced
.... artifactMarkdown 0..1 markdown
.... artifactAttachment Attachment What document is being referenced
. . resource . . artifactCanonical canonical ( Any )
. . . . artifactReference 0..1 Reference ( Any ) What resource is being referenced

doco Documentation for this format icon

UML Diagram ( Legend )

Element Extensions - as described for all elements: additional information that is not part of the basic definition of the resource / type extension : Extension 0..* RelatedArtifact The type of relationship to the related artifact type : code [1..1] « The type of relationship to the related artifact artifact. (Strength=Required) RelatedArtifactType ! » A short label that can be used to reference the citation from elsewhere in the containing artifact, such as a footnote index label : string [0..1] A brief description of the document or knowledge resource being referenced, suitable for display to a consumer display : string [0..1] Deprecated in favor of the new artifact[x] element. A bibliographic citation for the related artifact. This text SHOULD be formatted according to an accepted citation format citation : string markdown [0..1] A url for the artifact that can be followed to access Deprecated in favor of the actual content url : uri [0..1] new artifact[x] element. The document being referenced, represented as an attachment. This is exclusive with the resource element document : Attachment [0..1] Deprecated in favor of the new artifact[x] element. The related resource, artifact, such as a library, value set, profile, or other knowledge resource resource : canonical [0..1] « Any » Deprecated in favor of the new artifact[x] element. The related artifact, if the artifact is not a canonical resource, or a resource reference to a canonical resource resourceReference : Reference [0..1] « Any » The related artifact represented as a canonical or direct reference to a FHIR resource, an Attachment, or directly inline as markdown artifact[x] : DataType [0..1] « markdown | Attachment | canonical ( Any )| Reference ( Any ) » DataType

XML Template

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .

[
 # from Element: 
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:

 # from Element: fhir:extension
  fhir:type [ code ] ; # 1..1 documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of | part-of
  fhir:label [ string ] ; # 0..1 Short label
  fhir:display [ string ] ; # 0..1 Brief description of the related artifact
  fhir:citation [ markdown ] ; # 0..1 Bibliographic citation for the artifact
  fhir:document [ Attachment ] ; # 0..1 What document is being referenced
  fhir:resource [ canonical(Any) ] ; # 0..1 What artifact is being referenced
  fhir:resourceReference [ Reference(Any) ] ; # 0..1 What artifact, if not a conformance resource
  # artifact[x] : 0..1 What document, citation, artifact, or resource is being referenced. One of these 4
    fhir:artifact [  a fhir:Markdown ; markdown ]
    fhir:artifact [  a fhir:Attachment ; Attachment ]
    fhir:artifact [  a fhir:Canonical ; canonical(Any) ]
    fhir:artifact [  a fhir:Reference ; Reference(Any) ]

]

Changes since DSTU2 Release 3

This complex-type did not exist in Release 2 Changes from both R4 and R4B

RelatedArtifact
RelatedArtifact.type
  • Add code part-of
RelatedArtifact.resourceReference
  • Added Element
RelatedArtifact.artifact[x]
  • Added Element
RelatedArtifact.url
  • Deleted (-> document)

See the Full Difference for further information

Constraints

id Level Location Description Expression
img  rla-1 Warning (base) Citation must be inline or a canonical reference to a Citation type = 'citation' implies ((citation.exists() xor resource.exists()) or (artifact is markdown or artifact is canonical))
img  rla-2 Warning (base) Documentation must be an attachment type = 'documentation' implies (document.exists() or artifact is Attachment)
img  rla-3 Warning (base) Justification must be an attachment or a reference to an ArtifactAssessment type = 'justification' implies ((document.exists() or resourceReference.exists()) or (artifact is Attachment or artifact is Reference))

Terminology Bindings

Path ValueSet Type Documentation
RelatedArtifact.type RelatedArtifactType Required

The type of relationship to the related artifact.

The following examples illustrate the use of relatedArtifact elements to provide citations:

<relatedArtifact>

    <label value="1"/>
    <type value="citation"/>
    <citation value="Linder, J.A., D.W. Bates, G.M. Lee, J.A. Finkelstein. 2005. _Antibiotic treatment of children with sore throat_ JAMA 294(18):2315-2322. "/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="citation"/>
    <label value="2"/>
    <citation value="Infectious Diseases Society of America. 2012. _Clinical Practice Guideline for the Diagnosis and Management of Group A Streptococcal Pharyngitis: 2012 Update._ "/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="citation"/>
    <label value="3"/>
    <citation value="Roberts, R.R., B. Hota, I. Ahmad, et al. _Hospital and Societal Costs of Antimicrobial-Resistant Infections in a Chicago Teaching Hospital: Implications for Antibiotic Stewardship._ Clin Infect Dis. Oct 2009; 49(8):1175-84."/>
</relatedArtifact>

RelatedArtifact is used in the following places: ActivityDefinition , CodeSystem , ConceptMap , DeviceDefinition , DiagnosticReport , EventDefinition , Library , Measure , MetadataResource , NamingSystem , Parameters , PlanDefinition , RequestGroup RequestOrchestration , ResearchStudy Task and ServiceDefinition ValueSet

The RelatedArtifact type is used in a variety of contexts, and supports flexible description of relationships between artifacts. For example, the type can be used to describe both successor and predecessor relationships. This flexibility is needed to support use cases where only one side or other of the relationship is represented in FHIR. In practice, this datatype SHALL NOT be used to create bi-directional linking between FHIR resources.

For resources that make use of RelatedArtifact, the relevant work group SHALL decide which relationships and target types are 'core' for the resource, which would historically have been handled as extensions, and which are not relevant at all. They SHALL define invariants that prohibit the use of relationships and/or target types for their resource that are never relevant or are redundant with other core elements or long-used extensions. (And if there is overlap with extensions that are not long-used, will ensure that the context for those extensions excludes the resource.) They will also add documentation to the element referencing RelatedArtifact calling out those relationship types that are considered 'core'.

Work groups considering the adoption of the RelatedArtifact data type, may only do so after evaluating what proportion of the incorporated elements are core for their resource and determining that the majority of the relationship types meet those criteria. They would still need to impose invariants around nonsensical or redundant relationship types and targets and provide documentation about which types were considered core. The note will also indicate that addition of new relationship types requires agreement that those relationships are 'core' to the majority of resources using the RelatedArtifactType and approval of the FHIR Infrastructure work group (from a methodology perspective).

 

See also Examples , Detailed Descriptions , Mappings , Profiles and Mappings . Extensions

The TriggerDefinition structure defines when a knowledge artifact is expected to be evaluated. The structure can represent three main kinds of triggering events: events, depending on the value of type :

  • Named Event
  • Scheduled Event
  • Data Event

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. HL7 V2 events are assigned the URI http://terminology.hl7.org/CodeSystem/v2-0003#[code] e.g., http://terminology.hl7.org/CodeSystem/v2-0003/A01, and reference any data change that would trigger the sending of the matching HL7 V2 version, if the application providing the FHIR API supports v2 events internally.

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. A condition may also be specified to further refine the trigger

Structure

Triggering
Name Flags Card. Type Description & Constraints      Filter: Filters doco
. . TriggerDefinition Σ N Element Defines an expected trigger for a module
+ Rule: Either timing, or a data requirement, but not both
+ Rule: A named event requires a name or code, a periodic event requires timing, a data event requires data, and a subscription topic requires a reference to a subscription topic

Elements defined in Ancestors: id , extension
. . . type Σ C 1..1 code named-event | periodic | data-changed | data-added | data-modified | data-removed | data-accessed | data-access-ended | subscription-topic
Binding: TriggerType ( Required )
. . . eventName name Σ C 0..1 string Name or URI that identifies the event name
. . eventTiming[x] . code Σ C 0..1 CodeableConcept Timing Coded definition of the event
. . . timing[x] Σ C 0..1 Timing of the event
. . . eventTimingReference . timingTiming Reference ( Schedule Timing )
. . . eventTimingDate . timingDate date
. . . . eventTimingDateTime timingDateTime dateTime
. eventData . . data Σ C 0..1 0..* DataRequirement Triggering data of the event (multiple = 'and')

. . . condition Σ 0..1 Expression Whether the event triggers (boolean expression)

doco Documentation for this format icon

Definition: XML | JSON

UML Diagram ( Legend )

Element Extensions - as described for all elements: additional information that is not part of the basic definition of the resource / type extension : Extension 0..* TriggerDefinition The type of triggering event type : code [1..1] « The type of trigger trigger. (Strength=Required) TriggerType ! » « This element has or is affected by some invariants C » The A formal name of for the event. This may be an absolute URI that identifies the event (if this is formally (e.g. from a named-event trigger) trigger registry), or a simple relative URI that identifies the event in a local context eventName name : string [0..1] « This element has or is affected by some invariants C » A code that identifies the event code : CodeableConcept [0..1] « This element has or is affected by some invariants C » A reference to a SubscriptionTopic resource that defines the event. If this element is provided, no other information about the trigger definition may be supplied subscriptionTopic : canonical [0..1] « SubscriptionTopic » « This element has or is affected by some invariants C » The timing of the event (if this is a period periodic trigger) eventTiming[x] timing[x] : Type DataType [0..1] « Timing | Reference ( Schedule )| date | dateTime » « This element has or is affected by some invariants C » The triggering data of the event (if this is a data trigger) trigger). If more than one data is requirement is specified, then all the data requirements must be true eventData data : DataRequirement [0..*] « This element has or is affected by some invariants C » A boolean-valued expression that is evaluated in the context of the container of the trigger definition and returns whether or not the trigger fires condition : Expression [0..1] DataType

XML Template

<

<TriggerDefinition xmlns="http://hl7.org/fhir">

 <!-- from Element: extension -->
 <
 <
 <</eventTiming[x]>
 <</eventData>
</[name]>

 <type value="[code]"/><!-- I 1..1 named-event | periodic | data-changed | data-added | data-modified | data-removed | data-accessed | data-access-ended | subscription-topic -->
 <name value="[string]"/><!-- I 0..1 Name or URI that identifies the event -->
 <code><!-- I 0..1 CodeableConcept Coded definition of the event --></code>
 <subscriptionTopic><!-- I 0..1 canonical(SubscriptionTopic) What event --></subscriptionTopic>
 <timing[x]><!-- I 0..1 Timing|date|dateTime Timing of the event --></timing[x]>
 <data><!-- I 0..* DataRequirement Triggering data of the event (multiple = 'and') --></data>
 <condition><!-- 0..1 Expression Whether the event triggers (boolean expression) --></condition>
</TriggerDefinition>

Turtle Template


@prefix fhir: <http://hl7.org/fhir/> .

[
 # from Element: 
  fhir:
  fhir:
  # . One of these 4
    fhir: ]
    fhir:) ]
    fhir: ]
    fhir: ]
  fhir:

 # from Element: fhir:extension
  fhir:type [ code ] ; # 1..1 I named-event | periodic | data-changed | data-added | data-modified | data-removed | data-accessed | data-access-ended | subscription-topic
  fhir:name [ string ] ; # 0..1 I Name or URI that identifies the event
  fhir:code [ CodeableConcept ] ; # 0..1 I Coded definition of the event
  fhir:subscriptionTopic [ canonical(SubscriptionTopic) ] ; # 0..1 I What event
  # timing[x] : 0..1 I Timing of the event. One of these 3
    fhir:timing [  a fhir:Timing ; Timing ]
    fhir:timing [  a fhir:Date ; date ]
    fhir:timing [  a fhir:DateTime ; dateTime ]
  fhir:data  ( [ DataRequirement ] ... ) ; # 0..* I Triggering data of the event (multiple = 'and')
  fhir:condition [ Expression ] ; # 0..1 Whether the event triggers (boolean expression)

]

Changes since DSTU2 Release 3



This complex-type did not exist in Release 2 Changes from both R4 and R4B

TriggerDefinition
TriggerDefinition.type
  • Remove codes data-added , data-modified , data-removed
  • Add code subscription-topic
TriggerDefinition.code
  • Added Element
TriggerDefinition.subscriptionTopic
  • Added Element
TriggerDefinition.timing[x]
  • Remove Type Reference(Schedule)

See the Full Difference for further information

Structure

Triggering
Name Flags Card. Type Description & Constraints      Filter: Filters doco
. . TriggerDefinition Σ N Element Defines an expected trigger for a module
+ Rule: Either timing, or a data requirement, but not both
+ Rule: A named event requires a name or code, a periodic event requires timing, a data event requires data, and a subscription topic requires a reference to a subscription topic

Elements defined in Ancestors: id , extension
. . . type Σ C 1..1 code named-event | periodic | data-changed | data-added | data-modified | data-removed | data-accessed | data-access-ended | subscription-topic
Binding: TriggerType ( Required )
. . . eventName name Σ C 0..1 string Name or URI that identifies the event name
. . eventTiming[x] . code Σ C 0..1 CodeableConcept Timing Coded definition of the event
. . . timing[x] Σ C 0..1 Timing of the event
. . . eventTimingReference . timingTiming Reference ( Schedule Timing )
. . . eventTimingDate . timingDate date
. . . . eventTimingDateTime timingDateTime dateTime
. eventData . . data Σ C 0..1 0..* DataRequirement Triggering data of the event (multiple = 'and')

. . . condition Σ 0..1 Expression Whether the event triggers (boolean expression)

doco Documentation for this format icon

UML Diagram ( Legend )

Element Extensions - as described for all elements: additional information that is not part of the basic definition of the resource / type extension : Extension 0..* TriggerDefinition The type of triggering event type : code [1..1] « The type of trigger trigger. (Strength=Required) TriggerType ! » « This element has or is affected by some invariants C » The A formal name of for the event. This may be an absolute URI that identifies the event (if this is formally (e.g. from a named-event trigger) trigger registry), or a simple relative URI that identifies the event in a local context eventName name : string [0..1] « This element has or is affected by some invariants C » A code that identifies the event code : CodeableConcept [0..1] « This element has or is affected by some invariants C » A reference to a SubscriptionTopic resource that defines the event. If this element is provided, no other information about the trigger definition may be supplied subscriptionTopic : canonical [0..1] « SubscriptionTopic » « This element has or is affected by some invariants C » The timing of the event (if this is a period periodic trigger) eventTiming[x] timing[x] : Type DataType [0..1] « Timing | Reference ( Schedule )| date | dateTime » « This element has or is affected by some invariants C » The triggering data of the event (if this is a data trigger) trigger). If more than one data is requirement is specified, then all the data requirements must be true eventData data : DataRequirement [0..*] « This element has or is affected by some invariants C » A boolean-valued expression that is evaluated in the context of the container of the trigger definition and returns whether or not the trigger fires condition : Expression [0..1] DataType

XML Template

<

<TriggerDefinition xmlns="http://hl7.org/fhir">

 <!-- from Element: extension -->
 <
 <
 <</eventTiming[x]>
 <</eventData>
</[name]>

 <type value="[code]"/><!-- I 1..1 named-event | periodic | data-changed | data-added | data-modified | data-removed | data-accessed | data-access-ended | subscription-topic -->
 <name value="[string]"/><!-- I 0..1 Name or URI that identifies the event -->
 <code><!-- I 0..1 CodeableConcept Coded definition of the event --></code>
 <subscriptionTopic><!-- I 0..1 canonical(SubscriptionTopic) What event --></subscriptionTopic>
 <timing[x]><!-- I 0..1 Timing|date|dateTime Timing of the event --></timing[x]>
 <data><!-- I 0..* DataRequirement Triggering data of the event (multiple = 'and') --></data>
 <condition><!-- 0..1 Expression Whether the event triggers (boolean expression) --></condition>
</TriggerDefinition>

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .

[
 # from Element: 
  fhir:
  fhir:
  # . One of these 4
    fhir: ]
    fhir:) ]
    fhir: ]
    fhir: ]
  fhir:

 # from Element: fhir:extension
  fhir:type [ code ] ; # 1..1 I named-event | periodic | data-changed | data-added | data-modified | data-removed | data-accessed | data-access-ended | subscription-topic
  fhir:name [ string ] ; # 0..1 I Name or URI that identifies the event
  fhir:code [ CodeableConcept ] ; # 0..1 I Coded definition of the event
  fhir:subscriptionTopic [ canonical(SubscriptionTopic) ] ; # 0..1 I What event
  # timing[x] : 0..1 I Timing of the event. One of these 3
    fhir:timing [  a fhir:Timing ; Timing ]
    fhir:timing [  a fhir:Date ; date ]
    fhir:timing [  a fhir:DateTime ; dateTime ]
  fhir:data  ( [ DataRequirement ] ... ) ; # 0..* I Triggering data of the event (multiple = 'and')
  fhir:condition [ Expression ] ; # 0..1 Whether the event triggers (boolean expression)

]

Changes since DSTU2 Release 3

This complex-type did Changes from both R4 and R4B

TriggerDefinition
TriggerDefinition.type
  • Remove codes data-added , data-modified , data-removed
  • Add code subscription-topic
TriggerDefinition.code
  • Added Element
TriggerDefinition.subscriptionTopic
  • Added Element
TriggerDefinition.timing[x]
  • Remove Type Reference(Schedule)

See the Full Difference for further information

Constraints

id Level Location Description Expression
img  trd-1 Rule (base) Either timing, or a data requirement, but not exist both data.empty() or timing.empty()
img  trd-3 Rule (base) A named event requires a name or code, a periodic event requires timing, a data event requires data, and a subscription topic requires a reference to a subscription topic (type = 'named-event' implies (name.exists() or code.exists())) and (type = 'periodic' implies timing.exists()) and (type.startsWith('data-') implies data.exists()) and (type = 'subscription-topic' implies subscriptionTopic.exists())

Terminology Bindings

Path ValueSet Type Documentation
TriggerDefinition.type TriggerType Required

The type of trigger.

TriggerDefinition is used in the following places: EventDefinition , Parameters , PlanDefinition and Task

 

See also Examples , Detailed Descriptions , Mappings , Profiles and Extensions

The Expression structure defines an expression that generates a value. The expression is provided in a specifed language (by mime type)

The context of use of the expression must specify the context in which the expression is evaluated, and how the result of the expression is used.

Structure

Name Flags Card. Type Description & Constraints      Filter: Filtersdoco
.. Expression Σ N Element An expression that can be used to generate a value
+ Rule: An expression or a reference must be provided
+ Rule: The name must be a valid variable name in most computer languages

Elements defined in Ancestors: id , extension
... description Σ 0..1 string Natural language description of the condition
... name Σ C 0..1 code Short name assigned to expression for reuse
... language Σ 0..1 code text/cql | text/fhirpath | application/x-fhir-query | etc.
Binding: Expression Language ( Extensible )
Additional Bindings Purpose
Mime Types Max Binding

... reference Σ C 0..1 uri Where the expression is found

doco Documentation for this format icon

Definition: XML | JSON

XML Template


<Expression xmlns="http://hl7.org/fhir">
 <!-- from Element: extension -->
 <description value="[string]"/><!-- 0..1 Natural language description of the condition -->
 <name value="[code]"/><!-- I 0..1 Short name assigned to expression for reuse -->
 <language value="[code]"/><!-- 0..1 text/cql | text/fhirpath | application/x-fhir-query | etc. -->
 <expression value="[string]"/><!-- I 0..1 Expression in specified language -->
 <reference value="[uri]"/><!-- I 0..1 Where the expression is found -->
</Expression>

Turtle Template


@prefix fhir: <http://hl7.org/fhir/> .

[
 # from Element: fhir:extension
  fhir:description [ string ] ; # 0..1 Natural language description of the condition
  fhir:name [ code ] ; # 0..1 I Short name assigned to expression for reuse
  fhir:language [ code ] ; # 0..1 text/cql | text/fhirpath | application/x-fhir-query | etc.
  fhir:expression [ string ] ; # 0..1 I Expression in specified language
  fhir:reference [ uri ] ; # 0..1 I Where the expression is found
]

Changes since Release 2 3

Changes from both R4 and R4B

Expression
Expression.name
  • Type changed from id to code
Expression.language
  • Min Cardinality changed from 1 to 0
  • Change max value set from http://www.rfc-editor.org/bcp/bcp13.txt to none
  • Change code system for extensibly bound codes from "http://hl7.org/fhir/expression-language" to "urn:ietf:bcp:13"

See the Full Difference for further information

Structure

Name Flags Card. Type Description & Constraints      Filter: Filtersdoco
.. Expression Σ N Element An expression that can be used to generate a value
+ Rule: An expression or a reference must be provided
+ Rule: The name must be a valid variable name in most computer languages

Elements defined in Ancestors: id , extension
... description Σ 0..1 string Natural language description of the condition
... name Σ C 0..1 code Short name assigned to expression for reuse
... language Σ 0..1 code text/cql | text/fhirpath | application/x-fhir-query | etc.
Binding: Expression Language ( Extensible )
Additional Bindings Purpose
Mime Types Max Binding

... reference Σ C 0..1 uri Where the expression is found

doco Documentation for this format icon

XML Template


<Expression xmlns="http://hl7.org/fhir">
 <!-- from Element: extension -->
 <description value="[string]"/><!-- 0..1 Natural language description of the condition -->
 <name value="[code]"/><!-- I 0..1 Short name assigned to expression for reuse -->
 <language value="[code]"/><!-- 0..1 text/cql | text/fhirpath | application/x-fhir-query | etc. -->
 <expression value="[string]"/><!-- I 0..1 Expression in specified language -->
 <reference value="[uri]"/><!-- I 0..1 Where the expression is found -->
</Expression>

Turtle Template


@prefix fhir: <http://hl7.org/fhir/> .

[
 # from Element: fhir:extension
  fhir:description [ string ] ; # 0..1 Natural language description of the condition
  fhir:name [ code ] ; # 0..1 I Short name assigned to expression for reuse
  fhir:language [ code ] ; # 0..1 text/cql | text/fhirpath | application/x-fhir-query | etc.
  fhir:expression [ string ] ; # 0..1 I Expression in specified language
  fhir:reference [ uri ] ; # 0..1 I Where the expression is found
]

Changes since Release 3

Changes from both R4 and R4B

Expression
Expression.name
  • Type changed from id to code
Expression.language
  • Min Cardinality changed from 1 to 0
  • Change max value set from http://www.rfc-editor.org/bcp/bcp13.txt to none
  • Change code system for extensibly bound codes from "http://hl7.org/fhir/expression-language" to "urn:ietf:bcp:13"

See the Full Difference for further information

Constraints

id Level Location Description Expression
img  exp-1 Rule (base) An expression or a reference must be provided expression.exists() or reference.exists()
img  exp-2 Rule (base) The name must be a valid variable name in most computer languages name.hasValue() implies name.matches('[A-Za-z][A-Za-z0-9\\_]{0,63}')

Terminology Bindings

Path ValueSet Type Documentation
Expression.language ExpressionLanguage Extensible

The media type of the expression language.

  http://hl7.org/fhir/ValueSet/mimetypes maximum

Language support

While the expression data type supports any language, a few specific languages defined by HL7 at particularly of interest for the purposes of this specification:

Expression is used in the following places: TriggerDefinition , ActivityDefinition , ClinicalUseDefinition , Consent , EvidenceVariable , Group , Measure , Parameters , Permission , PlanDefinition , RequestOrchestration and Task

 

See also Examples , Detailed Descriptions , Mappings , Profiles and Mappings . Extensions

The UsageContext structure defines the context of use for a module.

Structure

Name Flags Card. Type Description & Constraints      Filter: Filters doco
. . UsageContext Σ N Element Describes the context of use for a conformance or knowledge resource

Elements defined in Ancestors: id , extension
. . . code Σ 1..1 Coding Type of context being specified
Binding: UsageContextType icon ( Extensible )
. . . value[x] Σ 1..1 Value that defines the context
Binding: Context of Use ValueSet ( Example )
. . . . valueCodeableConcept CodeableConcept
. . . . valueQuantity Quantity
. . . . valueRange Range
. . . . valueReference Reference ( PlanDefinition | ResearchStudy | InsurancePlan | HealthcareService | Group | Location | Organization )

doco Documentation for this format icon

Definition: XML | JSON

XML Template

<

<UsageContext xmlns="http://hl7.org/fhir">

 <!-- from Element: extension -->
 <</code>
 <</value[x]>
</[name]>

 <code><!-- 1..1 Coding Type of context being specified icon --></code>
 <value[x]><!-- 1..1 CodeableConcept|Quantity|Range|Reference(Group|
   HealthcareService|InsurancePlan|Location|Organization|PlanDefinition|
   ResearchStudy) Value that defines the context --></value[x]>

</UsageContext>

JSON Template


{doco
  "resourceType" : "",

  // from Element: extension
  "
  
  " }
  " }
  " }

  "code" : { Coding }, // R!  Type of context being specified icon
  // value[x]: Value that defines the context. One of these 4:

  "valueCodeableConcept" : { CodeableConcept },
  "valueQuantity" : { Quantity },
  "valueRange" : { Range },
  "valueReference" : { Reference(Group|HealthcareService|InsurancePlan|Location|
   Organization|PlanDefinition|ResearchStudy) }
}

Turtle Template


@prefix fhir: <http://hl7.org/fhir/> .

[
 # from Element: 
  fhir:
  # . One of these 3
    fhir: ]
    fhir: ]
    fhir: ]

 # from Element: fhir:extension
  fhir:code [ Coding ] ; # 1..1 Type of context being specified
  # value[x] : 1..1 Value that defines the context. One of these 4
    fhir:value [  a fhir:CodeableConcept ; CodeableConcept ]
    fhir:value [  a fhir:Quantity ; Quantity ]
    fhir:value [  a fhir:Range ; Range ]
    fhir:value [  a fhir:Reference ; Reference(Group|HealthcareService|InsurancePlan|Location|Organization|PlanDefinition|
  ResearchStudy) ]
]

Changes since DSTU2 Release 3



This complex-type did not exist in Release 2 Changes from both R4 and R4B

UsageContext
UsageContext.code
  • Change value set from http://hl7.org/fhir/ValueSet/usage-context-type to UsageContextType icon

See the Full Difference for further information

Structure

Name Flags Card. Type Description & Constraints      Filter: Filters doco
. . UsageContext Σ N Element Describes the context of use for a conformance or knowledge resource

Elements defined in Ancestors: id , extension
. . . code Σ 1..1 Coding Type of context being specified
Binding: UsageContextType icon ( Extensible )
. . . value[x] Σ 1..1 Value that defines the context
Binding: Context of Use ValueSet ( Example )
. . . . valueCodeableConcept CodeableConcept
. . . . valueQuantity Quantity
. . . . valueRange Range
. . . . valueReference Reference ( PlanDefinition | ResearchStudy | InsurancePlan | HealthcareService | Group | Location | Organization )

doco Documentation for this format icon

XML Template

<

<UsageContext xmlns="http://hl7.org/fhir">

 <!-- from Element: extension -->
 <</code>
 <</value[x]>
</[name]>

 <code><!-- 1..1 Coding Type of context being specified icon --></code>
 <value[x]><!-- 1..1 CodeableConcept|Quantity|Range|Reference(Group|
   HealthcareService|InsurancePlan|Location|Organization|PlanDefinition|
   ResearchStudy) Value that defines the context --></value[x]>

</UsageContext>

JSON Template

{doco
  "resourceType" : "",

  // from Element: extension
  "
  
  " }
  " }
  " }

  "code" : { Coding }, // R!  Type of context being specified icon
  // value[x]: Value that defines the context. One of these 4:

  "valueCodeableConcept" : { CodeableConcept },
  "valueQuantity" : { Quantity },
  "valueRange" : { Range },
  "valueReference" : { Reference(Group|HealthcareService|InsurancePlan|Location|
   Organization|PlanDefinition|ResearchStudy) }
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .

[
 # from Element: 
  fhir:
  # . One of these 3
    fhir: ]
    fhir: ]
    fhir: ]

 # from Element: fhir:extension
  fhir:code [ Coding ] ; # 1..1 Type of context being specified
  # value[x] : 1..1 Value that defines the context. One of these 4
    fhir:value [  a fhir:CodeableConcept ; CodeableConcept ]
    fhir:value [  a fhir:Quantity ; Quantity ]
    fhir:value [  a fhir:Range ; Range ]
    fhir:value [  a fhir:Reference ; Reference(Group|HealthcareService|InsurancePlan|Location|Organization|PlanDefinition|
  ResearchStudy) ]
]

Changes since DSTU2 Release 3

This complex-type did not exist in Release 2 Changes from both R4 and R4B

UsageContext
UsageContext.code
  • Change value set from http://hl7.org/fhir/ValueSet/usage-context-type to UsageContextType icon

See the Full Difference for further information

Constraints

Terminology Bindings

Path ValueSet Type Documentation
UsageContext.code UsageContextType icon Extensible

A code that specifies a type of context being specified by a usage context.

UsageContext.value[x] ContextOfUseValueSet Example

This value set defines a base set of codes that can be used to indicate that the content in a resource was developed with a focus and intent of supporting use within particular contexts.

UsageContext is used in the following places: ElementDefinition , ActivityDefinition , ActorDefinition , CanonicalResource , CapabilityStatement , CodeSystem , CompartmentDefinition , Composition , ConceptMap , DataElement ConditionDefinition , ExpansionProfile DeviceDefinition , GraphDefinition EventDefinition , Evidence , EvidenceVariable , ExampleScenario , Group , ImplementationGuide , Library , Measure , MessageDefinition , NamingSystem , ObservationDefinition , OperationDefinition , Parameters , PlanDefinition , Questionnaire , Requirements , SearchParameter , ServiceDefinition SpecimenDefinition , StructureDefinition , StructureMap , TestScript SubscriptionTopic , Task , TerminologyCapabilities and ValueSet

See also Examples , Detailed Descriptions , Mappings , Profiles and Extensions

The ExtendedContactDetail structure defines extended contact details for a named, or unnamed individual/purpose.

These are extensively used in provider directory resources where contact information is often very rich in nature, and requires additional metadata around their usage.
This datatype permits the context of UsageContext the contact informations use to be provided, and groups them together with other important metadata.

Not all properties are expected to be present in different contexts all instances, and only the ones that apply.
e.g., A website contact will only have the telecom included, but might also include a purpose and possibly a period if required. Whereas an accounts contact detail could include their name, postal address and telephone number (and possibly Organization if it was an outsourced capability)

The period provides the general start and end of the contact's applicability for usage. This is not intended to store a history of usages over time, but a convenient way to record upcoming relevant changes to the content when it is being published.
This permits a contact to be marked as becoming available from X, or is expected to no longer be available from Y. An extension may be used to mark a contact's general availability times (9am - 5pm) and also exceptions where the contact is not available (e.g., Public holidays)

Structure

Name Flags Card. Type Description & Constraints      Filter: Filtersdoco
.. ExtendedContactDetail Σ N Element Contact information

Elements defined in Ancestors: id , extension
... purpose Σ 0..1 CodeableConcept The type of contact
Binding: Contact entity type icon ( Preferred )
... name Σ 0..* HumanName Name of an individual to contact

... telecom Σ 0..* ContactPoint Contact details (e.g.phone/fax/url)

... organization Σ 0..1 Reference ( Organization ) This contact detail is handled/monitored by a specific organization
... period Σ 0..1 Period Period that this contact was valid for usage

doco Documentation for this format icon

Definition: XML | JSON

XML Template


<ExtendedContactDetail xmlns="http://hl7.org/fhir">
 <!-- from Element: extension -->
 <purpose><!-- 0..1 CodeableConcept The type of contact icon --></purpose>
 <name><!-- 0..* HumanName Name of an individual to contact --></name>
 <telecom><!-- 0..* ContactPoint Contact details (e.g.phone/fax/url) --></telecom>
 <address><!-- 0..1 Address Address for the contact --></address>
 <organization><!-- 0..1 Reference(Organization) This contact detail is handled/monitored by a specific organization --></organization>
 <period><!-- 0..1 Period Period that this contact was valid for usage --></period>
</ExtendedContactDetail>

Turtle Template


@prefix fhir: <http://hl7.org/fhir/> .

[
 # from Element: fhir:extension
  fhir:purpose [ CodeableConcept ] ; # 0..1 The type of contact
  fhir:name  ( [ HumanName ] ... ) ; # 0..* Name of an individual to contact
  fhir:telecom  ( [ ContactPoint ] ... ) ; # 0..* Contact details (e.g.phone/fax/url)
  fhir:address [ Address ] ; # 0..1 Address for the contact
  fhir:organization [ Reference(Organization) ] ; # 0..1 This contact detail is handled/monitored by a specific organization
  fhir:period [ Period ] ; # 0..1 Period that this contact was valid for usage
]

Changes since Release 3

Changes from both R4 and R4B

This complex-type did not exist in Release R4

See the Full Difference for further information

Structure

Name Flags Card. Type Description & Constraints      Filter: Filtersdoco
.. ExtendedContactDetail Σ N Element Contact information

Elements defined in Ancestors: id , extension
... purpose Σ 0..1 CodeableConcept The type of contact
Binding: Contact entity type icon ( Preferred )
... name Σ 0..* HumanName Name of an individual to contact

... telecom Σ 0..* ContactPoint Contact details (e.g.phone/fax/url)

... organization Σ 0..1 Reference ( Organization ) This contact detail is handled/monitored by a specific organization
... period Σ 0..1 Period Period that this contact was valid for usage

doco Documentation for this format icon

XML Template


<ExtendedContactDetail xmlns="http://hl7.org/fhir">
 <!-- from Element: extension -->
 <purpose><!-- 0..1 CodeableConcept The type of contact icon --></purpose>
 <name><!-- 0..* HumanName Name of an individual to contact --></name>
 <telecom><!-- 0..* ContactPoint Contact details (e.g.phone/fax/url) --></telecom>
 <address><!-- 0..1 Address Address for the contact --></address>
 <organization><!-- 0..1 Reference(Organization) This contact detail is handled/monitored by a specific organization --></organization>
 <period><!-- 0..1 Period Period that this contact was valid for usage --></period>
</ExtendedContactDetail>

Turtle Template


@prefix fhir: <http://hl7.org/fhir/> .

[
 # from Element: fhir:extension
  fhir:purpose [ CodeableConcept ] ; # 0..1 The type of contact
  fhir:name  ( [ HumanName ] ... ) ; # 0..* Name of an individual to contact
  fhir:telecom  ( [ ContactPoint ] ... ) ; # 0..* Contact details (e.g.phone/fax/url)
  fhir:address [ Address ] ; # 0..1 Address for the contact
  fhir:organization [ Reference(Organization) ] ; # 0..1 This contact detail is handled/monitored by a specific organization
  fhir:period [ Period ] ; # 0..1 Period that this contact was valid for usage
]

Changes since Release 3

Changes from both R4 and R4B

This complex-type did not exist in Release R4

See the Full Difference for further information

Constraints

Terminology Bindings

Path ValueSet Type Documentation
ExtendedContactDetail.purpose ContactEntityType icon Preferred

This example value set defines a set of codes that can be used to indicate the purpose for which you would contact a contact party.

ExtendedContactDetail is used in the following places: VirtualServiceDetail , HealthcareService , InsuranceProduct , Location , Organization , OrganizationAffiliation and PractitionerRole

See also Examples , Detailed Descriptions , Mappings , Profiles and Extensions

  The VirtualServiceDetail structure defines details of a virtual communication capability, such as a web conference call.

Structure

Name Flags Card. Type Description & Constraints      Filter: Filtersdoco
.. VirtualServiceDetail Σ N Element Virtual Service Contact Details

Elements defined in Ancestors: id , extension
... channelType Σ 0..1 Coding Channel Type
Binding: Virtual Service Type ( Example )
... address[x] Σ 0..1 Contact address/number
.... addressUrl url
.... addressString string
.... addressContactPoint ContactPoint
.... addressExtendedContactDetail ExtendedContactDetail
... additionalInfo Σ 0..* url Web address to see alternative connection details

... sessionKey Σ 0..1 string Session Key required by the virtual service

doco Documentation for this format icon

Definition: XML | JSON

XML Template


<VirtualServiceDetail xmlns="http://hl7.org/fhir">
 <!-- from Element: extension -->
 <channelType><!-- 0..1 Coding Channel Type --></channelType>
 <address[x]><!-- 0..1 url|string|ContactPoint|ExtendedContactDetail Contact address/number --></address[x]>
 <additionalInfo value="[url]"/><!-- 0..* Web address to see alternative connection details -->
 <maxParticipants value="[positiveInt]"/><!-- 0..1 Maximum number of participants supported by the virtual service -->
 <sessionKey value="[string]"/><!-- 0..1 Session Key required by the virtual service -->
</VirtualServiceDetail>

Turtle Template


@prefix fhir: <http://hl7.org/fhir/> .

[
 # from Element: fhir:extension
  fhir:channelType [ Coding ] ; # 0..1 Channel Type
  # address[x] : 0..1 Contact address/number. One of these 4
    fhir:address [  a fhir:Url ; url ]
    fhir:address [  a fhir:String ; string ]
    fhir:address [  a fhir:ContactPoint ; ContactPoint ]
    fhir:address [  a fhir:ExtendedContactDetail ; ExtendedContactDetail ]
  fhir:additionalInfo  ( [ url ] ... ) ; # 0..* Web address to see alternative connection details
  fhir:maxParticipants [ positiveInt ] ; # 0..1 Maximum number of participants supported by the virtual service
  fhir:sessionKey [ string ] ; # 0..1 Session Key required by the virtual service
]

Changes since Release 3

Changes from both R4 and R4B

This complex-type did not exist in Release R4

See the Full Difference for further information

Structure

Name Flags Card. Type Description & Constraints      Filter: Filtersdoco
.. VirtualServiceDetail Σ N Element Virtual Service Contact Details

Elements defined in Ancestors: id , extension
... channelType Σ 0..1 Coding Channel Type
Binding: Virtual Service Type ( Example )
... address[x] Σ 0..1 Contact address/number
.... addressUrl url
.... addressString string
.... addressContactPoint ContactPoint
.... addressExtendedContactDetail ExtendedContactDetail
... additionalInfo Σ 0..* url Web address to see alternative connection details

... sessionKey Σ 0..1 string Session Key required by the virtual service

doco Documentation for this format icon

XML Template


<VirtualServiceDetail xmlns="http://hl7.org/fhir">
 <!-- from Element: extension -->
 <channelType><!-- 0..1 Coding Channel Type --></channelType>
 <address[x]><!-- 0..1 url|string|ContactPoint|ExtendedContactDetail Contact address/number --></address[x]>
 <additionalInfo value="[url]"/><!-- 0..* Web address to see alternative connection details -->
 <maxParticipants value="[positiveInt]"/><!-- 0..1 Maximum number of participants supported by the virtual service -->
 <sessionKey value="[string]"/><!-- 0..1 Session Key required by the virtual service -->
</VirtualServiceDetail>

Turtle Template


@prefix fhir: <http://hl7.org/fhir/> .

[
 # from Element: fhir:extension
  fhir:channelType [ Coding ] ; # 0..1 Channel Type
  # address[x] : 0..1 Contact address/number. One of these 4
    fhir:address [  a fhir:Url ; url ]
    fhir:address [  a fhir:String ; string ]
    fhir:address [  a fhir:ContactPoint ; ContactPoint ]
    fhir:address [  a fhir:ExtendedContactDetail ; ExtendedContactDetail ]
  fhir:additionalInfo  ( [ url ] ... ) ; # 0..* Web address to see alternative connection details
  fhir:maxParticipants [ positiveInt ] ; # 0..1 Maximum number of participants supported by the virtual service
  fhir:sessionKey [ string ] ; # 0..1 Session Key required by the virtual service
]

Changes since Release 3

Changes from both R4 and R4B

This complex-type did not exist in Release R4

See the Full Difference for further information

Constraints

Terminology Bindings

Path ValueSet Type Documentation
VirtualServiceDetail.channelType VirtualServiceType Example

Example codes for possible virtual service connection types.

VirtualServiceDetail is used in the following places: Appointment , Encounter and Location

See also Examples , Detailed Descriptions , Mappings , Profiles and Extensions

The Availability structure defines a pattern of availability data typically used in directory resources.

Structure

Name Flags Card. Type Description & Constraints      Filter: Filtersdoco
.. Availability Σ N Element Availability data for an {item}

Elements defined in Ancestors: id , extension
... period Σ 0..1 Period When the availability applies
... availableTime Σ C 0..* Element Times the {item} is available
+ Rule: Cannot include start/end times when selecting all day availability.

.... daysOfWeek Σ 0..* code mon | tue | wed | thu | fri | sat | sun
Binding: Days Of Week ( Required )

.... allDay Σ C 0..1 boolean Always available? i.e. 24 hour service
.... availableStartTime Σ C 0..1 time Opening time of day (ignored if allDay = true)
.... availableEndTime Σ C 0..1 time Closing time of day (ignored if allDay = true)
... notAvailableTime Σ 0..* Element Not available during this time due to provided reason

.... description Σ 0..1 string Reason presented to the user explaining why time not available
.... during Σ 0..1 Period Service not available during this period

doco Documentation for this format icon

Definition: XML | JSON

XML Template


<Availability xmlns="http://hl7.org/fhir">
 <!-- from Element: extension -->
 <period><!-- 0..1 Period When the availability applies --></period>
 <availableTime>  <!-- 0..* Times the {item} is available -->
  <daysOfWeek value="[code]"/><!-- 0..* mon | tue | wed | thu | fri | sat | sun -->
  <allDay value="[boolean]"/><!-- I 0..1 Always available? i.e. 24 hour service -->
  <availableStartTime value="[time]"/><!-- I 0..1 Opening time of day (ignored if allDay = true) -->
  <availableEndTime value="[time]"/><!-- I 0..1 Closing time of day (ignored if allDay = true) -->
 </availableTime>
 <notAvailableTime>  <!-- 0..* Not available during this time due to provided reason -->
  <description value="[string]"/><!-- 0..1 Reason presented to the user explaining why time not available -->
  <during><!-- 0..1 Period Service not available during this period --></during>
 </notAvailableTime>
</Availability>

Turtle Template


@prefix fhir: <http://hl7.org/fhir/> .

[
 # from Element: fhir:extension
  fhir:period [ Period ] ; # 0..1 When the availability applies
  fhir:availableTime ( [ # 0..* Times the {item} is available
    fhir:daysOfWeek  ( [ code ] ... ) ; # 0..* mon | tue | wed | thu | fri | sat | sun
    fhir:allDay [ boolean ] ; # 0..1 I Always available? i.e. 24 hour service
    fhir:availableStartTime [ time ] ; # 0..1 I Opening time of day (ignored if allDay = true)
    fhir:availableEndTime [ time ] ; # 0..1 I Closing time of day (ignored if allDay = true)
  ] ... ) ;
  fhir:notAvailableTime ( [ # 0..* Not available during this time due to provided reason
    fhir:description [ string ] ; # 0..1 Reason presented to the user explaining why time not available
    fhir:during [ Period ] ; # 0..1 Service not available during this period
  ] ... ) ;
]

Changes since Release 3

Changes from both R4 and R4B

This complex-type did not exist in Release R4

See the Full Difference for further information

Structure

Name Flags Card. Type Description & Constraints      Filter: Filtersdoco
.. Availability Σ N Element Availability data for an {item}

Elements defined in Ancestors: id , extension
... period Σ 0..1 Period When the availability applies
... availableTime Σ C 0..* Element Times the {item} is available
+ Rule: Cannot include start/end times when selecting all day availability.

.... daysOfWeek Σ 0..* code mon | tue | wed | thu | fri | sat | sun
Binding: Days Of Week ( Required )

.... allDay Σ C 0..1 boolean Always available? i.e. 24 hour service
.... availableStartTime Σ C 0..1 time Opening time of day (ignored if allDay = true)
.... availableEndTime Σ C 0..1 time Closing time of day (ignored if allDay = true)
... notAvailableTime Σ 0..* Element Not available during this time due to provided reason

.... description Σ 0..1 string Reason presented to the user explaining why time not available
.... during Σ 0..1 Period Service not available during this period

doco Documentation for this format icon

XML Template


<Availability xmlns="http://hl7.org/fhir">
 <!-- from Element: extension -->
 <period><!-- 0..1 Period When the availability applies --></period>
 <availableTime>  <!-- 0..* Times the {item} is available -->
  <daysOfWeek value="[code]"/><!-- 0..* mon | tue | wed | thu | fri | sat | sun -->
  <allDay value="[boolean]"/><!-- I 0..1 Always available? i.e. 24 hour service -->
  <availableStartTime value="[time]"/><!-- I 0..1 Opening time of day (ignored if allDay = true) -->
  <availableEndTime value="[time]"/><!-- I 0..1 Closing time of day (ignored if allDay = true) -->
 </availableTime>
 <notAvailableTime>  <!-- 0..* Not available during this time due to provided reason -->
  <description value="[string]"/><!-- 0..1 Reason presented to the user explaining why time not available -->
  <during><!-- 0..1 Period Service not available during this period --></during>
 </notAvailableTime>
</Availability>

Turtle Template


@prefix fhir: <http://hl7.org/fhir/> .

[
 # from Element: fhir:extension
  fhir:period [ Period ] ; # 0..1 When the availability applies
  fhir:availableTime ( [ # 0..* Times the {item} is available
    fhir:daysOfWeek  ( [ code ] ... ) ; # 0..* mon | tue | wed | thu | fri | sat | sun
    fhir:allDay [ boolean ] ; # 0..1 I Always available? i.e. 24 hour service
    fhir:availableStartTime [ time ] ; # 0..1 I Opening time of day (ignored if allDay = true)
    fhir:availableEndTime [ time ] ; # 0..1 I Closing time of day (ignored if allDay = true)
  ] ... ) ;
  fhir:notAvailableTime ( [ # 0..* Not available during this time due to provided reason
    fhir:description [ string ] ; # 0..1 Reason presented to the user explaining why time not available
    fhir:during [ Period ] ; # 0..1 Service not available during this period
  ] ... ) ;
]

Changes since Release 3

Changes from both R4 and R4B

This complex-type did not exist in Release R4

See the Full Difference for further information

Constraints

id Level Location Description Expression
img  av-1 Rule Availability.availableTime Cannot include start/end times when selecting all day availability. allDay.exists().not() or (allDay implies availableStartTime.exists().not() and availableEndTime.exists().not())

Terminology Bindings

Path ValueSet Type Documentation
Availability.availableTime.daysOfWeek DaysOfWeek Required

The days of the week.

Availability is used in the following places: Endpoint , HealthcareService , Location and PractitionerRole

See also Examples , Detailed Descriptions , Mappings , Profiles and Extensions

The MonetaryComponent structure defines a the set of properties across the financial resources.

This component is typically used in a list where each value provides a different type of value contributing to the final value used in line items on a financial transaction.
For example, a line item for a product might include the net price, the tax amount, and the surcharge amount as separate components.

Structure

Name Flags Card. Type Description & Constraints      Filter: Filtersdoco
.. MonetaryComponent Σ N Element Types and value of financial information that apply to line item(s)

Elements defined in Ancestors: id , extension
... type Σ 1..1 code base | surcharge | discount | tax | informational
Binding: Price Component Type ( Required )
... code Σ 0..1 CodeableConcept Codes may be used to differentiate between kinds of taxes, surcharges, discounts etc.
... factor Σ 0..1 decimal Factor used for calculating this component

doco Documentation for this format icon

Definition: XML | JSON

XML Template

Turtle Template


@prefix fhir: <http://hl7.org/fhir/> .

[
 # from Element: fhir:extension
  fhir:type [ code ] ; # 1..1 base | surcharge | discount | tax | informational
  fhir:code [ CodeableConcept ] ; # 0..1 Codes may be used to differentiate between kinds of taxes, surcharges, discounts etc.
  fhir:factor [ decimal ] ; # 0..1 Factor used for calculating this component
  fhir:amount [ Money ] ; # 0..1 Explicit value amount to be used
]

Changes since Release 3

Changes from both R4 and R4B

This complex-type did not exist in Release R4

See the Full Difference for further information

Structure

Name Flags Card. Type Description & Constraints      Filter: Filtersdoco
.. MonetaryComponent Σ N Element Types and value of financial information that apply to line item(s)

Elements defined in Ancestors: id , extension
... type Σ 1..1 code base | surcharge | discount | tax | informational
Binding: Price Component Type ( Required )
... code Σ 0..1 CodeableConcept Codes may be used to differentiate between kinds of taxes, surcharges, discounts etc.
... factor Σ 0..1 decimal Factor used for calculating this component

doco Documentation for this format icon

XML Template

Turtle Template


@prefix fhir: <http://hl7.org/fhir/> .

[
 # from Element: fhir:extension
  fhir:type [ code ] ; # 1..1 base | surcharge | discount | tax | informational
  fhir:code [ CodeableConcept ] ; # 0..1 Codes may be used to differentiate between kinds of taxes, surcharges, discounts etc.
  fhir:factor [ decimal ] ; # 0..1 Factor used for calculating this component
  fhir:amount [ Money ] ; # 0..1 Explicit value amount to be used
]

Changes since Release 3

Changes from both R4 and R4B

This complex-type did not exist in Release R4

See the Full Difference for further information

Constraints

Terminology Bindings

Path ValueSet Type Documentation
MonetaryComponent.type PriceComponentType Required

Codes indicating the kind of the price component.

MonetaryComponent.code Unknown No details provided yet Example Codes may be used to differentiate between kinds of taxes, surcharges, discounts etc.

MonetaryComponent is used in the following places: Invoice