This
page
is
part
of
the
FHIR
Specification
(v1.0.2:
DSTU
(v3.0.2:
STU
2).
3).
The
current
version
which
supercedes
this
version
is
5.0.0
.
For
a
full
list
of
available
versions,
see
the
Directory
of
published
versions
.
Page
versions:
R3
R2
R3
R2
| Orders and Observations Work Group | Maturity Level : N/A | Ballot Status : Informative |
Associates
the
structure
definition
with
a
collection
of
Data
Elements
datadictionary
{
"resourceType": "StructureDefinition",
"id": "datadictionary",
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg",
"valueCode": "oo"
},
{
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm",
"valueInteger": 1
}
],
"url": "http://hl7.org/fhir/StructureDefinition/datadictionary",
"name": "Associates the structure definition with a collection of Data Elements",
"display": "Data Dictionary",
"name": "datadictionary",
"title": "Data Dictionary",
"status": "draft",
"date": "2014-01-31",
"publisher": "Health Level Seven, Inc. - FHIR Core WG",
"contact": [
{
"telecom": [
{
"system": "other",
"system": "url",
"value": "http://hl7.org/special/committees/FHIR"
}
]
}
],
"date": "2014-01-31",
"description": "This extension associates a structure definition with a data dictionary - a collection of data elements that any instance of data that conforms to the structure definition must also conform to. The value of the extension is a uri the defines a query that identifies the collection of relevant data elements\n\nThis extension can be used on any structure definition that is a constraint on the resource types Observation and Questionnaire. THe profile specifies which elements are mandatory etc., but any elements in a resource that conforms to the structure definition must also conform to one of the defined data elements.\n\nFor Observation:\n* Observation.code must be associated with a matching Data Element by DataElement.code. \n* The structure definition should bind Observation.code to a value set that has the same codes as the collection of data elements (though it can be narrower)\n* the unit and the quantity value should conform to the rules laid down in the matching Data Element\n\nFor Questionnaire:\n* todo.",
"fhirVersion": "1.0.2",
"kind": "datatype",
"constrainedType": "Extension",
"description": "This extension associates a structure definition with a data dictionary - a collection of data elements that any instance of data that conforms to the structure definition must also conform to. The value of the extension is a uri that defines a query that identifies the collection of relevant data elements\n\nThis extension can be used on any structure definition that is a constraint on the resource types Observation and Questionnaire. THe profile specifies which elements are mandatory etc., but any elements in a resource that conforms to the structure definition must also conform to one of the defined data elements.\n\nFor Observation:\n* Observation.code must be associated with a matching Data Element by DataElement.code. \n* The structure definition should bind Observation.code to a value set that has the same codes as the collection of data elements (though it can be narrower)\n* the unit and the quantity value should conform to the rules laid down in the matching Data Element\n\nFor Questionnaire:\n* todo.",
"fhirVersion": "3.0.2",
"mapping": [
{
"identity": "rim",
"uri": "http://hl7.org/v3",
"name": "RIM Mapping"
}
],
"kind": "complex-type",
"abstract": false,
"contextType": "resource",
"context": [
"StructureDefinition"
],
"base": "http://hl7.org/fhir/StructureDefinition/Extension",
"type": "Extension",
"baseDefinition": "http://hl7.org/fhir/StructureDefinition/Extension",
"derivation": "constraint",
"snapshot": {
"element": [
{
"id": "Extension",
"path": "Extension",
"short": "Associates the structure definition with a collection of Data Elements",
"definition": "This extension associates a structure definition with a data dictionary - a collection of data elements that any instance of data that conforms to the structure definition must also conform to. The value of the extension is a uri the defines a query that identifies the collection of relevant data elements\n\nThis extension can be used on any structure definition that is a constraint on the resource types Observation and Questionnaire. THe profile specifies which elements are mandatory etc., but any elements in a resource that conforms to the structure definition must also conform to one of the defined data elements.\n\nFor Observation:\n* Observation.code must be associated with a matching Data Element by DataElement.code. \n* The structure definition should bind Observation.code to a value set that has the same codes as the collection of data elements (though it can be narrower)\n* the unit and the quantity value should conform to the rules laid down in the matching Data Element\n\nFor Questionnaire:\n* todo.",
"comments": "The query can select a set of data element resources, or identify a bundle that is a collection of data elements.",
"definition": "This extension associates a structure definition with a data dictionary - a collection of data elements that any instance of data that conforms to the structure definition must also conform to. The value of the extension is a uri that defines a query that identifies the collection of relevant data elements\n\nThis extension can be used on any structure definition that is a constraint on the resource types Observation and Questionnaire. THe profile specifies which elements are mandatory etc., but any elements in a resource that conforms to the structure definition must also conform to one of the defined data elements.\n\nFor Observation:\n* Observation.code must be associated with a matching Data Element by DataElement.code. \n* The structure definition should bind Observation.code to a value set that has the same codes as the collection of data elements (though it can be narrower)\n* the unit and the quantity value should conform to the rules laid down in the matching Data Element\n\nFor Questionnaire:\n* todo.",
"comment": "The query can select a set of data element resources, or identify a bundle that is a collection of data elements.",
"min": 0,
"max": "1",
"base": {
"path": "Extension",
"min": 0,
"max": "*"
},
"type": [
"condition": [
"ele-1"
],
"constraint": [
{
"code": "Extension"
"key": "ele-1",
"severity": "error",
"human": "All FHIR elements must have a @value or children",
"expression": "hasValue() | (children().count() > id.count())",
"xpath": "@value|f:*|h:div",
"source": "Element"
},
{
"key": "ext-1",
"severity": "error",
"human": "Must have either extensions or value[x], not both",
"expression": "extension.exists() != value.exists()",
"xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')])",
"source": "Extension"
}
]
},
{
"id": "Extension.id",
"path": "Extension.id",
"representation": [
"xmlAttr"
],
"short": "xml:id (or equivalent in JSON)",
"definition": "unique id for the element within a resource (for internal references).",
"definition": "unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
"min": 0,
"max": "1",
"base": {
"path": "Extension.id",
"path": "Element.id",
"min": 0,
"max": "1"
},
"type": [
{
"code": "id"
"code": "string"
}
],
"mapping": [
{
"identity": "rim",
"map": "n/a"
}
]
},
{
"id": "Extension.extension",
"path": "Extension.extension",
"name": "extension",
"short": "Extension",
"definition": "An Extension",
"slicing": {
"discriminator": [
{
"type": "value",
"path": "url"
}
],
"description": "Extensions are always sliced by (at least) url",
"rules": "open"
},
"short": "Additional Content defined by implementations",
"definition": "May be used to represent additional information that is not part of the basic definition of the element. In order to make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.",
"comment": "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
"alias": [
"extensions",
"user content"
],
"min": 0,
"max": "0",
"max": "*",
"base": {
"path": "Extension.extension",
"path": "Element.extension",
"min": 0,
"max": "*"
},
"type": [
{
"code": "Extension"
}
],
"mapping": [
{
"identity": "rim",
"map": "n/a"
}
]
},
{
"id": "Extension.url",
"path": "Extension.url",
"representation": [
"xmlAttr"
],
"short": "identifies the meaning of the extension",
"definition": "Source of the definition for the extension code - a logical name or a URL.",
"comments": "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition should be version specific. This will ideally be the URI for the Resource Profile defining the extension, with the code for the extension after a #.",
"comment": "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.",
"min": 1,
"max": "1",
"base": {
"path": "Extension.url",
"min": 1,
"max": "1"
},
"type": [
{
"code": "uri"
}
],
"fixedUri": "http://hl7.org/fhir/StructureDefinition/datadictionary",
"mapping": [
{
"identity": "rim",
"map": "N/A"
}
]
},
{
"id": "Extension.valueString",
"path": "Extension.valueString",
"short": "Value of extension",
"definition": "Value of extension - may be a resource or one of a constrained set of the data types (see Extensibility in the spec for list).",
"min": 1,
"min": 0,
"max": "1",
"base": {
"path": "Extension.value[x]",
"min": 0,
"max": "1"
},
"type": [
{
"code": "string"
}
],
"mapping": [
{
"identity": "rim",
"map": "N/A"
}
]
}
]
},
"differential": {
"element": [
{
"id": "Extension",
"path": "Extension",
"short": "Associates the structure definition with a collection of Data Elements",
"definition": "This extension associates a structure definition with a data dictionary - a collection of data elements that any instance of data that conforms to the structure definition must also conform to. The value of the extension is a uri the defines a query that identifies the collection of relevant data elements\n\nThis extension can be used on any structure definition that is a constraint on the resource types Observation and Questionnaire. THe profile specifies which elements are mandatory etc., but any elements in a resource that conforms to the structure definition must also conform to one of the defined data elements.\n\nFor Observation:\n* Observation.code must be associated with a matching Data Element by DataElement.code. \n* The structure definition should bind Observation.code to a value set that has the same codes as the collection of data elements (though it can be narrower)\n* the unit and the quantity value should conform to the rules laid down in the matching Data Element\n\nFor Questionnaire:\n* todo.",
"comments": "The query can select a set of data element resources, or identify a bundle that is a collection of data elements.",
"definition": "This extension associates a structure definition with a data dictionary - a collection of data elements that any instance of data that conforms to the structure definition must also conform to. The value of the extension is a uri that defines a query that identifies the collection of relevant data elements\n\nThis extension can be used on any structure definition that is a constraint on the resource types Observation and Questionnaire. THe profile specifies which elements are mandatory etc., but any elements in a resource that conforms to the structure definition must also conform to one of the defined data elements.\n\nFor Observation:\n* Observation.code must be associated with a matching Data Element by DataElement.code. \n* The structure definition should bind Observation.code to a value set that has the same codes as the collection of data elements (though it can be narrower)\n* the unit and the quantity value should conform to the rules laid down in the matching Data Element\n\nFor Questionnaire:\n* todo.",
"comment": "The query can select a set of data element resources, or identify a bundle that is a collection of data elements.",
"min": 0,
"max": "1",
"type": [
{
"code": "Extension"
}
]
"max": "1"
},
{
"id": "Extension.extension",
"path": "Extension.extension",
"name": "extension",
"max": "0"
},
{
"id": "Extension.url",
"path": "Extension.url",
"type": [
{
"code": "uri"
}
],
"fixedUri": "http://hl7.org/fhir/StructureDefinition/datadictionary"
},
{
"path": "Extension.value[x]",
"min": 1,
"id": "Extension.valueString",
"path": "Extension.valueString",
"type": [
{
"code": "string"
}
]
}
]
}
}
Usage note: every effort has been made to ensure that the examples are correct and useful, but they are not a normative part of the specification.