{
"resourceType": "Bundle", "id": "profiles-others", "meta": { "lastUpdated": "2019-11-01T09:29:23.356+11:00" }, "type": "collection", "entry": [ { "fullUrl": "http://hl7.org/fhir/StructureDefinition/shareablemeasure", "resource": { "resourceType": "StructureDefinition", "id": "shareablemeasure", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 2 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "cqi" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/shareablemeasure", "version": "4.0.1", "name": "Shareable Measure", "status": "draft", "experimental": false, "date": "2019-11-01T09:29:23+11:00", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Measure", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Measure", "derivation": "constraint", "snapshot": { "element": [ { "id": "Measure", "path": "Measure", "min": 1, "max": "1", "base": { "path": "Measure", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "mea-0", "severity": "warning", "human": "Name should be usable as an identifier for the module by machine processing applications such as code generation", "expression": "name.matches('[A-Z]([A-Za-z0-9_]){0,254}')", "xpath": "not(exists(f:name/@value)) or matches(f:name/@value, '[A-Z]([A-Za-z0-9_]){0,254}')", "source": "http://hl7.org/fhir/StructureDefinition/Measure" }, { "key": "mea-1", "severity": "error", "human": "Stratifier SHALL be either a single criteria or a set of criteria components", "expression": "group.stratifier.all((code | description | criteria).exists() xor component.exists())", "xpath": "exists(f:group/stratifier/code) or exists(f:group/stratifier/component)", "source": "http://hl7.org/fhir/StructureDefinition/Measure" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.id", "path": "Measure.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Measure.meta", "path": "Measure.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Measure.implicitRules", "path": "Measure.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Measure.language", "path": "Measure.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Measure.text", "path": "Measure.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.contained", "path": "Measure.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.extension", "path": "Measure.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.modifierExtension", "path": "Measure.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Measure.url", "path": "Measure.url", "comment": "Can be a urn:uuid: or a urn:oid: but real http: addresses are preferred. Multiple instances may share the same URL if they have a distinct version.\n\nThe determination of when to create a new version of a resource (same url, new version) vs. defining a new artifact is up to the author. Considerations for making this decision are found in [Technical and Business Versions](http://hl7.org/fhir/resource.html#versions). \n\nIn some cases, the resource can no longer be found at the stated url, but the url itself cannot change. Implementations can use the [meta.source](http://hl7.org/fhir/resource.html#meta) element to indicate where the current master source of the resource can be found.", "min": 1, "max": "1", "base": { "path": "Measure.url", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Measure.identifier", "path": "Measure.identifier", "comment": "Typically, this is used for identifiers that can go in an HL7 V3 II (instance identifier) data type, and can then identify this measure outside of FHIR, where it is not possible to use the logical URI.", "min": 0, "max": "*", "base": { "path": "Measure.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Measure.version", "path": "Measure.version", "comment": "There may be different measure instances that have the same identifier but different versions. The version can be appended to the url in a reference to allow a reference to a particular business version of the measure with the format [url]|[version].", "min": 1, "max": "1", "base": { "path": "Measure.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Measure.name", "path": "Measure.name", "comment": "The name is not expected to be globally unique. The name should be a simple alphanumeric type name to ensure that it is machine-processing friendly.", "min": 1, "max": "1", "base": { "path": "Measure.name", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "condition": [ "inv-0" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Measure.title", "path": "Measure.title", "comment": "This name does not need to be machine-processing friendly and may contain punctuation, white-space, etc.", "min": 0, "max": "1", "base": { "path": "Measure.title", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Measure.subtitle", "path": "Measure.subtitle", "min": 0, "max": "1", "base": { "path": "Measure.subtitle", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.status", "path": "Measure.status", "comment": "Allows filtering of measures that are appropriate for use versus not.", "min": 1, "max": "1", "base": { "path": "Measure.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This is labeled as \"Is Modifier\" because applications should not use a retired {{title}} without due consideration", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "PublicationStatus" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "required", "description": "The lifecycle status of an artifact.", "valueSet": "http://hl7.org/fhir/ValueSet/publication-status|4.0.1" } }, { "id": "Measure.experimental", "path": "Measure.experimental", "comment": "Allows filtering of measures that are appropriate for use versus not.", "min": 1, "max": "1", "base": { "path": "Measure.experimental", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Measure.subject[x]", "path": "Measure.subject[x]", "comment": "The subject of the measure is critical in interpreting the criteria definitions, as the logic in the measures is evaluated with respect to a particular subject. This corresponds roughly to the notion of a Compartment in that it limits what content is available based on its relationship to the subject. In CQL, this corresponds to the context declaration.", "min": 0, "max": "1", "base": { "path": "Measure.subject[x]", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" }, { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Group" ] } ], "meaningWhenMissing": "Patient", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "SubjectType" } ], "strength": "extensible", "description": "The possible types of subjects for a measure (E.g. Patient, Practitioner, Organization, Location, etc.).", "valueSet": "http://hl7.org/fhir/ValueSet/subject-type" } }, { "id": "Measure.date", "path": "Measure.date", "comment": "Note that this is not the same as the resource last-modified-date, since the resource may be a secondary representation of the measure. Additional specific dates may be added as extensions or be found by consulting Provenances associated with past versions of the resource.", "min": 0, "max": "1", "base": { "path": "Measure.date", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Measure.publisher", "path": "Measure.publisher", "comment": "Usually an organization but may be an individual. The publisher (or steward) of the measure is the organization or individual primarily responsible for the maintenance and upkeep of the measure. This is not necessarily the same individual or organization that developed and initially authored the content. The publisher is the primary point of contact for questions or issues with the measure. This item SHOULD be populated unless the information is available from context.", "min": 1, "max": "1", "base": { "path": "Measure.publisher", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Measure.contact", "path": "Measure.contact", "comment": "May be a web site, an email address, a telephone number, etc.", "min": 0, "max": "*", "base": { "path": "Measure.contact", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Measure.description", "path": "Measure.description", "comment": "This description can be used to capture details such as why the measure was built, comments about misuse, instructions for clinical use and interpretation, literature references, examples from the paper world, etc. It is not a rendering of the measure as conveyed in the 'text' field of the resource itself. This item SHOULD be populated unless the information is available from context (e.g. the language of the measure is presumed to be the predominant language in the place the measure was created).", "min": 1, "max": "1", "base": { "path": "Measure.description", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Measure.useContext", "path": "Measure.useContext", "comment": "When multiple useContexts are specified, there is no expectation that all or any of the contexts apply.", "min": 0, "max": "*", "base": { "path": "Measure.useContext", "min": 0, "max": "*" }, "type": [ { "code": "UsageContext" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Measure.jurisdiction", "path": "Measure.jurisdiction", "comment": "It may be possible for the measure to be used in jurisdictions other than those for which it was originally designed or intended.", "min": 0, "max": "*", "base": { "path": "Measure.jurisdiction", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Jurisdiction" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "extensible", "description": "Countries and regions within which this artifact is targeted for use.", "valueSet": "http://hl7.org/fhir/ValueSet/jurisdiction" } }, { "id": "Measure.purpose", "path": "Measure.purpose", "comment": "This element does not describe the usage of the measure. Instead, it provides traceability of ''why'' the resource is either needed or ''why'' it is defined as it is. This may be used to point to source materials or specifications that drove the structure of this measure.", "min": 0, "max": "1", "base": { "path": "Measure.purpose", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.usage", "path": "Measure.usage", "min": 0, "max": "1", "base": { "path": "Measure.usage", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.copyright", "path": "Measure.copyright", "min": 0, "max": "1", "base": { "path": "Measure.copyright", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.approvalDate", "path": "Measure.approvalDate", "comment": "The 'date' element may be more recent than the approval date because of minor changes or editorial corrections.", "min": 0, "max": "1", "base": { "path": "Measure.approvalDate", "min": 0, "max": "1" }, "type": [ { "code": "date" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.lastReviewDate", "path": "Measure.lastReviewDate", "comment": "If specified, this date follows the original approval date.", "min": 0, "max": "1", "base": { "path": "Measure.lastReviewDate", "min": 0, "max": "1" }, "type": [ { "code": "date" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.effectivePeriod", "path": "Measure.effectivePeriod", "comment": "The effective period for a measure determines when the content is applicable for usage and is independent of publication and review dates. For example, a measure intended to be used for the year 2016 might be published in 2015.", "min": 0, "max": "1", "base": { "path": "Measure.effectivePeriod", "min": 0, "max": "1" }, "type": [ { "code": "Period" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Measure.topic", "path": "Measure.topic", "min": 0, "max": "*", "base": { "path": "Measure.topic", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DefinitionTopic" } ], "strength": "example", "description": "High-level categorization of the definition, used for searching, sorting, and filtering.", "valueSet": "http://hl7.org/fhir/ValueSet/definition-topic" } }, { "id": "Measure.author", "path": "Measure.author", "min": 0, "max": "*", "base": { "path": "Measure.author", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.editor", "path": "Measure.editor", "min": 0, "max": "*", "base": { "path": "Measure.editor", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.reviewer", "path": "Measure.reviewer", "min": 0, "max": "*", "base": { "path": "Measure.reviewer", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.endorser", "path": "Measure.endorser", "min": 0, "max": "*", "base": { "path": "Measure.endorser", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.relatedArtifact", "path": "Measure.relatedArtifact", "comment": "Each related artifact is either an attachment, or a reference to another resource, but not both.", "min": 0, "max": "*", "base": { "path": "Measure.relatedArtifact", "min": 0, "max": "*" }, "type": [ { "code": "RelatedArtifact" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.library", "path": "Measure.library", "min": 0, "max": "*", "base": { "path": "Measure.library", "min": 0, "max": "*" }, "type": [ { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Library" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.disclaimer", "path": "Measure.disclaimer", "min": 0, "max": "1", "base": { "path": "Measure.disclaimer", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Measure.scoring", "path": "Measure.scoring", "min": 0, "max": "1", "base": { "path": "Measure.scoring", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "MeasureScoring" } ], "strength": "extensible", "description": "The scoring type of the measure.", "valueSet": "http://hl7.org/fhir/ValueSet/measure-scoring" } }, { "id": "Measure.compositeScoring", "path": "Measure.compositeScoring", "min": 0, "max": "1", "base": { "path": "Measure.compositeScoring", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "CompositeMeasureScoring" } ], "strength": "extensible", "description": "The composite scoring method of the measure.", "valueSet": "http://hl7.org/fhir/ValueSet/composite-measure-scoring" } }, { "id": "Measure.type", "path": "Measure.type", "min": 0, "max": "*", "base": { "path": "Measure.type", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "MeasureType" } ], "strength": "extensible", "description": "The type of measure (includes codes from 2.16.840.1.113883.1.11.20368).", "valueSet": "http://hl7.org/fhir/ValueSet/measure-type" } }, { "id": "Measure.riskAdjustment", "path": "Measure.riskAdjustment", "comment": "Describes the method of adjusting for clinical severity and conditions present at the start of care that can influence patient outcomes for making valid comparisons of outcome measures across providers. Indicates whether a measure is subject to the statistical process for reducing, removing, or clarifying the influences of confounding factors to allow for more useful comparisons.", "min": 0, "max": "1", "base": { "path": "Measure.riskAdjustment", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Measure.rateAggregation", "path": "Measure.rateAggregation", "comment": "The measure rate for an organization or clinician is based upon the entities’ aggregate data and summarizes the performance of the entity over a given time period (e.g., monthly, quarterly, yearly). The aggregated data are derived from the results of a specific measure algorithm and, if appropriate, the application of specific risk adjustment models. Can also be used to describe how to risk adjust the data based on supplemental data elements described in the eMeasure (e.g., pneumonia hospital measures antibiotic selection in the ICU versus non-ICU and then the roll-up of the two). This could be applied to aggregated cohort measure definitions (e.g., CDC's aggregate reporting for TB at the state level).", "min": 0, "max": "1", "base": { "path": "Measure.rateAggregation", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Measure.rationale", "path": "Measure.rationale", "min": 0, "max": "1", "base": { "path": "Measure.rationale", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Measure.clinicalRecommendationStatement", "path": "Measure.clinicalRecommendationStatement", "min": 0, "max": "1", "base": { "path": "Measure.clinicalRecommendationStatement", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Measure.improvementNotation", "path": "Measure.improvementNotation", "min": 0, "max": "1", "base": { "path": "Measure.improvementNotation", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "MeasureImprovementNotation" } ], "strength": "required", "description": "Observation values that indicate what change in a measurement value or score is indicative of an improvement in the measured item or scored issue.", "valueSet": "http://hl7.org/fhir/ValueSet/measure-improvement-notation|4.0.1" } }, { "id": "Measure.definition", "path": "Measure.definition", "min": 0, "max": "*", "base": { "path": "Measure.definition", "min": 0, "max": "*" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Measure.guidance", "path": "Measure.guidance", "min": 0, "max": "1", "base": { "path": "Measure.guidance", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Measure.group", "path": "Measure.group", "min": 0, "max": "*", "base": { "path": "Measure.group", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.group.id", "path": "Measure.group.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.group.extension", "path": "Measure.group.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.group.modifierExtension", "path": "Measure.group.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Measure.group.code", "path": "Measure.group.code", "min": 0, "max": "1", "base": { "path": "Measure.group.code", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.group.description", "path": "Measure.group.description", "min": 0, "max": "1", "base": { "path": "Measure.group.description", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.group.population", "path": "Measure.group.population", "min": 0, "max": "*", "base": { "path": "Measure.group.population", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.group.population.id", "path": "Measure.group.population.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.group.population.extension", "path": "Measure.group.population.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.group.population.modifierExtension", "path": "Measure.group.population.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Measure.group.population.code", "path": "Measure.group.population.code", "min": 0, "max": "1", "base": { "path": "Measure.group.population.code", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "MeasurePopulationType" } ], "strength": "extensible", "description": "The type of population.", "valueSet": "http://hl7.org/fhir/ValueSet/measure-population" } }, { "id": "Measure.group.population.description", "path": "Measure.group.population.description", "min": 0, "max": "1", "base": { "path": "Measure.group.population.description", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.group.population.criteria", "path": "Measure.group.population.criteria", "comment": "In the case of a continuous-variable or ratio measure, this may be the name of a function that calculates the value of the individual observation for each patient or event in the population. For these types of measures, individual observations are reported as observation resources included in the evaluatedResources bundle for each patient. See the MeasureReport resource or the Quality Reporting topic for more information.", "min": 1, "max": "1", "base": { "path": "Measure.group.population.criteria", "min": 1, "max": "1" }, "type": [ { "code": "Expression" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.group.stratifier", "path": "Measure.group.stratifier", "min": 0, "max": "*", "base": { "path": "Measure.group.stratifier", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.group.stratifier.id", "path": "Measure.group.stratifier.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.group.stratifier.extension", "path": "Measure.group.stratifier.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.group.stratifier.modifierExtension", "path": "Measure.group.stratifier.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Measure.group.stratifier.code", "path": "Measure.group.stratifier.code", "min": 0, "max": "1", "base": { "path": "Measure.group.stratifier.code", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.group.stratifier.description", "path": "Measure.group.stratifier.description", "min": 0, "max": "1", "base": { "path": "Measure.group.stratifier.description", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.group.stratifier.criteria", "path": "Measure.group.stratifier.criteria", "min": 0, "max": "1", "base": { "path": "Measure.group.stratifier.criteria", "min": 0, "max": "1" }, "type": [ { "code": "Expression" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.group.stratifier.component", "path": "Measure.group.stratifier.component", "comment": "Stratifiers are defined either as a single criteria, or as a set of component criteria.", "min": 0, "max": "*", "base": { "path": "Measure.group.stratifier.component", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.group.stratifier.component.id", "path": "Measure.group.stratifier.component.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.group.stratifier.component.extension", "path": "Measure.group.stratifier.component.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.group.stratifier.component.modifierExtension", "path": "Measure.group.stratifier.component.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Measure.group.stratifier.component.code", "path": "Measure.group.stratifier.component.code", "min": 0, "max": "1", "base": { "path": "Measure.group.stratifier.component.code", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.group.stratifier.component.description", "path": "Measure.group.stratifier.component.description", "min": 0, "max": "1", "base": { "path": "Measure.group.stratifier.component.description", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.group.stratifier.component.criteria", "path": "Measure.group.stratifier.component.criteria", "min": 1, "max": "1", "base": { "path": "Measure.group.stratifier.component.criteria", "min": 1, "max": "1" }, "type": [ { "code": "Expression" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.supplementalData", "path": "Measure.supplementalData", "comment": "Note that supplemental data are reported as observations for each patient and included in the evaluatedResources bundle. See the MeasureReport resource or the Quality Reporting topic for more information.", "min": 0, "max": "*", "base": { "path": "Measure.supplementalData", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.supplementalData.id", "path": "Measure.supplementalData.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.supplementalData.extension", "path": "Measure.supplementalData.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.supplementalData.modifierExtension", "path": "Measure.supplementalData.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Measure.supplementalData.code", "path": "Measure.supplementalData.code", "min": 0, "max": "1", "base": { "path": "Measure.supplementalData.code", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.supplementalData.usage", "path": "Measure.supplementalData.usage", "min": 0, "max": "*", "base": { "path": "Measure.supplementalData.usage", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "MeasureDataUsage" } ], "strength": "extensible", "description": "The intended usage for supplemental data elements in the measure.", "valueSet": "http://hl7.org/fhir/ValueSet/measure-data-usage" } }, { "id": "Measure.supplementalData.description", "path": "Measure.supplementalData.description", "min": 0, "max": "1", "base": { "path": "Measure.supplementalData.description", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Measure.supplementalData.criteria", "path": "Measure.supplementalData.criteria", "min": 1, "max": "1", "base": { "path": "Measure.supplementalData.criteria", "min": 1, "max": "1" }, "type": [ { "code": "Expression" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "Measure", "path": "Measure", "min": 1, "max": "1" }, { "id": "Measure.url", "path": "Measure.url", "min": 1, "max": "1", "type": [ { "code": "uri" } ] }, { "id": "Measure.identifier", "path": "Measure.identifier", "mustSupport": true }, { "id": "Measure.version", "path": "Measure.version", "min": 1, "max": "1", "type": [ { "code": "string" } ] }, { "id": "Measure.name", "path": "Measure.name", "min": 1, "max": "1", "type": [ { "code": "string" } ] }, { "id": "Measure.title", "path": "Measure.title", "min": 0, "max": "1", "mustSupport": true }, { "id": "Measure.experimental", "path": "Measure.experimental", "min": 1, "max": "1", "type": [ { "code": "boolean" } ] }, { "id": "Measure.date", "path": "Measure.date", "min": 0, "max": "1", "mustSupport": true }, { "id": "Measure.publisher", "path": "Measure.publisher", "min": 1, "max": "1", "type": [ { "code": "string" } ] }, { "id": "Measure.contact", "path": "Measure.contact", "mustSupport": true }, { "id": "Measure.description", "path": "Measure.description", "min": 1, "max": "1", "type": [ { "code": "markdown" } ] }, { "id": "Measure.useContext", "path": "Measure.useContext", "mustSupport": true }, { "id": "Measure.jurisdiction", "path": "Measure.jurisdiction", "mustSupport": true } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/servicerequest-genetics", "resource": { "resourceType": "StructureDefinition", "id": "servicerequest-genetics", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 2 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "oo" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/servicerequest-genetics", "version": "4.0.1", "name": "ServiceRequest-Genetics", "status": "draft", "experimental": false, "date": "2015-10-20", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "ServiceRequest", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/ServiceRequest", "derivation": "constraint", "snapshot": { "element": [ { "id": "ServiceRequest", "path": "ServiceRequest", "min": 0, "max": "*", "base": { "path": "ServiceRequest", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "prr-1", "severity": "error", "human": "orderDetail SHALL only be present if code is present", "expression": "orderDetail.empty() or code.exists()", "xpath": "exists(f:code) or not(exists(f:orderDetail))", "source": "http://hl7.org/fhir/StructureDefinition/ServiceRequest" } ], "isModifier": false, "isSummary": false }, { "id": "ServiceRequest.id", "path": "ServiceRequest.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "ServiceRequest.meta", "path": "ServiceRequest.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ServiceRequest.implicitRules", "path": "ServiceRequest.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "ServiceRequest.language", "path": "ServiceRequest.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "ServiceRequest.text", "path": "ServiceRequest.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ServiceRequest.contained", "path": "ServiceRequest.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "ServiceRequest.extension", "path": "ServiceRequest.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "ordered": false, "rules": "open" }, "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "ServiceRequest.extension:Item", "path": "ServiceRequest.extension", "sliceName": "Item", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/servicerequest-geneticsItem" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false }, { "id": "ServiceRequest.modifierExtension", "path": "ServiceRequest.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "ServiceRequest.identifier", "path": "ServiceRequest.identifier", "comment": "The identifier.type element is used to distinguish between the identifiers assigned by the orderer (known as the 'Placer' in HL7 v2) and the producer of the observations in response to the order (known as the 'Filler' in HL7 v2). For further discussion and examples see the resource notes section below.", "min": 0, "max": "*", "base": { "path": "ServiceRequest.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ServiceRequest.instantiatesCanonical", "path": "ServiceRequest.instantiatesCanonical", "comment": "Note: This is a business identifier, not a resource identifier (see [discussion](http://hl7.org/fhir/resource.html#identifiers)). It is best practice for the identifier to only appear on a single resource instance, however business practices may occasionally dictate that multiple resource instances with the same identifier can exist - possibly even with different resource types. For example, multiple Patient and a Person resource instance might share the same social insurance number.", "min": 0, "max": "*", "base": { "path": "ServiceRequest.instantiatesCanonical", "min": 0, "max": "*" }, "type": [ { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/ActivityDefinition", "http://hl7.org/fhir/StructureDefinition/PlanDefinition" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ServiceRequest.instantiatesUri", "path": "ServiceRequest.instantiatesUri", "comment": "This might be an HTML page, PDF, etc. or could just be a non-resolvable URI identifier.", "min": 0, "max": "*", "base": { "path": "ServiceRequest.instantiatesUri", "min": 0, "max": "*" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ServiceRequest.basedOn", "path": "ServiceRequest.basedOn", "min": 0, "max": "*", "base": { "path": "ServiceRequest.basedOn", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/CarePlan", "http://hl7.org/fhir/StructureDefinition/ServiceRequest", "http://hl7.org/fhir/StructureDefinition/MedicationRequest" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ServiceRequest.replaces", "path": "ServiceRequest.replaces", "min": 0, "max": "*", "base": { "path": "ServiceRequest.replaces", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/ServiceRequest" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ServiceRequest.requisition", "path": "ServiceRequest.requisition", "comment": "Requests are linked either by a \"basedOn\" relationship (i.e. one request is fulfilling another) or by having a common requisition. Requests that are part of the same requisition are generally treated independently from the perspective of changing their state or maintaining them after initial creation.", "min": 0, "max": "1", "base": { "path": "ServiceRequest.requisition", "min": 0, "max": "1" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ServiceRequest.status", "path": "ServiceRequest.status", "comment": "The status is generally fully in the control of the requester - they determine whether the order is draft or active and, after it has been activated, competed, cancelled or suspended. States relating to the activities of the performer are reflected on either the corresponding event (see [Event Pattern](http://hl7.org/fhir/event.html) for general discussion) or using the [Task](http://hl7.org/fhir/task.html) resource.", "min": 1, "max": "1", "base": { "path": "ServiceRequest.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ServiceRequestStatus" } ], "strength": "required", "description": "The status of a service order.", "valueSet": "http://hl7.org/fhir/ValueSet/request-status|4.0.1" } }, { "id": "ServiceRequest.intent", "path": "ServiceRequest.intent", "comment": "This element is labeled as a modifier because the intent alters when and how the resource is actually applicable.", "min": 1, "max": "1", "base": { "path": "ServiceRequest.intent", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element changes the interpretation of all descriptive attributes. For example \"the time the request is recommended to occur\" vs. \"the time the request is authorized to occur\" or \"who is recommended to perform the request\" vs. \"who is authorized to perform the request", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ServiceRequestIntent" } ], "strength": "required", "description": "The kind of service request.", "valueSet": "http://hl7.org/fhir/ValueSet/request-intent|4.0.1" } }, { "id": "ServiceRequest.category", "path": "ServiceRequest.category", "comment": "There may be multiple axis of categorization depending on the context or use case for retrieving or displaying the resource. The level of granularity is defined by the category concepts in the value set.", "min": 0, "max": "*", "base": { "path": "ServiceRequest.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ServiceRequestCategory" } ], "strength": "example", "description": "Classification of the requested service.", "valueSet": "http://hl7.org/fhir/ValueSet/servicerequest-category" } }, { "id": "ServiceRequest.priority", "path": "ServiceRequest.priority", "min": 0, "max": "1", "base": { "path": "ServiceRequest.priority", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "meaningWhenMissing": "If missing, this task should be performed with normal priority", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ServiceRequestPriority" } ], "strength": "required", "description": "Identifies the level of importance to be assigned to actioning the request.", "valueSet": "http://hl7.org/fhir/ValueSet/request-priority|4.0.1" } }, { "id": "ServiceRequest.doNotPerform", "path": "ServiceRequest.doNotPerform", "comment": "In general, only the code and timeframe will be present, though occasional additional qualifiers such as body site or even performer could be included to narrow the scope of the prohibition. If the ServiceRequest.code and ServiceRequest.doNotPerform both contain negation, that will reinforce prohibition and should not have a double negative interpretation.", "min": 0, "max": "1", "base": { "path": "ServiceRequest.doNotPerform", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "meaningWhenMissing": "If missing, the request is a positive request e.g. \"do perform\"", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "If true this element negates the specified action. For Example, instead of a request for a procedure, it is a request for the procedure to not occur.", "isSummary": true }, { "id": "ServiceRequest.code", "path": "ServiceRequest.code", "comment": "Many laboratory and radiology procedure codes embed the specimen/organ system in the test order name, for example, serum or serum/plasma glucose, or a chest x-ray. The specimen might not be recorded separately from the test code.", "min": 0, "max": "1", "base": { "path": "ServiceRequest.code", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ServiceRequestCode" } ], "strength": "example", "description": "Codes for tests or services that can be carried out by a designated individual, organization or healthcare service. For laboratory, LOINC is (preferred)[http://build.fhir.org/terminologies.html#preferred] and a valueset using LOINC Order codes is available [here](valueset-diagnostic-requests.html).", "valueSet": "http://hl7.org/fhir/ValueSet/procedure-code" } }, { "id": "ServiceRequest.orderDetail", "path": "ServiceRequest.orderDetail", "comment": "For information from the medical record intended to support the delivery of the requested services, use the `supportingInformation` element.", "min": 0, "max": "*", "base": { "path": "ServiceRequest.orderDetail", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "prr-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "OrderDetail" } ], "strength": "example", "description": "Codified order entry details which are based on order context.", "valueSet": "http://hl7.org/fhir/ValueSet/servicerequest-orderdetail" } }, { "id": "ServiceRequest.quantity[x]", "path": "ServiceRequest.quantity[x]", "min": 0, "max": "1", "base": { "path": "ServiceRequest.quantity[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" }, { "code": "Ratio" }, { "code": "Range" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ServiceRequest.subject", "path": "ServiceRequest.subject", "min": 1, "max": "1", "base": { "path": "ServiceRequest.subject", "min": 1, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/Group", "http://hl7.org/fhir/StructureDefinition/Location", "http://hl7.org/fhir/StructureDefinition/Device" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ServiceRequest.encounter", "path": "ServiceRequest.encounter", "min": 0, "max": "1", "base": { "path": "ServiceRequest.encounter", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Encounter" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ServiceRequest.occurrence[x]", "path": "ServiceRequest.occurrence[x]", "min": 0, "max": "1", "base": { "path": "ServiceRequest.occurrence[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" }, { "code": "Period" }, { "code": "Timing" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ServiceRequest.asNeeded[x]", "path": "ServiceRequest.asNeeded[x]", "min": 0, "max": "1", "base": { "path": "ServiceRequest.asNeeded[x]", "min": 0, "max": "1" }, "type": [ { "code": "boolean" }, { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ProcedureAsNeededReason" } ], "strength": "example", "description": "A coded concept identifying the pre-condition that should hold prior to performing a procedure. For example \"pain\", \"on flare-up\", etc.", "valueSet": "http://hl7.org/fhir/ValueSet/medication-as-needed-reason" } }, { "id": "ServiceRequest.authoredOn", "path": "ServiceRequest.authoredOn", "min": 0, "max": "1", "base": { "path": "ServiceRequest.authoredOn", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ServiceRequest.requester", "path": "ServiceRequest.requester", "comment": "This not the dispatcher, but rather who is the authorizer. This element is not intended to handle delegation which would generally be managed through the Provenance resource.", "min": 0, "max": "1", "base": { "path": "ServiceRequest.requester", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/RelatedPerson", "http://hl7.org/fhir/StructureDefinition/Device" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ServiceRequest.performerType", "path": "ServiceRequest.performerType", "comment": "This is a role, not a participation type. In other words, does not describe the task but describes the capacity. For example, “compounding pharmacy”, “psychiatrist” or “internal referral”.", "min": 0, "max": "1", "base": { "path": "ServiceRequest.performerType", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ServiceRequestParticipantRole" } ], "strength": "example", "description": "Indicates specific responsibility of an individual within the care team, such as \"Primary physician\", \"Team coordinator\", \"Caregiver\", etc.", "valueSet": "http://hl7.org/fhir/ValueSet/participant-role" } }, { "id": "ServiceRequest.performer", "path": "ServiceRequest.performer", "comment": "If multiple performers are present, it is interpreted as a list of *alternative* performers without any preference regardless of order. If order of preference is needed use the [request-performerOrder extension](http://hl7.org/fhir/extension-request-performerorder.html). Use CareTeam to represent a group of performers (for example, Practitioner A *and* Practitioner B).", "min": 0, "max": "*", "base": { "path": "ServiceRequest.performer", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/CareTeam", "http://hl7.org/fhir/StructureDefinition/HealthcareService", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/RelatedPerson" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ServiceRequest.locationCode", "path": "ServiceRequest.locationCode", "min": 0, "max": "*", "base": { "path": "ServiceRequest.locationCode", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ServiceRequestLocation" } ], "strength": "example", "description": "A location type where services are delivered.", "valueSet": "http://terminology.hl7.org/ValueSet/v3-ServiceDeliveryLocationRoleType" } }, { "id": "ServiceRequest.locationReference", "path": "ServiceRequest.locationReference", "min": 0, "max": "*", "base": { "path": "ServiceRequest.locationReference", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Location" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ServiceRequest.reasonCode", "path": "ServiceRequest.reasonCode", "comment": "This element represents why the referral is being made and may be used to decide how the service will be performed, or even if it will be performed at all. Use `CodeableConcept.text` element if the data is free (uncoded) text as shown in the [CT Scan example](http://hl7.org/fhir/servicerequest-example-di.html).", "min": 0, "max": "*", "base": { "path": "ServiceRequest.reasonCode", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ServiceRequestReason" } ], "strength": "example", "description": "Diagnosis or problem codes justifying the reason for requesting the service investigation.", "valueSet": "http://hl7.org/fhir/ValueSet/procedure-reason" } }, { "id": "ServiceRequest.reasonReference", "path": "ServiceRequest.reasonReference", "comment": "This element represents why the referral is being made and may be used to decide how the service will be performed, or even if it will be performed at all. To be as specific as possible, a reference to *Observation* or *Condition* should be used if available. Otherwise when referencing *DiagnosticReport* it should contain a finding in `DiagnosticReport.conclusion` and/or `DiagnosticReport.conclusionCode`. When using a reference to *DocumentReference*, the target document should contain clear findings language providing the relevant reason for this service request. Use the CodeableConcept text element in `ServiceRequest.reasonCode` if the data is free (uncoded) text as shown in the [CT Scan example](http://hl7.org/fhir/servicerequest-example-di.html).", "min": 0, "max": "*", "base": { "path": "ServiceRequest.reasonReference", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Condition", "http://hl7.org/fhir/StructureDefinition/Observation", "http://hl7.org/fhir/StructureDefinition/DiagnosticReport", "http://hl7.org/fhir/StructureDefinition/DocumentReference" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ServiceRequest.insurance", "path": "ServiceRequest.insurance", "min": 0, "max": "*", "base": { "path": "ServiceRequest.insurance", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Coverage", "http://hl7.org/fhir/StructureDefinition/ClaimResponse" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ServiceRequest.supportingInfo", "path": "ServiceRequest.supportingInfo", "comment": "To represent information about how the services are to be delivered use the `instructions` element.", "min": 0, "max": "*", "base": { "path": "ServiceRequest.supportingInfo", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ServiceRequest.specimen", "path": "ServiceRequest.specimen", "comment": "Many diagnostic procedures need a specimen, but the request itself is not actually about the specimen. This element is for when the diagnostic is requested on already existing specimens and the request points to the specimen it applies to. Conversely, if the request is entered first with an unknown specimen, then the [Specimen](http://hl7.org/fhir/specimen.html) resource points to the ServiceRequest.", "min": 0, "max": "*", "base": { "path": "ServiceRequest.specimen", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Specimen" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ServiceRequest.bodySite", "path": "ServiceRequest.bodySite", "comment": "Only used if not implicit in the code found in ServiceRequest.code. If the use case requires BodySite to be handled as a separate resource instead of an inline coded element (e.g. to identify and track separately) then use the standard extension [procedure-targetBodyStructure](http://hl7.org/fhir/extension-procedure-targetbodystructure.html).", "min": 0, "max": "*", "base": { "path": "ServiceRequest.bodySite", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodySite" } ], "strength": "example", "description": "Codes describing anatomical locations. May include laterality.", "valueSet": "http://hl7.org/fhir/ValueSet/body-site" } }, { "id": "ServiceRequest.note", "path": "ServiceRequest.note", "min": 0, "max": "*", "base": { "path": "ServiceRequest.note", "min": 0, "max": "*" }, "type": [ { "code": "Annotation" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ServiceRequest.patientInstruction", "path": "ServiceRequest.patientInstruction", "min": 0, "max": "1", "base": { "path": "ServiceRequest.patientInstruction", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ServiceRequest.relevantHistory", "path": "ServiceRequest.relevantHistory", "comment": "This might not include provenances for all versions of the request – only those deemed “relevant” or important.\rThis SHALL NOT include the Provenance associated with this current version of the resource. (If that provenance is deemed to be a “relevant” change, it will need to be added as part of a later update. Until then, it can be queried directly as the Provenance that points to this version using _revinclude\rAll Provenances should have some historical version of this Request as their subject.", "min": 0, "max": "*", "base": { "path": "ServiceRequest.relevantHistory", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Provenance" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "ServiceRequest", "path": "ServiceRequest", "min": 0, "max": "*" }, { "id": "ServiceRequest.extension:Item", "path": "ServiceRequest.extension", "sliceName": "Item", "min": 0, "max": "*", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/servicerequest-geneticsItem" ] } ] } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/groupdefinition", "resource": { "resourceType": "StructureDefinition", "id": "groupdefinition", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 1 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "fhir" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/groupdefinition", "version": "4.0.1", "name": "Group Definition", "status": "draft", "experimental": false, "date": "2019-11-01T09:29:23+11:00", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Group", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Group", "derivation": "constraint", "snapshot": { "element": [ { "id": "Group", "path": "Group", "comment": "If both Group.characteristic and Group.member are present, then the members are the individuals who were found who met the characteristic. It's possible that there might be other candidate members who meet the characteristic and aren't (yet) in the list. All members SHALL have the listed characteristics.", "min": 1, "max": "1", "base": { "path": "Group", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "grp-1", "severity": "error", "human": "Can only have members if group is \"actual\"", "expression": "member.empty() or (actual = true)", "xpath": "f:actual/@value=true() or not(exists(f:member))", "source": "http://hl7.org/fhir/StructureDefinition/Group" } ], "isModifier": false, "isSummary": false }, { "id": "Group.id", "path": "Group.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Group.meta", "path": "Group.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Group.implicitRules", "path": "Group.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Group.language", "path": "Group.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Group.text", "path": "Group.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Group.contained", "path": "Group.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Group.extension", "path": "Group.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Group.modifierExtension", "path": "Group.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Group.identifier", "path": "Group.identifier", "min": 0, "max": "*", "base": { "path": "Group.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Group.active", "path": "Group.active", "min": 0, "max": "1", "base": { "path": "Group.active", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "meaningWhenMissing": "This resource is generally assumed to be active if no value is provided for the active element", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Group.type", "path": "Group.type", "comment": "Group members SHALL be of the appropriate resource type (Patient for person or animal; or Practitioner, Device, Medication or Substance for the other types.).", "min": 1, "max": "1", "base": { "path": "Group.type", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GroupType" } ], "strength": "required", "description": "Types of resources that are part of group.", "valueSet": "http://hl7.org/fhir/ValueSet/group-type|4.0.1" } }, { "id": "Group.actual", "path": "Group.actual", "min": 1, "max": "1", "base": { "path": "Group.actual", "min": 1, "max": "1" }, "type": [ { "code": "boolean" } ], "fixedBoolean": false, "condition": [ "grp-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Group.code", "path": "Group.code", "comment": "This would generally be omitted for Person resources.", "min": 0, "max": "1", "base": { "path": "Group.code", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GroupKind" } ], "strength": "example", "description": "Kind of particular resource; e.g. cow, syringe, lake, etc." } }, { "id": "Group.name", "path": "Group.name", "min": 0, "max": "1", "base": { "path": "Group.name", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Group.quantity", "path": "Group.quantity", "comment": "Note that the quantity may be less than the number of members if some of the members are not active.", "min": 0, "max": "1", "base": { "path": "Group.quantity", "min": 0, "max": "1" }, "type": [ { "code": "unsignedInt" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Group.managingEntity", "path": "Group.managingEntity", "comment": "This does not strictly align with ownership of a herd or flock, but may suffice to represent that relationship in simple cases. More complex cases will require an extension.", "min": 0, "max": "1", "base": { "path": "Group.managingEntity", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/RelatedPerson", "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Group.characteristic", "path": "Group.characteristic", "comment": "All the identified characteristics must be true for an entity to a member of the group.", "min": 0, "max": "*", "base": { "path": "Group.characteristic", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Group.characteristic.id", "path": "Group.characteristic.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Group.characteristic.extension", "path": "Group.characteristic.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Group.characteristic.modifierExtension", "path": "Group.characteristic.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Group.characteristic.code", "path": "Group.characteristic.code", "min": 1, "max": "1", "base": { "path": "Group.characteristic.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GroupCharacteristicKind" } ], "strength": "example", "description": "List of characteristics used to describe group members; e.g. gender, age, owner, location, etc." } }, { "id": "Group.characteristic.value[x]", "path": "Group.characteristic.value[x]", "comment": "For Range, it means members of the group have a value that falls somewhere within the specified range.", "min": 1, "max": "1", "base": { "path": "Group.characteristic.value[x]", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" }, { "code": "boolean" }, { "code": "Quantity" }, { "code": "Range" }, { "code": "Reference" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GroupCharacteristicValue" } ], "strength": "example", "description": "Value of descriptive member characteristic; e.g. red, male, pneumonia, Caucasian, etc." } }, { "id": "Group.characteristic.exclude", "path": "Group.characteristic.exclude", "comment": "This is labeled as \"Is Modifier\" because applications cannot wrongly include excluded members as included or vice versa.", "min": 1, "max": "1", "base": { "path": "Group.characteristic.exclude", "min": 1, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Group.characteristic.period", "path": "Group.characteristic.period", "min": 0, "max": "1", "base": { "path": "Group.characteristic.period", "min": 0, "max": "1" }, "type": [ { "code": "Period" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Group.member", "path": "Group.member", "min": 0, "max": "0", "base": { "path": "Group.member", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "condition": [ "grp-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Group.member.id", "path": "Group.member.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Group.member.extension", "path": "Group.member.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Group.member.modifierExtension", "path": "Group.member.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Group.member.entity", "path": "Group.member.entity", "min": 1, "max": "1", "base": { "path": "Group.member.entity", "min": 1, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/Medication", "http://hl7.org/fhir/StructureDefinition/Substance", "http://hl7.org/fhir/StructureDefinition/Group" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Group.member.period", "path": "Group.member.period", "min": 0, "max": "1", "base": { "path": "Group.member.period", "min": 0, "max": "1" }, "type": [ { "code": "Period" } ], "meaningWhenMissing": "The member is in the group at this time", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Group.member.inactive", "path": "Group.member.inactive", "min": 0, "max": "1", "base": { "path": "Group.member.inactive", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "meaningWhenMissing": "Members are considered active unless explicitly specified otherwise", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "Group", "path": "Group", "min": 1, "max": "1" }, { "id": "Group.actual", "path": "Group.actual", "min": 1, "max": "1", "type": [ { "code": "boolean" } ], "fixedBoolean": false }, { "id": "Group.member", "path": "Group.member", "min": 0, "max": "0" } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/actualgroup", "resource": { "resourceType": "StructureDefinition", "id": "actualgroup", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 1 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "fhir" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/actualgroup", "version": "4.0.1", "name": "Actual Group", "status": "draft", "experimental": false, "date": "2019-11-01T09:29:23+11:00", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Group", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Group", "derivation": "constraint", "snapshot": { "element": [ { "id": "Group", "path": "Group", "comment": "If both Group.characteristic and Group.member are present, then the members are the individuals who were found who met the characteristic. It's possible that there might be other candidate members who meet the characteristic and aren't (yet) in the list. All members SHALL have the listed characteristics.", "min": 1, "max": "1", "base": { "path": "Group", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "grp-1", "severity": "error", "human": "Can only have members if group is \"actual\"", "expression": "member.empty() or (actual = true)", "xpath": "f:actual/@value=true() or not(exists(f:member))", "source": "http://hl7.org/fhir/StructureDefinition/Group" } ], "isModifier": false, "isSummary": false }, { "id": "Group.id", "path": "Group.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Group.meta", "path": "Group.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Group.implicitRules", "path": "Group.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Group.language", "path": "Group.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Group.text", "path": "Group.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Group.contained", "path": "Group.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Group.extension", "path": "Group.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Group.modifierExtension", "path": "Group.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Group.identifier", "path": "Group.identifier", "min": 0, "max": "*", "base": { "path": "Group.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Group.active", "path": "Group.active", "min": 0, "max": "1", "base": { "path": "Group.active", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "meaningWhenMissing": "This resource is generally assumed to be active if no value is provided for the active element", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Group.type", "path": "Group.type", "comment": "Group members SHALL be of the appropriate resource type (Patient for person or animal; or Practitioner, Device, Medication or Substance for the other types.).", "min": 1, "max": "1", "base": { "path": "Group.type", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GroupType" } ], "strength": "required", "description": "Types of resources that are part of group.", "valueSet": "http://hl7.org/fhir/ValueSet/group-type|4.0.1" } }, { "id": "Group.actual", "path": "Group.actual", "min": 1, "max": "1", "base": { "path": "Group.actual", "min": 1, "max": "1" }, "type": [ { "code": "boolean" } ], "fixedBoolean": true, "condition": [ "grp-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Group.code", "path": "Group.code", "comment": "This would generally be omitted for Person resources.", "min": 0, "max": "1", "base": { "path": "Group.code", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GroupKind" } ], "strength": "example", "description": "Kind of particular resource; e.g. cow, syringe, lake, etc." } }, { "id": "Group.name", "path": "Group.name", "min": 0, "max": "1", "base": { "path": "Group.name", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Group.quantity", "path": "Group.quantity", "comment": "Note that the quantity may be less than the number of members if some of the members are not active.", "min": 0, "max": "1", "base": { "path": "Group.quantity", "min": 0, "max": "1" }, "type": [ { "code": "unsignedInt" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Group.managingEntity", "path": "Group.managingEntity", "comment": "This does not strictly align with ownership of a herd or flock, but may suffice to represent that relationship in simple cases. More complex cases will require an extension.", "min": 0, "max": "1", "base": { "path": "Group.managingEntity", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/RelatedPerson", "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Group.characteristic", "path": "Group.characteristic", "comment": "All the identified characteristics must be true for an entity to a member of the group.", "min": 0, "max": "0", "base": { "path": "Group.characteristic", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Group.characteristic.id", "path": "Group.characteristic.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Group.characteristic.extension", "path": "Group.characteristic.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Group.characteristic.modifierExtension", "path": "Group.characteristic.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Group.characteristic.code", "path": "Group.characteristic.code", "min": 1, "max": "1", "base": { "path": "Group.characteristic.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GroupCharacteristicKind" } ], "strength": "example", "description": "List of characteristics used to describe group members; e.g. gender, age, owner, location, etc." } }, { "id": "Group.characteristic.value[x]", "path": "Group.characteristic.value[x]", "comment": "For Range, it means members of the group have a value that falls somewhere within the specified range.", "min": 1, "max": "1", "base": { "path": "Group.characteristic.value[x]", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" }, { "code": "boolean" }, { "code": "Quantity" }, { "code": "Range" }, { "code": "Reference" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GroupCharacteristicValue" } ], "strength": "example", "description": "Value of descriptive member characteristic; e.g. red, male, pneumonia, Caucasian, etc." } }, { "id": "Group.characteristic.exclude", "path": "Group.characteristic.exclude", "comment": "This is labeled as \"Is Modifier\" because applications cannot wrongly include excluded members as included or vice versa.", "min": 1, "max": "1", "base": { "path": "Group.characteristic.exclude", "min": 1, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Group.characteristic.period", "path": "Group.characteristic.period", "min": 0, "max": "1", "base": { "path": "Group.characteristic.period", "min": 0, "max": "1" }, "type": [ { "code": "Period" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Group.member", "path": "Group.member", "min": 0, "max": "*", "base": { "path": "Group.member", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "condition": [ "grp-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Group.member.id", "path": "Group.member.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Group.member.extension", "path": "Group.member.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Group.member.modifierExtension", "path": "Group.member.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Group.member.entity", "path": "Group.member.entity", "min": 1, "max": "1", "base": { "path": "Group.member.entity", "min": 1, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/Medication", "http://hl7.org/fhir/StructureDefinition/Substance", "http://hl7.org/fhir/StructureDefinition/Group" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Group.member.period", "path": "Group.member.period", "min": 0, "max": "1", "base": { "path": "Group.member.period", "min": 0, "max": "1" }, "type": [ { "code": "Period" } ], "meaningWhenMissing": "The member is in the group at this time", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Group.member.inactive", "path": "Group.member.inactive", "min": 0, "max": "1", "base": { "path": "Group.member.inactive", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "meaningWhenMissing": "Members are considered active unless explicitly specified otherwise", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "Group", "path": "Group", "min": 1, "max": "1" }, { "id": "Group.actual", "path": "Group.actual", "min": 1, "max": "1", "type": [ { "code": "boolean" } ], "fixedBoolean": true }, { "id": "Group.characteristic", "path": "Group.characteristic", "min": 0, "max": "0" } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/familymemberhistory-genetic", "resource": { "resourceType": "StructureDefinition", "id": "familymemberhistory-genetic", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 2 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "pc" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/familymemberhistory-genetic", "version": "4.0.1", "name": "Family member history for genetics analysis", "status": "draft", "experimental": false, "date": "2013-10-02", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "FamilyMemberHistory", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/FamilyMemberHistory", "derivation": "constraint", "snapshot": { "element": [ { "id": "FamilyMemberHistory", "path": "FamilyMemberHistory", "min": 0, "max": "*", "base": { "path": "FamilyMemberHistory", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "fhs-1", "severity": "error", "human": "Can have age[x] or born[x], but not both", "expression": "age.empty() or born.empty()", "xpath": "not (*[starts-with(local-name(.), 'age')] and *[starts-with(local-name(.), 'birth')])", "source": "http://hl7.org/fhir/StructureDefinition/FamilyMemberHistory" }, { "key": "fhs-2", "severity": "error", "human": "Can only have estimatedAge if age[x] is present", "expression": "age.exists() or estimatedAge.empty()", "xpath": "exists(*[starts-with(local-name(.), 'age')]) or not(exists(f:estimatedAge))", "source": "http://hl7.org/fhir/StructureDefinition/FamilyMemberHistory" } ], "isModifier": false, "isSummary": false }, { "id": "FamilyMemberHistory.id", "path": "FamilyMemberHistory.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "FamilyMemberHistory.meta", "path": "FamilyMemberHistory.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "FamilyMemberHistory.implicitRules", "path": "FamilyMemberHistory.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "FamilyMemberHistory.language", "path": "FamilyMemberHistory.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "FamilyMemberHistory.text", "path": "FamilyMemberHistory.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "FamilyMemberHistory.contained", "path": "FamilyMemberHistory.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "FamilyMemberHistory.extension", "path": "FamilyMemberHistory.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "ordered": false, "rules": "open" }, "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "FamilyMemberHistory.extension:Parent", "path": "FamilyMemberHistory.extension", "sliceName": "Parent", "comment": "Some individuals may have more than two parents (e.g. genetic vs. adoptive parents). Even non-genetic relationships can be relevant in terms of genetic exposure.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/family-member-history-genetics-parent" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "mustSupport": true, "isModifier": false }, { "id": "FamilyMemberHistory.extension:Sibling", "path": "FamilyMemberHistory.extension", "sliceName": "Sibling", "comment": "Some cases may have complex inner-pedigree-tree relationship. For instance, double cousin relationship need two extra link with In pedigree tree itself. This can't be revealed by relationship to subject.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/family-member-history-genetics-sibling" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "mustSupport": true, "isModifier": false }, { "id": "FamilyMemberHistory.extension:Observation", "path": "FamilyMemberHistory.extension", "sliceName": "Observation", "comment": "This may be extended with additional genomics-specific resources when they are ready.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/family-member-history-genetics-observation" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "mustSupport": true, "isModifier": false }, { "id": "FamilyMemberHistory.modifierExtension", "path": "FamilyMemberHistory.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "FamilyMemberHistory.identifier", "path": "FamilyMemberHistory.identifier", "comment": "This is a business identifier, not a resource identifier (see [discussion](http://hl7.org/fhir/resource.html#identifiers)). It is best practice for the identifier to only appear on a single resource instance, however business practices may occasionally dictate that multiple resource instances with the same identifier can exist - possibly even with different resource types. For example, multiple Patient and a Person resource instance might share the same social insurance number.", "min": 0, "max": "*", "base": { "path": "FamilyMemberHistory.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "FamilyMemberHistory.instantiatesCanonical", "path": "FamilyMemberHistory.instantiatesCanonical", "min": 0, "max": "*", "base": { "path": "FamilyMemberHistory.instantiatesCanonical", "min": 0, "max": "*" }, "type": [ { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/PlanDefinition", "http://hl7.org/fhir/StructureDefinition/Questionnaire", "http://hl7.org/fhir/StructureDefinition/ActivityDefinition", "http://hl7.org/fhir/StructureDefinition/Measure", "http://hl7.org/fhir/StructureDefinition/OperationDefinition" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "FamilyMemberHistory.instantiatesUri", "path": "FamilyMemberHistory.instantiatesUri", "comment": "This might be an HTML page, PDF, etc. or could just be a non-resolvable URI identifier.", "min": 0, "max": "*", "base": { "path": "FamilyMemberHistory.instantiatesUri", "min": 0, "max": "*" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "FamilyMemberHistory.status", "path": "FamilyMemberHistory.status", "comment": "This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid.", "min": 1, "max": "1", "base": { "path": "FamilyMemberHistory.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labelled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "FamilyHistoryStatus" } ], "strength": "required", "description": "A code that identifies the status of the family history record.", "valueSet": "http://hl7.org/fhir/ValueSet/history-status|4.0.1" } }, { "id": "FamilyMemberHistory.dataAbsentReason", "path": "FamilyMemberHistory.dataAbsentReason", "min": 0, "max": "1", "base": { "path": "FamilyMemberHistory.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "FamilyHistoryAbsentReason" } ], "strength": "example", "description": "Codes describing the reason why a family member's history is not available.", "valueSet": "http://hl7.org/fhir/ValueSet/history-absent-reason" } }, { "id": "FamilyMemberHistory.patient", "path": "FamilyMemberHistory.patient", "min": 1, "max": "1", "base": { "path": "FamilyMemberHistory.patient", "min": 1, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "FamilyMemberHistory.date", "path": "FamilyMemberHistory.date", "comment": "This should be captured even if the same as the date on the List aggregating the full family history.", "min": 0, "max": "1", "base": { "path": "FamilyMemberHistory.date", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "FamilyMemberHistory.name", "path": "FamilyMemberHistory.name", "min": 0, "max": "1", "base": { "path": "FamilyMemberHistory.name", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "FamilyMemberHistory.relationship:Relationship", "path": "FamilyMemberHistory.relationship", "sliceName": "Relationship", "min": 1, "max": "1", "base": { "path": "FamilyMemberHistory.relationship", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "FamilialRelationship" } ], "strength": "example", "description": "The nature of the relationship between the patient and the related person being described in the family member history.", "valueSet": "http://terminology.hl7.org/ValueSet/v3-FamilyMember" } }, { "id": "FamilyMemberHistory.sex:Sex", "path": "FamilyMemberHistory.sex", "sliceName": "Sex", "comment": "This element should ideally reflect whether the individual is genetically male or female. However, as reported information based on the knowledge of the patient or reporting friend/relative, there may be situations where the reported sex might not be totally accurate. E.g. 'Aunt Sue' might be XY rather than XX. Questions soliciting this information should be phrased to encourage capture of genetic sex where known. However, systems performing analysis should also allow for the possibility of imprecision with this element.", "min": 0, "max": "1", "base": { "path": "FamilyMemberHistory.sex", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Sex" } ], "strength": "extensible", "description": "Codes describing the sex assigned at birth as documented on the birth registration.", "valueSet": "http://hl7.org/fhir/ValueSet/administrative-gender" } }, { "id": "FamilyMemberHistory.born[x]:BornAge", "path": "FamilyMemberHistory.born[x]", "sliceName": "BornAge", "min": 0, "max": "1", "base": { "path": "FamilyMemberHistory.born[x]", "min": 0, "max": "1" }, "type": [ { "code": "Period" }, { "code": "date" }, { "code": "string" } ], "condition": [ "fhs-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "FamilyMemberHistory.age[x]:Age", "path": "FamilyMemberHistory.age[x]", "sliceName": "Age", "comment": "use estimatedAge to indicate whether the age is actual or not.", "min": 0, "max": "1", "base": { "path": "FamilyMemberHistory.age[x]", "min": 0, "max": "1" }, "type": [ { "code": "Age" }, { "code": "Range" }, { "code": "string" } ], "condition": [ "fhs-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "FamilyMemberHistory.estimatedAge", "path": "FamilyMemberHistory.estimatedAge", "comment": "This element is labeled as a modifier because the fact that age is estimated can/should change the results of any algorithm that calculates based on the specified age.", "min": 0, "max": "1", "base": { "path": "FamilyMemberHistory.estimatedAge", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "meaningWhenMissing": "It is unknown whether the age is an estimate or not", "condition": [ "fhs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "FamilyMemberHistory.deceased[x]:DeceasedAge", "path": "FamilyMemberHistory.deceased[x]", "sliceName": "DeceasedAge", "min": 0, "max": "1", "base": { "path": "FamilyMemberHistory.deceased[x]", "min": 0, "max": "1" }, "type": [ { "code": "boolean" }, { "code": "Age" }, { "code": "Range" }, { "code": "date" }, { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "FamilyMemberHistory.reasonCode", "path": "FamilyMemberHistory.reasonCode", "comment": "Textual reasons can be captured using reasonCode.text.", "min": 0, "max": "*", "base": { "path": "FamilyMemberHistory.reasonCode", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "FamilyHistoryReason" } ], "strength": "example", "description": "Codes indicating why the family member history was done.", "valueSet": "http://hl7.org/fhir/ValueSet/clinical-findings" } }, { "id": "FamilyMemberHistory.reasonReference", "path": "FamilyMemberHistory.reasonReference", "min": 0, "max": "*", "base": { "path": "FamilyMemberHistory.reasonReference", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Condition", "http://hl7.org/fhir/StructureDefinition/Observation", "http://hl7.org/fhir/StructureDefinition/AllergyIntolerance", "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/DiagnosticReport", "http://hl7.org/fhir/StructureDefinition/DocumentReference" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "FamilyMemberHistory.note", "path": "FamilyMemberHistory.note", "min": 0, "max": "*", "base": { "path": "FamilyMemberHistory.note", "min": 0, "max": "*" }, "type": [ { "code": "Annotation" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "FamilyMemberHistory.condition:Condition", "path": "FamilyMemberHistory.condition", "sliceName": "Condition", "min": 0, "max": "*", "base": { "path": "FamilyMemberHistory.condition", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "FamilyMemberHistory.condition:Condition.id", "path": "FamilyMemberHistory.condition.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "FamilyMemberHistory.condition:Condition.extension", "path": "FamilyMemberHistory.condition.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "FamilyMemberHistory.condition:Condition.modifierExtension", "path": "FamilyMemberHistory.condition.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "FamilyMemberHistory.condition:Condition.code", "path": "FamilyMemberHistory.condition.code", "min": 1, "max": "1", "base": { "path": "FamilyMemberHistory.condition.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ConditionCode" } ], "strength": "example", "description": "Identification of the Condition or diagnosis.", "valueSet": "http://hl7.org/fhir/ValueSet/condition-code" } }, { "id": "FamilyMemberHistory.condition:Condition.outcome", "path": "FamilyMemberHistory.condition.outcome", "min": 0, "max": "1", "base": { "path": "FamilyMemberHistory.condition.outcome", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ConditionOutcome" } ], "strength": "example", "description": "The result of the condition for the patient; e.g. death, permanent disability, temporary disability, etc.", "valueSet": "http://hl7.org/fhir/ValueSet/condition-outcome" } }, { "id": "FamilyMemberHistory.condition:Condition.contributedToDeath", "path": "FamilyMemberHistory.condition.contributedToDeath", "min": 0, "max": "1", "base": { "path": "FamilyMemberHistory.condition.contributedToDeath", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "FamilyMemberHistory.condition:Condition.onset[x]", "path": "FamilyMemberHistory.condition.onset[x]", "min": 0, "max": "1", "base": { "path": "FamilyMemberHistory.condition.onset[x]", "min": 0, "max": "1" }, "type": [ { "code": "Age" }, { "code": "Range" }, { "code": "Period" }, { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "FamilyMemberHistory.condition:Condition.note", "path": "FamilyMemberHistory.condition.note", "min": 0, "max": "1", "base": { "path": "FamilyMemberHistory.condition.note", "min": 0, "max": "*" }, "type": [ { "code": "Annotation" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "FamilyMemberHistory", "path": "FamilyMemberHistory", "min": 0, "max": "*" }, { "id": "FamilyMemberHistory.extension:Parent", "path": "FamilyMemberHistory.extension", "sliceName": "Parent", "min": 0, "max": "*", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/family-member-history-genetics-parent" ] } ], "mustSupport": true }, { "id": "FamilyMemberHistory.extension:Sibling", "path": "FamilyMemberHistory.extension", "sliceName": "Sibling", "min": 0, "max": "*", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/family-member-history-genetics-sibling" ] } ], "mustSupport": true }, { "id": "FamilyMemberHistory.extension:Observation", "path": "FamilyMemberHistory.extension", "sliceName": "Observation", "min": 0, "max": "*", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/family-member-history-genetics-observation" ] } ], "mustSupport": true }, { "id": "FamilyMemberHistory.relationship:Relationship", "path": "FamilyMemberHistory.relationship", "sliceName": "Relationship", "min": 1, "max": "1", "type": [ { "code": "CodeableConcept" } ], "mustSupport": true }, { "id": "FamilyMemberHistory.sex:Sex", "path": "FamilyMemberHistory.sex", "sliceName": "Sex", "min": 0, "max": "1", "type": [ { "code": "CodeableConcept" } ], "mustSupport": true }, { "id": "FamilyMemberHistory.born[x]:BornAge", "path": "FamilyMemberHistory.born[x]", "sliceName": "BornAge", "min": 0, "max": "1", "type": [ { "code": "Period" }, { "code": "date" }, { "code": "string" } ], "mustSupport": true }, { "id": "FamilyMemberHistory.age[x]:Age", "path": "FamilyMemberHistory.age[x]", "sliceName": "Age", "min": 0, "max": "1", "type": [ { "code": "Age" }, { "code": "Range" }, { "code": "string" } ], "mustSupport": true }, { "id": "FamilyMemberHistory.deceased[x]:DeceasedAge", "path": "FamilyMemberHistory.deceased[x]", "sliceName": "DeceasedAge", "min": 0, "max": "1", "type": [ { "code": "boolean" }, { "code": "Age" }, { "code": "Range" }, { "code": "date" }, { "code": "string" } ], "mustSupport": true }, { "id": "FamilyMemberHistory.condition:Condition", "path": "FamilyMemberHistory.condition", "sliceName": "Condition", "min": 0, "max": "*", "mustSupport": true }, { "id": "FamilyMemberHistory.condition:Condition.code", "path": "FamilyMemberHistory.condition.code", "min": 1, "max": "1", "type": [ { "code": "CodeableConcept" } ], "mustSupport": true }, { "id": "FamilyMemberHistory.condition:Condition.outcome", "path": "FamilyMemberHistory.condition.outcome", "min": 0, "max": "1", "type": [ { "code": "CodeableConcept" } ], "mustSupport": true }, { "id": "FamilyMemberHistory.condition:Condition.onset[x]", "path": "FamilyMemberHistory.condition.onset[x]", "min": 0, "max": "1", "type": [ { "code": "Age" }, { "code": "Range" }, { "code": "Period" }, { "code": "string" } ], "mustSupport": true }, { "id": "FamilyMemberHistory.condition:Condition.note", "path": "FamilyMemberHistory.condition.note", "min": 0, "max": "1", "type": [ { "code": "Annotation" } ] } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/shareableactivitydefinition", "resource": { "resourceType": "StructureDefinition", "id": "shareableactivitydefinition", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 2 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "cds" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/shareableactivitydefinition", "version": "4.0.1", "name": "Shareable ActivityDefinition", "status": "draft", "experimental": false, "date": "2019-11-01T09:29:23+11:00", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "ActivityDefinition", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/ActivityDefinition", "derivation": "constraint", "snapshot": { "element": [ { "id": "ActivityDefinition", "path": "ActivityDefinition", "min": 1, "max": "1", "base": { "path": "ActivityDefinition", "min": 0, "max": "*" }, "constraint": [ { "key": "adf-0", "severity": "warning", "human": "Name should be usable as an identifier for the module by machine processing applications such as code generation", "expression": "name.matches('[A-Z]([A-Za-z0-9_]){0,254}')", "xpath": "not(exists(f:name/@value)) or matches(f:name/@value, '[A-Z]([A-Za-z0-9_]){0,254}')", "source": "http://hl7.org/fhir/StructureDefinition/ActivityDefinition" }, { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.id", "path": "ActivityDefinition.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "ActivityDefinition.meta", "path": "ActivityDefinition.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ActivityDefinition.implicitRules", "path": "ActivityDefinition.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "ActivityDefinition.language", "path": "ActivityDefinition.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "ActivityDefinition.text", "path": "ActivityDefinition.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.contained", "path": "ActivityDefinition.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.extension", "path": "ActivityDefinition.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.modifierExtension", "path": "ActivityDefinition.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "ActivityDefinition.url", "path": "ActivityDefinition.url", "comment": "Can be a urn:uuid: or a urn:oid: but real http: addresses are preferred. Multiple instances may share the same URL if they have a distinct version.\n\nThe determination of when to create a new version of a resource (same url, new version) vs. defining a new artifact is up to the author. Considerations for making this decision are found in [Technical and Business Versions](http://hl7.org/fhir/resource.html#versions). \n\nIn some cases, the resource can no longer be found at the stated url, but the url itself cannot change. Implementations can use the [meta.source](http://hl7.org/fhir/resource.html#meta) element to indicate where the current master source of the resource can be found.", "min": 1, "max": "1", "base": { "path": "ActivityDefinition.url", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ActivityDefinition.identifier", "path": "ActivityDefinition.identifier", "comment": "Typically, this is used for identifiers that can go in an HL7 V3 II (instance identifier) data type, and can then identify this activity definition outside of FHIR, where it is not possible to use the logical URI.", "min": 0, "max": "*", "base": { "path": "ActivityDefinition.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "ActivityDefinition.version", "path": "ActivityDefinition.version", "comment": "There may be different activity definition instances that have the same identifier but different versions. The version can be appended to the url in a reference to allow a reference to a particular business version of the activity definition with the format [url]|[version].", "min": 1, "max": "1", "base": { "path": "ActivityDefinition.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ActivityDefinition.name", "path": "ActivityDefinition.name", "comment": "The name is not expected to be globally unique. The name should be a simple alphanumeric type name to ensure that it is machine-processing friendly.", "min": 1, "max": "1", "base": { "path": "ActivityDefinition.name", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "condition": [ "inv-0" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ActivityDefinition.title", "path": "ActivityDefinition.title", "comment": "This name does not need to be machine-processing friendly and may contain punctuation, white-space, etc.", "min": 0, "max": "1", "base": { "path": "ActivityDefinition.title", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "ActivityDefinition.subtitle", "path": "ActivityDefinition.subtitle", "min": 0, "max": "1", "base": { "path": "ActivityDefinition.subtitle", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.status", "path": "ActivityDefinition.status", "comment": "Allows filtering of activity definitions that are appropriate for use versus not.", "min": 1, "max": "1", "base": { "path": "ActivityDefinition.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This is labeled as \"Is Modifier\" because applications should not use a retired {{title}} without due consideration", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "PublicationStatus" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "required", "description": "The lifecycle status of an artifact.", "valueSet": "http://hl7.org/fhir/ValueSet/publication-status|4.0.1" } }, { "id": "ActivityDefinition.experimental", "path": "ActivityDefinition.experimental", "comment": "Allows filtering of activity definitions that are appropriate for use versus not.", "min": 1, "max": "1", "base": { "path": "ActivityDefinition.experimental", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ActivityDefinition.subject[x]", "path": "ActivityDefinition.subject[x]", "min": 0, "max": "1", "base": { "path": "ActivityDefinition.subject[x]", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" }, { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Group" ] } ], "meaningWhenMissing": "Patient", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "SubjectType" } ], "strength": "extensible", "description": "The possible types of subjects for an activity (E.g. Patient, Practitioner, Organization, Location, etc.).", "valueSet": "http://hl7.org/fhir/ValueSet/subject-type" } }, { "id": "ActivityDefinition.date", "path": "ActivityDefinition.date", "comment": "Note that this is not the same as the resource last-modified-date, since the resource may be a secondary representation of the activity definition. Additional specific dates may be added as extensions or be found by consulting Provenances associated with past versions of the resource.", "min": 0, "max": "1", "base": { "path": "ActivityDefinition.date", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "ActivityDefinition.publisher", "path": "ActivityDefinition.publisher", "comment": "Usually an organization but may be an individual. The publisher (or steward) of the activity definition is the organization or individual primarily responsible for the maintenance and upkeep of the activity definition. This is not necessarily the same individual or organization that developed and initially authored the content. The publisher is the primary point of contact for questions or issues with the activity definition. This item SHOULD be populated unless the information is available from context.", "min": 1, "max": "1", "base": { "path": "ActivityDefinition.publisher", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ActivityDefinition.contact", "path": "ActivityDefinition.contact", "comment": "May be a web site, an email address, a telephone number, etc.", "min": 0, "max": "*", "base": { "path": "ActivityDefinition.contact", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "ActivityDefinition.description", "path": "ActivityDefinition.description", "comment": "This description can be used to capture details such as why the activity definition was built, comments about misuse, instructions for clinical use and interpretation, literature references, examples from the paper world, etc. It is not a rendering of the activity definition as conveyed in the 'text' field of the resource itself. This item SHOULD be populated unless the information is available from context (e.g. the language of the activity definition is presumed to be the predominant language in the place the activity definition was created).", "min": 1, "max": "1", "base": { "path": "ActivityDefinition.description", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ActivityDefinition.useContext", "path": "ActivityDefinition.useContext", "comment": "When multiple useContexts are specified, there is no expectation that all or any of the contexts apply.", "min": 0, "max": "*", "base": { "path": "ActivityDefinition.useContext", "min": 0, "max": "*" }, "type": [ { "code": "UsageContext" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "ActivityDefinition.jurisdiction", "path": "ActivityDefinition.jurisdiction", "comment": "It may be possible for the activity definition to be used in jurisdictions other than those for which it was originally designed or intended.", "min": 0, "max": "*", "base": { "path": "ActivityDefinition.jurisdiction", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Jurisdiction" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "extensible", "description": "Countries and regions within which this artifact is targeted for use.", "valueSet": "http://hl7.org/fhir/ValueSet/jurisdiction" } }, { "id": "ActivityDefinition.purpose", "path": "ActivityDefinition.purpose", "comment": "This element does not describe the usage of the activity definition. Instead, it provides traceability of ''why'' the resource is either needed or ''why'' it is defined as it is. This may be used to point to source materials or specifications that drove the structure of this activity definition.", "min": 0, "max": "1", "base": { "path": "ActivityDefinition.purpose", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.usage", "path": "ActivityDefinition.usage", "min": 0, "max": "1", "base": { "path": "ActivityDefinition.usage", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.copyright", "path": "ActivityDefinition.copyright", "min": 0, "max": "1", "base": { "path": "ActivityDefinition.copyright", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.approvalDate", "path": "ActivityDefinition.approvalDate", "comment": "The 'date' element may be more recent than the approval date because of minor changes or editorial corrections.", "min": 0, "max": "1", "base": { "path": "ActivityDefinition.approvalDate", "min": 0, "max": "1" }, "type": [ { "code": "date" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.lastReviewDate", "path": "ActivityDefinition.lastReviewDate", "comment": "If specified, this date follows the original approval date.", "min": 0, "max": "1", "base": { "path": "ActivityDefinition.lastReviewDate", "min": 0, "max": "1" }, "type": [ { "code": "date" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.effectivePeriod", "path": "ActivityDefinition.effectivePeriod", "comment": "The effective period for a activity definition determines when the content is applicable for usage and is independent of publication and review dates. For example, a measure intended to be used for the year 2016 might be published in 2015.", "min": 0, "max": "1", "base": { "path": "ActivityDefinition.effectivePeriod", "min": 0, "max": "1" }, "type": [ { "code": "Period" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ActivityDefinition.topic", "path": "ActivityDefinition.topic", "min": 0, "max": "*", "base": { "path": "ActivityDefinition.topic", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DefinitionTopic" } ], "strength": "example", "description": "High-level categorization of the definition, used for searching, sorting, and filtering.", "valueSet": "http://hl7.org/fhir/ValueSet/definition-topic" } }, { "id": "ActivityDefinition.author", "path": "ActivityDefinition.author", "min": 0, "max": "*", "base": { "path": "ActivityDefinition.author", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.editor", "path": "ActivityDefinition.editor", "min": 0, "max": "*", "base": { "path": "ActivityDefinition.editor", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.reviewer", "path": "ActivityDefinition.reviewer", "min": 0, "max": "*", "base": { "path": "ActivityDefinition.reviewer", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.endorser", "path": "ActivityDefinition.endorser", "min": 0, "max": "*", "base": { "path": "ActivityDefinition.endorser", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.relatedArtifact", "path": "ActivityDefinition.relatedArtifact", "comment": "Each related artifact is either an attachment, or a reference to another resource, but not both.", "min": 0, "max": "*", "base": { "path": "ActivityDefinition.relatedArtifact", "min": 0, "max": "*" }, "type": [ { "code": "RelatedArtifact" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.library", "path": "ActivityDefinition.library", "min": 0, "max": "*", "base": { "path": "ActivityDefinition.library", "min": 0, "max": "*" }, "type": [ { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Library" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.kind", "path": "ActivityDefinition.kind", "comment": "May determine what types of extensions are permitted.", "min": 0, "max": "1", "base": { "path": "ActivityDefinition.kind", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActivityDefinitionKind" } ], "strength": "required", "description": "The kind of activity the definition is describing.", "valueSet": "http://hl7.org/fhir/ValueSet/request-resource-types|4.0.1" } }, { "id": "ActivityDefinition.profile", "path": "ActivityDefinition.profile", "min": 0, "max": "1", "base": { "path": "ActivityDefinition.profile", "min": 0, "max": "1" }, "type": [ { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/StructureDefinition" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.code", "path": "ActivityDefinition.code", "comment": "Tends to be less relevant for activities involving particular products.", "min": 0, "max": "1", "base": { "path": "ActivityDefinition.code", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActivityDefinitionType" } ], "strength": "example", "description": "Detailed type of the activity; e.g. CBC.", "valueSet": "http://hl7.org/fhir/ValueSet/procedure-code" } }, { "id": "ActivityDefinition.intent", "path": "ActivityDefinition.intent", "min": 0, "max": "1", "base": { "path": "ActivityDefinition.intent", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "RequestIntent" } ], "strength": "required", "description": "Codes indicating the degree of authority/intentionality associated with a request.", "valueSet": "http://hl7.org/fhir/ValueSet/request-intent|4.0.1" } }, { "id": "ActivityDefinition.priority", "path": "ActivityDefinition.priority", "min": 0, "max": "1", "base": { "path": "ActivityDefinition.priority", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "RequestPriority" } ], "strength": "required", "description": "Identifies the level of importance to be assigned to actioning the request.", "valueSet": "http://hl7.org/fhir/ValueSet/request-priority|4.0.1" } }, { "id": "ActivityDefinition.doNotPerform", "path": "ActivityDefinition.doNotPerform", "comment": "This element is not intended to be used to communicate a decision support response to cancel an order in progress. That should be done with the \"remove\" type of a PlanDefinition or RequestGroup.", "min": 0, "max": "1", "base": { "path": "ActivityDefinition.doNotPerform", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "If true this element negates the specified action. For Example, instead of a request for a procedure, it is a request for the procedure to not occur.", "isSummary": true }, { "id": "ActivityDefinition.timing[x]", "path": "ActivityDefinition.timing[x]", "min": 0, "max": "1", "base": { "path": "ActivityDefinition.timing[x]", "min": 0, "max": "1" }, "type": [ { "code": "Timing" }, { "code": "dateTime" }, { "code": "Age" }, { "code": "Period" }, { "code": "Range" }, { "code": "Duration" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.location", "path": "ActivityDefinition.location", "comment": "May reference a specific clinical location or may just identify a type of location.", "min": 0, "max": "1", "base": { "path": "ActivityDefinition.location", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Location" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.participant", "path": "ActivityDefinition.participant", "min": 0, "max": "*", "base": { "path": "ActivityDefinition.participant", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.participant.id", "path": "ActivityDefinition.participant.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.participant.extension", "path": "ActivityDefinition.participant.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.participant.modifierExtension", "path": "ActivityDefinition.participant.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "ActivityDefinition.participant.type", "path": "ActivityDefinition.participant.type", "min": 1, "max": "1", "base": { "path": "ActivityDefinition.participant.type", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActivityParticipantType" } ], "strength": "required", "description": "The type of participant in the activity.", "valueSet": "http://hl7.org/fhir/ValueSet/action-participant-type|4.0.1" } }, { "id": "ActivityDefinition.participant.role", "path": "ActivityDefinition.participant.role", "min": 0, "max": "1", "base": { "path": "ActivityDefinition.participant.role", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActivityParticipantRole" } ], "strength": "example", "description": "Defines roles played by participants for the action.", "valueSet": "http://hl7.org/fhir/ValueSet/action-participant-role" } }, { "id": "ActivityDefinition.product[x]", "path": "ActivityDefinition.product[x]", "min": 0, "max": "1", "base": { "path": "ActivityDefinition.product[x]", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Medication", "http://hl7.org/fhir/StructureDefinition/Substance" ] }, { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActivityProduct" } ], "strength": "example", "description": "Code describing the type of substance or medication.", "valueSet": "http://hl7.org/fhir/ValueSet/medication-codes" } }, { "id": "ActivityDefinition.quantity", "path": "ActivityDefinition.quantity", "min": 0, "max": "1", "base": { "path": "ActivityDefinition.quantity", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.dosage", "path": "ActivityDefinition.dosage", "comment": "If a dosage instruction is used, the definition should not specify timing or quantity.", "min": 0, "max": "*", "base": { "path": "ActivityDefinition.dosage", "min": 0, "max": "*" }, "type": [ { "code": "Dosage" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.bodySite", "path": "ActivityDefinition.bodySite", "comment": "Only used if not implicit in the code found in ServiceRequest.type.", "min": 0, "max": "*", "base": { "path": "ActivityDefinition.bodySite", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodySite" } ], "strength": "example", "description": "A code that identifies the anatomical location.", "valueSet": "http://hl7.org/fhir/ValueSet/body-site" } }, { "id": "ActivityDefinition.specimenRequirement", "path": "ActivityDefinition.specimenRequirement", "min": 0, "max": "*", "base": { "path": "ActivityDefinition.specimenRequirement", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/SpecimenDefinition" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.observationRequirement", "path": "ActivityDefinition.observationRequirement", "min": 0, "max": "*", "base": { "path": "ActivityDefinition.observationRequirement", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/ObservationDefinition" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.observationResultRequirement", "path": "ActivityDefinition.observationResultRequirement", "min": 0, "max": "*", "base": { "path": "ActivityDefinition.observationResultRequirement", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/ObservationDefinition" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.transform", "path": "ActivityDefinition.transform", "comment": "Note that if both a transform and dynamic values are specified, the dynamic values will be applied to the result of the transform.", "min": 0, "max": "1", "base": { "path": "ActivityDefinition.transform", "min": 0, "max": "1" }, "type": [ { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/StructureMap" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.dynamicValue", "path": "ActivityDefinition.dynamicValue", "comment": "Dynamic values are applied in the order in which they are defined in the ActivityDefinition. Note that if both a transform and dynamic values are specified, the dynamic values will be applied to the result of the transform.", "min": 0, "max": "*", "base": { "path": "ActivityDefinition.dynamicValue", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.dynamicValue.id", "path": "ActivityDefinition.dynamicValue.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.dynamicValue.extension", "path": "ActivityDefinition.dynamicValue.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.dynamicValue.modifierExtension", "path": "ActivityDefinition.dynamicValue.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "ActivityDefinition.dynamicValue.path", "path": "ActivityDefinition.dynamicValue.path", "comment": "The path attribute contains a [Simple FHIRPath Subset](http://hl7.org/fhir/fhirpath.html#simple) that allows path traversal, but not calculation.", "min": 1, "max": "1", "base": { "path": "ActivityDefinition.dynamicValue.path", "min": 1, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ActivityDefinition.dynamicValue.expression", "path": "ActivityDefinition.dynamicValue.expression", "comment": "The expression may be inlined, or may be a reference to a named expression within a logic library referenced by the library element.", "min": 1, "max": "1", "base": { "path": "ActivityDefinition.dynamicValue.expression", "min": 1, "max": "1" }, "type": [ { "code": "Expression" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "ActivityDefinition", "path": "ActivityDefinition", "min": 1, "max": "1" }, { "id": "ActivityDefinition.url", "path": "ActivityDefinition.url", "min": 1, "max": "1", "type": [ { "code": "uri" } ] }, { "id": "ActivityDefinition.identifier", "path": "ActivityDefinition.identifier", "mustSupport": true }, { "id": "ActivityDefinition.version", "path": "ActivityDefinition.version", "min": 1, "max": "1", "type": [ { "code": "string" } ] }, { "id": "ActivityDefinition.name", "path": "ActivityDefinition.name", "min": 1, "max": "1", "type": [ { "code": "string" } ] }, { "id": "ActivityDefinition.title", "path": "ActivityDefinition.title", "min": 0, "max": "1", "mustSupport": true }, { "id": "ActivityDefinition.experimental", "path": "ActivityDefinition.experimental", "min": 1, "max": "1", "type": [ { "code": "boolean" } ] }, { "id": "ActivityDefinition.date", "path": "ActivityDefinition.date", "min": 0, "max": "1", "mustSupport": true }, { "id": "ActivityDefinition.publisher", "path": "ActivityDefinition.publisher", "min": 1, "max": "1", "type": [ { "code": "string" } ] }, { "id": "ActivityDefinition.contact", "path": "ActivityDefinition.contact", "mustSupport": true }, { "id": "ActivityDefinition.description", "path": "ActivityDefinition.description", "min": 1, "max": "1", "type": [ { "code": "markdown" } ] }, { "id": "ActivityDefinition.useContext", "path": "ActivityDefinition.useContext", "mustSupport": true }, { "id": "ActivityDefinition.jurisdiction", "path": "ActivityDefinition.jurisdiction", "mustSupport": true } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/cdshooksrequestgroup", "resource": { "resourceType": "StructureDefinition", "id": "cdshooksrequestgroup", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 2 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "cds" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/cdshooksrequestgroup", "version": "4.0.1", "name": "CDS Hooks RequestGroup", "status": "draft", "experimental": false, "date": "2019-11-01T09:29:23+11:00", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "RequestGroup", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/RequestGroup", "derivation": "constraint", "snapshot": { "element": [ { "id": "RequestGroup", "path": "RequestGroup", "min": 1, "max": "1", "base": { "path": "RequestGroup", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" } ], "isModifier": false, "isSummary": false }, { "id": "RequestGroup.id", "path": "RequestGroup.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "RequestGroup.meta", "path": "RequestGroup.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "RequestGroup.implicitRules", "path": "RequestGroup.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "RequestGroup.language", "path": "RequestGroup.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "RequestGroup.text", "path": "RequestGroup.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "RequestGroup.contained", "path": "RequestGroup.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "RequestGroup.extension", "path": "RequestGroup.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "RequestGroup.modifierExtension", "path": "RequestGroup.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "RequestGroup.identifier", "path": "RequestGroup.identifier", "min": 1, "max": "1", "base": { "path": "RequestGroup.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "RequestGroup.instantiatesCanonical", "path": "RequestGroup.instantiatesCanonical", "min": 0, "max": "*", "base": { "path": "RequestGroup.instantiatesCanonical", "min": 0, "max": "*" }, "type": [ { "code": "canonical" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "RequestGroup.instantiatesUri", "path": "RequestGroup.instantiatesUri", "min": 1, "max": "1", "base": { "path": "RequestGroup.instantiatesUri", "min": 0, "max": "*" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "RequestGroup.basedOn", "path": "RequestGroup.basedOn", "min": 0, "max": "*", "base": { "path": "RequestGroup.basedOn", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "RequestGroup.replaces", "path": "RequestGroup.replaces", "comment": "The replacement could be because the initial request was immediately rejected (due to an issue) or because the previous request was completed, but the need for the action described by the request remains ongoing.", "min": 0, "max": "*", "base": { "path": "RequestGroup.replaces", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "RequestGroup.groupIdentifier", "path": "RequestGroup.groupIdentifier", "comment": "Requests are linked either by a \"basedOn\" relationship (i.e. one request is fulfilling another) or by having a common requisition. Requests that are part of the same requisition are generally treated independently from the perspective of changing their state or maintaining them after initial creation.", "min": 0, "max": "1", "base": { "path": "RequestGroup.groupIdentifier", "min": 0, "max": "1" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "RequestGroup.status", "path": "RequestGroup.status", "min": 1, "max": "1", "base": { "path": "RequestGroup.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "RequestStatus" } ], "strength": "required", "description": "Codes identifying the lifecycle stage of a request.", "valueSet": "http://hl7.org/fhir/ValueSet/request-status|4.0.1" } }, { "id": "RequestGroup.intent", "path": "RequestGroup.intent", "min": 1, "max": "1", "base": { "path": "RequestGroup.intent", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element changes the interpretation of all descriptive attributes. For example \"the time the request is recommended to occur\" vs. \"the time the request is authorized to occur\" or \"who is recommended to perform the request\" vs. \"who is authorized to perform the request", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "RequestIntent" } ], "strength": "required", "description": "Codes indicating the degree of authority/intentionality associated with a request.", "valueSet": "http://hl7.org/fhir/ValueSet/request-intent|4.0.1" } }, { "id": "RequestGroup.priority", "path": "RequestGroup.priority", "min": 0, "max": "1", "base": { "path": "RequestGroup.priority", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "meaningWhenMissing": "If missing, this request should be performed with normal priority", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "RequestPriority" } ], "strength": "required", "description": "Identifies the level of importance to be assigned to actioning the request.", "valueSet": "http://hl7.org/fhir/ValueSet/request-priority|4.0.1" } }, { "id": "RequestGroup.code", "path": "RequestGroup.code", "comment": "This element can be used to provide a code that captures the meaning of the request group as a whole, as opposed to the code of the action element, which captures the meaning of the individual actions within the request group.", "min": 0, "max": "1", "base": { "path": "RequestGroup.code", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "RequestGroup.subject", "path": "RequestGroup.subject", "min": 0, "max": "1", "base": { "path": "RequestGroup.subject", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/Group" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "RequestGroup.encounter", "path": "RequestGroup.encounter", "min": 0, "max": "1", "base": { "path": "RequestGroup.encounter", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Encounter" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "RequestGroup.authoredOn", "path": "RequestGroup.authoredOn", "min": 0, "max": "1", "base": { "path": "RequestGroup.authoredOn", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "RequestGroup.author", "path": "RequestGroup.author", "min": 0, "max": "1", "base": { "path": "RequestGroup.author", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "RequestGroup.reasonCode", "path": "RequestGroup.reasonCode", "min": 0, "max": "*", "base": { "path": "RequestGroup.reasonCode", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "RequestGroup.reasonReference", "path": "RequestGroup.reasonReference", "min": 0, "max": "*", "base": { "path": "RequestGroup.reasonReference", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Condition", "http://hl7.org/fhir/StructureDefinition/Observation", "http://hl7.org/fhir/StructureDefinition/DiagnosticReport", "http://hl7.org/fhir/StructureDefinition/DocumentReference" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "RequestGroup.note", "path": "RequestGroup.note", "min": 0, "max": "*", "base": { "path": "RequestGroup.note", "min": 0, "max": "*" }, "type": [ { "code": "Annotation" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "RequestGroup.action", "path": "RequestGroup.action", "min": 0, "max": "*", "base": { "path": "RequestGroup.action", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "rqg-1", "severity": "error", "human": "Must have resource or action but not both", "expression": "resource.exists() != action.exists()", "xpath": "exists(f:resource) != exists(f:action)", "source": "http://hl7.org/fhir/StructureDefinition/RequestGroup" } ], "isModifier": false, "isSummary": false }, { "id": "RequestGroup.action.id", "path": "RequestGroup.action.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "RequestGroup.action.extension", "path": "RequestGroup.action.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "RequestGroup.action.modifierExtension", "path": "RequestGroup.action.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "RequestGroup.action.prefix", "path": "RequestGroup.action.prefix", "min": 0, "max": "1", "base": { "path": "RequestGroup.action.prefix", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "RequestGroup.action.title", "path": "RequestGroup.action.title", "min": 0, "max": "1", "base": { "path": "RequestGroup.action.title", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "RequestGroup.action.description", "path": "RequestGroup.action.description", "min": 0, "max": "1", "base": { "path": "RequestGroup.action.description", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "RequestGroup.action.textEquivalent", "path": "RequestGroup.action.textEquivalent", "min": 0, "max": "1", "base": { "path": "RequestGroup.action.textEquivalent", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "RequestGroup.action.priority", "path": "RequestGroup.action.priority", "min": 0, "max": "1", "base": { "path": "RequestGroup.action.priority", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "RequestPriority" } ], "strength": "required", "description": "Identifies the level of importance to be assigned to actioning the request.", "valueSet": "http://hl7.org/fhir/ValueSet/request-priority|4.0.1" } }, { "id": "RequestGroup.action.code", "path": "RequestGroup.action.code", "min": 0, "max": "*", "base": { "path": "RequestGroup.action.code", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "RequestGroup.action.documentation", "path": "RequestGroup.action.documentation", "min": 0, "max": "*", "base": { "path": "RequestGroup.action.documentation", "min": 0, "max": "*" }, "type": [ { "code": "RelatedArtifact" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "RequestGroup.action.condition", "path": "RequestGroup.action.condition", "comment": "When multiple conditions of the same kind are present, the effects are combined using AND semantics, so the overall condition is true only if all of the conditions are true.", "min": 0, "max": "*", "base": { "path": "RequestGroup.action.condition", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "RequestGroup.action.condition.id", "path": "RequestGroup.action.condition.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "RequestGroup.action.condition.extension", "path": "RequestGroup.action.condition.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "RequestGroup.action.condition.modifierExtension", "path": "RequestGroup.action.condition.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "RequestGroup.action.condition.kind", "path": "RequestGroup.action.condition.kind", "comment": "Applicability criteria are used to determine immediate applicability when a plan definition is applied to a given context. Start and stop criteria are carried through application and used to describe enter/exit criteria for an action.", "min": 1, "max": "1", "base": { "path": "RequestGroup.action.condition.kind", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionConditionKind" } ], "strength": "required", "description": "The kind of condition for the action.", "valueSet": "http://hl7.org/fhir/ValueSet/action-condition-kind|4.0.1" } }, { "id": "RequestGroup.action.condition.expression", "path": "RequestGroup.action.condition.expression", "comment": "The expression may be inlined, or may be a reference to a named expression within a logic library referenced by the library element.", "min": 0, "max": "1", "base": { "path": "RequestGroup.action.condition.expression", "min": 0, "max": "1" }, "type": [ { "code": "Expression" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "RequestGroup.action.relatedAction", "path": "RequestGroup.action.relatedAction", "min": 0, "max": "*", "base": { "path": "RequestGroup.action.relatedAction", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "RequestGroup.action.relatedAction.id", "path": "RequestGroup.action.relatedAction.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "RequestGroup.action.relatedAction.extension", "path": "RequestGroup.action.relatedAction.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "RequestGroup.action.relatedAction.modifierExtension", "path": "RequestGroup.action.relatedAction.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "RequestGroup.action.relatedAction.actionId", "path": "RequestGroup.action.relatedAction.actionId", "min": 1, "max": "1", "base": { "path": "RequestGroup.action.relatedAction.actionId", "min": 1, "max": "1" }, "type": [ { "code": "id" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "RequestGroup.action.relatedAction.relationship", "path": "RequestGroup.action.relatedAction.relationship", "min": 1, "max": "1", "base": { "path": "RequestGroup.action.relatedAction.relationship", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionRelationshipType" } ], "strength": "required", "description": "Defines the types of relationships between actions.", "valueSet": "http://hl7.org/fhir/ValueSet/action-relationship-type|4.0.1" } }, { "id": "RequestGroup.action.relatedAction.offset[x]", "path": "RequestGroup.action.relatedAction.offset[x]", "min": 0, "max": "1", "base": { "path": "RequestGroup.action.relatedAction.offset[x]", "min": 0, "max": "1" }, "type": [ { "code": "Duration" }, { "code": "Range" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "RequestGroup.action.timing[x]", "path": "RequestGroup.action.timing[x]", "min": 0, "max": "1", "base": { "path": "RequestGroup.action.timing[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" }, { "code": "Age" }, { "code": "Period" }, { "code": "Duration" }, { "code": "Range" }, { "code": "Timing" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "RequestGroup.action.participant", "path": "RequestGroup.action.participant", "min": 0, "max": "*", "base": { "path": "RequestGroup.action.participant", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/RelatedPerson", "http://hl7.org/fhir/StructureDefinition/Device" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "RequestGroup.action.type", "path": "RequestGroup.action.type", "min": 0, "max": "1", "base": { "path": "RequestGroup.action.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionType" } ], "strength": "extensible", "description": "The type of action to be performed.", "valueSet": "http://hl7.org/fhir/ValueSet/action-type" } }, { "id": "RequestGroup.action.groupingBehavior", "path": "RequestGroup.action.groupingBehavior", "min": 0, "max": "1", "base": { "path": "RequestGroup.action.groupingBehavior", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionGroupingBehavior" } ], "strength": "required", "description": "Defines organization behavior of a group.", "valueSet": "http://hl7.org/fhir/ValueSet/action-grouping-behavior|4.0.1" } }, { "id": "RequestGroup.action.selectionBehavior", "path": "RequestGroup.action.selectionBehavior", "min": 0, "max": "1", "base": { "path": "RequestGroup.action.selectionBehavior", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionSelectionBehavior" } ], "strength": "required", "description": "Defines selection behavior of a group.", "valueSet": "http://hl7.org/fhir/ValueSet/action-selection-behavior|4.0.1" } }, { "id": "RequestGroup.action.requiredBehavior", "path": "RequestGroup.action.requiredBehavior", "min": 0, "max": "1", "base": { "path": "RequestGroup.action.requiredBehavior", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionRequiredBehavior" } ], "strength": "required", "description": "Defines expectations around whether an action or action group is required.", "valueSet": "http://hl7.org/fhir/ValueSet/action-required-behavior|4.0.1" } }, { "id": "RequestGroup.action.precheckBehavior", "path": "RequestGroup.action.precheckBehavior", "min": 0, "max": "1", "base": { "path": "RequestGroup.action.precheckBehavior", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionPrecheckBehavior" } ], "strength": "required", "description": "Defines selection frequency behavior for an action or group.", "valueSet": "http://hl7.org/fhir/ValueSet/action-precheck-behavior|4.0.1" } }, { "id": "RequestGroup.action.cardinalityBehavior", "path": "RequestGroup.action.cardinalityBehavior", "min": 0, "max": "1", "base": { "path": "RequestGroup.action.cardinalityBehavior", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionCardinalityBehavior" } ], "strength": "required", "description": "Defines behavior for an action or a group for how many times that item may be repeated.", "valueSet": "http://hl7.org/fhir/ValueSet/action-cardinality-behavior|4.0.1" } }, { "id": "RequestGroup.action.resource", "path": "RequestGroup.action.resource", "comment": "The target resource SHALL be a [Request](http://hl7.org/fhir/request.html) resource with a Request.intent set to \"option\".", "min": 0, "max": "1", "base": { "path": "RequestGroup.action.resource", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "condition": [ "rqg-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "RequestGroup.action.action", "path": "RequestGroup.action.action", "min": 0, "max": "*", "base": { "path": "RequestGroup.action.action", "min": 0, "max": "*" }, "contentReference": "#RequestGroup.action", "condition": [ "rqg-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "RequestGroup", "path": "RequestGroup", "min": 1, "max": "1" }, { "id": "RequestGroup.identifier", "path": "RequestGroup.identifier", "min": 1, "max": "1" }, { "id": "RequestGroup.instantiatesUri", "path": "RequestGroup.instantiatesUri", "min": 1, "max": "1" }, { "id": "RequestGroup.priority", "path": "RequestGroup.priority", "mustSupport": true }, { "id": "RequestGroup.subject", "path": "RequestGroup.subject", "mustSupport": true }, { "id": "RequestGroup.authoredOn", "path": "RequestGroup.authoredOn", "mustSupport": true }, { "id": "RequestGroup.author", "path": "RequestGroup.author", "mustSupport": true }, { "id": "RequestGroup.action", "path": "RequestGroup.action" }, { "id": "RequestGroup.action.title", "path": "RequestGroup.action.title", "mustSupport": true }, { "id": "RequestGroup.action.description", "path": "RequestGroup.action.description", "mustSupport": true }, { "id": "RequestGroup.action.priority", "path": "RequestGroup.action.priority", "mustSupport": true }, { "id": "RequestGroup.action.documentation", "path": "RequestGroup.action.documentation", "mustSupport": true }, { "id": "RequestGroup.action.condition", "path": "RequestGroup.action.condition", "mustSupport": true }, { "id": "RequestGroup.action.timing[x]", "path": "RequestGroup.action.timing[x]", "mustSupport": true }, { "id": "RequestGroup.action.participant", "path": "RequestGroup.action.participant", "mustSupport": true }, { "id": "RequestGroup.action.type", "path": "RequestGroup.action.type", "mustSupport": true }, { "id": "RequestGroup.action.selectionBehavior", "path": "RequestGroup.action.selectionBehavior", "mustSupport": true }, { "id": "RequestGroup.action.resource", "path": "RequestGroup.action.resource", "mustSupport": true } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/provenance-relevant-history", "resource": { "resourceType": "StructureDefinition", "id": "provenance-relevant-history", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 3 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "sec" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/provenance-relevant-history", "version": "4.0.1", "name": "Provenance Relevant History", "status": "draft", "experimental": false, "date": "2013-12-03", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Provenance", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Provenance", "derivation": "constraint", "snapshot": { "element": [ { "id": "Provenance", "path": "Provenance", "comment": "Some parties may be duplicated between the target resource and its provenance. For instance, the prescriber is usually (but not always) the author of the prescription resource. This resource is defined with close consideration for W3C Provenance.", "min": 0, "max": "*", "base": { "path": "Provenance", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" } ], "isModifier": false, "isSummary": false }, { "id": "Provenance.id", "path": "Provenance.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Provenance.meta", "path": "Provenance.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Provenance.implicitRules", "path": "Provenance.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Provenance.language", "path": "Provenance.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Provenance.text", "path": "Provenance.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Provenance.contained", "path": "Provenance.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Provenance.extension", "path": "Provenance.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Provenance.modifierExtension", "path": "Provenance.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Provenance.target", "path": "Provenance.target", "comment": "The reference SHALL be version-specific.", "min": 1, "max": "*", "base": { "path": "Provenance.target", "min": 1, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Provenance.occurred[x]", "path": "Provenance.occurred[x]", "comment": "Both low and high will be set to the time the record event occurred. (In a future version, this element will likely be a choice with dateTime so that multiple values aren't needed.).", "min": 1, "max": "1", "base": { "path": "Provenance.occurred[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "Provenance.recorded", "path": "Provenance.recorded", "comment": "This can be a little different from the time stamp on the resource if there is a delay between recording the event and updating the provenance and target resource.", "min": 1, "max": "1", "base": { "path": "Provenance.recorded", "min": 1, "max": "1" }, "type": [ { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Provenance.policy", "path": "Provenance.policy", "comment": "For example: Where an OAuth token authorizes, the unique identifier from the OAuth token is placed into the policy element Where a policy engine (e.g. XACML) holds policy logic, the unique policy identifier is placed into the policy element.", "min": 0, "max": "*", "base": { "path": "Provenance.policy", "min": 0, "max": "*" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Provenance.location", "path": "Provenance.location", "min": 0, "max": "1", "base": { "path": "Provenance.location", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Location" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Provenance.reason", "path": "Provenance.reason", "comment": "Plain text reasons can be sent in the \"text\" component with no codings. Domains may wish to define a constrained terminology. The reason for the resource's existence of the resource itself will be maintained on the resource, not here.", "min": 0, "max": "*", "base": { "path": "Provenance.reason", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ProvenanceReason" } ], "strength": "extensible", "description": "The reason the activity took place.", "valueSet": "http://terminology.hl7.org/ValueSet/v3-PurposeOfUse" } }, { "id": "Provenance.activity", "path": "Provenance.activity", "comment": "This should be captured at a sufficiently useful level of granularity. For example \"suspended\" is more useful than \"updated\". Domains will need to map the listed codes to their own state transitions and may wish to define additional domain-specific fine-grained codes.", "min": 1, "max": "1", "base": { "path": "Provenance.activity", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ProvenanceHistoryRecordActivity" } ], "strength": "extensible", "description": "Types of activities that are relevant for tracking event history using Provenance.", "valueSet": "http://hl7.org/fhir/ValueSet/provenance-history-record-activity" } }, { "id": "Provenance.agent", "path": "Provenance.agent", "slicing": { "discriminator": [ { "type": "value", "path": "type" } ], "ordered": false, "rules": "open" }, "comment": "Generally the author will be specified. Others are optional.", "min": 1, "max": "*", "base": { "path": "Provenance.agent", "min": 1, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "Provenance.agent.id", "path": "Provenance.agent.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Provenance.agent.extension", "path": "Provenance.agent.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Provenance.agent.modifierExtension", "path": "Provenance.agent.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Provenance.agent.type", "path": "Provenance.agent.type", "comment": "For example: author, performer, enterer, attester, etc.", "min": 1, "max": "1", "base": { "path": "Provenance.agent.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ProvenanceHistoryAgentType" } ], "strength": "extensible", "description": "Types of roles that agents can play when tracking event history using Provenance.", "valueSet": "http://hl7.org/fhir/ValueSet/provenance-history-agent-type" } }, { "id": "Provenance.agent.role", "path": "Provenance.agent.role", "comment": "For example: doctor, nurse, clerk, etc.", "min": 0, "max": "*", "base": { "path": "Provenance.agent.role", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ProvenanceAgentRole" } ], "strength": "example", "description": "The role that a provenance agent played with respect to the activity.", "valueSet": "http://hl7.org/fhir/ValueSet/security-role-type" } }, { "id": "Provenance.agent.who", "path": "Provenance.agent.who", "comment": "whoIdentity should be used when the agent is not a Resource type.", "min": 1, "max": "1", "base": { "path": "Provenance.agent.who", "min": 1, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/RelatedPerson", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/Organization" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Provenance.agent.onBehalfOf", "path": "Provenance.agent.onBehalfOf", "comment": "onBehalfOfIdentity should be used when the agent is not a Resource type.", "min": 0, "max": "1", "base": { "path": "Provenance.agent.onBehalfOf", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/RelatedPerson", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/Organization" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Provenance.agent:Author", "path": "Provenance.agent", "sliceName": "Author", "comment": "Several agents may be associated (i.e. has some responsibility for an activity) with an activity and vice-versa.", "min": 0, "max": "1", "base": { "path": "Provenance.agent", "min": 1, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "Provenance.agent:Author.id", "path": "Provenance.agent.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Provenance.agent:Author.extension", "path": "Provenance.agent.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Provenance.agent:Author.modifierExtension", "path": "Provenance.agent.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Provenance.agent:Author.type", "path": "Provenance.agent.type", "comment": "For example: author, performer, enterer, attester, etc.", "min": 1, "max": "1", "base": { "path": "Provenance.agent.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "patternCodeableConcept": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/v3-ParticipationType", "code": "AUT" } ] }, "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ProvenanceAgentType" } ], "strength": "extensible", "description": "The type of participation that a provenance agent played with respect to the activity.", "valueSet": "http://hl7.org/fhir/ValueSet/provenance-agent-type" } }, { "id": "Provenance.agent:Author.role", "path": "Provenance.agent.role", "comment": "For example: doctor, nurse, clerk, etc.", "min": 0, "max": "*", "base": { "path": "Provenance.agent.role", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ProvenanceAgentRole" } ], "strength": "example", "description": "The role that a provenance agent played with respect to the activity.", "valueSet": "http://hl7.org/fhir/ValueSet/security-role-type" } }, { "id": "Provenance.agent:Author.who", "path": "Provenance.agent.who", "comment": "whoIdentity should be used when the agent is not a Resource type.", "min": 1, "max": "1", "base": { "path": "Provenance.agent.who", "min": 1, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/RelatedPerson", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/Organization" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Provenance.agent:Author.onBehalfOf", "path": "Provenance.agent.onBehalfOf", "comment": "onBehalfOfIdentity should be used when the agent is not a Resource type.", "min": 0, "max": "1", "base": { "path": "Provenance.agent.onBehalfOf", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/RelatedPerson", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/Organization" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Provenance.entity", "path": "Provenance.entity", "min": 0, "max": "*", "base": { "path": "Provenance.entity", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Provenance.entity.id", "path": "Provenance.entity.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Provenance.entity.extension", "path": "Provenance.entity.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Provenance.entity.modifierExtension", "path": "Provenance.entity.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Provenance.entity.role", "path": "Provenance.entity.role", "min": 1, "max": "1", "base": { "path": "Provenance.entity.role", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ProvenanceEntityRole" } ], "strength": "required", "description": "How an entity was used in an activity.", "valueSet": "http://hl7.org/fhir/ValueSet/provenance-entity-role|4.0.1" } }, { "id": "Provenance.entity.what", "path": "Provenance.entity.what", "comment": "whatIdentity should be used for entities that are not a Resource type.", "min": 1, "max": "1", "base": { "path": "Provenance.entity.what", "min": 1, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Provenance.entity.agent", "path": "Provenance.entity.agent", "comment": "A usecase where one Provenance.entity.agent is used where the Entity that was used in the creation/updating of the Target, is not in the context of the same custodianship as the Target, and thus the meaning of Provenance.entity.agent is to say that the entity referenced is managed elsewhere and that this Agent provided access to it. This would be similar to where the Entity being referenced is managed outside FHIR, such as through HL7 v2, v3, or XDS. This might be where the Entity being referenced is managed in another FHIR resource server. Thus it explains the Provenance of that Entity's use in the context of this Provenance activity.", "min": 0, "max": "*", "base": { "path": "Provenance.entity.agent", "min": 0, "max": "*" }, "contentReference": "#Provenance.agent:Author", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Provenance.signature", "path": "Provenance.signature", "min": 0, "max": "*", "base": { "path": "Provenance.signature", "min": 0, "max": "*" }, "type": [ { "code": "Signature" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "Provenance", "path": "Provenance", "min": 0, "max": "*" }, { "id": "Provenance.target", "path": "Provenance.target", "comment": "The reference SHALL be version-specific.", "mustSupport": true }, { "id": "Provenance.occurred[x]", "path": "Provenance.occurred[x]", "comment": "Both low and high will be set to the time the record event occurred. (In a future version, this element will likely be a choice with dateTime so that multiple values aren't needed.).", "min": 1, "max": "1", "type": [ { "code": "dateTime" } ], "mustSupport": true }, { "id": "Provenance.reason", "path": "Provenance.reason", "comment": "Plain text reasons can be sent in the \"text\" component with no codings. Domains may wish to define a constrained terminology. The reason for the resource's existence of the resource itself will be maintained on the resource, not here.", "mustSupport": true }, { "id": "Provenance.activity", "path": "Provenance.activity", "comment": "This should be captured at a sufficiently useful level of granularity. For example \"suspended\" is more useful than \"updated\". Domains will need to map the listed codes to their own state transitions and may wish to define additional domain-specific fine-grained codes.", "min": 1, "max": "1", "mustSupport": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ProvenanceHistoryRecordActivity" } ], "strength": "extensible", "description": "Types of activities that are relevant for tracking event history using Provenance.", "valueSet": "http://hl7.org/fhir/ValueSet/provenance-history-record-activity" } }, { "id": "Provenance.agent", "path": "Provenance.agent", "slicing": { "discriminator": [ { "type": "value", "path": "type" } ], "ordered": false, "rules": "open" }, "comment": "Generally the author will be specified. Others are optional.", "mustSupport": true }, { "id": "Provenance.agent.type", "path": "Provenance.agent.type", "min": 1, "max": "1", "mustSupport": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ProvenanceHistoryAgentType" } ], "strength": "extensible", "description": "Types of roles that agents can play when tracking event history using Provenance.", "valueSet": "http://hl7.org/fhir/ValueSet/provenance-history-agent-type" } }, { "id": "Provenance.agent:Author", "path": "Provenance.agent", "sliceName": "Author", "min": 0, "max": "1", "mustSupport": true }, { "id": "Provenance.agent:Author.type", "path": "Provenance.agent.type", "min": 1, "max": "1", "type": [ { "code": "CodeableConcept" } ], "patternCodeableConcept": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/v3-ParticipationType", "code": "AUT" } ] }, "mustSupport": true }, { "id": "Provenance.agent:Author.who", "path": "Provenance.agent.who", "min": 1, "max": "1", "mustSupport": true } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/cqf-questionnaire", "resource": { "resourceType": "StructureDefinition", "id": "cqf-questionnaire", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 3 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "fhir" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/cqf-questionnaire", "version": "4.0.1", "name": "CQF-Questionnaire", "status": "draft", "experimental": false, "date": "2015-05-30", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Questionnaire", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Questionnaire", "derivation": "constraint", "snapshot": { "element": [ { "id": "Questionnaire", "path": "Questionnaire", "min": 0, "max": "*", "base": { "path": "Questionnaire", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "que-0", "severity": "warning", "human": "Name should be usable as an identifier for the module by machine processing applications such as code generation", "expression": "name.matches('[A-Z]([A-Za-z0-9_]){0,254}')", "xpath": "not(exists(f:name/@value)) or matches(f:name/@value, '[A-Z]([A-Za-z0-9_]){0,254}')", "source": "http://hl7.org/fhir/StructureDefinition/Questionnaire" }, { "key": "que-2", "severity": "error", "human": "The link ids for groups and questions must be unique within the questionnaire", "expression": "descendants().linkId.isDistinct()", "xpath": "count(descendant::f:linkId/@value)=count(distinct-values(descendant::f:linkId/@value))", "source": "http://hl7.org/fhir/StructureDefinition/Questionnaire" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.id", "path": "Questionnaire.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Questionnaire.meta", "path": "Questionnaire.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Questionnaire.implicitRules", "path": "Questionnaire.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Questionnaire.language", "path": "Questionnaire.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Questionnaire.text", "path": "Questionnaire.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.contained", "path": "Questionnaire.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.extension", "path": "Questionnaire.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "ordered": false, "rules": "open" }, "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.extension:library", "path": "Questionnaire.extension", "sliceName": "library", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/cqf-library" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false }, { "id": "Questionnaire.modifierExtension", "path": "Questionnaire.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Questionnaire.url", "path": "Questionnaire.url", "comment": "The name of the referenced questionnaire can be conveyed using the http://hl7.org/fhir/StructureDefinition/display extension.", "min": 0, "max": "1", "base": { "path": "Questionnaire.url", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Questionnaire.identifier", "path": "Questionnaire.identifier", "comment": "Typically, this is used for identifiers that can go in an HL7 V3 II (instance identifier) data type, and can then identify this questionnaire outside of FHIR, where it is not possible to use the logical URI.", "min": 0, "max": "*", "base": { "path": "Questionnaire.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Questionnaire.version", "path": "Questionnaire.version", "comment": "There may be different questionnaire instances that have the same identifier but different versions. The version can be appended to the url in a reference to allow a reference to a particular business version of the questionnaire with the format [url]|[version].", "min": 0, "max": "1", "base": { "path": "Questionnaire.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Questionnaire.name", "path": "Questionnaire.name", "comment": "The name is not expected to be globally unique. The name should be a simple alphanumeric type name to ensure that it is machine-processing friendly.", "min": 0, "max": "1", "base": { "path": "Questionnaire.name", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "condition": [ "inv-0" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Questionnaire.title", "path": "Questionnaire.title", "comment": "This name does not need to be machine-processing friendly and may contain punctuation, white-space, etc.", "min": 0, "max": "1", "base": { "path": "Questionnaire.title", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Questionnaire.derivedFrom", "path": "Questionnaire.derivedFrom", "min": 0, "max": "*", "base": { "path": "Questionnaire.derivedFrom", "min": 0, "max": "*" }, "type": [ { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Questionnaire" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.status", "path": "Questionnaire.status", "comment": "Allows filtering of questionnaires that are appropriate for use versus not.", "min": 1, "max": "1", "base": { "path": "Questionnaire.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This is labeled as \"Is Modifier\" because applications should not use a retired {{title}} without due consideration", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "PublicationStatus" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "required", "description": "The lifecycle status of an artifact.", "valueSet": "http://hl7.org/fhir/ValueSet/publication-status|4.0.1" } }, { "id": "Questionnaire.experimental", "path": "Questionnaire.experimental", "comment": "Allows filtering of questionnaires that are appropriate for use versus not.", "min": 0, "max": "1", "base": { "path": "Questionnaire.experimental", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Questionnaire.subjectType", "path": "Questionnaire.subjectType", "comment": "If none are specified, then the subject is unlimited.", "min": 0, "max": "*", "base": { "path": "Questionnaire.subjectType", "min": 0, "max": "*" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ResourceType" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "required", "description": "One of the resource types defined as part of this version of FHIR.", "valueSet": "http://hl7.org/fhir/ValueSet/resource-types|4.0.1" } }, { "id": "Questionnaire.date", "path": "Questionnaire.date", "comment": "Note that this is not the same as the resource last-modified-date, since the resource may be a secondary representation of the questionnaire. Additional specific dates may be added as extensions or be found by consulting Provenances associated with past versions of the resource.", "min": 0, "max": "1", "base": { "path": "Questionnaire.date", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Questionnaire.publisher", "path": "Questionnaire.publisher", "comment": "Usually an organization but may be an individual. The publisher (or steward) of the questionnaire is the organization or individual primarily responsible for the maintenance and upkeep of the questionnaire. This is not necessarily the same individual or organization that developed and initially authored the content. The publisher is the primary point of contact for questions or issues with the questionnaire. This item SHOULD be populated unless the information is available from context.", "min": 0, "max": "1", "base": { "path": "Questionnaire.publisher", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Questionnaire.contact", "path": "Questionnaire.contact", "comment": "May be a web site, an email address, a telephone number, etc.", "min": 0, "max": "*", "base": { "path": "Questionnaire.contact", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Questionnaire.description", "path": "Questionnaire.description", "comment": "This description can be used to capture details such as why the questionnaire was built, comments about misuse, instructions for clinical use and interpretation, literature references, examples from the paper world, etc. It is not a rendering of the questionnaire as conveyed in the 'text' field of the resource itself. This item SHOULD be populated unless the information is available from context (e.g. the language of the questionnaire is presumed to be the predominant language in the place the questionnaire was created).", "min": 0, "max": "1", "base": { "path": "Questionnaire.description", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.useContext", "path": "Questionnaire.useContext", "comment": "When multiple useContexts are specified, there is no expectation that all or any of the contexts apply.", "min": 0, "max": "*", "base": { "path": "Questionnaire.useContext", "min": 0, "max": "*" }, "type": [ { "code": "UsageContext" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Questionnaire.jurisdiction", "path": "Questionnaire.jurisdiction", "comment": "It may be possible for the questionnaire to be used in jurisdictions other than those for which it was originally designed or intended.", "min": 0, "max": "*", "base": { "path": "Questionnaire.jurisdiction", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Jurisdiction" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "extensible", "description": "Countries and regions within which this artifact is targeted for use.", "valueSet": "http://hl7.org/fhir/ValueSet/jurisdiction" } }, { "id": "Questionnaire.purpose", "path": "Questionnaire.purpose", "comment": "This element does not describe the usage of the questionnaire. Instead, it provides traceability of ''why'' the resource is either needed or ''why'' it is defined as it is. This may be used to point to source materials or specifications that drove the structure of this questionnaire.", "min": 0, "max": "1", "base": { "path": "Questionnaire.purpose", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.copyright", "path": "Questionnaire.copyright", "min": 0, "max": "1", "base": { "path": "Questionnaire.copyright", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.approvalDate", "path": "Questionnaire.approvalDate", "comment": "The 'date' element may be more recent than the approval date because of minor changes or editorial corrections.", "min": 0, "max": "1", "base": { "path": "Questionnaire.approvalDate", "min": 0, "max": "1" }, "type": [ { "code": "date" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.lastReviewDate", "path": "Questionnaire.lastReviewDate", "comment": "If specified, this date follows the original approval date.", "min": 0, "max": "1", "base": { "path": "Questionnaire.lastReviewDate", "min": 0, "max": "1" }, "type": [ { "code": "date" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.effectivePeriod", "path": "Questionnaire.effectivePeriod", "comment": "The effective period for a questionnaire determines when the content is applicable for usage and is independent of publication and review dates. For example, a measure intended to be used for the year 2016 might be published in 2015.", "min": 0, "max": "1", "base": { "path": "Questionnaire.effectivePeriod", "min": 0, "max": "1" }, "type": [ { "code": "Period" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Questionnaire.code", "path": "Questionnaire.code", "min": 0, "max": "*", "base": { "path": "Questionnaire.code", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "QuestionnaireConcept" } ], "strength": "example", "description": "Codes for questionnaires, groups and individual questions.", "valueSet": "http://hl7.org/fhir/ValueSet/questionnaire-questions" } }, { "id": "Questionnaire.item", "path": "Questionnaire.item", "comment": "The content of the questionnaire is constructed from an ordered, hierarchical collection of items.", "min": 0, "max": "*", "base": { "path": "Questionnaire.item", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "condition": [ "que-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "que-1", "severity": "error", "human": "Group items must have nested items, display items cannot have nested items", "expression": "(type='group' implies item.empty().not()) and (type.trace('type')='display' implies item.trace('item').empty())", "xpath": "not((f:type/@value='group' and not(f:item)) or (f:type/@value='display' and f:item))" }, { "key": "que-3", "severity": "error", "human": "Display items cannot have a \"code\" asserted", "expression": "type!='display' or code.empty()", "xpath": "not(f:type/@value='display' and f:code)" }, { "key": "que-4", "severity": "error", "human": "A question cannot have both answerOption and answerValueSet", "expression": "answerOption.empty() or answerValueSet.empty()", "xpath": "not(f:answerValueSet and f:answerOption)" }, { "key": "que-5", "severity": "error", "human": "Only 'choice' and 'open-choice' items can have answerValueSet", "expression": "(type ='choice' or type = 'open-choice' or type = 'decimal' or type = 'integer' or type = 'date' or type = 'dateTime' or type = 'time' or type = 'string' or type = 'quantity') or (answerValueSet.empty() and answerOption.empty())", "xpath": "f:type/@value=('choice','open-choice','decimal','integer','date','dateTime','time','string','quantity',') or not(f:answerOption or f:answerValueSet)" }, { "key": "que-6", "severity": "error", "human": "Required and repeat aren't permitted for display items", "expression": "type!='display' or (required.empty() and repeats.empty())", "xpath": "not(f:type/@value='display' and (f:required or f:repeats))" }, { "key": "que-8", "severity": "error", "human": "Initial values can't be specified for groups or display items", "expression": "(type!='group' and type!='display') or initial.empty()", "xpath": "not(f:type/@value=('group', 'display') and f:*[starts-with(local-name(.), 'initial')])" }, { "key": "que-9", "severity": "error", "human": "Read-only can't be specified for \"display\" items", "expression": "type!='display' or readOnly.empty()", "xpath": "not(f:type/@value=('group', 'display') and f:*[starts-with(local-name(.), 'initial')])" }, { "key": "que-10", "severity": "error", "human": "Maximum length can only be declared for simple question types", "expression": "(type in ('boolean' | 'decimal' | 'integer' | 'string' | 'text' | 'url' | 'open-choice')) or maxLength.empty()", "xpath": "f:type/@value=('boolean', 'decimal', 'integer', 'open-choice', 'string', 'text', 'url') or not(f:maxLength)" }, { "key": "que-11", "severity": "error", "human": "If one or more answerOption is present, initial[x] must be missing", "expression": "answerOption.empty() or initial.empty()", "xpath": "not(f:answerOption) or not(count(f:*[starts-with(local-name(.), 'initial')]))" }, { "key": "que-12", "severity": "error", "human": "If there are more than one enableWhen, enableBehavior must be specified", "expression": "enableWhen.count() > 2 implies enableBehavior.exists()", "xpath": "not(f:answerOption) or not(count(f:*[starts-with(local-name(.), 'initial')]))" }, { "key": "que-13", "severity": "error", "human": "Can only have multiple initial values for repeating items", "expression": "repeats=true or initial.count() <= 1", "xpath": "f:repeats/@value='true' or count(f:initial)<=1" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.item.id", "path": "Questionnaire.item.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.item.extension", "path": "Questionnaire.item.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.item.modifierExtension", "path": "Questionnaire.item.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Questionnaire.item.linkId", "path": "Questionnaire.item.linkId", "comment": "This ''can'' be a meaningful identifier (e.g. a LOINC code) but is not intended to have any meaning. GUIDs or sequential numbers are appropriate here.", "min": 1, "max": "1", "base": { "path": "Questionnaire.item.linkId", "min": 1, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.item.definition", "path": "Questionnaire.item.definition", "comment": "The uri refers to an ElementDefinition in a [StructureDefinition](http://hl7.org/fhir/structuredefinition.html#) and always starts with the [canonical URL](http://hl7.org/fhir/references.html#canonical) for the target resource. When referring to a StructureDefinition, a fragment identifier is used to specify the element definition by its id [Element.id](http://hl7.org/fhir/element-definitions.html#Element.id). E.g. http://hl7.org/fhir/StructureDefinition/Observation#Observation.value[x]. In the absence of a fragment identifier, the first/root element definition in the target is the matching element definition.", "min": 0, "max": "1", "base": { "path": "Questionnaire.item.definition", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.item.code", "path": "Questionnaire.item.code", "comment": "The value may come from the ElementDefinition referred to by .definition.", "min": 0, "max": "*", "base": { "path": "Questionnaire.item.code", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "condition": [ "que-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "QuestionnaireConcept" } ], "strength": "example", "description": "Codes for questionnaires, groups and individual questions.", "valueSet": "http://hl7.org/fhir/ValueSet/questionnaire-questions" } }, { "id": "Questionnaire.item.prefix", "path": "Questionnaire.item.prefix", "comment": "These are generally unique within a questionnaire, though this is not guaranteed. Some questionnaires may have multiple questions with the same label with logic to control which gets exposed. Typically, these won't be used for \"display\" items, though such use is not prohibited. Systems SHOULD NOT generate their own prefixes if prefixes are defined for any items within a Questionnaire.", "min": 0, "max": "1", "base": { "path": "Questionnaire.item.prefix", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.item.text", "path": "Questionnaire.item.text", "comment": "When using this element to represent the name of a section, use group type item and also make sure to limit the text element to a short string suitable for display as a section heading. Group item instructions should be included as a display type item within the group.", "min": 0, "max": "1", "base": { "path": "Questionnaire.item.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.item.type", "path": "Questionnaire.item.type", "comment": "Additional constraints on the type of answer can be conveyed by extensions. The value may come from the ElementDefinition referred to by .definition.", "min": 1, "max": "1", "base": { "path": "Questionnaire.item.type", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "QuestionnaireItemType" } ], "strength": "required", "description": "Distinguishes groups from questions and display text and indicates data type for questions.", "valueSet": "http://hl7.org/fhir/ValueSet/item-type|4.0.1" } }, { "id": "Questionnaire.item.enableWhen", "path": "Questionnaire.item.enableWhen", "comment": "If multiple repetitions of this extension are present, the item should be enabled when the condition for *any* of the repetitions is true. I.e. treat \"enableWhen\"s as being joined by an \"or\" clause. This element is a modifier because if enableWhen is present for an item, \"required\" is ignored unless one of the enableWhen conditions is met. When an item is disabled, all of its descendants are disabled, regardless of what their own enableWhen logic might evaluate to.", "min": 0, "max": "*", "base": { "path": "Questionnaire.item.enableWhen", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "que-7", "severity": "error", "human": "If the operator is 'exists', the value must be a boolean", "expression": "operator = 'exists' implies (answer is Boolean)", "xpath": "f:operator/@value != 'exists' or exists(f:answerBoolean)" } ], "isModifier": true, "isModifierReason": "If enableWhen is present and the condition evaluates to false, then the Questionnaire behaves as though the elements weren't actually present", "isSummary": false }, { "id": "Questionnaire.item.enableWhen.id", "path": "Questionnaire.item.enableWhen.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.item.enableWhen.extension", "path": "Questionnaire.item.enableWhen.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.item.enableWhen.modifierExtension", "path": "Questionnaire.item.enableWhen.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Questionnaire.item.enableWhen.question", "path": "Questionnaire.item.enableWhen.question", "comment": "If multiple question occurrences are present for the same question (same linkId), then this refers to the nearest question occurrence reachable by tracing first the \"ancestor\" axis and then the \"preceding\" axis and then the \"following\" axis.", "min": 1, "max": "1", "base": { "path": "Questionnaire.item.enableWhen.question", "min": 1, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.item.enableWhen.operator", "path": "Questionnaire.item.enableWhen.operator", "min": 1, "max": "1", "base": { "path": "Questionnaire.item.enableWhen.operator", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "QuestionnaireItemOperator" } ], "strength": "required", "description": "The criteria by which a question is enabled.", "valueSet": "http://hl7.org/fhir/ValueSet/questionnaire-enable-operator|4.0.1" } }, { "id": "Questionnaire.item.enableWhen.answer[x]", "path": "Questionnaire.item.enableWhen.answer[x]", "min": 1, "max": "1", "base": { "path": "Questionnaire.item.enableWhen.answer[x]", "min": 1, "max": "1" }, "type": [ { "code": "boolean" }, { "code": "decimal" }, { "code": "integer" }, { "code": "date" }, { "code": "dateTime" }, { "code": "time" }, { "code": "string" }, { "code": "Coding" }, { "code": "Quantity" }, { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "condition": [ "que-7" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "QuestionnaireQuestionOption3" } ], "strength": "example", "description": "Allowed values to answer questions.", "valueSet": "http://hl7.org/fhir/ValueSet/questionnaire-answers" } }, { "id": "Questionnaire.item.enableBehavior", "path": "Questionnaire.item.enableBehavior", "comment": "This element must be specified if more than one enableWhen value is provided.", "min": 0, "max": "1", "base": { "path": "Questionnaire.item.enableBehavior", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "condition": [ "que-12" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "EnableWhenBehavior" } ], "strength": "required", "description": "Controls how multiple enableWhen values are interpreted - whether all or any must be true.", "valueSet": "http://hl7.org/fhir/ValueSet/questionnaire-enable-behavior|4.0.1" } }, { "id": "Questionnaire.item.required", "path": "Questionnaire.item.required", "comment": "Questionnaire.item.required only has meaning for elements that are conditionally enabled with enableWhen if the condition evaluates to true. If an item that contains other items is marked as required, that does not automatically make the contained elements required (though required groups must contain at least one child element). The value may come from the ElementDefinition referred to by .definition.", "min": 0, "max": "1", "base": { "path": "Questionnaire.item.required", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "meaningWhenMissing": "Items are generally assumed not to be required unless explicitly specified. Systems SHOULD always populate this value", "condition": [ "que-6" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.item.repeats", "path": "Questionnaire.item.repeats", "comment": "If a question is marked as repeats=true, then multiple answers can be provided for the question in the corresponding QuestionnaireResponse. When rendering the questionnaire, it is up to the rendering software whether to render the question text for each answer repetition (i.e. \"repeat the question\") or to simply allow entry/selection of multiple answers for the question (repeat the answers). Which is most appropriate visually may depend on the type of answer as well as whether there are nested items.\n\nThe resulting QuestionnaireResponse will be populated the same way regardless of rendering - one 'question' item with multiple answer values.\n\n The value may come from the ElementDefinition referred to by .definition.", "min": 0, "max": "1", "base": { "path": "Questionnaire.item.repeats", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "meaningWhenMissing": "Items are generally assumed not to repeat unless explicitly specified. Systems SHOULD always populate this value", "condition": [ "que-6" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.item.readOnly", "path": "Questionnaire.item.readOnly", "comment": "The value of readOnly elements can be established by asserting extensions for defaultValues, linkages that support pre-population and/or extensions that support calculation based on other answers.", "min": 0, "max": "1", "base": { "path": "Questionnaire.item.readOnly", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "condition": [ "que-9" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.item.maxLength", "path": "Questionnaire.item.maxLength", "comment": "For base64binary, reflects the number of characters representing the encoded data, not the number of bytes of the binary data. The value may come from the ElementDefinition referred to by .definition.", "min": 0, "max": "1", "base": { "path": "Questionnaire.item.maxLength", "min": 0, "max": "1" }, "type": [ { "code": "integer" } ], "condition": [ "que-10" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.item.answerValueSet", "path": "Questionnaire.item.answerValueSet", "comment": "LOINC defines many useful value sets for questionnaire responses. See [LOINC Answer Lists](http://hl7.org/fhir/loinc.html#alist). The value may come from the ElementDefinition referred to by .definition.", "min": 0, "max": "1", "base": { "path": "Questionnaire.item.answerValueSet", "min": 0, "max": "1" }, "type": [ { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/ValueSet" ] } ], "condition": [ "que-4", "que-5" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.item.answerOption", "path": "Questionnaire.item.answerOption", "comment": "This element can be used when the value set machinery of answerValueSet is deemed too cumbersome or when there's a need to capture possible answers that are not codes.", "min": 0, "max": "*", "base": { "path": "Questionnaire.item.answerOption", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "condition": [ "que-4", "que-5" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.item.answerOption.id", "path": "Questionnaire.item.answerOption.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.item.answerOption.extension", "path": "Questionnaire.item.answerOption.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.item.answerOption.modifierExtension", "path": "Questionnaire.item.answerOption.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Questionnaire.item.answerOption.value[x]", "path": "Questionnaire.item.answerOption.value[x]", "comment": "The data type of the value must agree with the item.type.", "min": 1, "max": "1", "base": { "path": "Questionnaire.item.answerOption.value[x]", "min": 1, "max": "1" }, "type": [ { "code": "integer" }, { "code": "date" }, { "code": "time" }, { "code": "string" }, { "code": "Coding" }, { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "QuestionnaireQuestionOption" } ], "strength": "example", "description": "Allowed values to answer questions.", "valueSet": "http://hl7.org/fhir/ValueSet/questionnaire-answers" } }, { "id": "Questionnaire.item.answerOption.initialSelected", "path": "Questionnaire.item.answerOption.initialSelected", "comment": "Use this instead of initial[v] if answerValueSet is present.", "min": 0, "max": "1", "base": { "path": "Questionnaire.item.answerOption.initialSelected", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "meaningWhenMissing": "Only selected items explicitly marked to be selected", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.item.initial", "path": "Questionnaire.item.initial", "comment": "The user is allowed to change the value and override the default (unless marked as read-only). If the user doesn't change the value, then this initial value will be persisted when the QuestionnaireResponse is initially created. Note that initial values can influence results. The data type of initial[x] must agree with the item.type, and only repeating items can have more then one initial value.", "min": 0, "max": "*", "base": { "path": "Questionnaire.item.initial", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "condition": [ "que-8", "que-13" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.item.initial.id", "path": "Questionnaire.item.initial.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.item.initial.extension", "path": "Questionnaire.item.initial.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Questionnaire.item.initial.modifierExtension", "path": "Questionnaire.item.initial.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Questionnaire.item.initial.value[x]", "path": "Questionnaire.item.initial.value[x]", "comment": "The type of the initial value must be consistent with the type of the item.", "min": 1, "max": "1", "base": { "path": "Questionnaire.item.initial.value[x]", "min": 1, "max": "1" }, "type": [ { "code": "boolean" }, { "code": "decimal" }, { "code": "integer" }, { "code": "date" }, { "code": "dateTime" }, { "code": "time" }, { "code": "string" }, { "code": "uri" }, { "code": "Attachment" }, { "code": "Coding" }, { "code": "Quantity" }, { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "QuestionnaireQuestionOption2" } ], "strength": "example", "description": "Allowed values to answer questions.", "valueSet": "http://hl7.org/fhir/ValueSet/questionnaire-answers" } }, { "id": "Questionnaire.item.item", "path": "Questionnaire.item.item", "comment": "There is no specified limit to the depth of nesting. However, Questionnaire authors are encouraged to consider the impact on the user and user interface of overly deep nesting.", "min": 0, "max": "*", "base": { "path": "Questionnaire.item.item", "min": 0, "max": "*" }, "contentReference": "#Questionnaire.item", "condition": [ "que-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "Questionnaire", "path": "Questionnaire", "min": 0, "max": "*" }, { "id": "Questionnaire.extension:library", "path": "Questionnaire.extension", "sliceName": "library", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/cqf-library" ] } ] } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/shareablevalueset", "resource": { "resourceType": "StructureDefinition", "id": "shareablevalueset", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 5 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "vocab" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/shareablevalueset", "version": "4.0.1", "name": "Shareable ValueSet", "status": "draft", "experimental": false, "date": "2019-11-01T09:29:23+11:00", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "ValueSet", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/ValueSet", "derivation": "constraint", "snapshot": { "element": [ { "id": "ValueSet", "path": "ValueSet", "min": 1, "max": "1", "base": { "path": "ValueSet", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "vsd-0", "severity": "warning", "human": "Name should be usable as an identifier for the module by machine processing applications such as code generation", "expression": "name.matches('[A-Z]([A-Za-z0-9_]){0,254}')", "xpath": "not(exists(f:name/@value)) or matches(f:name/@value, '[A-Z]([A-Za-z0-9_]){0,254}')", "source": "http://hl7.org/fhir/StructureDefinition/ValueSet" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.id", "path": "ValueSet.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "ValueSet.meta", "path": "ValueSet.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ValueSet.implicitRules", "path": "ValueSet.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "ValueSet.language", "path": "ValueSet.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "ValueSet.text", "path": "ValueSet.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.contained", "path": "ValueSet.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.extension", "path": "ValueSet.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.modifierExtension", "path": "ValueSet.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "ValueSet.url", "path": "ValueSet.url", "comment": "Can be a urn:uuid: or a urn:oid: but real http: addresses are preferred. Multiple instances may share the same URL if they have a distinct version.\n\nThe determination of when to create a new version of a resource (same url, new version) vs. defining a new artifact is up to the author. Considerations for making this decision are found in [Technical and Business Versions](http://hl7.org/fhir/resource.html#versions). \n\nIn some cases, the resource can no longer be found at the stated url, but the url itself cannot change. Implementations can use the [meta.source](http://hl7.org/fhir/resource.html#meta) element to indicate where the current master source of the resource can be found.", "min": 1, "max": "1", "base": { "path": "ValueSet.url", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ValueSet.identifier", "path": "ValueSet.identifier", "comment": "Typically, this is used for identifiers that can go in an HL7 V3 II (instance identifier) data type, and can then identify this value set outside of FHIR, where it is not possible to use the logical URI.", "min": 0, "max": "*", "base": { "path": "ValueSet.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ValueSet.version", "path": "ValueSet.version", "comment": "There may be different value set instances that have the same identifier but different versions. The version can be appended to the url in a reference to allow a reference to a particular business version of the value set with the format [url]|[version].", "min": 1, "max": "1", "base": { "path": "ValueSet.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ValueSet.name", "path": "ValueSet.name", "comment": "The name is not expected to be globally unique. The name should be a simple alphanumeric type name to ensure that it is machine-processing friendly.A name should be provided unless the value set is a contained resource (e.g. an anonymous value set in a profile). Most registries will require a name.", "min": 1, "max": "1", "base": { "path": "ValueSet.name", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "condition": [ "inv-0" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ValueSet.title", "path": "ValueSet.title", "comment": "This name does not need to be machine-processing friendly and may contain punctuation, white-space, etc.", "min": 0, "max": "1", "base": { "path": "ValueSet.title", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ValueSet.status", "path": "ValueSet.status", "comment": "Allows filtering of value sets that are appropriate for use versus not.See also the [valueset-workflowStatus](http://hl7.org/fhir/extension-valueset-workflowstatus.html) extension for additional status information related to the editorial process.", "min": 1, "max": "1", "base": { "path": "ValueSet.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This is labeled as \"Is Modifier\" because applications should not use a retired {{title}} without due consideration", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "PublicationStatus" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "required", "description": "The lifecycle status of an artifact.", "valueSet": "http://hl7.org/fhir/ValueSet/publication-status|4.0.1" } }, { "id": "ValueSet.experimental", "path": "ValueSet.experimental", "comment": "Allows filtering of value sets that are appropriate for use versus not.", "min": 1, "max": "1", "base": { "path": "ValueSet.experimental", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ValueSet.date", "path": "ValueSet.date", "comment": "Note that this is not the same as the resource last-modified-date, since the resource may be a secondary representation of the value set. Additional specific dates may be added as extensions or be found by consulting Provenances associated with past versions of the resource.", "min": 0, "max": "1", "base": { "path": "ValueSet.date", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ValueSet.publisher", "path": "ValueSet.publisher", "comment": "Usually an organization but may be an individual. The publisher (or steward) of the value set is the organization or individual primarily responsible for the maintenance and upkeep of the value set. This is not necessarily the same individual or organization that developed and initially authored the content. The publisher is the primary point of contact for questions or issues with the value set. This item SHOULD be populated unless the information is available from context.", "min": 1, "max": "1", "base": { "path": "ValueSet.publisher", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ValueSet.contact", "path": "ValueSet.contact", "comment": "May be a web site, an email address, a telephone number, etc.", "min": 0, "max": "*", "base": { "path": "ValueSet.contact", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ValueSet.description", "path": "ValueSet.description", "comment": "This description can be used to capture details such as why the value set was built, comments about misuse, instructions for clinical use and interpretation, literature references, examples from the paper world, etc. It is not a rendering of the value set as conveyed in the 'text' field of the resource itself. This item SHOULD be populated unless the information is available from context (e.g. the language of the value set is presumed to be the predominant language in the place the value set was created).The description is not intended to describe the semantics of the Value Set - there are no intrinsic semantics separate from the codes contained in its expansion. The description should capture its intended use, which is needed for ensuring integrity for its use in models across future changes. A description should be provided unless the value set is a contained resource (e.g. an anonymous value set in a profile). Most registries will require a description.", "min": 1, "max": "1", "base": { "path": "ValueSet.description", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.useContext", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "path": "ValueSet.useContext", "comment": "When multiple useContexts are specified, there is no expectation that all or any of the contexts apply.", "min": 0, "max": "*", "base": { "path": "ValueSet.useContext", "min": 0, "max": "*" }, "type": [ { "code": "UsageContext" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ValueSet.jurisdiction", "path": "ValueSet.jurisdiction", "comment": "It may be possible for the value set to be used in jurisdictions other than those for which it was originally designed or intended.", "min": 0, "max": "*", "base": { "path": "ValueSet.jurisdiction", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Jurisdiction" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "extensible", "description": "Countries and regions within which this artifact is targeted for use.", "valueSet": "http://hl7.org/fhir/ValueSet/jurisdiction" } }, { "id": "ValueSet.immutable", "path": "ValueSet.immutable", "comment": "Normally immutability is set to 'false', which is the default assumption if it is not populated. Note that the implication is that if this is set to 'true', there may be only one ValueSet version for this definition. Immutability tends to be set to 'true' in one of two cases: - Where the value set, by the nature of its usage, cannot change. For example \"All specializations of ACT in ActClassCode\" - Where there's no safe way to express the \"Purpose\" such that someone else could safely make changes to the value set definition. Source workflow control must guarantee that the same URI always yields the same definition.", "min": 0, "max": "1", "base": { "path": "ValueSet.immutable", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ValueSet.purpose", "path": "ValueSet.purpose", "comment": "This element does not describe the usage of the value set. Instead, it provides traceability of ''why'' the resource is either needed or ''why'' it is defined as it is. This may be used to point to source materials or specifications that drove the structure of this value set.", "min": 0, "max": "1", "base": { "path": "ValueSet.purpose", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.copyright", "path": "ValueSet.copyright", "comment": "nullFrequently, the copyright differs between the value set and the codes that are included. The copyright statement should clearly differentiate between these when required.", "min": 0, "max": "1", "base": { "path": "ValueSet.copyright", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.compose", "path": "ValueSet.compose", "min": 0, "max": "1", "base": { "path": "ValueSet.compose", "min": 0, "max": "1" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.compose.id", "path": "ValueSet.compose.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.compose.extension", "path": "ValueSet.compose.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.compose.modifierExtension", "path": "ValueSet.compose.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "ValueSet.compose.lockedDate", "path": "ValueSet.compose.lockedDate", "comment": "With a defined lockedDate the value set is considered \"Locked\". Otherwise, the value set may have different expansions as underlying code systems and/or value sets evolve. The interpretation of lockedDate is often dependent on the context - e.g. a SNOMED CT derived value set with a lockedDate will have a different expansion in USA than in UK. If a value set specifies a version for include and exclude statements, and also specifies a locked date, the specified versions need to be available that date, or the value set will not be usable.", "min": 0, "max": "1", "base": { "path": "ValueSet.compose.lockedDate", "min": 0, "max": "1" }, "type": [ { "code": "date" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ValueSet.compose.inactive", "path": "ValueSet.compose.inactive", "comment": "Note that in the FHIR terminology framework, \"deprecated\" does not mean inactive, but in some code systems, e.g. LOINC, \"deprecated\" does mean inactive. Code systems should define what codes are considered to be inactive. If this is not clearly defined (including in the FHIR code system resource), then all codes are assumed to be active.\n\nThe Value Set Definition specification defines an ActiveOnly element, which is the reverse of this element e.g. (ValueSet.compose.inactive=FALSE) is the same as (VSD.ActiveOnly=TRUE).", "min": 0, "max": "1", "base": { "path": "ValueSet.compose.inactive", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ValueSet.compose.include", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-explicit-type-name", "valueString": "ConceptSet" } ], "path": "ValueSet.compose.include", "comment": "All the conditions in an include must be true. If a system is listed, all the codes from the system are listed. If one or more filters are listed, all of the filters must apply. If one or more value sets are listed, the codes must be in all the value sets. E.g. each include is 'include all the codes that meet all these conditions'.", "min": 1, "max": "*", "base": { "path": "ValueSet.compose.include", "min": 1, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "vsd-1", "severity": "error", "human": "A value set include/exclude SHALL have a value set or a system", "expression": "valueSet.exists() or system.exists()", "xpath": "exists(f:valueSet) or exists(f:system)" }, { "key": "vsd-2", "severity": "error", "human": "A value set with concepts or filters SHALL include a system", "expression": "(concept.exists() or filter.exists()) implies system.exists()", "xpath": "not(exists(f:concept) or exists(f:filter)) or exists(f:system)" }, { "key": "vsd-3", "severity": "error", "human": "Cannot have both concept and filter", "expression": "concept.empty() or filter.empty()", "xpath": "not(exists(f:concept)) or not(exists(f:filter))" } ], "isModifier": false, "isSummary": true }, { "id": "ValueSet.compose.include.id", "path": "ValueSet.compose.include.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.compose.include.extension", "path": "ValueSet.compose.include.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.compose.include.modifierExtension", "path": "ValueSet.compose.include.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "ValueSet.compose.include.system", "path": "ValueSet.compose.include.system", "comment": "If there are no codes or filters, the entire code system is included. Note that the set of codes that are included may contain abstract codes. See ''Coding.system'' for further documentation about the correct value for the system element.", "min": 0, "max": "1", "base": { "path": "ValueSet.compose.include.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "condition": [ "vsd-1", "vsd-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ValueSet.compose.include.version", "path": "ValueSet.compose.include.version", "comment": "This is used when selecting the descendants of a concept - they may change between versions. If no version is specified, then the exact contents of the value set might not be known until a context of use binds it to a particular version. The special value '*' means all versions; It is at server discretion regarding expansions and which versions must be supported.", "min": 0, "max": "1", "base": { "path": "ValueSet.compose.include.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ValueSet.compose.include.concept", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-explicit-type-name", "valueString": "ConceptReference" } ], "path": "ValueSet.compose.include.concept", "comment": "The list of concepts is considered ordered, though the order might not have any particular significance. Typically, the order of an expansion follows that defined in the compose element.", "min": 0, "max": "*", "base": { "path": "ValueSet.compose.include.concept", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "condition": [ "vsd-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.compose.include.concept.id", "path": "ValueSet.compose.include.concept.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.compose.include.concept.extension", "path": "ValueSet.compose.include.concept.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.compose.include.concept.modifierExtension", "path": "ValueSet.compose.include.concept.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "ValueSet.compose.include.concept.code", "path": "ValueSet.compose.include.concept.code", "comment": "Expressions are allowed if defined by the underlying code system.", "min": 1, "max": "1", "base": { "path": "ValueSet.compose.include.concept.code", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.compose.include.concept.display", "path": "ValueSet.compose.include.concept.display", "comment": "The value set resource allows for an alternative display to be specified for when this concept is used in this particular value set. See notes in the value set narrative about the correct use of this element.", "min": 0, "max": "1", "base": { "path": "ValueSet.compose.include.concept.display", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.compose.include.concept.designation", "path": "ValueSet.compose.include.concept.designation", "comment": "Concepts have both a ```display``` and an array of ```designation```. The display is equivalent to a special designation with an implied ```designation.use``` of \"primary code\" and a language equal to the [Resource Language](http://hl7.org/fhir/resource.html#language).", "min": 0, "max": "*", "base": { "path": "ValueSet.compose.include.concept.designation", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.compose.include.concept.designation.id", "path": "ValueSet.compose.include.concept.designation.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.compose.include.concept.designation.extension", "path": "ValueSet.compose.include.concept.designation.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.compose.include.concept.designation.modifierExtension", "path": "ValueSet.compose.include.concept.designation.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "ValueSet.compose.include.concept.designation.language", "path": "ValueSet.compose.include.concept.designation.language", "comment": "In the absence of a language, the resource language applies.", "min": 0, "max": "1", "base": { "path": "ValueSet.compose.include.concept.designation.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "ValueSet.compose.include.concept.designation.use", "path": "ValueSet.compose.include.concept.designation.use", "comment": "If no use is provided, the designation can be assumed to be suitable for general display to a human user.", "min": 0, "max": "1", "base": { "path": "ValueSet.compose.include.concept.designation.use", "min": 0, "max": "1" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ConceptDesignationUse" } ], "strength": "extensible", "description": "Details of how a designation would be used.", "valueSet": "http://hl7.org/fhir/ValueSet/designation-use" } }, { "id": "ValueSet.compose.include.concept.designation.value", "path": "ValueSet.compose.include.concept.designation.value", "min": 1, "max": "1", "base": { "path": "ValueSet.compose.include.concept.designation.value", "min": 1, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.compose.include.filter", "path": "ValueSet.compose.include.filter", "comment": "Selecting codes by specifying filters based on properties is only possible where the underlying code system defines appropriate properties. Note that in some cases, the underlying code system defines the logical concepts but not the literal codes for the concepts. In such cases, the literal definitions may be provided by a third party.", "min": 0, "max": "*", "base": { "path": "ValueSet.compose.include.filter", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "condition": [ "vsd-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ValueSet.compose.include.filter.id", "path": "ValueSet.compose.include.filter.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.compose.include.filter.extension", "path": "ValueSet.compose.include.filter.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.compose.include.filter.modifierExtension", "path": "ValueSet.compose.include.filter.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "ValueSet.compose.include.filter.property", "path": "ValueSet.compose.include.filter.property", "min": 1, "max": "1", "base": { "path": "ValueSet.compose.include.filter.property", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ValueSet.compose.include.filter.op", "path": "ValueSet.compose.include.filter.op", "comment": "In case filter.property represents a property of the system, the operation applies to the selected property. In case filter.property represents a filter of the system, the operation SHALL match one of the CodeSystem.filter.operator values.", "min": 1, "max": "1", "base": { "path": "ValueSet.compose.include.filter.op", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "FilterOperator" } ], "strength": "required", "description": "The kind of operation to perform as a part of a property based filter.", "valueSet": "http://hl7.org/fhir/ValueSet/filter-operator|4.0.1" } }, { "id": "ValueSet.compose.include.filter.value", "path": "ValueSet.compose.include.filter.value", "comment": "Use regex matching with care - full regex matching on every SNOMED CT term is prohibitive, for example.", "min": 1, "max": "1", "base": { "path": "ValueSet.compose.include.filter.value", "min": 1, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ValueSet.compose.include.valueSet", "path": "ValueSet.compose.include.valueSet", "comment": "The value set URI is either a logical reference to a defined value set such as a [SNOMED CT reference set](http://hl7.org/fhir/snomedct.html#implicit), or a direct reference to a value set definition using ValueSet.url. The reference might not refer to an actual FHIR ValueSet resource; in this case, whatever is referred to is an implicit definition of a value set that needs to be clear about how versions are resolved.", "min": 0, "max": "*", "base": { "path": "ValueSet.compose.include.valueSet", "min": 0, "max": "*" }, "type": [ { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/ValueSet" ] } ], "condition": [ "vsd-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ValueSet.compose.exclude", "path": "ValueSet.compose.exclude", "comment": "Usually this is used to selectively exclude codes that were included by subsumption in the inclusions. Any display names specified for the codes are ignored.", "min": 0, "max": "*", "base": { "path": "ValueSet.compose.exclude", "min": 0, "max": "*" }, "contentReference": "#ValueSet.compose.include", "condition": [ "vsd-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.expansion", "path": "ValueSet.expansion", "comment": "Expansion is performed to produce a collection of codes that are ready to use for data entry or validation. Value set expansions are always considered to be stateless - they are a record of the set of codes in the value set at a point in time under a given set of conditions, and are not subject to ongoing maintenance.\n\nExpansion.parameter is a simplified list of parameters - a subset of the features of the [Parameters](http://hl7.org/fhir/parameters.html) resource.", "min": 0, "max": "1", "base": { "path": "ValueSet.expansion", "min": 0, "max": "1" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.expansion.id", "path": "ValueSet.expansion.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.expansion.extension", "path": "ValueSet.expansion.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.expansion.modifierExtension", "path": "ValueSet.expansion.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "ValueSet.expansion.identifier", "path": "ValueSet.expansion.identifier", "comment": "Typically, this uri is a UUID (e.g. urn:uuid:8230ff20-c97a-4167-a59d-dc2cb9df16dd).", "min": 0, "max": "1", "base": { "path": "ValueSet.expansion.identifier", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.expansion.timestamp", "path": "ValueSet.expansion.timestamp", "comment": "This SHOULD be a fully populated instant, but in some circumstances, value sets are expanded by hand, and the expansion is published without that precision.", "min": 1, "max": "1", "base": { "path": "ValueSet.expansion.timestamp", "min": 1, "max": "1" }, "type": [ { "code": "dateTime" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.expansion.total", "path": "ValueSet.expansion.total", "comment": "Paging only applies to flat expansions.", "min": 0, "max": "1", "base": { "path": "ValueSet.expansion.total", "min": 0, "max": "1" }, "type": [ { "code": "integer" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.expansion.offset", "path": "ValueSet.expansion.offset", "comment": "Paging only applies to flat expansions. If a filter is applied, the count is the number of concepts that matched the filter, not the number of concepts in an unfiltered view of the expansion.", "min": 0, "max": "1", "base": { "path": "ValueSet.expansion.offset", "min": 0, "max": "1" }, "type": [ { "code": "integer" } ], "meaningWhenMissing": "Paging is not being used", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.expansion.parameter", "path": "ValueSet.expansion.parameter", "comment": "The server decides which parameters to include here, but at a minimum, the list SHOULD include all of the parameters that affect the $expand operation. If the expansion will be persisted all of these parameters SHALL be included. If the codeSystem on the server has a specified version then this version SHALL be provided as a parameter in the expansion (note that not all code systems have a version).", "min": 0, "max": "*", "base": { "path": "ValueSet.expansion.parameter", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.expansion.parameter.id", "path": "ValueSet.expansion.parameter.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.expansion.parameter.extension", "path": "ValueSet.expansion.parameter.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.expansion.parameter.modifierExtension", "path": "ValueSet.expansion.parameter.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "ValueSet.expansion.parameter.name", "path": "ValueSet.expansion.parameter.name", "comment": "The names are assigned at the discretion of the server.", "min": 1, "max": "1", "base": { "path": "ValueSet.expansion.parameter.name", "min": 1, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.expansion.parameter.value[x]", "path": "ValueSet.expansion.parameter.value[x]", "min": 0, "max": "1", "base": { "path": "ValueSet.expansion.parameter.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "string" }, { "code": "boolean" }, { "code": "integer" }, { "code": "decimal" }, { "code": "uri" }, { "code": "code" }, { "code": "dateTime" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.expansion.contains", "path": "ValueSet.expansion.contains", "min": 0, "max": "*", "base": { "path": "ValueSet.expansion.contains", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "vsd-6", "severity": "error", "human": "SHALL have a code or a display", "expression": "code.exists() or display.exists()", "xpath": "exists(f:code) or exists(f:display)" }, { "key": "vsd-9", "severity": "error", "human": "Must have a code if not abstract", "expression": "code.exists() or abstract = true", "xpath": "exists(f:code) or (f:abstract/@value = true())" }, { "key": "vsd-10", "severity": "error", "human": "Must have a system if a code is present", "expression": "code.empty() or system.exists()", "xpath": "exists(f:system) or not(exists(f:code))" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.expansion.contains.id", "path": "ValueSet.expansion.contains.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.expansion.contains.extension", "path": "ValueSet.expansion.contains.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.expansion.contains.modifierExtension", "path": "ValueSet.expansion.contains.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "ValueSet.expansion.contains.system", "path": "ValueSet.expansion.contains.system", "min": 0, "max": "1", "base": { "path": "ValueSet.expansion.contains.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.expansion.contains.abstract", "path": "ValueSet.expansion.contains.abstract", "comment": "This should not be understood to exclude its use for searching (e.g. by subsumption testing). The client should know whether it is appropriate for the user to select an abstract code or not.", "min": 0, "max": "1", "base": { "path": "ValueSet.expansion.contains.abstract", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "meaningWhenMissing": "If this is not populated, systems can assume that the concept it not abstract. This SHALL always be populated for abstract concepts", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.expansion.contains.inactive", "path": "ValueSet.expansion.contains.inactive", "comment": "This should only have a value if the concept is inactive.", "min": 0, "max": "1", "base": { "path": "ValueSet.expansion.contains.inactive", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.expansion.contains.version", "path": "ValueSet.expansion.contains.version", "comment": "The exact value of the version string is specified by the system from which the code is derived.", "min": 0, "max": "1", "base": { "path": "ValueSet.expansion.contains.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.expansion.contains.code", "path": "ValueSet.expansion.contains.code", "min": 0, "max": "1", "base": { "path": "ValueSet.expansion.contains.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "condition": [ "vsd-6" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.expansion.contains.display", "path": "ValueSet.expansion.contains.display", "min": 0, "max": "1", "base": { "path": "ValueSet.expansion.contains.display", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "condition": [ "vsd-6" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.expansion.contains.designation", "path": "ValueSet.expansion.contains.designation", "comment": "The designations provided must be based on the value set and code system definitions.", "min": 0, "max": "*", "base": { "path": "ValueSet.expansion.contains.designation", "min": 0, "max": "*" }, "contentReference": "#ValueSet.compose.include.concept.designation", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ValueSet.expansion.contains.contains", "path": "ValueSet.expansion.contains.contains", "comment": "If the expansion uses this element, there is no implication about the logical relationship between them, and the structure cannot be used for logical inferencing. The structure exists to provide navigational assistance for helping human users to locate codes in the expansion.", "min": 0, "max": "*", "base": { "path": "ValueSet.expansion.contains.contains", "min": 0, "max": "*" }, "contentReference": "#ValueSet.expansion.contains", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "ValueSet", "path": "ValueSet", "min": 1, "max": "1" }, { "id": "ValueSet.url", "path": "ValueSet.url", "min": 1, "max": "1", "type": [ { "code": "uri" } ] }, { "id": "ValueSet.version", "path": "ValueSet.version", "min": 1, "max": "1", "type": [ { "code": "string" } ] }, { "id": "ValueSet.name", "path": "ValueSet.name", "min": 1, "max": "1", "type": [ { "code": "string" } ] }, { "id": "ValueSet.status", "path": "ValueSet.status", "min": 1, "max": "1", "type": [ { "code": "code" } ] }, { "id": "ValueSet.experimental", "path": "ValueSet.experimental", "min": 1, "max": "1", "type": [ { "code": "boolean" } ] }, { "id": "ValueSet.publisher", "path": "ValueSet.publisher", "min": 1, "max": "1", "type": [ { "code": "string" } ] }, { "id": "ValueSet.description", "path": "ValueSet.description", "min": 1, "max": "1", "type": [ { "code": "markdown" } ] } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/picoelement", "resource": { "resourceType": "StructureDefinition", "id": "picoelement", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 0 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "cds" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/picoelement", "version": "4.0.1", "name": "PICO Element Profile", "status": "draft", "experimental": false, "date": "2018-10-31", "purpose": "Need to be able to define and reuse the definition of individual elements of a research question.", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "EvidenceVariable", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/EvidenceVariable", "derivation": "constraint", "snapshot": { "element": [ { "id": "EvidenceVariable", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-display-hint", "valueString": "0;0" } ], "path": "EvidenceVariable", "comment": "PICO stands for Population (the population within which exposures are being compared), Intervention (the conditional state or exposure state being described for its effect on outcomes), Comparison (the alternative conditional state or alternative exposure state being compared against), and Outcome (the result or effect of the intervention in the population).", "min": 0, "max": "*", "base": { "path": "EvidenceVariable", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "evv-0", "severity": "warning", "human": "Name should be usable as an identifier for the module by machine processing applications such as code generation", "expression": "name.matches('[A-Z]([A-Za-z0-9_]){0,254}')", "xpath": "not(exists(f:name/@value)) or matches(f:name/@value, '[A-Z]([A-Za-z0-9_]){0,254}')", "source": "http://hl7.org/fhir/StructureDefinition/EvidenceVariable" } ], "isModifier": false, "isSummary": false }, { "id": "EvidenceVariable.id", "path": "EvidenceVariable.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "EvidenceVariable.meta", "path": "EvidenceVariable.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "EvidenceVariable.implicitRules", "path": "EvidenceVariable.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "EvidenceVariable.language", "path": "EvidenceVariable.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "EvidenceVariable.text", "path": "EvidenceVariable.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "EvidenceVariable.contained", "path": "EvidenceVariable.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "EvidenceVariable.extension", "path": "EvidenceVariable.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "EvidenceVariable.modifierExtension", "path": "EvidenceVariable.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "EvidenceVariable.url", "path": "EvidenceVariable.url", "comment": "Can be a urn:uuid: or a urn:oid: but real http: addresses are preferred. Multiple instances may share the same URL if they have a distinct version.\n\nThe determination of when to create a new version of a resource (same url, new version) vs. defining a new artifact is up to the author. Considerations for making this decision are found in [Technical and Business Versions](http://hl7.org/fhir/resource.html#versions). \n\nIn some cases, the resource can no longer be found at the stated url, but the url itself cannot change. Implementations can use the [meta.source](http://hl7.org/fhir/resource.html#meta) element to indicate where the current master source of the resource can be found.", "min": 0, "max": "1", "base": { "path": "EvidenceVariable.url", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "EvidenceVariable.identifier", "path": "EvidenceVariable.identifier", "comment": "Typically, this is used for identifiers that can go in an HL7 V3 II (instance identifier) data type, and can then identify this evidence variable outside of FHIR, where it is not possible to use the logical URI.", "min": 0, "max": "*", "base": { "path": "EvidenceVariable.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "EvidenceVariable.version", "path": "EvidenceVariable.version", "comment": "There may be different evidence variable instances that have the same identifier but different versions. The version can be appended to the url in a reference to allow a reference to a particular business version of the evidence variable with the format [url]|[version].", "min": 0, "max": "1", "base": { "path": "EvidenceVariable.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "EvidenceVariable.name", "path": "EvidenceVariable.name", "comment": "The name is not expected to be globally unique. The name should be a simple alphanumeric type name to ensure that it is machine-processing friendly.", "min": 0, "max": "1", "base": { "path": "EvidenceVariable.name", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "condition": [ "inv-0" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "EvidenceVariable.title", "path": "EvidenceVariable.title", "comment": "This name does not need to be machine-processing friendly and may contain punctuation, white-space, etc.", "min": 0, "max": "1", "base": { "path": "EvidenceVariable.title", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "EvidenceVariable.shortTitle", "path": "EvidenceVariable.shortTitle", "min": 0, "max": "1", "base": { "path": "EvidenceVariable.shortTitle", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "EvidenceVariable.subtitle", "path": "EvidenceVariable.subtitle", "min": 0, "max": "1", "base": { "path": "EvidenceVariable.subtitle", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "EvidenceVariable.status", "path": "EvidenceVariable.status", "comment": "Allows filtering of evidence variables that are appropriate for use versus not.", "min": 1, "max": "1", "base": { "path": "EvidenceVariable.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This is labeled as \"Is Modifier\" because applications should not use a retired {{title}} without due consideration", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "PublicationStatus" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "required", "description": "The lifecycle status of an artifact.", "valueSet": "http://hl7.org/fhir/ValueSet/publication-status|4.0.1" } }, { "id": "EvidenceVariable.date", "path": "EvidenceVariable.date", "comment": "Note that this is not the same as the resource last-modified-date, since the resource may be a secondary representation of the evidence variable. Additional specific dates may be added as extensions or be found by consulting Provenances associated with past versions of the resource.", "min": 0, "max": "1", "base": { "path": "EvidenceVariable.date", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "EvidenceVariable.publisher", "path": "EvidenceVariable.publisher", "comment": "Usually an organization but may be an individual. The publisher (or steward) of the evidence variable is the organization or individual primarily responsible for the maintenance and upkeep of the evidence variable. This is not necessarily the same individual or organization that developed and initially authored the content. The publisher is the primary point of contact for questions or issues with the evidence variable. This item SHOULD be populated unless the information is available from context.", "min": 0, "max": "1", "base": { "path": "EvidenceVariable.publisher", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "EvidenceVariable.contact", "path": "EvidenceVariable.contact", "comment": "May be a web site, an email address, a telephone number, etc.", "min": 0, "max": "*", "base": { "path": "EvidenceVariable.contact", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "EvidenceVariable.description", "path": "EvidenceVariable.description", "comment": "This description can be used to capture details such as why the evidence variable was built, comments about misuse, instructions for clinical use and interpretation, literature references, examples from the paper world, etc. It is not a rendering of the evidence variable as conveyed in the 'text' field of the resource itself. This item SHOULD be populated unless the information is available from context (e.g. the language of the evidence variable is presumed to be the predominant language in the place the evidence variable was created).", "min": 0, "max": "1", "base": { "path": "EvidenceVariable.description", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "EvidenceVariable.note", "path": "EvidenceVariable.note", "min": 0, "max": "*", "base": { "path": "EvidenceVariable.note", "min": 0, "max": "*" }, "type": [ { "code": "Annotation" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "EvidenceVariable.useContext", "path": "EvidenceVariable.useContext", "comment": "When multiple useContexts are specified, there is no expectation that all or any of the contexts apply.", "min": 0, "max": "*", "base": { "path": "EvidenceVariable.useContext", "min": 0, "max": "*" }, "type": [ { "code": "UsageContext" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "EvidenceVariable.jurisdiction", "path": "EvidenceVariable.jurisdiction", "comment": "It may be possible for the evidence variable to be used in jurisdictions other than those for which it was originally designed or intended.", "min": 0, "max": "*", "base": { "path": "EvidenceVariable.jurisdiction", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Jurisdiction" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "extensible", "description": "Countries and regions within which this artifact is targeted for use.", "valueSet": "http://hl7.org/fhir/ValueSet/jurisdiction" } }, { "id": "EvidenceVariable.copyright", "path": "EvidenceVariable.copyright", "min": 0, "max": "1", "base": { "path": "EvidenceVariable.copyright", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "EvidenceVariable.approvalDate", "path": "EvidenceVariable.approvalDate", "comment": "The 'date' element may be more recent than the approval date because of minor changes or editorial corrections.", "min": 0, "max": "1", "base": { "path": "EvidenceVariable.approvalDate", "min": 0, "max": "1" }, "type": [ { "code": "date" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "EvidenceVariable.lastReviewDate", "path": "EvidenceVariable.lastReviewDate", "comment": "If specified, this date follows the original approval date.", "min": 0, "max": "1", "base": { "path": "EvidenceVariable.lastReviewDate", "min": 0, "max": "1" }, "type": [ { "code": "date" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "EvidenceVariable.effectivePeriod", "path": "EvidenceVariable.effectivePeriod", "comment": "The effective period for a evidence variable determines when the content is applicable for usage and is independent of publication and review dates. For example, a measure intended to be used for the year 2016 might be published in 2015.", "min": 0, "max": "1", "base": { "path": "EvidenceVariable.effectivePeriod", "min": 0, "max": "1" }, "type": [ { "code": "Period" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "EvidenceVariable.topic", "path": "EvidenceVariable.topic", "min": 0, "max": "*", "base": { "path": "EvidenceVariable.topic", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DefinitionTopic" } ], "strength": "example", "description": "High-level categorization of the definition, used for searching, sorting, and filtering.", "valueSet": "http://hl7.org/fhir/ValueSet/definition-topic" } }, { "id": "EvidenceVariable.author", "path": "EvidenceVariable.author", "min": 0, "max": "*", "base": { "path": "EvidenceVariable.author", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "EvidenceVariable.editor", "path": "EvidenceVariable.editor", "min": 0, "max": "*", "base": { "path": "EvidenceVariable.editor", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "EvidenceVariable.reviewer", "path": "EvidenceVariable.reviewer", "min": 0, "max": "*", "base": { "path": "EvidenceVariable.reviewer", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "EvidenceVariable.endorser", "path": "EvidenceVariable.endorser", "min": 0, "max": "*", "base": { "path": "EvidenceVariable.endorser", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "EvidenceVariable.relatedArtifact", "path": "EvidenceVariable.relatedArtifact", "comment": "Each related artifact is either an attachment, or a reference to another resource, but not both.", "min": 0, "max": "*", "base": { "path": "EvidenceVariable.relatedArtifact", "min": 0, "max": "*" }, "type": [ { "code": "RelatedArtifact" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "EvidenceVariable.type", "path": "EvidenceVariable.type", "min": 0, "max": "1", "base": { "path": "EvidenceVariable.type", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "EvidenceVariableType" } ], "strength": "required", "description": "The possible types of variables for exposures or outcomes (E.g. Dichotomous, Continuous, Descriptive).", "valueSet": "http://hl7.org/fhir/ValueSet/variable-type|4.0.1" } }, { "id": "EvidenceVariable.characteristic", "path": "EvidenceVariable.characteristic", "comment": "Characteristics can be defined flexibly to accommodate different use cases for membership criteria, ranging from simple codes, all the way to using an expression language to express the criteria.", "min": 1, "max": "*", "base": { "path": "EvidenceVariable.characteristic", "min": 1, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "EvidenceVariable.characteristic.id", "path": "EvidenceVariable.characteristic.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "EvidenceVariable.characteristic.extension", "path": "EvidenceVariable.characteristic.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "EvidenceVariable.characteristic.modifierExtension", "path": "EvidenceVariable.characteristic.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "EvidenceVariable.characteristic.description", "path": "EvidenceVariable.characteristic.description", "min": 0, "max": "1", "base": { "path": "EvidenceVariable.characteristic.description", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "EvidenceVariable.characteristic.definition[x]", "path": "EvidenceVariable.characteristic.definition[x]", "min": 1, "max": "1", "base": { "path": "EvidenceVariable.characteristic.definition[x]", "min": 1, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Group" ] }, { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/ActivityDefinition" ] }, { "code": "CodeableConcept" }, { "code": "Expression" }, { "code": "DataRequirement" }, { "code": "TriggerDefinition" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "EvidenceVariable.characteristic.usageContext", "path": "EvidenceVariable.characteristic.usageContext", "min": 0, "max": "*", "base": { "path": "EvidenceVariable.characteristic.usageContext", "min": 0, "max": "*" }, "type": [ { "code": "UsageContext" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "EvidenceVariable.characteristic.exclude", "path": "EvidenceVariable.characteristic.exclude", "min": 0, "max": "1", "base": { "path": "EvidenceVariable.characteristic.exclude", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "meaningWhenMissing": "False", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "EvidenceVariable.characteristic.participantEffective[x]", "path": "EvidenceVariable.characteristic.participantEffective[x]", "min": 0, "max": "1", "base": { "path": "EvidenceVariable.characteristic.participantEffective[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" }, { "code": "Period" }, { "code": "Duration" }, { "code": "Timing" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "EvidenceVariable.characteristic.timeFromStart", "path": "EvidenceVariable.characteristic.timeFromStart", "min": 0, "max": "1", "base": { "path": "EvidenceVariable.characteristic.timeFromStart", "min": 0, "max": "1" }, "type": [ { "code": "Duration" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "EvidenceVariable.characteristic.groupMeasure", "path": "EvidenceVariable.characteristic.groupMeasure", "min": 0, "max": "1", "base": { "path": "EvidenceVariable.characteristic.groupMeasure", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GroupMeasure" } ], "strength": "required", "description": "Possible group measure aggregates (E.g. Mean, Median).", "valueSet": "http://hl7.org/fhir/ValueSet/group-measure|4.0.1" } } ] }, "differential": { "element": [ { "id": "EvidenceVariable", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-display-hint", "valueString": "0;0" } ], "path": "EvidenceVariable", "comment": "PICO stands for Population (the population within which exposures are being compared), Intervention (the conditional state or exposure state being described for its effect on outcomes), Comparison (the alternative conditional state or alternative exposure state being compared against), and Outcome (the result or effect of the intervention in the population).", "min": 0, "max": "*" }, { "id": "EvidenceVariable.identifier", "path": "EvidenceVariable.identifier", "comment": "Typically, this is used for identifiers that can go in an HL7 V3 II (instance identifier) data type, and can then identify this evidence variable outside of FHIR, where it is not possible to use the logical URI.", "min": 0, "max": "*", "type": [ { "code": "Identifier" } ], "isSummary": true }, { "id": "EvidenceVariable.title", "path": "EvidenceVariable.title", "comment": "This name does not need to be machine-processing friendly and may contain punctuation, white-space, etc.", "min": 0, "max": "1", "type": [ { "code": "string" } ], "isSummary": true }, { "id": "EvidenceVariable.shortTitle", "path": "EvidenceVariable.shortTitle", "min": 0, "max": "1", "type": [ { "code": "string" } ] }, { "id": "EvidenceVariable.date", "path": "EvidenceVariable.date", "comment": "Note that this is not the same as the resource last-modified-date, since the resource may be a secondary representation of the evidence variable. Additional specific dates may be added as extensions or be found by consulting Provenances associated with past versions of the resource.", "min": 0, "max": "1", "type": [ { "code": "dateTime" } ], "isSummary": true }, { "id": "EvidenceVariable.description", "path": "EvidenceVariable.description", "comment": "This description can be used to capture details such as why the evidence variable was built, comments about misuse, instructions for clinical use and interpretation, literature references, examples from the paper world, etc. It is not a rendering of the evidence variable as conveyed in the 'text' field of the resource itself. This item SHOULD be populated unless the information is available from context (e.g. the language of the evidence variable is presumed to be the predominant language in the place the evidence variable was created).", "min": 0, "max": "1", "type": [ { "code": "markdown" } ] }, { "id": "EvidenceVariable.note", "path": "EvidenceVariable.note", "min": 0, "max": "*", "type": [ { "code": "Annotation" } ] }, { "id": "EvidenceVariable.type", "path": "EvidenceVariable.type", "min": 0, "max": "1", "type": [ { "code": "code" } ] }, { "id": "EvidenceVariable.characteristic", "path": "EvidenceVariable.characteristic", "comment": "Characteristics can be defined flexibly to accommodate different use cases for membership criteria, ranging from simple codes, all the way to using an expression language to express the criteria.", "min": 1, "max": "*" }, { "id": "EvidenceVariable.characteristic.description", "path": "EvidenceVariable.characteristic.description", "min": 0, "max": "1", "type": [ { "code": "string" } ] }, { "id": "EvidenceVariable.characteristic.definition[x]", "path": "EvidenceVariable.characteristic.definition[x]", "min": 1, "max": "1", "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Group" ] }, { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/ActivityDefinition" ] }, { "code": "CodeableConcept" }, { "code": "Expression" }, { "code": "DataRequirement" }, { "code": "TriggerDefinition" } ] }, { "id": "EvidenceVariable.characteristic.usageContext", "path": "EvidenceVariable.characteristic.usageContext", "min": 0, "max": "*", "type": [ { "code": "UsageContext" } ] }, { "id": "EvidenceVariable.characteristic.exclude", "path": "EvidenceVariable.characteristic.exclude", "min": 0, "max": "1", "type": [ { "code": "boolean" } ] }, { "id": "EvidenceVariable.characteristic.participantEffective[x]", "path": "EvidenceVariable.characteristic.participantEffective[x]", "min": 0, "max": "1", "type": [ { "code": "dateTime" }, { "code": "Period" }, { "code": "Duration" }, { "code": "Timing" } ] }, { "id": "EvidenceVariable.characteristic.timeFromStart", "path": "EvidenceVariable.characteristic.timeFromStart", "min": 0, "max": "1", "type": [ { "code": "Duration" } ] }, { "id": "EvidenceVariable.characteristic.groupMeasure", "path": "EvidenceVariable.characteristic.groupMeasure", "min": 0, "max": "1", "type": [ { "code": "code" } ] } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/shareablecodesystem", "resource": { "resourceType": "StructureDefinition", "id": "shareablecodesystem", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 5 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "vocab" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/shareablecodesystem", "version": "4.0.1", "name": "Shareable CodeSystem", "status": "draft", "experimental": false, "date": "2019-11-01T09:29:23+11:00", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "CodeSystem", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/CodeSystem", "derivation": "constraint", "snapshot": { "element": [ { "id": "CodeSystem", "path": "CodeSystem", "min": 1, "max": "1", "base": { "path": "CodeSystem", "min": 0, "max": "*" }, "constraint": [ { "key": "csd-0", "severity": "warning", "human": "Name should be usable as an identifier for the module by machine processing applications such as code generation", "expression": "name.matches('[A-Z]([A-Za-z0-9_]){0,254}')", "xpath": "not(exists(f:name/@value)) or matches(f:name/@value, '[A-Z]([A-Za-z0-9_]){0,254}')", "source": "http://hl7.org/fhir/StructureDefinition/CodeSystem" }, { "key": "csd-1", "severity": "error", "human": "Within a code system definition, all the codes SHALL be unique", "expression": "concept.code.combine($this.descendants().concept.code).isDistinct()", "xpath": "count(distinct-values(descendant::f:concept/f:code/@value))=count(descendant::f:concept)", "source": "http://hl7.org/fhir/StructureDefinition/CodeSystem" }, { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" } ], "isModifier": false, "isSummary": false }, { "id": "CodeSystem.id", "path": "CodeSystem.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "CodeSystem.meta", "path": "CodeSystem.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "CodeSystem.implicitRules", "path": "CodeSystem.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "CodeSystem.language", "path": "CodeSystem.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "CodeSystem.text", "path": "CodeSystem.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "CodeSystem.contained", "path": "CodeSystem.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "CodeSystem.extension", "path": "CodeSystem.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "CodeSystem.modifierExtension", "path": "CodeSystem.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "CodeSystem.url", "path": "CodeSystem.url", "comment": "Can be a urn:uuid: or a urn:oid: but real http: addresses are preferred. Multiple instances may share the same URL if they have a distinct version.\n\nThe determination of when to create a new version of a resource (same url, new version) vs. defining a new artifact is up to the author. Considerations for making this decision are found in [Technical and Business Versions](http://hl7.org/fhir/resource.html#versions). \n\nIn some cases, the resource can no longer be found at the stated url, but the url itself cannot change. Implementations can use the [meta.source](http://hl7.org/fhir/resource.html#meta) element to indicate where the current master source of the resource can be found.", "min": 1, "max": "1", "base": { "path": "CodeSystem.url", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "CodeSystem.identifier", "path": "CodeSystem.identifier", "comment": "Typically, this is used for identifiers that can go in an HL7 V3 II (instance identifier) data type, and can then identify this code system outside of FHIR, where it is not possible to use the logical URI. Note that HL7 defines at least three identifiers for many of its code systems - the FHIR canonical URL, the OID and the V2 Table 0396 mnemonic code.", "min": 0, "max": "*", "base": { "path": "CodeSystem.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "CodeSystem.version", "path": "CodeSystem.version", "comment": "There may be different code system instances that have the same identifier but different versions. The version can be appended to the url in a reference to allow a reference to a particular business version of the code system with the format [url]|[version].", "min": 1, "max": "1", "base": { "path": "CodeSystem.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "CodeSystem.name", "path": "CodeSystem.name", "comment": "The name is not expected to be globally unique. The name should be a simple alphanumeric type name to ensure that it is machine-processing friendly.", "min": 1, "max": "1", "base": { "path": "CodeSystem.name", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "condition": [ "inv-0" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "CodeSystem.title", "path": "CodeSystem.title", "comment": "This name does not need to be machine-processing friendly and may contain punctuation, white-space, etc.", "min": 0, "max": "1", "base": { "path": "CodeSystem.title", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "CodeSystem.status", "path": "CodeSystem.status", "comment": "Allows filtering of code systems that are appropriate for use versus not.", "min": 1, "max": "1", "base": { "path": "CodeSystem.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This is labeled as \"Is Modifier\" because applications should not use a retired {{title}} without due consideration", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "PublicationStatus" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "required", "description": "The lifecycle status of an artifact.", "valueSet": "http://hl7.org/fhir/ValueSet/publication-status|4.0.1" } }, { "id": "CodeSystem.experimental", "path": "CodeSystem.experimental", "comment": "Allows filtering of code systems that are appropriate for use versus not.", "min": 1, "max": "1", "base": { "path": "CodeSystem.experimental", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "CodeSystem.date", "path": "CodeSystem.date", "comment": "Note that this is not the same as the resource last-modified-date, since the resource may be a secondary representation of the code system. Additional specific dates may be added as extensions or be found by consulting Provenances associated with past versions of the resource.", "min": 0, "max": "1", "base": { "path": "CodeSystem.date", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "CodeSystem.publisher", "path": "CodeSystem.publisher", "comment": "Usually an organization but may be an individual. The publisher (or steward) of the code system is the organization or individual primarily responsible for the maintenance and upkeep of the code system. This is not necessarily the same individual or organization that developed and initially authored the content. The publisher is the primary point of contact for questions or issues with the code system. This item SHOULD be populated unless the information is available from context.", "min": 1, "max": "1", "base": { "path": "CodeSystem.publisher", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "CodeSystem.contact", "path": "CodeSystem.contact", "comment": "May be a web site, an email address, a telephone number, etc.", "min": 0, "max": "*", "base": { "path": "CodeSystem.contact", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "CodeSystem.description", "path": "CodeSystem.description", "comment": "This description can be used to capture details such as why the code system was built, comments about misuse, instructions for clinical use and interpretation, literature references, examples from the paper world, etc. It is not a rendering of the code system as conveyed in the 'text' field of the resource itself. This item SHOULD be populated unless the information is available from context (e.g. the language of the code system is presumed to be the predominant language in the place the code system was created).", "min": 1, "max": "1", "base": { "path": "CodeSystem.description", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "CodeSystem.useContext", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "path": "CodeSystem.useContext", "comment": "When multiple useContexts are specified, there is no expectation that all or any of the contexts apply.", "min": 0, "max": "*", "base": { "path": "CodeSystem.useContext", "min": 0, "max": "*" }, "type": [ { "code": "UsageContext" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "CodeSystem.jurisdiction", "path": "CodeSystem.jurisdiction", "comment": "It may be possible for the code system to be used in jurisdictions other than those for which it was originally designed or intended.", "min": 0, "max": "*", "base": { "path": "CodeSystem.jurisdiction", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Jurisdiction" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "extensible", "description": "Countries and regions within which this artifact is targeted for use.", "valueSet": "http://hl7.org/fhir/ValueSet/jurisdiction" } }, { "id": "CodeSystem.purpose", "path": "CodeSystem.purpose", "comment": "This element does not describe the usage of the code system. Instead, it provides traceability of ''why'' the resource is either needed or ''why'' it is defined as it is. This may be used to point to source materials or specifications that drove the structure of this code system.", "min": 0, "max": "1", "base": { "path": "CodeSystem.purpose", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "CodeSystem.copyright", "path": "CodeSystem.copyright", "comment": "... Sometimes, the copyright differs between the code system and the codes that are included. The copyright statement should clearly differentiate between these when required.", "min": 0, "max": "1", "base": { "path": "CodeSystem.copyright", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "CodeSystem.caseSensitive", "path": "CodeSystem.caseSensitive", "comment": "If this value is missing, then it is not specified whether a code system is case sensitive or not. When the rule is not known, Postel's law should be followed: produce codes with the correct case, and accept codes in any case. This element is primarily provided to support validation software.", "min": 0, "max": "1", "base": { "path": "CodeSystem.caseSensitive", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "CodeSystem.valueSet", "path": "CodeSystem.valueSet", "comment": "The definition of the value set SHALL include all codes from this code system and only codes from this code system, and it SHALL be immutable.", "min": 0, "max": "1", "base": { "path": "CodeSystem.valueSet", "min": 0, "max": "1" }, "type": [ { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/ValueSet" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "CodeSystem.hierarchyMeaning", "path": "CodeSystem.hierarchyMeaning", "comment": "Note that other representations might have a different hierarchy or none at all, and represent the information using properties.", "min": 0, "max": "1", "base": { "path": "CodeSystem.hierarchyMeaning", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "CodeSystemHierarchyMeaning" } ], "strength": "required", "description": "The meaning of the hierarchy of concepts in a code system.", "valueSet": "http://hl7.org/fhir/ValueSet/codesystem-hierarchy-meaning|4.0.1" } }, { "id": "CodeSystem.compositional", "path": "CodeSystem.compositional", "comment": "Note that the code system resource does not define what the compositional grammar is, only whether or not there is one.", "min": 0, "max": "1", "base": { "path": "CodeSystem.compositional", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "CodeSystem.versionNeeded", "path": "CodeSystem.versionNeeded", "comment": "Best practice is that code systems do not redefine concepts, or that if concepts are redefined, a new code system definition is created. But this is not always possible, so some code systems may be defined as 'versionNeeded'.\n\nMost code systems occasionally refine the displays defined for concepts between versions. Contexts in which the concept display values are validated may require that the version be specified for some code systems irrespective of the value of this property.", "min": 0, "max": "1", "base": { "path": "CodeSystem.versionNeeded", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "CodeSystem.content", "path": "CodeSystem.content", "min": 1, "max": "1", "base": { "path": "CodeSystem.content", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "CodeSystemContentMode" } ], "strength": "required", "description": "The extent of the content of the code system (the concepts and codes it defines) are represented in a code system resource.", "valueSet": "http://hl7.org/fhir/ValueSet/codesystem-content-mode|4.0.1" } }, { "id": "CodeSystem.supplements", "path": "CodeSystem.supplements", "comment": "The most common use of a code system supplement is to add additional language support.", "min": 0, "max": "1", "base": { "path": "CodeSystem.supplements", "min": 0, "max": "1" }, "type": [ { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/CodeSystem" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "CodeSystem.count", "path": "CodeSystem.count", "comment": "The count of concepts defined in this resource cannot be more than this value but may be less for several reasons - see the content element.", "min": 0, "max": "1", "base": { "path": "CodeSystem.count", "min": 0, "max": "1" }, "type": [ { "code": "unsignedInt" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "CodeSystem.filter", "path": "CodeSystem.filter", "comment": "Note that filters defined in code systems usually require custom code on the part of any terminology engine that will make them available for use in value set filters. For this reason, they are generally only seen in high value published terminologies.", "min": 0, "max": "*", "base": { "path": "CodeSystem.filter", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "CodeSystem.filter.id", "path": "CodeSystem.filter.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "CodeSystem.filter.extension", "path": "CodeSystem.filter.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "CodeSystem.filter.modifierExtension", "path": "CodeSystem.filter.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "CodeSystem.filter.code", "path": "CodeSystem.filter.code", "min": 1, "max": "1", "base": { "path": "CodeSystem.filter.code", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "CodeSystem.filter.description", "path": "CodeSystem.filter.description", "min": 0, "max": "1", "base": { "path": "CodeSystem.filter.description", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "CodeSystem.filter.operator", "path": "CodeSystem.filter.operator", "min": 1, "max": "*", "base": { "path": "CodeSystem.filter.operator", "min": 1, "max": "*" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "FilterOperator" } ], "strength": "required", "description": "The kind of operation to perform as a part of a property based filter.", "valueSet": "http://hl7.org/fhir/ValueSet/filter-operator|4.0.1" } }, { "id": "CodeSystem.filter.value", "path": "CodeSystem.filter.value", "min": 1, "max": "1", "base": { "path": "CodeSystem.filter.value", "min": 1, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "CodeSystem.property", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-explicit-type-name", "valueString": "Property" } ], "path": "CodeSystem.property", "min": 0, "max": "*", "base": { "path": "CodeSystem.property", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "CodeSystem.property.id", "path": "CodeSystem.property.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "CodeSystem.property.extension", "path": "CodeSystem.property.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "CodeSystem.property.modifierExtension", "path": "CodeSystem.property.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "CodeSystem.property.code", "path": "CodeSystem.property.code", "min": 1, "max": "1", "base": { "path": "CodeSystem.property.code", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "CodeSystem.property.uri", "path": "CodeSystem.property.uri", "min": 0, "max": "1", "base": { "path": "CodeSystem.property.uri", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "CodeSystem.property.description", "path": "CodeSystem.property.description", "min": 0, "max": "1", "base": { "path": "CodeSystem.property.description", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "CodeSystem.property.type", "path": "CodeSystem.property.type", "min": 1, "max": "1", "base": { "path": "CodeSystem.property.type", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "PropertyType" } ], "strength": "required", "description": "The type of a property value.", "valueSet": "http://hl7.org/fhir/ValueSet/concept-property-type|4.0.1" } }, { "id": "CodeSystem.concept", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-explicit-type-name", "valueString": "ConceptDefinition" } ], "path": "CodeSystem.concept", "comment": "If this is empty, it means that the code system resource does not represent the content of the code system.", "min": 1, "max": "*", "base": { "path": "CodeSystem.concept", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "CodeSystem.concept.id", "path": "CodeSystem.concept.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "CodeSystem.concept.extension", "path": "CodeSystem.concept.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "CodeSystem.concept.modifierExtension", "path": "CodeSystem.concept.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "CodeSystem.concept.code", "path": "CodeSystem.concept.code", "min": 1, "max": "1", "base": { "path": "CodeSystem.concept.code", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "CodeSystem.concept.display", "path": "CodeSystem.concept.display", "min": 0, "max": "1", "base": { "path": "CodeSystem.concept.display", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "CodeSystem.concept.definition", "path": "CodeSystem.concept.definition", "min": 0, "max": "1", "base": { "path": "CodeSystem.concept.definition", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "CodeSystem.concept.designation", "path": "CodeSystem.concept.designation", "comment": "Concepts have both a ```display``` and an array of ```designation```. The display is equivalent to a special designation with an implied ```designation.use``` of \"primary code\" and a language equal to the [Resource Language](http://hl7.org/fhir/resource.html#language).", "min": 0, "max": "*", "base": { "path": "CodeSystem.concept.designation", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "CodeSystem.concept.designation.id", "path": "CodeSystem.concept.designation.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "CodeSystem.concept.designation.extension", "path": "CodeSystem.concept.designation.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "CodeSystem.concept.designation.modifierExtension", "path": "CodeSystem.concept.designation.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "CodeSystem.concept.designation.language", "path": "CodeSystem.concept.designation.language", "comment": "In the absence of a language, the resource language applies.", "min": 0, "max": "1", "base": { "path": "CodeSystem.concept.designation.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "CodeSystem.concept.designation.use", "path": "CodeSystem.concept.designation.use", "comment": "If no use is provided, the designation can be assumed to be suitable for general display to a human user.", "min": 0, "max": "1", "base": { "path": "CodeSystem.concept.designation.use", "min": 0, "max": "1" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ConceptDesignationUse" } ], "strength": "extensible", "description": "Details of how a designation would be used.", "valueSet": "http://hl7.org/fhir/ValueSet/designation-use" } }, { "id": "CodeSystem.concept.designation.value", "path": "CodeSystem.concept.designation.value", "min": 1, "max": "1", "base": { "path": "CodeSystem.concept.designation.value", "min": 1, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "CodeSystem.concept.property", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-explicit-type-name", "valueString": "ConceptProperty" } ], "path": "CodeSystem.concept.property", "min": 0, "max": "*", "base": { "path": "CodeSystem.concept.property", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "CodeSystem.concept.property.id", "path": "CodeSystem.concept.property.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "CodeSystem.concept.property.extension", "path": "CodeSystem.concept.property.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "CodeSystem.concept.property.modifierExtension", "path": "CodeSystem.concept.property.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "CodeSystem.concept.property.code", "path": "CodeSystem.concept.property.code", "min": 1, "max": "1", "base": { "path": "CodeSystem.concept.property.code", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "CodeSystem.concept.property.value[x]", "path": "CodeSystem.concept.property.value[x]", "min": 1, "max": "1", "base": { "path": "CodeSystem.concept.property.value[x]", "min": 1, "max": "1" }, "type": [ { "code": "code" }, { "code": "Coding" }, { "code": "string" }, { "code": "integer" }, { "code": "boolean" }, { "code": "dateTime" }, { "code": "decimal" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "CodeSystem.concept.concept", "path": "CodeSystem.concept.concept", "min": 0, "max": "*", "base": { "path": "CodeSystem.concept.concept", "min": 0, "max": "*" }, "contentReference": "#CodeSystem.concept", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "CodeSystem", "path": "CodeSystem", "min": 1, "max": "1" }, { "id": "CodeSystem.url", "path": "CodeSystem.url", "min": 1, "max": "1", "type": [ { "code": "uri" } ] }, { "id": "CodeSystem.version", "path": "CodeSystem.version", "min": 1, "max": "1", "type": [ { "code": "string" } ] }, { "id": "CodeSystem.name", "path": "CodeSystem.name", "min": 1, "max": "1", "type": [ { "code": "string" } ] }, { "id": "CodeSystem.status", "path": "CodeSystem.status", "min": 1, "max": "1", "type": [ { "code": "code" } ] }, { "id": "CodeSystem.experimental", "path": "CodeSystem.experimental", "min": 1, "max": "1", "type": [ { "code": "boolean" } ] }, { "id": "CodeSystem.publisher", "path": "CodeSystem.publisher", "min": 1, "max": "1", "type": [ { "code": "string" } ] }, { "id": "CodeSystem.description", "path": "CodeSystem.description", "min": 1, "max": "1", "type": [ { "code": "markdown" } ] }, { "id": "CodeSystem.caseSensitive", "path": "CodeSystem.caseSensitive", "min": 0, "max": "1", "type": [ { "code": "boolean" } ] }, { "id": "CodeSystem.concept", "path": "CodeSystem.concept", "min": 1, "max": "*" }, { "id": "CodeSystem.concept.code", "path": "CodeSystem.concept.code", "min": 1, "max": "1", "type": [ { "code": "code" } ] }, { "id": "CodeSystem.concept.display", "path": "CodeSystem.concept.display", "min": 0, "max": "1", "type": [ { "code": "string" } ] }, { "id": "CodeSystem.concept.definition", "path": "CodeSystem.concept.definition", "min": 0, "max": "1", "type": [ { "code": "string" } ] }, { "id": "CodeSystem.concept.concept", "path": "CodeSystem.concept.concept", "min": 0, "max": "*", "contentReference": "#CodeSystem.concept" } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/cdshooksguidanceresponse", "resource": { "resourceType": "StructureDefinition", "id": "cdshooksguidanceresponse", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 2 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "cds" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/cdshooksguidanceresponse", "version": "4.0.1", "name": "CDS Hooks GuidanceResponse", "status": "draft", "experimental": false, "date": "2019-11-01T09:29:23+11:00", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "GuidanceResponse", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/GuidanceResponse", "derivation": "constraint", "snapshot": { "element": [ { "id": "GuidanceResponse", "path": "GuidanceResponse", "min": 1, "max": "1", "base": { "path": "GuidanceResponse", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" } ], "isModifier": false, "isSummary": false }, { "id": "GuidanceResponse.id", "path": "GuidanceResponse.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "GuidanceResponse.meta", "path": "GuidanceResponse.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "GuidanceResponse.implicitRules", "path": "GuidanceResponse.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "GuidanceResponse.language", "path": "GuidanceResponse.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "GuidanceResponse.text", "path": "GuidanceResponse.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "GuidanceResponse.contained", "path": "GuidanceResponse.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "GuidanceResponse.extension", "path": "GuidanceResponse.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "ordered": false, "rules": "open" }, "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "GuidanceResponse.extension:cdsHooksEndpoint", "path": "GuidanceResponse.extension", "sliceName": "cdsHooksEndpoint", "min": 1, "max": "1", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/cqf-cdsHooksEndpoint" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false }, { "id": "GuidanceResponse.modifierExtension", "path": "GuidanceResponse.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "GuidanceResponse.requestIdentifier", "path": "GuidanceResponse.requestIdentifier", "min": 1, "max": "1", "base": { "path": "GuidanceResponse.requestIdentifier", "min": 0, "max": "1" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "GuidanceResponse.identifier", "path": "GuidanceResponse.identifier", "min": 1, "max": "1", "base": { "path": "GuidanceResponse.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "GuidanceResponse.module[x]", "path": "GuidanceResponse.module[x]", "slicing": { "discriminator": [ { "type": "type", "path": "$this" } ], "ordered": false, "rules": "closed" }, "min": 1, "max": "1", "base": { "path": "GuidanceResponse.module[x]", "min": 1, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "GuidanceResponse.module[x]:moduleUri", "path": "GuidanceResponse.module[x]", "sliceName": "moduleUri", "min": 1, "max": "1", "base": { "path": "GuidanceResponse.module[x]", "min": 1, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "GuidanceResponse.status", "path": "GuidanceResponse.status", "comment": "This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid.", "min": 1, "max": "1", "base": { "path": "GuidanceResponse.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labelled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GuidanceResponseStatus" } ], "strength": "required", "description": "The status of a guidance response.", "valueSet": "http://hl7.org/fhir/ValueSet/guidance-response-status|4.0.1" } }, { "id": "GuidanceResponse.subject", "path": "GuidanceResponse.subject", "min": 0, "max": "1", "base": { "path": "GuidanceResponse.subject", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/Group" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "GuidanceResponse.encounter", "path": "GuidanceResponse.encounter", "comment": "This will typically be the encounter the event occurred within, but some activities may be initiated prior to or after the official copmletion of an encounter but still be tied to the context of the encounter.", "min": 0, "max": "1", "base": { "path": "GuidanceResponse.encounter", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Encounter" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "GuidanceResponse.occurrenceDateTime", "path": "GuidanceResponse.occurrenceDateTime", "min": 0, "max": "1", "base": { "path": "GuidanceResponse.occurrenceDateTime", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "GuidanceResponse.performer", "path": "GuidanceResponse.performer", "min": 0, "max": "1", "base": { "path": "GuidanceResponse.performer", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Device" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "GuidanceResponse.reasonCode", "path": "GuidanceResponse.reasonCode", "min": 0, "max": "*", "base": { "path": "GuidanceResponse.reasonCode", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "GuidanceResponse.reasonReference", "path": "GuidanceResponse.reasonReference", "min": 0, "max": "*", "base": { "path": "GuidanceResponse.reasonReference", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Condition", "http://hl7.org/fhir/StructureDefinition/Observation", "http://hl7.org/fhir/StructureDefinition/DiagnosticReport", "http://hl7.org/fhir/StructureDefinition/DocumentReference" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "GuidanceResponse.note", "path": "GuidanceResponse.note", "min": 0, "max": "*", "base": { "path": "GuidanceResponse.note", "min": 0, "max": "*" }, "type": [ { "code": "Annotation" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "GuidanceResponse.evaluationMessage", "path": "GuidanceResponse.evaluationMessage", "min": 0, "max": "*", "base": { "path": "GuidanceResponse.evaluationMessage", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/OperationOutcome" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "GuidanceResponse.outputParameters", "path": "GuidanceResponse.outputParameters", "min": 0, "max": "1", "base": { "path": "GuidanceResponse.outputParameters", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Parameters" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "GuidanceResponse.result", "path": "GuidanceResponse.result", "min": 0, "max": "1", "base": { "path": "GuidanceResponse.result", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/CarePlan", "http://hl7.org/fhir/StructureDefinition/RequestGroup" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "GuidanceResponse.dataRequirement", "path": "GuidanceResponse.dataRequirement", "min": 0, "max": "*", "base": { "path": "GuidanceResponse.dataRequirement", "min": 0, "max": "*" }, "type": [ { "code": "DataRequirement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "GuidanceResponse", "path": "GuidanceResponse", "min": 1, "max": "1" }, { "id": "GuidanceResponse.extension:cdsHooksEndpoint", "path": "GuidanceResponse.extension", "sliceName": "cdsHooksEndpoint", "min": 1, "max": "1", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/cqf-cdsHooksEndpoint" ] } ] }, { "id": "GuidanceResponse.requestIdentifier", "path": "GuidanceResponse.requestIdentifier", "min": 1, "max": "1" }, { "id": "GuidanceResponse.identifier", "path": "GuidanceResponse.identifier", "min": 1, "max": "1" }, { "id": "GuidanceResponse.moduleUri", "path": "GuidanceResponse.moduleUri", "min": 1, "max": "1" }, { "id": "GuidanceResponse.subject", "path": "GuidanceResponse.subject", "mustSupport": true }, { "id": "GuidanceResponse.occurrenceDateTime", "path": "GuidanceResponse.occurrenceDateTime", "mustSupport": true }, { "id": "GuidanceResponse.performer", "path": "GuidanceResponse.performer", "mustSupport": true }, { "id": "GuidanceResponse.result", "path": "GuidanceResponse.result", "mustSupport": true } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/devicemetricobservation", "resource": { "resourceType": "StructureDefinition", "id": "devicemetricobservation", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 5 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "oo" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/devicemetricobservation", "version": "4.0.1", "name": "Device Metric Observation Profile", "status": "draft", "experimental": false, "date": "2014-11-17", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Observation", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Observation", "derivation": "constraint", "snapshot": { "element": [ { "id": "Observation", "path": "Observation", "comment": "Used for simple observations such as device measurements, laboratory atomic results, vital signs, height, weight, smoking status, comments, etc. Other resources are used to provide context for observations such as laboratory reports, etc.", "min": 0, "max": "*", "base": { "path": "Observation", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "obs-6", "severity": "error", "human": "dataAbsentReason SHALL only be present if Observation.value[x] is not present", "expression": "dataAbsentReason.empty() or value.empty()", "xpath": "not(exists(f:dataAbsentReason)) or (not(exists(*[starts-with(local-name(.), 'value')])))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "obs-7", "severity": "error", "human": "If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present", "expression": "value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()", "xpath": "not(f:*[starts-with(local-name(.), 'value')] and (for $coding in f:code/f:coding return f:component/f:code/f:coding[f:code/@value=$coding/f:code/@value] [f:system/@value=$coding/f:system/@value]))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.id", "path": "Observation.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.meta", "path": "Observation.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.implicitRules", "path": "Observation.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Observation.language", "path": "Observation.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Observation.text", "path": "Observation.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.contained", "path": "Observation.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.extension", "path": "Observation.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.modifierExtension", "path": "Observation.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Observation.identifier", "path": "Observation.identifier", "min": 0, "max": "*", "base": { "path": "Observation.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.basedOn", "path": "Observation.basedOn", "min": 0, "max": "*", "base": { "path": "Observation.basedOn", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/CarePlan", "http://hl7.org/fhir/StructureDefinition/DeviceRequest", "http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation", "http://hl7.org/fhir/StructureDefinition/MedicationRequest", "http://hl7.org/fhir/StructureDefinition/NutritionOrder", "http://hl7.org/fhir/StructureDefinition/ServiceRequest" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.partOf", "path": "Observation.partOf", "comment": "To link an Observation to an Encounter use `encounter`. See the [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below for guidance on referencing another Observation.", "min": 0, "max": "*", "base": { "path": "Observation.partOf", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/MedicationAdministration", "http://hl7.org/fhir/StructureDefinition/MedicationDispense", "http://hl7.org/fhir/StructureDefinition/MedicationStatement", "http://hl7.org/fhir/StructureDefinition/Procedure", "http://hl7.org/fhir/StructureDefinition/Immunization", "http://hl7.org/fhir/StructureDefinition/ImagingStudy" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.status", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-display-hint", "valueString": "default: final" } ], "path": "Observation.status", "comment": "This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid.", "min": 1, "max": "1", "base": { "path": "Observation.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": true, "isModifierReason": "This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationStatus" } ], "strength": "required", "description": "Codes providing the status of an observation.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-status|4.0.1" } }, { "id": "Observation.category", "path": "Observation.category", "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 0, "max": "*", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.code", "path": "Observation.code", "comment": "*All* code-value and, if present, component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.", "min": 1, "max": "1", "base": { "path": "Observation.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCode" } ], "strength": "example", "description": "Codes identifying names of simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-codes" } }, { "id": "Observation.subject", "path": "Observation.subject", "comment": "One would expect this element to be a cardinality of 1..1. The only circumstance in which the subject can be missing is when the observation is made by a device that does not know the patient. In this case, the observation SHALL be matched to a patient through some context/channel matching technique, and at this point, the observation should be updated.", "min": 1, "max": "1", "base": { "path": "Observation.subject", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/Device" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.focus", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "path": "Observation.focus", "comment": "Typically, an observation is made about the subject - a patient, or group of patients, location, or device - and the distinction between the subject and what is directly measured for an observation is specified in the observation code itself ( e.g., \"Blood Glucose\") and does not need to be represented separately using this element. Use `specimen` if a reference to a specimen is required. If a code is required instead of a resource use either `bodysite` for bodysites or the standard extension [focusCode](http://hl7.org/fhir/extension-observation-focuscode.html).", "min": 0, "max": "*", "base": { "path": "Observation.focus", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.encounter", "path": "Observation.encounter", "comment": "This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests).", "min": 0, "max": "0", "base": { "path": "Observation.encounter", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Encounter" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": false, "isModifier": false, "isSummary": true }, { "id": "Observation.effective[x]", "path": "Observation.effective[x]", "slicing": { "discriminator": [ { "type": "type", "path": "$this" } ], "ordered": false, "rules": "closed" }, "comment": "At least a date should be present unless this observation is a historical report. For recording imprecise or \"fuzzy\" times (For example, a blood glucose measurement taken \"after breakfast\") use the [Timing](http://hl7.org/fhir/datatypes.html#timing) datatype which allow the measurement to be tied to regular life events.", "min": 0, "max": "1", "base": { "path": "Observation.effective[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.effective[x]:effectiveDateTime", "path": "Observation.effective[x]", "sliceName": "effectiveDateTime", "comment": "At least a date should be present unless this observation is a historical report. For recording imprecise or \"fuzzy\" times (For example, a blood glucose measurement taken \"after breakfast\") use the [Timing](http://hl7.org/fhir/datatypes.html#timing) datatype which allow the measurement to be tied to regular life events.", "min": 1, "max": "1", "base": { "path": "Observation.effective[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.issued", "path": "Observation.issued", "comment": "For Observations that don’t require review and verification, it may be the same as the [`lastUpdated` ](http://hl7.org/fhir/resource-definitions.html#Meta.lastUpdated) time of the resource itself. For Observations that do require review and verification for certain updates, it might not be the same as the `lastUpdated` time of the resource itself due to a non-clinically significant update that doesn’t require the new version to be reviewed and verified again.", "min": 0, "max": "0", "base": { "path": "Observation.issued", "min": 0, "max": "1" }, "type": [ { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": false, "isModifier": false, "isSummary": true }, { "id": "Observation.performer", "path": "Observation.performer", "min": 0, "max": "*", "base": { "path": "Observation.performer", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/CareTeam", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/RelatedPerson" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]", "path": "Observation.value[x]", "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" }, { "code": "CodeableConcept" }, { "code": "string" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "SampledData" }, { "code": "time" }, { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "obs-7" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.dataAbsentReason", "path": "Observation.dataAbsentReason", "comment": "Null or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"specimen unsatisfactory\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Note that an observation may only be reported if there are values to report. For example differential cell counts values may be reported only when > 0. Because of these options, use-case agreements are required to interpret general observations for null or exceptional values.", "min": 0, "max": "0", "base": { "path": "Observation.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": false, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.interpretation", "path": "Observation.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "1", "base": { "path": "Observation.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": false, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.note", "path": "Observation.note", "comment": "May include general statements about the observation, or statements about significant, unexpected or unreliable results values, or information about its source when relevant to its interpretation.", "min": 0, "max": "*", "base": { "path": "Observation.note", "min": 0, "max": "*" }, "type": [ { "code": "Annotation" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": false, "isModifier": false, "isSummary": false }, { "id": "Observation.bodySite", "path": "Observation.bodySite", "comment": "Only used if not implicit in code found in Observation.code. In many systems, this may be represented as a related observation instead of an inline component. \n\nIf the use case requires BodySite to be handled as a separate resource (e.g. to identify and track separately) then use the standard extension[ bodySite](http://hl7.org/fhir/extension-bodysite.html).", "min": 0, "max": "1", "base": { "path": "Observation.bodySite", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodySite" } ], "strength": "example", "description": "Codes describing anatomical locations. May include laterality.", "valueSet": "http://hl7.org/fhir/ValueSet/body-site" } }, { "id": "Observation.method", "path": "Observation.method", "comment": "Only used if not implicit in code for Observation.code.", "min": 0, "max": "1", "base": { "path": "Observation.method", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationMethod" } ], "strength": "example", "description": "Methods for simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-methods" } }, { "id": "Observation.specimen", "path": "Observation.specimen", "comment": "Should only be used if not implicit in code found in `Observation.code`. Observations are not made on specimens themselves; they are made on a subject, but in many cases by the means of a specimen. Note that although specimens are often involved, they are not always tracked and reported explicitly. Also note that observation resources may be used in contexts that track the specimen explicitly (e.g. Diagnostic Report).", "min": 0, "max": "0", "base": { "path": "Observation.specimen", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Specimen" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": false, "isModifier": false, "isSummary": false }, { "id": "Observation.device", "path": "Observation.device", "comment": "Note that this is not meant to represent a device involved in the transmission of the result, e.g., a gateway. Such devices may be documented using the Provenance resource where relevant.", "min": 1, "max": "1", "base": { "path": "Observation.device", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/DeviceMetric" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange", "path": "Observation.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "obs-3", "severity": "error", "human": "Must have at least a low or a high or text", "expression": "low.exists() or high.exists() or text.exists()", "xpath": "(exists(f:low) or exists(f:high)or exists(f:text))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.id", "path": "Observation.referenceRange.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.extension", "path": "Observation.referenceRange.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.modifierExtension", "path": "Observation.referenceRange.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.referenceRange.low", "path": "Observation.referenceRange.low", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.low", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.high", "path": "Observation.referenceRange.high", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.high", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.type", "path": "Observation.referenceRange.type", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal range is assumed.", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeMeaning" } ], "strength": "preferred", "description": "Code for the meaning of a reference range.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-meaning" } }, { "id": "Observation.referenceRange.appliesTo", "path": "Observation.referenceRange.appliesTo", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal population is assumed.", "min": 0, "max": "*", "base": { "path": "Observation.referenceRange.appliesTo", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeType" } ], "strength": "example", "description": "Codes identifying the population the reference range applies to.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-appliesto" } }, { "id": "Observation.referenceRange.age", "path": "Observation.referenceRange.age", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.age", "min": 0, "max": "1" }, "type": [ { "code": "Range" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.text", "path": "Observation.referenceRange.text", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.hasMember", "path": "Observation.hasMember", "comment": "When using this element, an observation will typically have either a value or a set of related resources, although both may be present in some cases. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below. Note that a system may calculate results from [QuestionnaireResponse](http://hl7.org/fhir/questionnaireresponse.html) into a final score and represent the score as an Observation.", "min": 0, "max": "*", "base": { "path": "Observation.hasMember", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Observation" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.derivedFrom", "path": "Observation.derivedFrom", "comment": "All the reference choices that are listed in this element can represent clinical observations and other measurements that may be the source for a derived value. The most common reference will be another Observation. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below.", "min": 0, "max": "*", "base": { "path": "Observation.derivedFrom", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Observation" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.component", "path": "Observation.component", "comment": "For a discussion on the ways Observations can be assembled in groups together see [Notes](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "*", "base": { "path": "Observation.component", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component.id", "path": "Observation.component.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.extension", "path": "Observation.component.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.modifierExtension", "path": "Observation.component.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.component.code", "path": "Observation.component.code", "comment": "*All* code-value and component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.", "min": 1, "max": "1", "base": { "path": "Observation.component.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCode" } ], "strength": "example", "description": "Codes identifying names of simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-codes" } }, { "id": "Observation.component.value[x]", "path": "Observation.component.value[x]", "comment": "Used when observation has a set of component observations. An observation may have both a value (e.g. an Apgar score) and component observations (the observations from which the Apgar score was derived). If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.component.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" }, { "code": "CodeableConcept" }, { "code": "string" }, { "code": "boolean" }, { "code": "integer" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "SampledData" }, { "code": "time" }, { "code": "dateTime" }, { "code": "Period" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component.dataAbsentReason", "path": "Observation.component.dataAbsentReason", "comment": "\"Null\" or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"test not done\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Because of these options, use-case agreements are required to interpret general observations for exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.component.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.component.interpretation", "path": "Observation.component.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.component.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.component.referenceRange", "path": "Observation.component.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.component.referenceRange", "min": 0, "max": "*" }, "contentReference": "#Observation.referenceRange", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "Observation", "path": "Observation", "min": 0, "max": "*" }, { "id": "Observation.identifier", "path": "Observation.identifier", "min": 0, "max": "*", "type": [ { "code": "Identifier" } ], "mustSupport": true }, { "id": "Observation.status", "path": "Observation.status", "min": 1, "max": "1", "type": [ { "code": "code" } ], "mustSupport": true }, { "id": "Observation.code", "path": "Observation.code", "min": 1, "max": "1", "type": [ { "code": "CodeableConcept" } ], "mustSupport": true }, { "id": "Observation.subject", "path": "Observation.subject", "min": 1, "max": "1", "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/Device" ] } ], "mustSupport": true }, { "id": "Observation.encounter", "path": "Observation.encounter", "min": 0, "max": "0", "mustSupport": false }, { "id": "Observation.effectiveDateTime", "path": "Observation.effectiveDateTime", "min": 1, "max": "1", "type": [ { "code": "dateTime" } ], "mustSupport": true }, { "id": "Observation.issued", "path": "Observation.issued", "min": 0, "max": "0", "type": [ { "code": "instant" } ], "mustSupport": false }, { "id": "Observation.value[x]", "path": "Observation.value[x]", "min": 0, "max": "1", "type": [ { "code": "Quantity" }, { "code": "CodeableConcept" }, { "code": "string" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "SampledData" }, { "code": "time" }, { "code": "dateTime" }, { "code": "Period" } ], "mustSupport": true }, { "id": "Observation.dataAbsentReason", "path": "Observation.dataAbsentReason", "min": 0, "max": "0", "type": [ { "code": "CodeableConcept" } ], "mustSupport": false }, { "id": "Observation.interpretation", "path": "Observation.interpretation", "min": 0, "max": "1", "type": [ { "code": "CodeableConcept" } ], "mustSupport": false }, { "id": "Observation.note", "path": "Observation.note", "min": 0, "max": "*", "type": [ { "code": "Annotation" } ], "mustSupport": false }, { "id": "Observation.bodySite", "path": "Observation.bodySite", "min": 0, "max": "1", "type": [ { "code": "CodeableConcept" } ], "mustSupport": true }, { "id": "Observation.method", "path": "Observation.method", "min": 0, "max": "1", "type": [ { "code": "CodeableConcept" } ], "mustSupport": true }, { "id": "Observation.specimen", "path": "Observation.specimen", "min": 0, "max": "0", "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Specimen" ] } ], "mustSupport": false }, { "id": "Observation.device", "path": "Observation.device", "min": 1, "max": "1", "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/DeviceMetric" ] } ], "mustSupport": true }, { "id": "Observation.referenceRange", "path": "Observation.referenceRange", "min": 0, "max": "1", "mustSupport": true }, { "id": "Observation.hasMember", "path": "Observation.hasMember", "min": 0, "max": "*", "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Observation" ] } ], "mustSupport": true }, { "id": "Observation.derivedFrom", "path": "Observation.derivedFrom", "min": 0, "max": "*", "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Observation" ] } ], "mustSupport": true } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/observation-genetics", "resource": { "resourceType": "StructureDefinition", "id": "observation-genetics", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 5 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "oo" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/observation-genetics", "version": "4.0.1", "name": "Observation-genetics", "status": "draft", "experimental": false, "date": "2016-03-14", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Observation", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Observation", "derivation": "constraint", "snapshot": { "element": [ { "id": "Observation", "path": "Observation", "comment": "Used for simple observations such as device measurements, laboratory atomic results, vital signs, height, weight, smoking status, comments, etc. Other resources are used to provide context for observations such as laboratory reports, etc.", "min": 0, "max": "*", "base": { "path": "Observation", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "obs-6", "severity": "error", "human": "dataAbsentReason SHALL only be present if Observation.value[x] is not present", "expression": "dataAbsentReason.empty() or value.empty()", "xpath": "not(exists(f:dataAbsentReason)) or (not(exists(*[starts-with(local-name(.), 'value')])))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "obs-7", "severity": "error", "human": "If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present", "expression": "value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()", "xpath": "not(f:*[starts-with(local-name(.), 'value')] and (for $coding in f:code/f:coding return f:component/f:code/f:coding[f:code/@value=$coding/f:code/@value] [f:system/@value=$coding/f:system/@value]))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.id", "path": "Observation.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.meta", "path": "Observation.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.implicitRules", "path": "Observation.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Observation.language", "path": "Observation.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Observation.text", "path": "Observation.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.contained", "path": "Observation.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.extension", "path": "Observation.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "ordered": false, "rules": "open" }, "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.extension:Gene", "path": "Observation.extension", "sliceName": "Gene", "comment": "Other systems or genes not defined in HGNC (e.g., BCR-ABL fusion gene) can be added by using a local extension.", "min": 0, "max": "1", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/observation-geneticsGene" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false }, { "id": "Observation.extension:DNARegionName", "path": "Observation.extension", "sliceName": "DNARegionName", "min": 0, "max": "1", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/observation-geneticsDNARegionName" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false }, { "id": "Observation.extension:CopyNumberEvent", "path": "Observation.extension", "sliceName": "CopyNumberEvent", "comment": "Loss of heterozygosity (LOH) is a functional variant whereby the sequence alteration causes a loss of function of one allele of a gene ([SO:0001786](http://www.sequenceontology.org/browser/current_svn/term/SO:0001786)).", "min": 0, "max": "1", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/observation-geneticsCopyNumberEvent" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false }, { "id": "Observation.extension:GenomicSourceClass", "path": "Observation.extension", "sliceName": "GenomicSourceClass", "min": 0, "max": "1", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/observation-geneticsGenomicSourceClass" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false }, { "id": "Observation.extension:Interpretation", "path": "Observation.extension", "sliceName": "Interpretation", "min": 0, "max": "1", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/observation-geneticsInterpretation" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false }, { "id": "Observation.extension:Variant", "path": "Observation.extension", "sliceName": "Variant", "min": 0, "max": "1", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/observation-geneticsVariant" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false }, { "id": "Observation.extension:AminoAcidChange", "path": "Observation.extension", "sliceName": "AminoAcidChange", "comment": "Loss of heterozygosity (LOH) is a functional variant whereby the sequence alteration causes a loss of function of one allele of a gene ([SO:0001786](http://www.sequenceontology.org/browser/current_svn/term/SO:0001786)).", "min": 0, "max": "1", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/observation-geneticsAminoAcidChange" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false }, { "id": "Observation.extension:Allele", "path": "Observation.extension", "sliceName": "Allele", "min": 0, "max": "1", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/observation-geneticsAllele" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false }, { "id": "Observation.extension:Ancestry", "path": "Observation.extension", "sliceName": "Ancestry", "min": 0, "max": "1", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/observation-geneticsAncestry" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false }, { "id": "Observation.extension:PhaseSet", "path": "Observation.extension", "sliceName": "PhaseSet", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/observation-geneticsPhaseSet" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false }, { "id": "Observation.modifierExtension", "path": "Observation.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Observation.identifier", "path": "Observation.identifier", "min": 0, "max": "*", "base": { "path": "Observation.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.basedOn", "path": "Observation.basedOn", "min": 0, "max": "*", "base": { "path": "Observation.basedOn", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/CarePlan", "http://hl7.org/fhir/StructureDefinition/DeviceRequest", "http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation", "http://hl7.org/fhir/StructureDefinition/MedicationRequest", "http://hl7.org/fhir/StructureDefinition/NutritionOrder", "http://hl7.org/fhir/StructureDefinition/ServiceRequest" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.partOf", "path": "Observation.partOf", "comment": "To link an Observation to an Encounter use `encounter`. See the [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below for guidance on referencing another Observation.", "min": 0, "max": "*", "base": { "path": "Observation.partOf", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/MedicationAdministration", "http://hl7.org/fhir/StructureDefinition/MedicationDispense", "http://hl7.org/fhir/StructureDefinition/MedicationStatement", "http://hl7.org/fhir/StructureDefinition/Procedure", "http://hl7.org/fhir/StructureDefinition/Immunization", "http://hl7.org/fhir/StructureDefinition/ImagingStudy" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.status", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-display-hint", "valueString": "default: final" } ], "path": "Observation.status", "comment": "This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid.", "min": 1, "max": "1", "base": { "path": "Observation.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationStatus" } ], "strength": "required", "description": "Codes providing the status of an observation.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-status|4.0.1" } }, { "id": "Observation.category", "path": "Observation.category", "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 0, "max": "*", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.code", "path": "Observation.code", "comment": "*All* code-value and, if present, component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.", "min": 1, "max": "1", "base": { "path": "Observation.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCode" } ], "strength": "example", "description": "Codes identifying names of simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-codes" } }, { "id": "Observation.subject", "path": "Observation.subject", "comment": "One would expect this element to be a cardinality of 1..1. The only circumstance in which the subject can be missing is when the observation is made by a device that does not know the patient. In this case, the observation SHALL be matched to a patient through some context/channel matching technique, and at this point, the observation should be updated.", "min": 0, "max": "1", "base": { "path": "Observation.subject", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/Group", "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/Location" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.focus", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "path": "Observation.focus", "comment": "Typically, an observation is made about the subject - a patient, or group of patients, location, or device - and the distinction between the subject and what is directly measured for an observation is specified in the observation code itself ( e.g., \"Blood Glucose\") and does not need to be represented separately using this element. Use `specimen` if a reference to a specimen is required. If a code is required instead of a resource use either `bodysite` for bodysites or the standard extension [focusCode](http://hl7.org/fhir/extension-observation-focuscode.html).", "min": 0, "max": "*", "base": { "path": "Observation.focus", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.encounter", "path": "Observation.encounter", "comment": "This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests).", "min": 0, "max": "1", "base": { "path": "Observation.encounter", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Encounter" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.effective[x]", "path": "Observation.effective[x]", "comment": "At least a date should be present unless this observation is a historical report. For recording imprecise or \"fuzzy\" times (For example, a blood glucose measurement taken \"after breakfast\") use the [Timing](http://hl7.org/fhir/datatypes.html#timing) datatype which allow the measurement to be tied to regular life events.", "min": 0, "max": "1", "base": { "path": "Observation.effective[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" }, { "code": "Period" }, { "code": "Timing" }, { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.issued", "path": "Observation.issued", "comment": "For Observations that don’t require review and verification, it may be the same as the [`lastUpdated` ](http://hl7.org/fhir/resource-definitions.html#Meta.lastUpdated) time of the resource itself. For Observations that do require review and verification for certain updates, it might not be the same as the `lastUpdated` time of the resource itself due to a non-clinically significant update that doesn’t require the new version to be reviewed and verified again.", "min": 0, "max": "1", "base": { "path": "Observation.issued", "min": 0, "max": "1" }, "type": [ { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.performer", "path": "Observation.performer", "min": 0, "max": "*", "base": { "path": "Observation.performer", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/CareTeam", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/RelatedPerson" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]", "path": "Observation.value[x]", "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" }, { "code": "CodeableConcept" }, { "code": "string" }, { "code": "boolean" }, { "code": "integer" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "SampledData" }, { "code": "time" }, { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "obs-7" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.dataAbsentReason", "path": "Observation.dataAbsentReason", "comment": "Null or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"specimen unsatisfactory\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Note that an observation may only be reported if there are values to report. For example differential cell counts values may be reported only when > 0. Because of these options, use-case agreements are required to interpret general observations for null or exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.interpretation", "path": "Observation.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.note", "path": "Observation.note", "comment": "May include general statements about the observation, or statements about significant, unexpected or unreliable results values, or information about its source when relevant to its interpretation.", "min": 0, "max": "*", "base": { "path": "Observation.note", "min": 0, "max": "*" }, "type": [ { "code": "Annotation" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.bodySite", "path": "Observation.bodySite", "comment": "Only used if not implicit in code found in Observation.code. In many systems, this may be represented as a related observation instead of an inline component. \n\nIf the use case requires BodySite to be handled as a separate resource (e.g. to identify and track separately) then use the standard extension[ bodySite](http://hl7.org/fhir/extension-bodysite.html).", "min": 0, "max": "1", "base": { "path": "Observation.bodySite", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodySite" } ], "strength": "example", "description": "Codes describing anatomical locations. May include laterality.", "valueSet": "http://hl7.org/fhir/ValueSet/body-site" } }, { "id": "Observation.method", "path": "Observation.method", "comment": "Only used if not implicit in code for Observation.code.", "min": 0, "max": "1", "base": { "path": "Observation.method", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationMethod" } ], "strength": "example", "description": "Methods for simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-methods" } }, { "id": "Observation.specimen", "path": "Observation.specimen", "comment": "Should only be used if not implicit in code found in `Observation.code`. Observations are not made on specimens themselves; they are made on a subject, but in many cases by the means of a specimen. Note that although specimens are often involved, they are not always tracked and reported explicitly. Also note that observation resources may be used in contexts that track the specimen explicitly (e.g. Diagnostic Report).", "min": 0, "max": "1", "base": { "path": "Observation.specimen", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Specimen" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.device", "path": "Observation.device", "comment": "Note that this is not meant to represent a device involved in the transmission of the result, e.g., a gateway. Such devices may be documented using the Provenance resource where relevant.", "min": 0, "max": "1", "base": { "path": "Observation.device", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/DeviceMetric" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange", "path": "Observation.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.referenceRange", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "obs-3", "severity": "error", "human": "Must have at least a low or a high or text", "expression": "low.exists() or high.exists() or text.exists()", "xpath": "(exists(f:low) or exists(f:high)or exists(f:text))" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.id", "path": "Observation.referenceRange.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.extension", "path": "Observation.referenceRange.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.modifierExtension", "path": "Observation.referenceRange.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.referenceRange.low", "path": "Observation.referenceRange.low", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.low", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.high", "path": "Observation.referenceRange.high", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.high", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.type", "path": "Observation.referenceRange.type", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal range is assumed.", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeMeaning" } ], "strength": "preferred", "description": "Code for the meaning of a reference range.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-meaning" } }, { "id": "Observation.referenceRange.appliesTo", "path": "Observation.referenceRange.appliesTo", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal population is assumed.", "min": 0, "max": "*", "base": { "path": "Observation.referenceRange.appliesTo", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeType" } ], "strength": "example", "description": "Codes identifying the population the reference range applies to.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-appliesto" } }, { "id": "Observation.referenceRange.age", "path": "Observation.referenceRange.age", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.age", "min": 0, "max": "1" }, "type": [ { "code": "Range" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.text", "path": "Observation.referenceRange.text", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.hasMember", "path": "Observation.hasMember", "comment": "When using this element, an observation will typically have either a value or a set of related resources, although both may be present in some cases. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below. Note that a system may calculate results from [QuestionnaireResponse](http://hl7.org/fhir/questionnaireresponse.html) into a final score and represent the score as an Observation.", "min": 0, "max": "*", "base": { "path": "Observation.hasMember", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Observation", "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.derivedFrom", "path": "Observation.derivedFrom", "comment": "All the reference choices that are listed in this element can represent clinical observations and other measurements that may be the source for a derived value. The most common reference will be another Observation. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below.", "min": 0, "max": "*", "base": { "path": "Observation.derivedFrom", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/DocumentReference", "http://hl7.org/fhir/StructureDefinition/ImagingStudy", "http://hl7.org/fhir/StructureDefinition/Media", "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/Observation", "http://hl7.org/fhir/StructureDefinition/MolecularSequence" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component", "path": "Observation.component", "comment": "For a discussion on the ways Observations can be assembled in groups together see [Notes](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "*", "base": { "path": "Observation.component", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component.id", "path": "Observation.component.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.extension", "path": "Observation.component.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.modifierExtension", "path": "Observation.component.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.component.code", "path": "Observation.component.code", "comment": "*All* code-value and component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.", "min": 1, "max": "1", "base": { "path": "Observation.component.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCode" } ], "strength": "example", "description": "Codes identifying names of simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-codes" } }, { "id": "Observation.component.value[x]", "path": "Observation.component.value[x]", "comment": "Used when observation has a set of component observations. An observation may have both a value (e.g. an Apgar score) and component observations (the observations from which the Apgar score was derived). If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.component.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" }, { "code": "CodeableConcept" }, { "code": "string" }, { "code": "boolean" }, { "code": "integer" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "SampledData" }, { "code": "time" }, { "code": "dateTime" }, { "code": "Period" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component.dataAbsentReason", "path": "Observation.component.dataAbsentReason", "comment": "\"Null\" or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"test not done\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Because of these options, use-case agreements are required to interpret general observations for exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.component.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.component.interpretation", "path": "Observation.component.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.component.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.component.referenceRange", "path": "Observation.component.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.component.referenceRange", "min": 0, "max": "*" }, "contentReference": "#Observation.referenceRange", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "Observation", "path": "Observation", "min": 0, "max": "*" }, { "id": "Observation.extension:Gene", "path": "Observation.extension", "sliceName": "Gene", "min": 0, "max": "1", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/observation-geneticsGene" ] } ] }, { "id": "Observation.extension:DNARegionName", "path": "Observation.extension", "sliceName": "DNARegionName", "min": 0, "max": "1", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/observation-geneticsDNARegionName" ] } ] }, { "id": "Observation.extension:CopyNumberEvent", "path": "Observation.extension", "sliceName": "CopyNumberEvent", "min": 0, "max": "1", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/observation-geneticsCopyNumberEvent" ] } ] }, { "id": "Observation.extension:GenomicSourceClass", "path": "Observation.extension", "sliceName": "GenomicSourceClass", "min": 0, "max": "1", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/observation-geneticsGenomicSourceClass" ] } ] }, { "id": "Observation.extension:Interpretation", "path": "Observation.extension", "sliceName": "Interpretation", "min": 0, "max": "1", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/observation-geneticsInterpretation" ] } ] }, { "id": "Observation.extension:Variant", "path": "Observation.extension", "sliceName": "Variant", "min": 0, "max": "1", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/observation-geneticsVariant" ] } ] }, { "id": "Observation.extension:AminoAcidChange", "path": "Observation.extension", "sliceName": "AminoAcidChange", "comment": "Loss of heterozygosity (LOH) is a functional variant whereby the sequence alteration causes a loss of function of one allele of a gene ([SO:0001786](http://www.sequenceontology.org/browser/current_svn/term/SO:0001786)).", "min": 0, "max": "1", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/observation-geneticsAminoAcidChange" ] } ] }, { "id": "Observation.extension:Allele", "path": "Observation.extension", "sliceName": "Allele", "min": 0, "max": "1", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/observation-geneticsAllele" ] } ] }, { "id": "Observation.extension:Ancestry", "path": "Observation.extension", "sliceName": "Ancestry", "min": 0, "max": "1", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/observation-geneticsAncestry" ] } ] }, { "id": "Observation.extension:PhaseSet", "path": "Observation.extension", "sliceName": "PhaseSet", "min": 0, "max": "*", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/observation-geneticsPhaseSet" ] } ] } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/vitalsigns", "resource": { "resourceType": "StructureDefinition", "id": "vitalsigns", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-summary", "valueMarkdown": "\"#### Complete Summary of the Mandatory Requirements\n\n1. One status in `Observation.status`which has a [required](http://build.fhir.org/terminologies.html#extensible) binding to:\n - [ObservationStatus] value set.\n1. A category in `Observation.category` which must have:\n - a fixed `Observation.category.coding.system`=\"http://terminology.hl7.org/CodeSystem/observation-category\"\n - a fixed `Observation.category.coding.code`= \"vital-signs\"\n\n1. A code in `Observation.code`\n - a fixed `Observation.code.coding.system`= \"http://loinc.org\"\"\n - a LOINC code in `Observation.code.coding.code` which has an [extensible](http://build.fhir.org/terminologies.html#extensible) binding to:\n - [Vital Signs] value set.\n \n1. One patient in `Observation.subject`\n1. A date and time in `effectiveDateTime` or `effectivePeriod`\n1. Either one `Observation.value[x]` or, if there is no value, one code in `Observation.DataAbsentReason`\n - if a vital sign measure then:\n - One numeric value in Observation.valueQuantity.value\n - a fixed Observation.valueQuantity.system=\"http://unitsofmeasure.org\"\n - a UCUM unit code in Observation.valueQuantity.code which has an required binding to the [Vital Signs Units] value set.\n - Observation.DataAbsentReason is bound to [Observation Value\n Absent Reason] value set.\n\n1. When using a panel code to group component observations (Note: See\n the comments regarding blood pressure in the table above), one or\n more `Observation.component.code` each of which must have:\n - a fixed\n `Observation.component.code.coding.system` =\"\"http://loinc.org\"\"\n - a LOINC code in `Observation.code.coding.code` which has an [extensible] binding to:\n - [Vital Signs Units] value set.\n\n1. Either one `Observation.component.valueQuantity` or, if there is\n no value, one code in `Observation.component.DataAbsentReason`\n - Observation.component.DataAbsentReason is bound to [Observation\n Value Absent Reason] value set.\n\n1. When using a panel code to group observations, one or more reference\n to Vitals Signs Observations in `Observation.related.target`\n - a fixed `Observation.related.type`= \"has-member\"\"\n\n [Vital Signs]: valueset-observation-vitalsignresult.html\n [Vital Signs Units]: valueset-ucum-vitals-common.html\n [extensible]: terminologies.html#extensible\n [ObservationStatus]: valueset-observation-status.html\n [Observation Value Absent Reason]: valueset-data-absent-reason.html\n[required]: terminologies.html#required\"" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 5 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "oo" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/vitalsigns", "version": "4.0.1", "name": "observation-vitalsigns", "title": "Vital Signs Profile", "status": "draft", "experimental": false, "date": "2016-03-25", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Observation", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Observation", "derivation": "constraint", "snapshot": { "element": [ { "id": "Observation", "path": "Observation", "comment": "Used for simple observations such as device measurements, laboratory atomic results, vital signs, height, weight, smoking status, comments, etc. Other resources are used to provide context for observations such as laboratory reports, etc.", "min": 0, "max": "*", "base": { "path": "Observation", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "obs-6", "severity": "error", "human": "dataAbsentReason SHALL only be present if Observation.value[x] is not present", "expression": "dataAbsentReason.empty() or value.empty()", "xpath": "not(exists(f:dataAbsentReason)) or (not(exists(*[starts-with(local-name(.), 'value')])))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "obs-7", "severity": "error", "human": "If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present", "expression": "value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()", "xpath": "not(f:*[starts-with(local-name(.), 'value')] and (for $coding in f:code/f:coding return f:component/f:code/f:coding[f:code/@value=$coding/f:code/@value] [f:system/@value=$coding/f:system/@value]))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "vs-2", "severity": "error", "human": "If there is no component or hasMember element then either a value[x] or a data absent reason must be present.", "expression": "(component.empty() and hasMember.empty()) implies (dataAbsentReason.exists() or value.exists())", "xpath": "f:component or f:memberOF or f:*[starts-with(local-name(.), 'value')] or f:dataAbsentReason" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.id", "path": "Observation.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.meta", "path": "Observation.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.implicitRules", "path": "Observation.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Observation.language", "path": "Observation.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Observation.text", "path": "Observation.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.contained", "path": "Observation.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.extension", "path": "Observation.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.modifierExtension", "path": "Observation.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Observation.identifier", "path": "Observation.identifier", "min": 0, "max": "*", "base": { "path": "Observation.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.basedOn", "path": "Observation.basedOn", "min": 0, "max": "*", "base": { "path": "Observation.basedOn", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/CarePlan", "http://hl7.org/fhir/StructureDefinition/DeviceRequest", "http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation", "http://hl7.org/fhir/StructureDefinition/MedicationRequest", "http://hl7.org/fhir/StructureDefinition/NutritionOrder", "http://hl7.org/fhir/StructureDefinition/ServiceRequest" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.partOf", "path": "Observation.partOf", "comment": "To link an Observation to an Encounter use `encounter`. See the [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below for guidance on referencing another Observation.", "min": 0, "max": "*", "base": { "path": "Observation.partOf", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/MedicationAdministration", "http://hl7.org/fhir/StructureDefinition/MedicationDispense", "http://hl7.org/fhir/StructureDefinition/MedicationStatement", "http://hl7.org/fhir/StructureDefinition/Procedure", "http://hl7.org/fhir/StructureDefinition/Immunization", "http://hl7.org/fhir/StructureDefinition/ImagingStudy" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.status", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-display-hint", "valueString": "default: final" } ], "path": "Observation.status", "comment": "This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid.", "min": 1, "max": "1", "base": { "path": "Observation.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": true, "isModifierReason": "This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Status" } ], "strength": "required", "valueSet": "http://hl7.org/fhir/ValueSet/observation-status|4.0.1" } }, { "id": "Observation.category", "path": "Observation.category", "slicing": { "discriminator": [ { "type": "value", "path": "coding.code" }, { "type": "value", "path": "coding.system" } ], "ordered": false, "rules": "open" }, "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 1, "max": "*", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.category:VSCat", "path": "Observation.category", "sliceName": "VSCat", "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 1, "max": "1", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.category:VSCat.id", "path": "Observation.category.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.extension", "path": "Observation.category.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding", "path": "Observation.category.coding", "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 1, "max": "*", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.id", "path": "Observation.category.coding.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding.extension", "path": "Observation.category.coding.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding.system", "path": "Observation.category.coding.system", "comment": "The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.", "min": 1, "max": "1", "base": { "path": "Coding.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://terminology.hl7.org/CodeSystem/observation-category", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.version", "path": "Observation.category.coding.version", "comment": "Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.", "min": 0, "max": "1", "base": { "path": "Coding.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.code", "path": "Observation.category.coding.code", "min": 1, "max": "1", "base": { "path": "Coding.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "vital-signs", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.display", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.category.coding.display", "min": 0, "max": "1", "base": { "path": "Coding.display", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.userSelected", "path": "Observation.category.coding.userSelected", "comment": "Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.", "min": 0, "max": "1", "base": { "path": "Coding.userSelected", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.text", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.category.text", "comment": "Very often the text is the same as a displayName of one of the codings.", "min": 0, "max": "1", "base": { "path": "CodeableConcept.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code", "path": "Observation.code", "comment": "*All* code-value and, if present, component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.", "min": 1, "max": "1", "base": { "path": "Observation.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSigns" } ], "strength": "extensible", "description": "This identifies the vital sign result type.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-vitalsignresult" } }, { "id": "Observation.subject", "path": "Observation.subject", "comment": "One would expect this element to be a cardinality of 1..1. The only circumstance in which the subject can be missing is when the observation is made by a device that does not know the patient. In this case, the observation SHALL be matched to a patient through some context/channel matching technique, and at this point, the observation should be updated.", "min": 1, "max": "1", "base": { "path": "Observation.subject", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.focus", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "path": "Observation.focus", "comment": "Typically, an observation is made about the subject - a patient, or group of patients, location, or device - and the distinction between the subject and what is directly measured for an observation is specified in the observation code itself ( e.g., \"Blood Glucose\") and does not need to be represented separately using this element. Use `specimen` if a reference to a specimen is required. If a code is required instead of a resource use either `bodysite` for bodysites or the standard extension [focusCode](http://hl7.org/fhir/extension-observation-focuscode.html).", "min": 0, "max": "*", "base": { "path": "Observation.focus", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.encounter", "path": "Observation.encounter", "comment": "This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests).", "min": 0, "max": "1", "base": { "path": "Observation.encounter", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Encounter" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.effective[x]", "path": "Observation.effective[x]", "comment": "At least a date should be present unless this observation is a historical report. For recording imprecise or \"fuzzy\" times (For example, a blood glucose measurement taken \"after breakfast\") use the [Timing](http://hl7.org/fhir/datatypes.html#timing) datatype which allow the measurement to be tied to regular life events.", "min": 1, "max": "1", "base": { "path": "Observation.effective[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "vs-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "vs-1", "severity": "error", "human": "if Observation.effective[x] is dateTime and has a value then that value shall be precise to the day", "expression": "($this as dateTime).toString().length() >= 8", "xpath": "f:effectiveDateTime[matches(@value, '^\\d{4}-\\d{2}-\\d{2}')]" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.issued", "path": "Observation.issued", "comment": "For Observations that don’t require review and verification, it may be the same as the [`lastUpdated` ](http://hl7.org/fhir/resource-definitions.html#Meta.lastUpdated) time of the resource itself. For Observations that do require review and verification for certain updates, it might not be the same as the `lastUpdated` time of the resource itself due to a non-clinically significant update that doesn’t require the new version to be reviewed and verified again.", "min": 0, "max": "1", "base": { "path": "Observation.issued", "min": 0, "max": "1" }, "type": [ { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.performer", "path": "Observation.performer", "min": 0, "max": "*", "base": { "path": "Observation.performer", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/CareTeam", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/RelatedPerson" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]", "path": "Observation.value[x]", "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" }, { "code": "CodeableConcept" }, { "code": "string" }, { "code": "boolean" }, { "code": "integer" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "SampledData" }, { "code": "time" }, { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "obs-7", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.dataAbsentReason", "path": "Observation.dataAbsentReason", "comment": "Null or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"specimen unsatisfactory\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Note that an observation may only be reported if there are values to report. For example differential cell counts values may be reported only when > 0. Because of these options, use-case agreements are required to interpret general observations for null or exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.interpretation", "path": "Observation.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.note", "path": "Observation.note", "comment": "May include general statements about the observation, or statements about significant, unexpected or unreliable results values, or information about its source when relevant to its interpretation.", "min": 0, "max": "*", "base": { "path": "Observation.note", "min": 0, "max": "*" }, "type": [ { "code": "Annotation" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.bodySite", "path": "Observation.bodySite", "comment": "Only used if not implicit in code found in Observation.code. In many systems, this may be represented as a related observation instead of an inline component. \n\nIf the use case requires BodySite to be handled as a separate resource (e.g. to identify and track separately) then use the standard extension[ bodySite](http://hl7.org/fhir/extension-bodysite.html).", "min": 0, "max": "1", "base": { "path": "Observation.bodySite", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodySite" } ], "strength": "example", "description": "Codes describing anatomical locations. May include laterality.", "valueSet": "http://hl7.org/fhir/ValueSet/body-site" } }, { "id": "Observation.method", "path": "Observation.method", "comment": "Only used if not implicit in code for Observation.code.", "min": 0, "max": "1", "base": { "path": "Observation.method", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationMethod" } ], "strength": "example", "description": "Methods for simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-methods" } }, { "id": "Observation.specimen", "path": "Observation.specimen", "comment": "Should only be used if not implicit in code found in `Observation.code`. Observations are not made on specimens themselves; they are made on a subject, but in many cases by the means of a specimen. Note that although specimens are often involved, they are not always tracked and reported explicitly. Also note that observation resources may be used in contexts that track the specimen explicitly (e.g. Diagnostic Report).", "min": 0, "max": "1", "base": { "path": "Observation.specimen", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Specimen" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.device", "path": "Observation.device", "comment": "Note that this is not meant to represent a device involved in the transmission of the result, e.g., a gateway. Such devices may be documented using the Provenance resource where relevant.", "min": 0, "max": "1", "base": { "path": "Observation.device", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/DeviceMetric" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange", "path": "Observation.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.referenceRange", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "obs-3", "severity": "error", "human": "Must have at least a low or a high or text", "expression": "low.exists() or high.exists() or text.exists()", "xpath": "(exists(f:low) or exists(f:high)or exists(f:text))" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.id", "path": "Observation.referenceRange.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.extension", "path": "Observation.referenceRange.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.modifierExtension", "path": "Observation.referenceRange.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.referenceRange.low", "path": "Observation.referenceRange.low", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.low", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.high", "path": "Observation.referenceRange.high", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.high", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.type", "path": "Observation.referenceRange.type", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal range is assumed.", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeMeaning" } ], "strength": "preferred", "description": "Code for the meaning of a reference range.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-meaning" } }, { "id": "Observation.referenceRange.appliesTo", "path": "Observation.referenceRange.appliesTo", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal population is assumed.", "min": 0, "max": "*", "base": { "path": "Observation.referenceRange.appliesTo", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeType" } ], "strength": "example", "description": "Codes identifying the population the reference range applies to.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-appliesto" } }, { "id": "Observation.referenceRange.age", "path": "Observation.referenceRange.age", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.age", "min": 0, "max": "1" }, "type": [ { "code": "Range" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.text", "path": "Observation.referenceRange.text", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.hasMember", "path": "Observation.hasMember", "comment": "When using this element, an observation will typically have either a value or a set of related resources, although both may be present in some cases. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below. Note that a system may calculate results from [QuestionnaireResponse](http://hl7.org/fhir/questionnaireresponse.html) into a final score and represent the score as an Observation.", "min": 0, "max": "*", "base": { "path": "Observation.hasMember", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence", "http://hl7.org/fhir/StructureDefinition/vitalsigns" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.derivedFrom", "path": "Observation.derivedFrom", "comment": "All the reference choices that are listed in this element can represent clinical observations and other measurements that may be the source for a derived value. The most common reference will be another Observation. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below.", "min": 0, "max": "*", "base": { "path": "Observation.derivedFrom", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/DocumentReference", "http://hl7.org/fhir/StructureDefinition/ImagingStudy", "http://hl7.org/fhir/StructureDefinition/Media", "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence", "http://hl7.org/fhir/StructureDefinition/vitalsigns" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component", "path": "Observation.component", "comment": "For a discussion on the ways Observations can be assembled in groups together see [Notes](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "*", "base": { "path": "Observation.component", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "vs-3", "severity": "error", "human": "If there is no a value a data absent reason must be present", "expression": "value.exists() or dataAbsentReason.exists()", "xpath": "f:*[starts-with(local-name(.), 'value')] or f:dataAbsentReason" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.component.id", "path": "Observation.component.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.extension", "path": "Observation.component.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.modifierExtension", "path": "Observation.component.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.component.code", "path": "Observation.component.code", "comment": "*All* code-value and component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.", "min": 1, "max": "1", "base": { "path": "Observation.component.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSigns" } ], "strength": "extensible", "description": "This identifies the vital sign result type.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-vitalsignresult" } }, { "id": "Observation.component.value[x]", "path": "Observation.component.value[x]", "comment": "Used when observation has a set of component observations. An observation may have both a value (e.g. an Apgar score) and component observations (the observations from which the Apgar score was derived). If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.component.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" }, { "code": "CodeableConcept" }, { "code": "string" }, { "code": "boolean" }, { "code": "integer" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "SampledData" }, { "code": "time" }, { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "vs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSignsUnits" } ], "strength": "required", "description": "Common UCUM units for recording Vital Signs.", "valueSet": "http://hl7.org/fhir/ValueSet/ucum-vitals-common|4.0.1" } }, { "id": "Observation.component.dataAbsentReason", "path": "Observation.component.dataAbsentReason", "comment": "\"Null\" or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"test not done\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Because of these options, use-case agreements are required to interpret general observations for exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.component.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6", "vs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.component.interpretation", "path": "Observation.component.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.component.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.component.referenceRange", "path": "Observation.component.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.component.referenceRange", "min": 0, "max": "*" }, "contentReference": "#Observation.referenceRange", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "Observation", "path": "Observation", "min": 0, "max": "*", "constraint": [ { "key": "vs-2", "severity": "error", "human": "If there is no component or hasMember element then either a value[x] or a data absent reason must be present.", "expression": "(component.empty() and hasMember.empty()) implies (dataAbsentReason.exists() or value.exists())", "xpath": "f:component or f:memberOF or f:*[starts-with(local-name(.), 'value')] or f:dataAbsentReason" } ] }, { "id": "Observation.status", "path": "Observation.status", "min": 1, "max": "1", "type": [ { "code": "code" } ], "mustSupport": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Status" } ], "strength": "required", "valueSet": "http://hl7.org/fhir/ValueSet/observation-status|4.0.1" } }, { "id": "Observation.category", "path": "Observation.category", "slicing": { "discriminator": [ { "type": "value", "path": "coding.code" }, { "type": "value", "path": "coding.system" } ], "ordered": false, "rules": "open" }, "min": 1, "max": "*", "type": [ { "code": "CodeableConcept" } ], "mustSupport": true }, { "id": "Observation.category:VSCat", "path": "Observation.category", "sliceName": "VSCat", "min": 1, "max": "1", "type": [ { "code": "CodeableConcept" } ], "mustSupport": true }, { "id": "Observation.category:VSCat.coding", "path": "Observation.category.coding", "min": 1, "max": "*", "type": [ { "code": "Coding" } ], "mustSupport": true }, { "id": "Observation.category:VSCat.coding.system", "path": "Observation.category.coding.system", "min": 1, "max": "1", "type": [ { "code": "uri" } ], "fixedUri": "http://terminology.hl7.org/CodeSystem/observation-category", "mustSupport": true }, { "id": "Observation.category:VSCat.coding.code", "path": "Observation.category.coding.code", "min": 1, "max": "1", "type": [ { "code": "code" } ], "fixedCode": "vital-signs", "mustSupport": true }, { "id": "Observation.code", "path": "Observation.code", "min": 1, "max": "1", "type": [ { "code": "CodeableConcept" } ], "mustSupport": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSigns" } ], "strength": "extensible", "description": "This identifies the vital sign result type.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-vitalsignresult" } }, { "id": "Observation.subject", "path": "Observation.subject", "min": 1, "max": "1", "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient" ] } ], "mustSupport": true }, { "id": "Observation.effective[x]", "path": "Observation.effective[x]", "min": 1, "max": "1", "type": [ { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "vs-1" ], "constraint": [ { "key": "vs-1", "severity": "error", "human": "if Observation.effective[x] is dateTime and has a value then that value shall be precise to the day", "expression": "($this as dateTime).toString().length() >= 8", "xpath": "f:effectiveDateTime[matches(@value, '^\\d{4}-\\d{2}-\\d{2}')]" } ], "mustSupport": true }, { "id": "Observation.value[x]", "path": "Observation.value[x]", "min": 0, "max": "1", "condition": [ "vs-2" ], "mustSupport": true }, { "id": "Observation.dataAbsentReason", "path": "Observation.dataAbsentReason", "min": 0, "max": "1", "type": [ { "code": "CodeableConcept" } ], "condition": [ "vs-2" ], "mustSupport": true }, { "id": "Observation.hasMember", "path": "Observation.hasMember", "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence", "http://hl7.org/fhir/StructureDefinition/vitalsigns" ] } ] }, { "id": "Observation.derivedFrom", "path": "Observation.derivedFrom", "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/DocumentReference", "http://hl7.org/fhir/StructureDefinition/ImagingStudy", "http://hl7.org/fhir/StructureDefinition/Media", "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence", "http://hl7.org/fhir/StructureDefinition/vitalsigns" ] } ] }, { "id": "Observation.component", "path": "Observation.component", "constraint": [ { "key": "vs-3", "severity": "error", "human": "If there is no a value a data absent reason must be present", "expression": "value.exists() or dataAbsentReason.exists()", "xpath": "f:*[starts-with(local-name(.), 'value')] or f:dataAbsentReason" } ], "mustSupport": true }, { "id": "Observation.component.code", "path": "Observation.component.code", "min": 1, "max": "1", "type": [ { "code": "CodeableConcept" } ], "mustSupport": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSigns" } ], "strength": "extensible", "description": "This identifies the vital sign result type.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-vitalsignresult" } }, { "id": "Observation.component.value[x]", "path": "Observation.component.value[x]", "min": 0, "max": "1", "condition": [ "vs-3" ], "mustSupport": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSignsUnits" } ], "strength": "required", "description": "Common UCUM units for recording Vital Signs.", "valueSet": "http://hl7.org/fhir/ValueSet/ucum-vitals-common|4.0.1" } }, { "id": "Observation.component.dataAbsentReason", "path": "Observation.component.dataAbsentReason", "min": 0, "max": "1", "type": [ { "code": "CodeableConcept" } ], "condition": [ "vs-3" ], "mustSupport": true } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/bodyweight", "resource": { "resourceType": "StructureDefinition", "id": "bodyweight", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-summary", "valueMarkdown": "#### Complete Summary of the Mandatory Requirements\r\r1. One code in `Observation.code` which must have\r - a fixed `Observation.code.coding.system`=**'http ://loinc.org'**\r - a fixed `Observation.code.coding.code`= **'29463-7'**\r - Other additional Codings are allowed in `Observation.code`- e.g. more specific LOINC\r Codes, SNOMED CT concepts, system specific codes. All codes\r SHALL have an system value\r1. Either one Observation.valueQuantity or, if there is no value, one code in Observation.DataAbsentReason\r - Each Observation.valueQuantity must have:\r - One numeric value in Observation.valueQuantity.value\r - a fixed Observation.valueQuantity.system=\"http://unitsofmeasure.org\"\r - a UCUM unit code in Observation.valueQuantity.code = **'kg', 'g', or '[lb_av]'**" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 5 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "oo" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/bodyweight", "version": "4.0.1", "name": "observation-bodyweight", "title": "Observation Body Weight Profile", "status": "draft", "experimental": false, "date": "2018-08-11", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Observation", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/vitalsigns", "derivation": "constraint", "snapshot": { "element": [ { "id": "Observation", "path": "Observation", "comment": "Used for simple observations such as device measurements, laboratory atomic results, vital signs, height, weight, smoking status, comments, etc. Other resources are used to provide context for observations such as laboratory reports, etc.", "min": 0, "max": "*", "base": { "path": "Observation", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "obs-6", "severity": "error", "human": "dataAbsentReason SHALL only be present if Observation.value[x] is not present", "expression": "dataAbsentReason.empty() or value.empty()", "xpath": "not(exists(f:dataAbsentReason)) or (not(exists(*[starts-with(local-name(.), 'value')])))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "obs-7", "severity": "error", "human": "If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present", "expression": "value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()", "xpath": "not(f:*[starts-with(local-name(.), 'value')] and (for $coding in f:code/f:coding return f:component/f:code/f:coding[f:code/@value=$coding/f:code/@value] [f:system/@value=$coding/f:system/@value]))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "vs-2", "severity": "error", "human": "If there is no component or hasMember element then either a value[x] or a data absent reason must be present.", "expression": "(component.empty() and hasMember.empty()) implies (dataAbsentReason.exists() or value.exists())", "xpath": "f:component or f:memberOF or f:*[starts-with(local-name(.), 'value')] or f:dataAbsentReason", "source": "http://hl7.org/fhir/StructureDefinition/vitalsigns" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.id", "path": "Observation.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.meta", "path": "Observation.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.implicitRules", "path": "Observation.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Observation.language", "path": "Observation.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Observation.text", "path": "Observation.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.contained", "path": "Observation.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.extension", "path": "Observation.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.modifierExtension", "path": "Observation.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Observation.identifier", "path": "Observation.identifier", "min": 0, "max": "*", "base": { "path": "Observation.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.basedOn", "path": "Observation.basedOn", "min": 0, "max": "*", "base": { "path": "Observation.basedOn", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/CarePlan", "http://hl7.org/fhir/StructureDefinition/DeviceRequest", "http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation", "http://hl7.org/fhir/StructureDefinition/MedicationRequest", "http://hl7.org/fhir/StructureDefinition/NutritionOrder", "http://hl7.org/fhir/StructureDefinition/ServiceRequest" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.partOf", "path": "Observation.partOf", "comment": "To link an Observation to an Encounter use `encounter`. See the [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below for guidance on referencing another Observation.", "min": 0, "max": "*", "base": { "path": "Observation.partOf", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/MedicationAdministration", "http://hl7.org/fhir/StructureDefinition/MedicationDispense", "http://hl7.org/fhir/StructureDefinition/MedicationStatement", "http://hl7.org/fhir/StructureDefinition/Procedure", "http://hl7.org/fhir/StructureDefinition/Immunization", "http://hl7.org/fhir/StructureDefinition/ImagingStudy" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.status", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-display-hint", "valueString": "default: final" } ], "path": "Observation.status", "comment": "This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid.", "min": 1, "max": "1", "base": { "path": "Observation.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": true, "isModifierReason": "This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Status" } ], "strength": "required", "valueSet": "http://hl7.org/fhir/ValueSet/observation-status|4.0.1" } }, { "id": "Observation.category", "path": "Observation.category", "slicing": { "discriminator": [ { "type": "value", "path": "coding.code" }, { "type": "value", "path": "coding.system" } ], "ordered": false, "rules": "open" }, "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 1, "max": "*", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.category:VSCat", "path": "Observation.category", "sliceName": "VSCat", "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 1, "max": "1", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.category:VSCat.id", "path": "Observation.category.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.extension", "path": "Observation.category.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding", "path": "Observation.category.coding", "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 1, "max": "*", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.id", "path": "Observation.category.coding.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding.extension", "path": "Observation.category.coding.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding.system", "path": "Observation.category.coding.system", "comment": "The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.", "min": 1, "max": "1", "base": { "path": "Coding.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://terminology.hl7.org/CodeSystem/observation-category", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.version", "path": "Observation.category.coding.version", "comment": "Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.", "min": 0, "max": "1", "base": { "path": "Coding.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.code", "path": "Observation.category.coding.code", "min": 1, "max": "1", "base": { "path": "Coding.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "vital-signs", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.display", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.category.coding.display", "min": 0, "max": "1", "base": { "path": "Coding.display", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.userSelected", "path": "Observation.category.coding.userSelected", "comment": "Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.", "min": 0, "max": "1", "base": { "path": "Coding.userSelected", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.text", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.category.text", "comment": "Very often the text is the same as a displayName of one of the codings.", "min": 0, "max": "1", "base": { "path": "CodeableConcept.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code", "path": "Observation.code", "comment": "additional codes that translate or map to this code are allowed. For example a more granular LOINC code or code that is used locally in a system.", "min": 1, "max": "1", "base": { "path": "Observation.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSigns" } ], "strength": "extensible", "description": "This identifies the vital sign result type.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-vitalsignresult" } }, { "id": "Observation.code.id", "path": "Observation.code.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.extension", "path": "Observation.code.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding", "path": "Observation.code.coding", "slicing": { "discriminator": [ { "type": "value", "path": "code" }, { "type": "value", "path": "system" } ], "ordered": false, "rules": "open" }, "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 0, "max": "*", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BodyWeightCode", "path": "Observation.code.coding", "sliceName": "BodyWeightCode", "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 1, "max": "1", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BodyWeightCode.id", "path": "Observation.code.coding.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding:BodyWeightCode.extension", "path": "Observation.code.coding.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding:BodyWeightCode.system", "path": "Observation.code.coding.system", "comment": "The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.", "min": 1, "max": "1", "base": { "path": "Coding.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://loinc.org", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BodyWeightCode.version", "path": "Observation.code.coding.version", "comment": "Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.", "min": 0, "max": "1", "base": { "path": "Coding.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BodyWeightCode.code", "path": "Observation.code.coding.code", "min": 1, "max": "1", "base": { "path": "Coding.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "29463-7", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BodyWeightCode.display", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.code.coding.display", "min": 0, "max": "1", "base": { "path": "Coding.display", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BodyWeightCode.userSelected", "path": "Observation.code.coding.userSelected", "comment": "Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.", "min": 0, "max": "1", "base": { "path": "Coding.userSelected", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.text", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.code.text", "comment": "Very often the text is the same as a displayName of one of the codings.", "min": 0, "max": "1", "base": { "path": "CodeableConcept.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.subject", "path": "Observation.subject", "comment": "One would expect this element to be a cardinality of 1..1. The only circumstance in which the subject can be missing is when the observation is made by a device that does not know the patient. In this case, the observation SHALL be matched to a patient through some context/channel matching technique, and at this point, the observation should be updated.", "min": 1, "max": "1", "base": { "path": "Observation.subject", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.focus", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "path": "Observation.focus", "comment": "Typically, an observation is made about the subject - a patient, or group of patients, location, or device - and the distinction between the subject and what is directly measured for an observation is specified in the observation code itself ( e.g., \"Blood Glucose\") and does not need to be represented separately using this element. Use `specimen` if a reference to a specimen is required. If a code is required instead of a resource use either `bodysite` for bodysites or the standard extension [focusCode](http://hl7.org/fhir/extension-observation-focuscode.html).", "min": 0, "max": "*", "base": { "path": "Observation.focus", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.encounter", "path": "Observation.encounter", "comment": "This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests).", "min": 0, "max": "1", "base": { "path": "Observation.encounter", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Encounter" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.effective[x]", "path": "Observation.effective[x]", "comment": "At least a date should be present unless this observation is a historical report. For recording imprecise or \"fuzzy\" times (For example, a blood glucose measurement taken \"after breakfast\") use the [Timing](http://hl7.org/fhir/datatypes.html#timing) datatype which allow the measurement to be tied to regular life events.", "min": 1, "max": "1", "base": { "path": "Observation.effective[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "vs-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "vs-1", "severity": "error", "human": "if Observation.effective[x] is dateTime and has a value then that value shall be precise to the day", "expression": "($this as dateTime).toString().length() >= 8", "xpath": "f:effectiveDateTime[matches(@value, '^\\d{4}-\\d{2}-\\d{2}')]" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.issued", "path": "Observation.issued", "comment": "For Observations that don’t require review and verification, it may be the same as the [`lastUpdated` ](http://hl7.org/fhir/resource-definitions.html#Meta.lastUpdated) time of the resource itself. For Observations that do require review and verification for certain updates, it might not be the same as the `lastUpdated` time of the resource itself due to a non-clinically significant update that doesn’t require the new version to be reviewed and verified again.", "min": 0, "max": "1", "base": { "path": "Observation.issued", "min": 0, "max": "1" }, "type": [ { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.performer", "path": "Observation.performer", "min": 0, "max": "*", "base": { "path": "Observation.performer", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/CareTeam", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/RelatedPerson" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]", "path": "Observation.value[x]", "slicing": { "discriminator": [ { "type": "type", "path": "$this" } ], "ordered": false, "rules": "closed" }, "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "obs-7", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity", "path": "Observation.value[x]", "sliceName": "valueQuantity", "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "obs-7", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.id", "path": "Observation.value[x].id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.value[x]:valueQuantity.extension", "path": "Observation.value[x].extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.value[x]:valueQuantity.value", "path": "Observation.value[x].value", "comment": "The implicit precision in the value should always be honored. Monetary values have their own rules for handling precision (refer to standard accounting text books).", "min": 1, "max": "1", "base": { "path": "Quantity.value", "min": 0, "max": "1" }, "type": [ { "code": "decimal" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.comparator", "path": "Observation.value[x].comparator", "min": 0, "max": "1", "base": { "path": "Quantity.comparator", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "meaningWhenMissing": "If there is no comparator, then there is no modification of the value", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This is labeled as \"Is Modifier\" because the comparator modifies the interpretation of the value significantly. If there is no comparator, then there is no modification of the value", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "QuantityComparator" } ], "strength": "required", "description": "How the Quantity should be understood and represented.", "valueSet": "http://hl7.org/fhir/ValueSet/quantity-comparator|4.0.1" } }, { "id": "Observation.value[x]:valueQuantity.unit", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.value[x].unit", "min": 1, "max": "1", "base": { "path": "Quantity.unit", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.system", "path": "Observation.value[x].system", "min": 1, "max": "1", "base": { "path": "Quantity.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://unitsofmeasure.org", "condition": [ "qty-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.code", "path": "Observation.value[x].code", "comment": "The preferred system is UCUM, but SNOMED CT can also be used (for customary units) or ISO 4217 for currency. The context of use may additionally require a code from a particular system.", "min": 1, "max": "1", "base": { "path": "Quantity.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodyWeightUnits" } ], "strength": "required", "description": "Common UCUM units for Body Weight.", "valueSet": "http://hl7.org/fhir/ValueSet/ucum-bodyweight|4.0.1" } }, { "id": "Observation.dataAbsentReason", "path": "Observation.dataAbsentReason", "comment": "Null or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"specimen unsatisfactory\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Note that an observation may only be reported if there are values to report. For example differential cell counts values may be reported only when > 0. Because of these options, use-case agreements are required to interpret general observations for null or exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.interpretation", "path": "Observation.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.note", "path": "Observation.note", "comment": "May include general statements about the observation, or statements about significant, unexpected or unreliable results values, or information about its source when relevant to its interpretation.", "min": 0, "max": "*", "base": { "path": "Observation.note", "min": 0, "max": "*" }, "type": [ { "code": "Annotation" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.bodySite", "path": "Observation.bodySite", "comment": "Only used if not implicit in code found in Observation.code. In many systems, this may be represented as a related observation instead of an inline component. \n\nIf the use case requires BodySite to be handled as a separate resource (e.g. to identify and track separately) then use the standard extension[ bodySite](http://hl7.org/fhir/extension-bodysite.html).", "min": 0, "max": "1", "base": { "path": "Observation.bodySite", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodySite" } ], "strength": "example", "description": "Codes describing anatomical locations. May include laterality.", "valueSet": "http://hl7.org/fhir/ValueSet/body-site" } }, { "id": "Observation.method", "path": "Observation.method", "comment": "Only used if not implicit in code for Observation.code.", "min": 0, "max": "1", "base": { "path": "Observation.method", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationMethod" } ], "strength": "example", "description": "Methods for simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-methods" } }, { "id": "Observation.specimen", "path": "Observation.specimen", "comment": "Should only be used if not implicit in code found in `Observation.code`. Observations are not made on specimens themselves; they are made on a subject, but in many cases by the means of a specimen. Note that although specimens are often involved, they are not always tracked and reported explicitly. Also note that observation resources may be used in contexts that track the specimen explicitly (e.g. Diagnostic Report).", "min": 0, "max": "1", "base": { "path": "Observation.specimen", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Specimen" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.device", "path": "Observation.device", "comment": "Note that this is not meant to represent a device involved in the transmission of the result, e.g., a gateway. Such devices may be documented using the Provenance resource where relevant.", "min": 0, "max": "1", "base": { "path": "Observation.device", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/DeviceMetric" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange", "path": "Observation.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.referenceRange", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "obs-3", "severity": "error", "human": "Must have at least a low or a high or text", "expression": "low.exists() or high.exists() or text.exists()", "xpath": "(exists(f:low) or exists(f:high)or exists(f:text))" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.id", "path": "Observation.referenceRange.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.extension", "path": "Observation.referenceRange.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.modifierExtension", "path": "Observation.referenceRange.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.referenceRange.low", "path": "Observation.referenceRange.low", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.low", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.high", "path": "Observation.referenceRange.high", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.high", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.type", "path": "Observation.referenceRange.type", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal range is assumed.", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeMeaning" } ], "strength": "preferred", "description": "Code for the meaning of a reference range.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-meaning" } }, { "id": "Observation.referenceRange.appliesTo", "path": "Observation.referenceRange.appliesTo", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal population is assumed.", "min": 0, "max": "*", "base": { "path": "Observation.referenceRange.appliesTo", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeType" } ], "strength": "example", "description": "Codes identifying the population the reference range applies to.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-appliesto" } }, { "id": "Observation.referenceRange.age", "path": "Observation.referenceRange.age", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.age", "min": 0, "max": "1" }, "type": [ { "code": "Range" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.text", "path": "Observation.referenceRange.text", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.hasMember", "path": "Observation.hasMember", "comment": "When using this element, an observation will typically have either a value or a set of related resources, although both may be present in some cases. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below. Note that a system may calculate results from [QuestionnaireResponse](http://hl7.org/fhir/questionnaireresponse.html) into a final score and represent the score as an Observation.", "min": 0, "max": "*", "base": { "path": "Observation.hasMember", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence", "http://hl7.org/fhir/StructureDefinition/vitalsigns" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.derivedFrom", "path": "Observation.derivedFrom", "comment": "All the reference choices that are listed in this element can represent clinical observations and other measurements that may be the source for a derived value. The most common reference will be another Observation. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below.", "min": 0, "max": "*", "base": { "path": "Observation.derivedFrom", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/DocumentReference", "http://hl7.org/fhir/StructureDefinition/ImagingStudy", "http://hl7.org/fhir/StructureDefinition/Media", "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence", "http://hl7.org/fhir/StructureDefinition/vitalsigns" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component", "path": "Observation.component", "comment": "For a discussion on the ways Observations can be assembled in groups together see [Notes](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "*", "base": { "path": "Observation.component", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "vs-3", "severity": "error", "human": "If there is no a value a data absent reason must be present", "expression": "value.exists() or dataAbsentReason.exists()", "xpath": "f:*[starts-with(local-name(.), 'value')] or f:dataAbsentReason" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.component.id", "path": "Observation.component.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.extension", "path": "Observation.component.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.modifierExtension", "path": "Observation.component.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.component.code", "path": "Observation.component.code", "comment": "*All* code-value and component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.", "min": 1, "max": "1", "base": { "path": "Observation.component.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSigns" } ], "strength": "extensible", "description": "This identifies the vital sign result type.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-vitalsignresult" } }, { "id": "Observation.component.value[x]", "path": "Observation.component.value[x]", "comment": "Used when observation has a set of component observations. An observation may have both a value (e.g. an Apgar score) and component observations (the observations from which the Apgar score was derived). If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.component.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" }, { "code": "CodeableConcept" }, { "code": "string" }, { "code": "boolean" }, { "code": "integer" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "SampledData" }, { "code": "time" }, { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "vs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSignsUnits" } ], "strength": "required", "description": "Common UCUM units for recording Vital Signs.", "valueSet": "http://hl7.org/fhir/ValueSet/ucum-vitals-common|4.0.1" } }, { "id": "Observation.component.dataAbsentReason", "path": "Observation.component.dataAbsentReason", "comment": "\"Null\" or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"test not done\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Because of these options, use-case agreements are required to interpret general observations for exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.component.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6", "vs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.component.interpretation", "path": "Observation.component.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.component.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.component.referenceRange", "path": "Observation.component.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.component.referenceRange", "min": 0, "max": "*" }, "contentReference": "#Observation.referenceRange", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "Observation", "path": "Observation", "min": 0, "max": "*" }, { "id": "Observation.code", "path": "Observation.code", "comment": "additional codes that translate or map to this code are allowed. For example a more granular LOINC code or code that is used locally in a system." }, { "id": "Observation.code.coding", "path": "Observation.code.coding", "slicing": { "discriminator": [ { "type": "value", "path": "code" }, { "type": "value", "path": "system" } ], "ordered": false, "rules": "open" } }, { "id": "Observation.code.coding:BodyWeightCode", "path": "Observation.code.coding", "sliceName": "BodyWeightCode", "min": 1, "max": "1" }, { "id": "Observation.code.coding:BodyWeightCode.system", "path": "Observation.code.coding.system", "min": 1, "max": "1", "type": [ { "code": "uri" } ], "fixedUri": "http://loinc.org" }, { "id": "Observation.code.coding:BodyWeightCode.code", "path": "Observation.code.coding.code", "min": 1, "max": "1", "type": [ { "code": "code" } ], "fixedCode": "29463-7" }, { "id": "Observation.valueQuantity", "path": "Observation.valueQuantity" }, { "id": "Observation.valueQuantity.value", "path": "Observation.valueQuantity.value", "min": 1, "max": "1", "type": [ { "code": "decimal" } ], "mustSupport": true }, { "id": "Observation.valueQuantity.unit", "path": "Observation.valueQuantity.unit", "min": 1, "max": "1", "type": [ { "code": "string" } ], "mustSupport": true }, { "id": "Observation.valueQuantity.system", "path": "Observation.valueQuantity.system", "min": 1, "max": "1", "type": [ { "code": "uri" } ], "fixedUri": "http://unitsofmeasure.org", "mustSupport": true }, { "id": "Observation.valueQuantity.code", "path": "Observation.valueQuantity.code", "min": 1, "max": "1", "type": [ { "code": "code" } ], "mustSupport": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodyWeightUnits" } ], "strength": "required", "description": "Common UCUM units for Body Weight.", "valueSet": "http://hl7.org/fhir/ValueSet/ucum-bodyweight|4.0.1" } } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/vitalspanel", "resource": { "resourceType": "StructureDefinition", "id": "vitalspanel", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-summary", "valueMarkdown": "#### Complete Summary of the Mandatory Requirements\r\r1. One code in `Observation.code` which must have\r - a fixed `Observation.code.coding.system`=**'http ://loinc.org'**\r - a fixed `Observation.code.coding.code`= **'85353-1'**\r - Other additional Codings are allowed in `Observation.code`- e.g. more specific LOINC\r Codes, SNOMED CT concepts, system specific codes. All codes\r SHALL have an system value\r1. No value in `Observation.value[x]`\r1. At Least one Vitals Sign Observation reference in `Observation.hasMember`" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 5 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "oo" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/vitalspanel", "version": "4.0.1", "name": "observation-vitalspanel", "title": "Observation Vital Signs Panel Profile", "status": "draft", "experimental": false, "date": "2018-08-11", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Observation", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/vitalsigns", "derivation": "constraint", "snapshot": { "element": [ { "id": "Observation", "path": "Observation", "comment": "Used for simple observations such as device measurements, laboratory atomic results, vital signs, height, weight, smoking status, comments, etc. Other resources are used to provide context for observations such as laboratory reports, etc.", "min": 0, "max": "*", "base": { "path": "Observation", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "obs-6", "severity": "error", "human": "dataAbsentReason SHALL only be present if Observation.value[x] is not present", "expression": "dataAbsentReason.empty() or value.empty()", "xpath": "not(exists(f:dataAbsentReason)) or (not(exists(*[starts-with(local-name(.), 'value')])))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "obs-7", "severity": "error", "human": "If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present", "expression": "value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()", "xpath": "not(f:*[starts-with(local-name(.), 'value')] and (for $coding in f:code/f:coding return f:component/f:code/f:coding[f:code/@value=$coding/f:code/@value] [f:system/@value=$coding/f:system/@value]))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "vs-2", "severity": "error", "human": "If there is no component or hasMember element then either a value[x] or a data absent reason must be present.", "expression": "(component.empty() and hasMember.empty()) implies (dataAbsentReason.exists() or value.exists())", "xpath": "f:component or f:memberOF or f:*[starts-with(local-name(.), 'value')] or f:dataAbsentReason", "source": "http://hl7.org/fhir/StructureDefinition/vitalsigns" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.id", "path": "Observation.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.meta", "path": "Observation.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.implicitRules", "path": "Observation.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Observation.language", "path": "Observation.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Observation.text", "path": "Observation.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.contained", "path": "Observation.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.extension", "path": "Observation.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.modifierExtension", "path": "Observation.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Observation.identifier", "path": "Observation.identifier", "min": 0, "max": "*", "base": { "path": "Observation.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.basedOn", "path": "Observation.basedOn", "min": 0, "max": "*", "base": { "path": "Observation.basedOn", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/CarePlan", "http://hl7.org/fhir/StructureDefinition/DeviceRequest", "http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation", "http://hl7.org/fhir/StructureDefinition/MedicationRequest", "http://hl7.org/fhir/StructureDefinition/NutritionOrder", "http://hl7.org/fhir/StructureDefinition/ServiceRequest" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.partOf", "path": "Observation.partOf", "comment": "To link an Observation to an Encounter use `encounter`. See the [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below for guidance on referencing another Observation.", "min": 0, "max": "*", "base": { "path": "Observation.partOf", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/MedicationAdministration", "http://hl7.org/fhir/StructureDefinition/MedicationDispense", "http://hl7.org/fhir/StructureDefinition/MedicationStatement", "http://hl7.org/fhir/StructureDefinition/Procedure", "http://hl7.org/fhir/StructureDefinition/Immunization", "http://hl7.org/fhir/StructureDefinition/ImagingStudy" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.status", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-display-hint", "valueString": "default: final" } ], "path": "Observation.status", "comment": "This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid.", "min": 1, "max": "1", "base": { "path": "Observation.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": true, "isModifierReason": "This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Status" } ], "strength": "required", "valueSet": "http://hl7.org/fhir/ValueSet/observation-status|4.0.1" } }, { "id": "Observation.category", "path": "Observation.category", "slicing": { "discriminator": [ { "type": "value", "path": "coding.code" }, { "type": "value", "path": "coding.system" } ], "ordered": false, "rules": "open" }, "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 1, "max": "*", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.category:VSCat", "path": "Observation.category", "sliceName": "VSCat", "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 1, "max": "1", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.category:VSCat.id", "path": "Observation.category.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.extension", "path": "Observation.category.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding", "path": "Observation.category.coding", "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 1, "max": "*", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.id", "path": "Observation.category.coding.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding.extension", "path": "Observation.category.coding.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding.system", "path": "Observation.category.coding.system", "comment": "The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.", "min": 1, "max": "1", "base": { "path": "Coding.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://terminology.hl7.org/CodeSystem/observation-category", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.version", "path": "Observation.category.coding.version", "comment": "Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.", "min": 0, "max": "1", "base": { "path": "Coding.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.code", "path": "Observation.category.coding.code", "min": 1, "max": "1", "base": { "path": "Coding.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "vital-signs", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.display", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.category.coding.display", "min": 0, "max": "1", "base": { "path": "Coding.display", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.userSelected", "path": "Observation.category.coding.userSelected", "comment": "Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.", "min": 0, "max": "1", "base": { "path": "Coding.userSelected", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.text", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.category.text", "comment": "Very often the text is the same as a displayName of one of the codings.", "min": 0, "max": "1", "base": { "path": "CodeableConcept.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code", "path": "Observation.code", "comment": "additional codes that translate or map to this code are allowed. For example a more granular LOINC code or code that is used locally in a system.", "min": 1, "max": "1", "base": { "path": "Observation.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSigns" } ], "strength": "extensible", "description": "This identifies the vital sign result type.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-vitalsignresult" } }, { "id": "Observation.code.id", "path": "Observation.code.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.extension", "path": "Observation.code.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding", "path": "Observation.code.coding", "slicing": { "discriminator": [ { "type": "value", "path": "code" }, { "type": "value", "path": "system" } ], "ordered": false, "rules": "open" }, "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 0, "max": "*", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:VitalsPanelCode", "path": "Observation.code.coding", "sliceName": "VitalsPanelCode", "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 0, "max": "*", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:VitalsPanelCode.id", "path": "Observation.code.coding.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding:VitalsPanelCode.extension", "path": "Observation.code.coding.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding:VitalsPanelCode.system", "path": "Observation.code.coding.system", "comment": "The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.", "min": 0, "max": "1", "base": { "path": "Coding.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://loinc.org", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:VitalsPanelCode.version", "path": "Observation.code.coding.version", "comment": "Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.", "min": 0, "max": "1", "base": { "path": "Coding.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:VitalsPanelCode.code", "path": "Observation.code.coding.code", "min": 0, "max": "1", "base": { "path": "Coding.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "85353-1", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:VitalsPanelCode.display", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.code.coding.display", "min": 0, "max": "1", "base": { "path": "Coding.display", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:VitalsPanelCode.userSelected", "path": "Observation.code.coding.userSelected", "comment": "Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.", "min": 0, "max": "1", "base": { "path": "Coding.userSelected", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.text", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.code.text", "comment": "Very often the text is the same as a displayName of one of the codings.", "min": 0, "max": "1", "base": { "path": "CodeableConcept.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.subject", "path": "Observation.subject", "comment": "One would expect this element to be a cardinality of 1..1. The only circumstance in which the subject can be missing is when the observation is made by a device that does not know the patient. In this case, the observation SHALL be matched to a patient through some context/channel matching technique, and at this point, the observation should be updated.", "min": 1, "max": "1", "base": { "path": "Observation.subject", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.focus", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "path": "Observation.focus", "comment": "Typically, an observation is made about the subject - a patient, or group of patients, location, or device - and the distinction between the subject and what is directly measured for an observation is specified in the observation code itself ( e.g., \"Blood Glucose\") and does not need to be represented separately using this element. Use `specimen` if a reference to a specimen is required. If a code is required instead of a resource use either `bodysite` for bodysites or the standard extension [focusCode](http://hl7.org/fhir/extension-observation-focuscode.html).", "min": 0, "max": "*", "base": { "path": "Observation.focus", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.encounter", "path": "Observation.encounter", "comment": "This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests).", "min": 0, "max": "1", "base": { "path": "Observation.encounter", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Encounter" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.effective[x]", "path": "Observation.effective[x]", "comment": "At least a date should be present unless this observation is a historical report. For recording imprecise or \"fuzzy\" times (For example, a blood glucose measurement taken \"after breakfast\") use the [Timing](http://hl7.org/fhir/datatypes.html#timing) datatype which allow the measurement to be tied to regular life events.", "min": 1, "max": "1", "base": { "path": "Observation.effective[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "vs-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "vs-1", "severity": "error", "human": "if Observation.effective[x] is dateTime and has a value then that value shall be precise to the day", "expression": "($this as dateTime).toString().length() >= 8", "xpath": "f:effectiveDateTime[matches(@value, '^\\d{4}-\\d{2}-\\d{2}')]" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.issued", "path": "Observation.issued", "comment": "For Observations that don’t require review and verification, it may be the same as the [`lastUpdated` ](http://hl7.org/fhir/resource-definitions.html#Meta.lastUpdated) time of the resource itself. For Observations that do require review and verification for certain updates, it might not be the same as the `lastUpdated` time of the resource itself due to a non-clinically significant update that doesn’t require the new version to be reviewed and verified again.", "min": 0, "max": "1", "base": { "path": "Observation.issued", "min": 0, "max": "1" }, "type": [ { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.performer", "path": "Observation.performer", "min": 0, "max": "*", "base": { "path": "Observation.performer", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/CareTeam", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/RelatedPerson" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]", "path": "Observation.value[x]", "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "0", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" }, { "code": "CodeableConcept" }, { "code": "string" }, { "code": "boolean" }, { "code": "integer" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "SampledData" }, { "code": "time" }, { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "obs-7", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.dataAbsentReason", "path": "Observation.dataAbsentReason", "comment": "Null or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"specimen unsatisfactory\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Note that an observation may only be reported if there are values to report. For example differential cell counts values may be reported only when > 0. Because of these options, use-case agreements are required to interpret general observations for null or exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.interpretation", "path": "Observation.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.note", "path": "Observation.note", "comment": "May include general statements about the observation, or statements about significant, unexpected or unreliable results values, or information about its source when relevant to its interpretation.", "min": 0, "max": "*", "base": { "path": "Observation.note", "min": 0, "max": "*" }, "type": [ { "code": "Annotation" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.bodySite", "path": "Observation.bodySite", "comment": "Only used if not implicit in code found in Observation.code. In many systems, this may be represented as a related observation instead of an inline component. \n\nIf the use case requires BodySite to be handled as a separate resource (e.g. to identify and track separately) then use the standard extension[ bodySite](http://hl7.org/fhir/extension-bodysite.html).", "min": 0, "max": "1", "base": { "path": "Observation.bodySite", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodySite" } ], "strength": "example", "description": "Codes describing anatomical locations. May include laterality.", "valueSet": "http://hl7.org/fhir/ValueSet/body-site" } }, { "id": "Observation.method", "path": "Observation.method", "comment": "Only used if not implicit in code for Observation.code.", "min": 0, "max": "1", "base": { "path": "Observation.method", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationMethod" } ], "strength": "example", "description": "Methods for simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-methods" } }, { "id": "Observation.specimen", "path": "Observation.specimen", "comment": "Should only be used if not implicit in code found in `Observation.code`. Observations are not made on specimens themselves; they are made on a subject, but in many cases by the means of a specimen. Note that although specimens are often involved, they are not always tracked and reported explicitly. Also note that observation resources may be used in contexts that track the specimen explicitly (e.g. Diagnostic Report).", "min": 0, "max": "1", "base": { "path": "Observation.specimen", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Specimen" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.device", "path": "Observation.device", "comment": "Note that this is not meant to represent a device involved in the transmission of the result, e.g., a gateway. Such devices may be documented using the Provenance resource where relevant.", "min": 0, "max": "1", "base": { "path": "Observation.device", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/DeviceMetric" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange", "path": "Observation.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.referenceRange", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "obs-3", "severity": "error", "human": "Must have at least a low or a high or text", "expression": "low.exists() or high.exists() or text.exists()", "xpath": "(exists(f:low) or exists(f:high)or exists(f:text))" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.id", "path": "Observation.referenceRange.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.extension", "path": "Observation.referenceRange.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.modifierExtension", "path": "Observation.referenceRange.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.referenceRange.low", "path": "Observation.referenceRange.low", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.low", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.high", "path": "Observation.referenceRange.high", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.high", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.type", "path": "Observation.referenceRange.type", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal range is assumed.", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeMeaning" } ], "strength": "preferred", "description": "Code for the meaning of a reference range.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-meaning" } }, { "id": "Observation.referenceRange.appliesTo", "path": "Observation.referenceRange.appliesTo", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal population is assumed.", "min": 0, "max": "*", "base": { "path": "Observation.referenceRange.appliesTo", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeType" } ], "strength": "example", "description": "Codes identifying the population the reference range applies to.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-appliesto" } }, { "id": "Observation.referenceRange.age", "path": "Observation.referenceRange.age", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.age", "min": 0, "max": "1" }, "type": [ { "code": "Range" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.text", "path": "Observation.referenceRange.text", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.hasMember", "path": "Observation.hasMember", "comment": "When using this element, an observation will typically have either a value or a set of related resources, although both may be present in some cases. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below. Note that a system may calculate results from [QuestionnaireResponse](http://hl7.org/fhir/questionnaireresponse.html) into a final score and represent the score as an Observation.", "min": 1, "max": "*", "base": { "path": "Observation.hasMember", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence", "http://hl7.org/fhir/StructureDefinition/vitalsigns" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.derivedFrom", "path": "Observation.derivedFrom", "comment": "All the reference choices that are listed in this element can represent clinical observations and other measurements that may be the source for a derived value. The most common reference will be another Observation. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below.", "min": 0, "max": "*", "base": { "path": "Observation.derivedFrom", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/DocumentReference", "http://hl7.org/fhir/StructureDefinition/ImagingStudy", "http://hl7.org/fhir/StructureDefinition/Media", "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence", "http://hl7.org/fhir/StructureDefinition/vitalsigns" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component", "path": "Observation.component", "comment": "For a discussion on the ways Observations can be assembled in groups together see [Notes](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "*", "base": { "path": "Observation.component", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "vs-3", "severity": "error", "human": "If there is no a value a data absent reason must be present", "expression": "value.exists() or dataAbsentReason.exists()", "xpath": "f:*[starts-with(local-name(.), 'value')] or f:dataAbsentReason" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.component.id", "path": "Observation.component.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.extension", "path": "Observation.component.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.modifierExtension", "path": "Observation.component.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.component.code", "path": "Observation.component.code", "comment": "*All* code-value and component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.", "min": 1, "max": "1", "base": { "path": "Observation.component.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSigns" } ], "strength": "extensible", "description": "This identifies the vital sign result type.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-vitalsignresult" } }, { "id": "Observation.component.value[x]", "path": "Observation.component.value[x]", "comment": "Used when observation has a set of component observations. An observation may have both a value (e.g. an Apgar score) and component observations (the observations from which the Apgar score was derived). If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.component.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" }, { "code": "CodeableConcept" }, { "code": "string" }, { "code": "boolean" }, { "code": "integer" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "SampledData" }, { "code": "time" }, { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "vs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSignsUnits" } ], "strength": "required", "description": "Common UCUM units for recording Vital Signs.", "valueSet": "http://hl7.org/fhir/ValueSet/ucum-vitals-common|4.0.1" } }, { "id": "Observation.component.dataAbsentReason", "path": "Observation.component.dataAbsentReason", "comment": "\"Null\" or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"test not done\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Because of these options, use-case agreements are required to interpret general observations for exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.component.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6", "vs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.component.interpretation", "path": "Observation.component.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.component.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.component.referenceRange", "path": "Observation.component.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.component.referenceRange", "min": 0, "max": "*" }, "contentReference": "#Observation.referenceRange", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "Observation", "path": "Observation", "min": 0, "max": "*" }, { "id": "Observation.code", "path": "Observation.code", "comment": "additional codes that translate or map to this code are allowed. For example a more granular LOINC code or code that is used locally in a system." }, { "id": "Observation.code.coding", "path": "Observation.code.coding", "slicing": { "discriminator": [ { "type": "value", "path": "code" }, { "type": "value", "path": "system" } ], "ordered": false, "rules": "open" } }, { "id": "Observation.code.coding:VitalsPanelCode", "path": "Observation.code.coding", "sliceName": "VitalsPanelCode" }, { "id": "Observation.code.coding:VitalsPanelCode.system", "path": "Observation.code.coding.system", "type": [ { "code": "uri" } ], "fixedUri": "http://loinc.org" }, { "id": "Observation.code.coding:VitalsPanelCode.code", "path": "Observation.code.coding.code", "type": [ { "code": "code" } ], "fixedCode": "85353-1" }, { "id": "Observation.value[x]", "path": "Observation.value[x]", "min": 0, "max": "0" }, { "id": "Observation.hasMember", "path": "Observation.hasMember", "min": 1, "max": "*", "mustSupport": true } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/bodyheight", "resource": { "resourceType": "StructureDefinition", "id": "bodyheight", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-summary", "valueMarkdown": "#### Complete Summary of the Mandatory Requirements\r\r1. One code in `Observation.code` which must have\r - a fixed `Observation.code.coding.system`=**'http ://loinc.org'**\r - a fixed `Observation.code.coding.code`= **'8302-2'**\r - 8306-3 -Body height - lying (i.e., body length - typically used for infants) MAY be included as an additional observation code - Other additional Codings are allowed in `Observation.code`- e.g. more specific LOINC\r Codes, SNOMED CT concepts, system specific codes. All codes\r SHALL have an system value\r1. Either one Observation.valueQuantity or, if there is no value, one code in Observation.DataAbsentReason\r - Each Observation.valueQuantity must have:\r - One numeric value in Observation.valueQuantity.value\r - a fixed Observation.valueQuantity.system=\"http://unitsofmeasure.org\"\r - a UCUM unit code in Observation.valueQuantity.code = **'cm', or '[in_i]'**" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 5 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "oo" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/bodyheight", "version": "4.0.1", "name": "observation-bodyheight", "title": "Observation Body Height Profile", "status": "draft", "experimental": false, "date": "2018-08-11", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Observation", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/vitalsigns", "derivation": "constraint", "snapshot": { "element": [ { "id": "Observation", "path": "Observation", "comment": "Used for simple observations such as device measurements, laboratory atomic results, vital signs, height, weight, smoking status, comments, etc. Other resources are used to provide context for observations such as laboratory reports, etc.", "min": 0, "max": "*", "base": { "path": "Observation", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "obs-6", "severity": "error", "human": "dataAbsentReason SHALL only be present if Observation.value[x] is not present", "expression": "dataAbsentReason.empty() or value.empty()", "xpath": "not(exists(f:dataAbsentReason)) or (not(exists(*[starts-with(local-name(.), 'value')])))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "obs-7", "severity": "error", "human": "If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present", "expression": "value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()", "xpath": "not(f:*[starts-with(local-name(.), 'value')] and (for $coding in f:code/f:coding return f:component/f:code/f:coding[f:code/@value=$coding/f:code/@value] [f:system/@value=$coding/f:system/@value]))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "vs-2", "severity": "error", "human": "If there is no component or hasMember element then either a value[x] or a data absent reason must be present.", "expression": "(component.empty() and hasMember.empty()) implies (dataAbsentReason.exists() or value.exists())", "xpath": "f:component or f:memberOF or f:*[starts-with(local-name(.), 'value')] or f:dataAbsentReason", "source": "http://hl7.org/fhir/StructureDefinition/vitalsigns" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.id", "path": "Observation.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.meta", "path": "Observation.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.implicitRules", "path": "Observation.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Observation.language", "path": "Observation.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Observation.text", "path": "Observation.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.contained", "path": "Observation.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.extension", "path": "Observation.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.modifierExtension", "path": "Observation.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Observation.identifier", "path": "Observation.identifier", "min": 0, "max": "*", "base": { "path": "Observation.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.basedOn", "path": "Observation.basedOn", "min": 0, "max": "*", "base": { "path": "Observation.basedOn", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/CarePlan", "http://hl7.org/fhir/StructureDefinition/DeviceRequest", "http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation", "http://hl7.org/fhir/StructureDefinition/MedicationRequest", "http://hl7.org/fhir/StructureDefinition/NutritionOrder", "http://hl7.org/fhir/StructureDefinition/ServiceRequest" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.partOf", "path": "Observation.partOf", "comment": "To link an Observation to an Encounter use `encounter`. See the [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below for guidance on referencing another Observation.", "min": 0, "max": "*", "base": { "path": "Observation.partOf", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/MedicationAdministration", "http://hl7.org/fhir/StructureDefinition/MedicationDispense", "http://hl7.org/fhir/StructureDefinition/MedicationStatement", "http://hl7.org/fhir/StructureDefinition/Procedure", "http://hl7.org/fhir/StructureDefinition/Immunization", "http://hl7.org/fhir/StructureDefinition/ImagingStudy" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.status", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-display-hint", "valueString": "default: final" } ], "path": "Observation.status", "comment": "This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid.", "min": 1, "max": "1", "base": { "path": "Observation.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": true, "isModifierReason": "This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Status" } ], "strength": "required", "valueSet": "http://hl7.org/fhir/ValueSet/observation-status|4.0.1" } }, { "id": "Observation.category", "path": "Observation.category", "slicing": { "discriminator": [ { "type": "value", "path": "coding.code" }, { "type": "value", "path": "coding.system" } ], "ordered": false, "rules": "open" }, "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 1, "max": "*", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.category:VSCat", "path": "Observation.category", "sliceName": "VSCat", "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 1, "max": "1", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.category:VSCat.id", "path": "Observation.category.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.extension", "path": "Observation.category.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding", "path": "Observation.category.coding", "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 1, "max": "*", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.id", "path": "Observation.category.coding.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding.extension", "path": "Observation.category.coding.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding.system", "path": "Observation.category.coding.system", "comment": "The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.", "min": 1, "max": "1", "base": { "path": "Coding.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://terminology.hl7.org/CodeSystem/observation-category", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.version", "path": "Observation.category.coding.version", "comment": "Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.", "min": 0, "max": "1", "base": { "path": "Coding.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.code", "path": "Observation.category.coding.code", "min": 1, "max": "1", "base": { "path": "Coding.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "vital-signs", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.display", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.category.coding.display", "min": 0, "max": "1", "base": { "path": "Coding.display", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.userSelected", "path": "Observation.category.coding.userSelected", "comment": "Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.", "min": 0, "max": "1", "base": { "path": "Coding.userSelected", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.text", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.category.text", "comment": "Very often the text is the same as a displayName of one of the codings.", "min": 0, "max": "1", "base": { "path": "CodeableConcept.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code", "path": "Observation.code", "comment": "additional codes that translate or map to this code are allowed. For example a more granular LOINC code or code that is used locally in a system.", "min": 1, "max": "1", "base": { "path": "Observation.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSigns" } ], "strength": "extensible", "description": "This identifies the vital sign result type.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-vitalsignresult" } }, { "id": "Observation.code.id", "path": "Observation.code.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.extension", "path": "Observation.code.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding", "path": "Observation.code.coding", "slicing": { "discriminator": [ { "type": "value", "path": "code" }, { "type": "value", "path": "system" } ], "ordered": false, "rules": "open" }, "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 0, "max": "*", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BodyHeightCode", "path": "Observation.code.coding", "sliceName": "BodyHeightCode", "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 1, "max": "1", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BodyHeightCode.id", "path": "Observation.code.coding.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding:BodyHeightCode.extension", "path": "Observation.code.coding.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding:BodyHeightCode.system", "path": "Observation.code.coding.system", "comment": "The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.", "min": 1, "max": "1", "base": { "path": "Coding.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://loinc.org", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BodyHeightCode.version", "path": "Observation.code.coding.version", "comment": "Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.", "min": 0, "max": "1", "base": { "path": "Coding.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BodyHeightCode.code", "path": "Observation.code.coding.code", "min": 1, "max": "1", "base": { "path": "Coding.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "8302-2", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BodyHeightCode.display", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.code.coding.display", "min": 0, "max": "1", "base": { "path": "Coding.display", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BodyHeightCode.userSelected", "path": "Observation.code.coding.userSelected", "comment": "Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.", "min": 0, "max": "1", "base": { "path": "Coding.userSelected", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.text", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.code.text", "comment": "Very often the text is the same as a displayName of one of the codings.", "min": 0, "max": "1", "base": { "path": "CodeableConcept.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.subject", "path": "Observation.subject", "comment": "One would expect this element to be a cardinality of 1..1. The only circumstance in which the subject can be missing is when the observation is made by a device that does not know the patient. In this case, the observation SHALL be matched to a patient through some context/channel matching technique, and at this point, the observation should be updated.", "min": 1, "max": "1", "base": { "path": "Observation.subject", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.focus", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "path": "Observation.focus", "comment": "Typically, an observation is made about the subject - a patient, or group of patients, location, or device - and the distinction between the subject and what is directly measured for an observation is specified in the observation code itself ( e.g., \"Blood Glucose\") and does not need to be represented separately using this element. Use `specimen` if a reference to a specimen is required. If a code is required instead of a resource use either `bodysite` for bodysites or the standard extension [focusCode](http://hl7.org/fhir/extension-observation-focuscode.html).", "min": 0, "max": "*", "base": { "path": "Observation.focus", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.encounter", "path": "Observation.encounter", "comment": "This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests).", "min": 0, "max": "1", "base": { "path": "Observation.encounter", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Encounter" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.effective[x]", "path": "Observation.effective[x]", "comment": "At least a date should be present unless this observation is a historical report. For recording imprecise or \"fuzzy\" times (For example, a blood glucose measurement taken \"after breakfast\") use the [Timing](http://hl7.org/fhir/datatypes.html#timing) datatype which allow the measurement to be tied to regular life events.", "min": 1, "max": "1", "base": { "path": "Observation.effective[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "vs-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "vs-1", "severity": "error", "human": "if Observation.effective[x] is dateTime and has a value then that value shall be precise to the day", "expression": "($this as dateTime).toString().length() >= 8", "xpath": "f:effectiveDateTime[matches(@value, '^\\d{4}-\\d{2}-\\d{2}')]" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.issued", "path": "Observation.issued", "comment": "For Observations that don’t require review and verification, it may be the same as the [`lastUpdated` ](http://hl7.org/fhir/resource-definitions.html#Meta.lastUpdated) time of the resource itself. For Observations that do require review and verification for certain updates, it might not be the same as the `lastUpdated` time of the resource itself due to a non-clinically significant update that doesn’t require the new version to be reviewed and verified again.", "min": 0, "max": "1", "base": { "path": "Observation.issued", "min": 0, "max": "1" }, "type": [ { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.performer", "path": "Observation.performer", "min": 0, "max": "*", "base": { "path": "Observation.performer", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/CareTeam", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/RelatedPerson" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]", "path": "Observation.value[x]", "slicing": { "discriminator": [ { "type": "type", "path": "$this" } ], "ordered": false, "rules": "closed" }, "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "obs-7", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity", "path": "Observation.value[x]", "sliceName": "valueQuantity", "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "obs-7", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.id", "path": "Observation.value[x].id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.value[x]:valueQuantity.extension", "path": "Observation.value[x].extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.value[x]:valueQuantity.value", "path": "Observation.value[x].value", "comment": "The implicit precision in the value should always be honored. Monetary values have their own rules for handling precision (refer to standard accounting text books).", "min": 1, "max": "1", "base": { "path": "Quantity.value", "min": 0, "max": "1" }, "type": [ { "code": "decimal" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.comparator", "path": "Observation.value[x].comparator", "min": 0, "max": "1", "base": { "path": "Quantity.comparator", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "meaningWhenMissing": "If there is no comparator, then there is no modification of the value", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This is labeled as \"Is Modifier\" because the comparator modifies the interpretation of the value significantly. If there is no comparator, then there is no modification of the value", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "QuantityComparator" } ], "strength": "required", "description": "How the Quantity should be understood and represented.", "valueSet": "http://hl7.org/fhir/ValueSet/quantity-comparator|4.0.1" } }, { "id": "Observation.value[x]:valueQuantity.unit", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.value[x].unit", "min": 1, "max": "1", "base": { "path": "Quantity.unit", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.system", "path": "Observation.value[x].system", "min": 1, "max": "1", "base": { "path": "Quantity.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://unitsofmeasure.org", "condition": [ "qty-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.code", "path": "Observation.value[x].code", "comment": "The preferred system is UCUM, but SNOMED CT can also be used (for customary units) or ISO 4217 for currency. The context of use may additionally require a code from a particular system.", "min": 1, "max": "1", "base": { "path": "Quantity.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodyLengthUnits" } ], "strength": "required", "description": "Common UCUM units for body length measures such as Body Height and Head Circumference.", "valueSet": "http://hl7.org/fhir/ValueSet/ucum-bodylength|4.0.1" } }, { "id": "Observation.dataAbsentReason", "path": "Observation.dataAbsentReason", "comment": "Null or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"specimen unsatisfactory\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Note that an observation may only be reported if there are values to report. For example differential cell counts values may be reported only when > 0. Because of these options, use-case agreements are required to interpret general observations for null or exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.interpretation", "path": "Observation.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.note", "path": "Observation.note", "comment": "May include general statements about the observation, or statements about significant, unexpected or unreliable results values, or information about its source when relevant to its interpretation.", "min": 0, "max": "*", "base": { "path": "Observation.note", "min": 0, "max": "*" }, "type": [ { "code": "Annotation" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.bodySite", "path": "Observation.bodySite", "comment": "Only used if not implicit in code found in Observation.code. In many systems, this may be represented as a related observation instead of an inline component. \n\nIf the use case requires BodySite to be handled as a separate resource (e.g. to identify and track separately) then use the standard extension[ bodySite](http://hl7.org/fhir/extension-bodysite.html).", "min": 0, "max": "1", "base": { "path": "Observation.bodySite", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodySite" } ], "strength": "example", "description": "Codes describing anatomical locations. May include laterality.", "valueSet": "http://hl7.org/fhir/ValueSet/body-site" } }, { "id": "Observation.method", "path": "Observation.method", "comment": "Only used if not implicit in code for Observation.code.", "min": 0, "max": "1", "base": { "path": "Observation.method", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationMethod" } ], "strength": "example", "description": "Methods for simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-methods" } }, { "id": "Observation.specimen", "path": "Observation.specimen", "comment": "Should only be used if not implicit in code found in `Observation.code`. Observations are not made on specimens themselves; they are made on a subject, but in many cases by the means of a specimen. Note that although specimens are often involved, they are not always tracked and reported explicitly. Also note that observation resources may be used in contexts that track the specimen explicitly (e.g. Diagnostic Report).", "min": 0, "max": "1", "base": { "path": "Observation.specimen", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Specimen" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.device", "path": "Observation.device", "comment": "Note that this is not meant to represent a device involved in the transmission of the result, e.g., a gateway. Such devices may be documented using the Provenance resource where relevant.", "min": 0, "max": "1", "base": { "path": "Observation.device", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/DeviceMetric" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange", "path": "Observation.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.referenceRange", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "obs-3", "severity": "error", "human": "Must have at least a low or a high or text", "expression": "low.exists() or high.exists() or text.exists()", "xpath": "(exists(f:low) or exists(f:high)or exists(f:text))" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.id", "path": "Observation.referenceRange.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.extension", "path": "Observation.referenceRange.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.modifierExtension", "path": "Observation.referenceRange.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.referenceRange.low", "path": "Observation.referenceRange.low", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.low", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.high", "path": "Observation.referenceRange.high", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.high", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.type", "path": "Observation.referenceRange.type", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal range is assumed.", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeMeaning" } ], "strength": "preferred", "description": "Code for the meaning of a reference range.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-meaning" } }, { "id": "Observation.referenceRange.appliesTo", "path": "Observation.referenceRange.appliesTo", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal population is assumed.", "min": 0, "max": "*", "base": { "path": "Observation.referenceRange.appliesTo", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeType" } ], "strength": "example", "description": "Codes identifying the population the reference range applies to.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-appliesto" } }, { "id": "Observation.referenceRange.age", "path": "Observation.referenceRange.age", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.age", "min": 0, "max": "1" }, "type": [ { "code": "Range" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.text", "path": "Observation.referenceRange.text", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.hasMember", "path": "Observation.hasMember", "comment": "When using this element, an observation will typically have either a value or a set of related resources, although both may be present in some cases. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below. Note that a system may calculate results from [QuestionnaireResponse](http://hl7.org/fhir/questionnaireresponse.html) into a final score and represent the score as an Observation.", "min": 0, "max": "*", "base": { "path": "Observation.hasMember", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence", "http://hl7.org/fhir/StructureDefinition/vitalsigns" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.derivedFrom", "path": "Observation.derivedFrom", "comment": "All the reference choices that are listed in this element can represent clinical observations and other measurements that may be the source for a derived value. The most common reference will be another Observation. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below.", "min": 0, "max": "*", "base": { "path": "Observation.derivedFrom", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/DocumentReference", "http://hl7.org/fhir/StructureDefinition/ImagingStudy", "http://hl7.org/fhir/StructureDefinition/Media", "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence", "http://hl7.org/fhir/StructureDefinition/vitalsigns" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component", "path": "Observation.component", "comment": "For a discussion on the ways Observations can be assembled in groups together see [Notes](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "*", "base": { "path": "Observation.component", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "vs-3", "severity": "error", "human": "If there is no a value a data absent reason must be present", "expression": "value.exists() or dataAbsentReason.exists()", "xpath": "f:*[starts-with(local-name(.), 'value')] or f:dataAbsentReason" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.component.id", "path": "Observation.component.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.extension", "path": "Observation.component.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.modifierExtension", "path": "Observation.component.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.component.code", "path": "Observation.component.code", "comment": "*All* code-value and component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.", "min": 1, "max": "1", "base": { "path": "Observation.component.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSigns" } ], "strength": "extensible", "description": "This identifies the vital sign result type.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-vitalsignresult" } }, { "id": "Observation.component.value[x]", "path": "Observation.component.value[x]", "comment": "Used when observation has a set of component observations. An observation may have both a value (e.g. an Apgar score) and component observations (the observations from which the Apgar score was derived). If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.component.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" }, { "code": "CodeableConcept" }, { "code": "string" }, { "code": "boolean" }, { "code": "integer" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "SampledData" }, { "code": "time" }, { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "vs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSignsUnits" } ], "strength": "required", "description": "Common UCUM units for recording Vital Signs.", "valueSet": "http://hl7.org/fhir/ValueSet/ucum-vitals-common|4.0.1" } }, { "id": "Observation.component.dataAbsentReason", "path": "Observation.component.dataAbsentReason", "comment": "\"Null\" or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"test not done\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Because of these options, use-case agreements are required to interpret general observations for exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.component.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6", "vs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.component.interpretation", "path": "Observation.component.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.component.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.component.referenceRange", "path": "Observation.component.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.component.referenceRange", "min": 0, "max": "*" }, "contentReference": "#Observation.referenceRange", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "Observation", "path": "Observation", "min": 0, "max": "*" }, { "id": "Observation.code", "path": "Observation.code", "comment": "additional codes that translate or map to this code are allowed. For example a more granular LOINC code or code that is used locally in a system." }, { "id": "Observation.code.coding", "path": "Observation.code.coding", "slicing": { "discriminator": [ { "type": "value", "path": "code" }, { "type": "value", "path": "system" } ], "ordered": false, "rules": "open" } }, { "id": "Observation.code.coding:BodyHeightCode", "path": "Observation.code.coding", "sliceName": "BodyHeightCode", "min": 1, "max": "1" }, { "id": "Observation.code.coding:BodyHeightCode.system", "path": "Observation.code.coding.system", "min": 1, "max": "1", "type": [ { "code": "uri" } ], "fixedUri": "http://loinc.org" }, { "id": "Observation.code.coding:BodyHeightCode.code", "path": "Observation.code.coding.code", "min": 1, "max": "1", "type": [ { "code": "code" } ], "fixedCode": "8302-2" }, { "id": "Observation.valueQuantity", "path": "Observation.valueQuantity" }, { "id": "Observation.valueQuantity.value", "path": "Observation.valueQuantity.value", "min": 1, "max": "1", "type": [ { "code": "decimal" } ], "mustSupport": true }, { "id": "Observation.valueQuantity.unit", "path": "Observation.valueQuantity.unit", "min": 1, "max": "1", "type": [ { "code": "string" } ], "mustSupport": true }, { "id": "Observation.valueQuantity.system", "path": "Observation.valueQuantity.system", "min": 1, "max": "1", "type": [ { "code": "uri" } ], "fixedUri": "http://unitsofmeasure.org", "mustSupport": true }, { "id": "Observation.valueQuantity.code", "path": "Observation.valueQuantity.code", "min": 1, "max": "1", "type": [ { "code": "code" } ], "mustSupport": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodyLengthUnits" } ], "strength": "required", "description": "Common UCUM units for body length measures such as Body Height and Head Circumference.", "valueSet": "http://hl7.org/fhir/ValueSet/ucum-bodylength|4.0.1" } } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/resprate", "resource": { "resourceType": "StructureDefinition", "id": "resprate", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-summary", "valueMarkdown": "#### Complete Summary of the Mandatory Requirements\r\r1. One code in `Observation.code` which must have\r - a fixed `Observation.code.coding.system`=**'http ://loinc.org'**\r - a fixed `Observation.code.coding.code`= **'9279-1'**\r - Other additional Codings are allowed in `Observation.code`- e.g. more specific LOINC\r Codes, SNOMED CT concepts, system specific codes. All codes\r SHALL have an system value\r1. Either one Observation.valueQuantity or, if there is no value, one code in Observation.DataAbsentReason\r - Each Observation.valueQuantity must have:\r - One numeric value in Observation.valueQuantity.value\r - a fixed Observation.valueQuantity.system=\"http://unitsofmeasure.org\"\r - a UCUM unit code in Observation.valueQuantity.code = **'/min'**" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 5 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "oo" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/resprate", "version": "4.0.1", "name": "observation-resprate", "title": "Observation Respiratory Rate Profile", "status": "draft", "experimental": false, "date": "2018-08-11", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Observation", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/vitalsigns", "derivation": "constraint", "snapshot": { "element": [ { "id": "Observation", "path": "Observation", "comment": "Used for simple observations such as device measurements, laboratory atomic results, vital signs, height, weight, smoking status, comments, etc. Other resources are used to provide context for observations such as laboratory reports, etc.", "min": 0, "max": "*", "base": { "path": "Observation", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "obs-6", "severity": "error", "human": "dataAbsentReason SHALL only be present if Observation.value[x] is not present", "expression": "dataAbsentReason.empty() or value.empty()", "xpath": "not(exists(f:dataAbsentReason)) or (not(exists(*[starts-with(local-name(.), 'value')])))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "obs-7", "severity": "error", "human": "If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present", "expression": "value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()", "xpath": "not(f:*[starts-with(local-name(.), 'value')] and (for $coding in f:code/f:coding return f:component/f:code/f:coding[f:code/@value=$coding/f:code/@value] [f:system/@value=$coding/f:system/@value]))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "vs-2", "severity": "error", "human": "If there is no component or hasMember element then either a value[x] or a data absent reason must be present.", "expression": "(component.empty() and hasMember.empty()) implies (dataAbsentReason.exists() or value.exists())", "xpath": "f:component or f:memberOF or f:*[starts-with(local-name(.), 'value')] or f:dataAbsentReason", "source": "http://hl7.org/fhir/StructureDefinition/vitalsigns" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.id", "path": "Observation.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.meta", "path": "Observation.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.implicitRules", "path": "Observation.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Observation.language", "path": "Observation.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Observation.text", "path": "Observation.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.contained", "path": "Observation.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.extension", "path": "Observation.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.modifierExtension", "path": "Observation.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Observation.identifier", "path": "Observation.identifier", "min": 0, "max": "*", "base": { "path": "Observation.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.basedOn", "path": "Observation.basedOn", "min": 0, "max": "*", "base": { "path": "Observation.basedOn", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/CarePlan", "http://hl7.org/fhir/StructureDefinition/DeviceRequest", "http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation", "http://hl7.org/fhir/StructureDefinition/MedicationRequest", "http://hl7.org/fhir/StructureDefinition/NutritionOrder", "http://hl7.org/fhir/StructureDefinition/ServiceRequest" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.partOf", "path": "Observation.partOf", "comment": "To link an Observation to an Encounter use `encounter`. See the [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below for guidance on referencing another Observation.", "min": 0, "max": "*", "base": { "path": "Observation.partOf", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/MedicationAdministration", "http://hl7.org/fhir/StructureDefinition/MedicationDispense", "http://hl7.org/fhir/StructureDefinition/MedicationStatement", "http://hl7.org/fhir/StructureDefinition/Procedure", "http://hl7.org/fhir/StructureDefinition/Immunization", "http://hl7.org/fhir/StructureDefinition/ImagingStudy" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.status", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-display-hint", "valueString": "default: final" } ], "path": "Observation.status", "comment": "This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid.", "min": 1, "max": "1", "base": { "path": "Observation.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": true, "isModifierReason": "This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Status" } ], "strength": "required", "valueSet": "http://hl7.org/fhir/ValueSet/observation-status|4.0.1" } }, { "id": "Observation.category", "path": "Observation.category", "slicing": { "discriminator": [ { "type": "value", "path": "coding.code" }, { "type": "value", "path": "coding.system" } ], "ordered": false, "rules": "open" }, "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 1, "max": "*", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.category:VSCat", "path": "Observation.category", "sliceName": "VSCat", "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 1, "max": "1", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.category:VSCat.id", "path": "Observation.category.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.extension", "path": "Observation.category.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding", "path": "Observation.category.coding", "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 1, "max": "*", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.id", "path": "Observation.category.coding.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding.extension", "path": "Observation.category.coding.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding.system", "path": "Observation.category.coding.system", "comment": "The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.", "min": 1, "max": "1", "base": { "path": "Coding.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://terminology.hl7.org/CodeSystem/observation-category", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.version", "path": "Observation.category.coding.version", "comment": "Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.", "min": 0, "max": "1", "base": { "path": "Coding.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.code", "path": "Observation.category.coding.code", "min": 1, "max": "1", "base": { "path": "Coding.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "vital-signs", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.display", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.category.coding.display", "min": 0, "max": "1", "base": { "path": "Coding.display", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.userSelected", "path": "Observation.category.coding.userSelected", "comment": "Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.", "min": 0, "max": "1", "base": { "path": "Coding.userSelected", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.text", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.category.text", "comment": "Very often the text is the same as a displayName of one of the codings.", "min": 0, "max": "1", "base": { "path": "CodeableConcept.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code", "path": "Observation.code", "comment": "additional codes that translate or map to this code are allowed. For example a more granular LOINC code or code that is used locally in a system.", "min": 1, "max": "1", "base": { "path": "Observation.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSigns" } ], "strength": "extensible", "description": "This identifies the vital sign result type.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-vitalsignresult" } }, { "id": "Observation.code.id", "path": "Observation.code.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.extension", "path": "Observation.code.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding", "path": "Observation.code.coding", "slicing": { "discriminator": [ { "type": "value", "path": "code" }, { "type": "value", "path": "system" } ], "ordered": false, "rules": "open" }, "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 0, "max": "*", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:RespRateCode", "path": "Observation.code.coding", "sliceName": "RespRateCode", "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 1, "max": "1", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:RespRateCode.id", "path": "Observation.code.coding.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding:RespRateCode.extension", "path": "Observation.code.coding.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding:RespRateCode.system", "path": "Observation.code.coding.system", "comment": "The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.", "min": 1, "max": "1", "base": { "path": "Coding.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://loinc.org", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:RespRateCode.version", "path": "Observation.code.coding.version", "comment": "Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.", "min": 0, "max": "1", "base": { "path": "Coding.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:RespRateCode.code", "path": "Observation.code.coding.code", "min": 1, "max": "1", "base": { "path": "Coding.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "9279-1", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:RespRateCode.display", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.code.coding.display", "min": 0, "max": "1", "base": { "path": "Coding.display", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:RespRateCode.userSelected", "path": "Observation.code.coding.userSelected", "comment": "Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.", "min": 0, "max": "1", "base": { "path": "Coding.userSelected", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.text", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.code.text", "comment": "Very often the text is the same as a displayName of one of the codings.", "min": 0, "max": "1", "base": { "path": "CodeableConcept.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.subject", "path": "Observation.subject", "comment": "One would expect this element to be a cardinality of 1..1. The only circumstance in which the subject can be missing is when the observation is made by a device that does not know the patient. In this case, the observation SHALL be matched to a patient through some context/channel matching technique, and at this point, the observation should be updated.", "min": 1, "max": "1", "base": { "path": "Observation.subject", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.focus", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "path": "Observation.focus", "comment": "Typically, an observation is made about the subject - a patient, or group of patients, location, or device - and the distinction between the subject and what is directly measured for an observation is specified in the observation code itself ( e.g., \"Blood Glucose\") and does not need to be represented separately using this element. Use `specimen` if a reference to a specimen is required. If a code is required instead of a resource use either `bodysite` for bodysites or the standard extension [focusCode](http://hl7.org/fhir/extension-observation-focuscode.html).", "min": 0, "max": "*", "base": { "path": "Observation.focus", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.encounter", "path": "Observation.encounter", "comment": "This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests).", "min": 0, "max": "1", "base": { "path": "Observation.encounter", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Encounter" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.effective[x]", "path": "Observation.effective[x]", "comment": "At least a date should be present unless this observation is a historical report. For recording imprecise or \"fuzzy\" times (For example, a blood glucose measurement taken \"after breakfast\") use the [Timing](http://hl7.org/fhir/datatypes.html#timing) datatype which allow the measurement to be tied to regular life events.", "min": 1, "max": "1", "base": { "path": "Observation.effective[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "vs-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "vs-1", "severity": "error", "human": "if Observation.effective[x] is dateTime and has a value then that value shall be precise to the day", "expression": "($this as dateTime).toString().length() >= 8", "xpath": "f:effectiveDateTime[matches(@value, '^\\d{4}-\\d{2}-\\d{2}')]" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.issued", "path": "Observation.issued", "comment": "For Observations that don’t require review and verification, it may be the same as the [`lastUpdated` ](http://hl7.org/fhir/resource-definitions.html#Meta.lastUpdated) time of the resource itself. For Observations that do require review and verification for certain updates, it might not be the same as the `lastUpdated` time of the resource itself due to a non-clinically significant update that doesn’t require the new version to be reviewed and verified again.", "min": 0, "max": "1", "base": { "path": "Observation.issued", "min": 0, "max": "1" }, "type": [ { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.performer", "path": "Observation.performer", "min": 0, "max": "*", "base": { "path": "Observation.performer", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/CareTeam", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/RelatedPerson" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]", "path": "Observation.value[x]", "slicing": { "discriminator": [ { "type": "type", "path": "$this" } ], "ordered": false, "rules": "closed" }, "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "obs-7", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity", "path": "Observation.value[x]", "sliceName": "valueQuantity", "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "obs-7", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.id", "path": "Observation.value[x].id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.value[x]:valueQuantity.extension", "path": "Observation.value[x].extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.value[x]:valueQuantity.value", "path": "Observation.value[x].value", "comment": "The implicit precision in the value should always be honored. Monetary values have their own rules for handling precision (refer to standard accounting text books).", "min": 1, "max": "1", "base": { "path": "Quantity.value", "min": 0, "max": "1" }, "type": [ { "code": "decimal" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.comparator", "path": "Observation.value[x].comparator", "min": 0, "max": "1", "base": { "path": "Quantity.comparator", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "meaningWhenMissing": "If there is no comparator, then there is no modification of the value", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This is labeled as \"Is Modifier\" because the comparator modifies the interpretation of the value significantly. If there is no comparator, then there is no modification of the value", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "QuantityComparator" } ], "strength": "required", "description": "How the Quantity should be understood and represented.", "valueSet": "http://hl7.org/fhir/ValueSet/quantity-comparator|4.0.1" } }, { "id": "Observation.value[x]:valueQuantity.unit", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.value[x].unit", "min": 1, "max": "1", "base": { "path": "Quantity.unit", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.system", "path": "Observation.value[x].system", "min": 1, "max": "1", "base": { "path": "Quantity.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://unitsofmeasure.org", "condition": [ "qty-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.code", "path": "Observation.value[x].code", "comment": "The preferred system is UCUM, but SNOMED CT can also be used (for customary units) or ISO 4217 for currency. The context of use may additionally require a code from a particular system.", "min": 1, "max": "1", "base": { "path": "Quantity.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "/min", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.dataAbsentReason", "path": "Observation.dataAbsentReason", "comment": "Null or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"specimen unsatisfactory\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Note that an observation may only be reported if there are values to report. For example differential cell counts values may be reported only when > 0. Because of these options, use-case agreements are required to interpret general observations for null or exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.interpretation", "path": "Observation.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.note", "path": "Observation.note", "comment": "May include general statements about the observation, or statements about significant, unexpected or unreliable results values, or information about its source when relevant to its interpretation.", "min": 0, "max": "*", "base": { "path": "Observation.note", "min": 0, "max": "*" }, "type": [ { "code": "Annotation" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.bodySite", "path": "Observation.bodySite", "comment": "Only used if not implicit in code found in Observation.code. In many systems, this may be represented as a related observation instead of an inline component. \n\nIf the use case requires BodySite to be handled as a separate resource (e.g. to identify and track separately) then use the standard extension[ bodySite](http://hl7.org/fhir/extension-bodysite.html).", "min": 0, "max": "1", "base": { "path": "Observation.bodySite", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodySite" } ], "strength": "example", "description": "Codes describing anatomical locations. May include laterality.", "valueSet": "http://hl7.org/fhir/ValueSet/body-site" } }, { "id": "Observation.method", "path": "Observation.method", "comment": "Only used if not implicit in code for Observation.code.", "min": 0, "max": "1", "base": { "path": "Observation.method", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationMethod" } ], "strength": "example", "description": "Methods for simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-methods" } }, { "id": "Observation.specimen", "path": "Observation.specimen", "comment": "Should only be used if not implicit in code found in `Observation.code`. Observations are not made on specimens themselves; they are made on a subject, but in many cases by the means of a specimen. Note that although specimens are often involved, they are not always tracked and reported explicitly. Also note that observation resources may be used in contexts that track the specimen explicitly (e.g. Diagnostic Report).", "min": 0, "max": "1", "base": { "path": "Observation.specimen", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Specimen" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.device", "path": "Observation.device", "comment": "Note that this is not meant to represent a device involved in the transmission of the result, e.g., a gateway. Such devices may be documented using the Provenance resource where relevant.", "min": 0, "max": "1", "base": { "path": "Observation.device", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/DeviceMetric" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange", "path": "Observation.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.referenceRange", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "obs-3", "severity": "error", "human": "Must have at least a low or a high or text", "expression": "low.exists() or high.exists() or text.exists()", "xpath": "(exists(f:low) or exists(f:high)or exists(f:text))" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.id", "path": "Observation.referenceRange.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.extension", "path": "Observation.referenceRange.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.modifierExtension", "path": "Observation.referenceRange.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.referenceRange.low", "path": "Observation.referenceRange.low", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.low", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.high", "path": "Observation.referenceRange.high", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.high", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.type", "path": "Observation.referenceRange.type", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal range is assumed.", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeMeaning" } ], "strength": "preferred", "description": "Code for the meaning of a reference range.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-meaning" } }, { "id": "Observation.referenceRange.appliesTo", "path": "Observation.referenceRange.appliesTo", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal population is assumed.", "min": 0, "max": "*", "base": { "path": "Observation.referenceRange.appliesTo", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeType" } ], "strength": "example", "description": "Codes identifying the population the reference range applies to.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-appliesto" } }, { "id": "Observation.referenceRange.age", "path": "Observation.referenceRange.age", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.age", "min": 0, "max": "1" }, "type": [ { "code": "Range" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.text", "path": "Observation.referenceRange.text", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.hasMember", "path": "Observation.hasMember", "comment": "When using this element, an observation will typically have either a value or a set of related resources, although both may be present in some cases. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below. Note that a system may calculate results from [QuestionnaireResponse](http://hl7.org/fhir/questionnaireresponse.html) into a final score and represent the score as an Observation.", "min": 0, "max": "*", "base": { "path": "Observation.hasMember", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence", "http://hl7.org/fhir/StructureDefinition/vitalsigns" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.derivedFrom", "path": "Observation.derivedFrom", "comment": "All the reference choices that are listed in this element can represent clinical observations and other measurements that may be the source for a derived value. The most common reference will be another Observation. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below.", "min": 0, "max": "*", "base": { "path": "Observation.derivedFrom", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/DocumentReference", "http://hl7.org/fhir/StructureDefinition/ImagingStudy", "http://hl7.org/fhir/StructureDefinition/Media", "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence", "http://hl7.org/fhir/StructureDefinition/vitalsigns" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component", "path": "Observation.component", "comment": "For a discussion on the ways Observations can be assembled in groups together see [Notes](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "*", "base": { "path": "Observation.component", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "vs-3", "severity": "error", "human": "If there is no a value a data absent reason must be present", "expression": "value.exists() or dataAbsentReason.exists()", "xpath": "f:*[starts-with(local-name(.), 'value')] or f:dataAbsentReason" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.component.id", "path": "Observation.component.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.extension", "path": "Observation.component.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.modifierExtension", "path": "Observation.component.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.component.code", "path": "Observation.component.code", "comment": "*All* code-value and component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.", "min": 1, "max": "1", "base": { "path": "Observation.component.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSigns" } ], "strength": "extensible", "description": "This identifies the vital sign result type.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-vitalsignresult" } }, { "id": "Observation.component.value[x]", "path": "Observation.component.value[x]", "comment": "Used when observation has a set of component observations. An observation may have both a value (e.g. an Apgar score) and component observations (the observations from which the Apgar score was derived). If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.component.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" }, { "code": "CodeableConcept" }, { "code": "string" }, { "code": "boolean" }, { "code": "integer" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "SampledData" }, { "code": "time" }, { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "vs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSignsUnits" } ], "strength": "required", "description": "Common UCUM units for recording Vital Signs.", "valueSet": "http://hl7.org/fhir/ValueSet/ucum-vitals-common|4.0.1" } }, { "id": "Observation.component.dataAbsentReason", "path": "Observation.component.dataAbsentReason", "comment": "\"Null\" or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"test not done\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Because of these options, use-case agreements are required to interpret general observations for exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.component.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6", "vs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.component.interpretation", "path": "Observation.component.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.component.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.component.referenceRange", "path": "Observation.component.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.component.referenceRange", "min": 0, "max": "*" }, "contentReference": "#Observation.referenceRange", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "Observation", "path": "Observation", "min": 0, "max": "*" }, { "id": "Observation.code", "path": "Observation.code", "comment": "additional codes that translate or map to this code are allowed. For example a more granular LOINC code or code that is used locally in a system." }, { "id": "Observation.code.coding", "path": "Observation.code.coding", "slicing": { "discriminator": [ { "type": "value", "path": "code" }, { "type": "value", "path": "system" } ], "ordered": false, "rules": "open" } }, { "id": "Observation.code.coding:RespRateCode", "path": "Observation.code.coding", "sliceName": "RespRateCode", "min": 1, "max": "1" }, { "id": "Observation.code.coding:RespRateCode.system", "path": "Observation.code.coding.system", "min": 1, "max": "1", "type": [ { "code": "uri" } ], "fixedUri": "http://loinc.org" }, { "id": "Observation.code.coding:RespRateCode.code", "path": "Observation.code.coding.code", "min": 1, "max": "1", "type": [ { "code": "code" } ], "fixedCode": "9279-1" }, { "id": "Observation.valueQuantity", "path": "Observation.valueQuantity" }, { "id": "Observation.valueQuantity.value", "path": "Observation.valueQuantity.value", "min": 1, "max": "1", "type": [ { "code": "decimal" } ], "mustSupport": true }, { "id": "Observation.valueQuantity.unit", "path": "Observation.valueQuantity.unit", "min": 1, "max": "1", "type": [ { "code": "string" } ], "mustSupport": true }, { "id": "Observation.valueQuantity.system", "path": "Observation.valueQuantity.system", "min": 1, "max": "1", "type": [ { "code": "uri" } ], "fixedUri": "http://unitsofmeasure.org", "mustSupport": true }, { "id": "Observation.valueQuantity.code", "path": "Observation.valueQuantity.code", "min": 1, "max": "1", "type": [ { "code": "code" } ], "fixedCode": "/min", "mustSupport": true } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/heartrate", "resource": { "resourceType": "StructureDefinition", "id": "heartrate", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-summary", "valueMarkdown": "#### Complete Summary of the Mandatory Requirements\r\r1. One code in `Observation.code` which must have\r - a fixed `Observation.code.coding.system`=**'http ://loinc.org'**\r - a fixed `Observation.code.coding.code`= **'8867-4'**\r - Other additional Codings are allowed in `Observation.code`- e.g. more specific LOINC\r Codes, SNOMED CT concepts, system specific codes. All codes\r SHALL have an system value\r1. Either one Observation.valueQuantity or, if there is no value, one code in Observation.DataAbsentReason\r - Each Observation.valueQuantity must have:\r - One numeric value in Observation.valueQuantity.value\r - a fixed Observation.valueQuantity.system=\"http://unitsofmeasure.org\"\r - a UCUM unit code in Observation.valueQuantity.code = **'/min'**" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 5 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "oo" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/heartrate", "version": "4.0.1", "name": "observation-heartrate", "title": "Observation Heart Rate Profile", "status": "draft", "experimental": false, "date": "2018-08-11", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Observation", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/vitalsigns", "derivation": "constraint", "snapshot": { "element": [ { "id": "Observation", "path": "Observation", "comment": "Used for simple observations such as device measurements, laboratory atomic results, vital signs, height, weight, smoking status, comments, etc. Other resources are used to provide context for observations such as laboratory reports, etc.", "min": 0, "max": "*", "base": { "path": "Observation", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "obs-6", "severity": "error", "human": "dataAbsentReason SHALL only be present if Observation.value[x] is not present", "expression": "dataAbsentReason.empty() or value.empty()", "xpath": "not(exists(f:dataAbsentReason)) or (not(exists(*[starts-with(local-name(.), 'value')])))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "obs-7", "severity": "error", "human": "If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present", "expression": "value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()", "xpath": "not(f:*[starts-with(local-name(.), 'value')] and (for $coding in f:code/f:coding return f:component/f:code/f:coding[f:code/@value=$coding/f:code/@value] [f:system/@value=$coding/f:system/@value]))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "vs-2", "severity": "error", "human": "If there is no component or hasMember element then either a value[x] or a data absent reason must be present.", "expression": "(component.empty() and hasMember.empty()) implies (dataAbsentReason.exists() or value.exists())", "xpath": "f:component or f:memberOF or f:*[starts-with(local-name(.), 'value')] or f:dataAbsentReason", "source": "http://hl7.org/fhir/StructureDefinition/vitalsigns" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.id", "path": "Observation.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.meta", "path": "Observation.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.implicitRules", "path": "Observation.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Observation.language", "path": "Observation.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Observation.text", "path": "Observation.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.contained", "path": "Observation.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.extension", "path": "Observation.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.modifierExtension", "path": "Observation.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Observation.identifier", "path": "Observation.identifier", "min": 0, "max": "*", "base": { "path": "Observation.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.basedOn", "path": "Observation.basedOn", "min": 0, "max": "*", "base": { "path": "Observation.basedOn", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/CarePlan", "http://hl7.org/fhir/StructureDefinition/DeviceRequest", "http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation", "http://hl7.org/fhir/StructureDefinition/MedicationRequest", "http://hl7.org/fhir/StructureDefinition/NutritionOrder", "http://hl7.org/fhir/StructureDefinition/ServiceRequest" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.partOf", "path": "Observation.partOf", "comment": "To link an Observation to an Encounter use `encounter`. See the [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below for guidance on referencing another Observation.", "min": 0, "max": "*", "base": { "path": "Observation.partOf", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/MedicationAdministration", "http://hl7.org/fhir/StructureDefinition/MedicationDispense", "http://hl7.org/fhir/StructureDefinition/MedicationStatement", "http://hl7.org/fhir/StructureDefinition/Procedure", "http://hl7.org/fhir/StructureDefinition/Immunization", "http://hl7.org/fhir/StructureDefinition/ImagingStudy" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.status", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-display-hint", "valueString": "default: final" } ], "path": "Observation.status", "comment": "This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid.", "min": 1, "max": "1", "base": { "path": "Observation.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": true, "isModifierReason": "This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Status" } ], "strength": "required", "valueSet": "http://hl7.org/fhir/ValueSet/observation-status|4.0.1" } }, { "id": "Observation.category", "path": "Observation.category", "slicing": { "discriminator": [ { "type": "value", "path": "coding.code" }, { "type": "value", "path": "coding.system" } ], "ordered": false, "rules": "open" }, "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 1, "max": "*", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.category:VSCat", "path": "Observation.category", "sliceName": "VSCat", "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 1, "max": "1", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.category:VSCat.id", "path": "Observation.category.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.extension", "path": "Observation.category.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding", "path": "Observation.category.coding", "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 1, "max": "*", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.id", "path": "Observation.category.coding.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding.extension", "path": "Observation.category.coding.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding.system", "path": "Observation.category.coding.system", "comment": "The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.", "min": 1, "max": "1", "base": { "path": "Coding.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://terminology.hl7.org/CodeSystem/observation-category", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.version", "path": "Observation.category.coding.version", "comment": "Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.", "min": 0, "max": "1", "base": { "path": "Coding.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.code", "path": "Observation.category.coding.code", "min": 1, "max": "1", "base": { "path": "Coding.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "vital-signs", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.display", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.category.coding.display", "min": 0, "max": "1", "base": { "path": "Coding.display", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.userSelected", "path": "Observation.category.coding.userSelected", "comment": "Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.", "min": 0, "max": "1", "base": { "path": "Coding.userSelected", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.text", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.category.text", "comment": "Very often the text is the same as a displayName of one of the codings.", "min": 0, "max": "1", "base": { "path": "CodeableConcept.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code", "path": "Observation.code", "comment": "additional codes that translate or map to this code are allowed. For example a more granular LOINC code or code that is used locally in a system.", "min": 1, "max": "1", "base": { "path": "Observation.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSigns" } ], "strength": "extensible", "description": "This identifies the vital sign result type.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-vitalsignresult" } }, { "id": "Observation.code.id", "path": "Observation.code.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.extension", "path": "Observation.code.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding", "path": "Observation.code.coding", "slicing": { "discriminator": [ { "type": "value", "path": "code" }, { "type": "value", "path": "system" } ], "ordered": false, "rules": "open" }, "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 0, "max": "*", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:HeartRateCode", "path": "Observation.code.coding", "sliceName": "HeartRateCode", "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 1, "max": "1", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:HeartRateCode.id", "path": "Observation.code.coding.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding:HeartRateCode.extension", "path": "Observation.code.coding.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding:HeartRateCode.system", "path": "Observation.code.coding.system", "comment": "The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.", "min": 1, "max": "1", "base": { "path": "Coding.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://loinc.org", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:HeartRateCode.version", "path": "Observation.code.coding.version", "comment": "Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.", "min": 0, "max": "1", "base": { "path": "Coding.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:HeartRateCode.code", "path": "Observation.code.coding.code", "min": 1, "max": "1", "base": { "path": "Coding.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "8867-4", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:HeartRateCode.display", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.code.coding.display", "min": 0, "max": "1", "base": { "path": "Coding.display", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:HeartRateCode.userSelected", "path": "Observation.code.coding.userSelected", "comment": "Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.", "min": 0, "max": "1", "base": { "path": "Coding.userSelected", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.text", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.code.text", "comment": "Very often the text is the same as a displayName of one of the codings.", "min": 0, "max": "1", "base": { "path": "CodeableConcept.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.subject", "path": "Observation.subject", "comment": "One would expect this element to be a cardinality of 1..1. The only circumstance in which the subject can be missing is when the observation is made by a device that does not know the patient. In this case, the observation SHALL be matched to a patient through some context/channel matching technique, and at this point, the observation should be updated.", "min": 1, "max": "1", "base": { "path": "Observation.subject", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.focus", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "path": "Observation.focus", "comment": "Typically, an observation is made about the subject - a patient, or group of patients, location, or device - and the distinction between the subject and what is directly measured for an observation is specified in the observation code itself ( e.g., \"Blood Glucose\") and does not need to be represented separately using this element. Use `specimen` if a reference to a specimen is required. If a code is required instead of a resource use either `bodysite` for bodysites or the standard extension [focusCode](http://hl7.org/fhir/extension-observation-focuscode.html).", "min": 0, "max": "*", "base": { "path": "Observation.focus", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.encounter", "path": "Observation.encounter", "comment": "This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests).", "min": 0, "max": "1", "base": { "path": "Observation.encounter", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Encounter" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.effective[x]", "path": "Observation.effective[x]", "comment": "At least a date should be present unless this observation is a historical report. For recording imprecise or \"fuzzy\" times (For example, a blood glucose measurement taken \"after breakfast\") use the [Timing](http://hl7.org/fhir/datatypes.html#timing) datatype which allow the measurement to be tied to regular life events.", "min": 1, "max": "1", "base": { "path": "Observation.effective[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "vs-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "vs-1", "severity": "error", "human": "if Observation.effective[x] is dateTime and has a value then that value shall be precise to the day", "expression": "($this as dateTime).toString().length() >= 8", "xpath": "f:effectiveDateTime[matches(@value, '^\\d{4}-\\d{2}-\\d{2}')]" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.issued", "path": "Observation.issued", "comment": "For Observations that don’t require review and verification, it may be the same as the [`lastUpdated` ](http://hl7.org/fhir/resource-definitions.html#Meta.lastUpdated) time of the resource itself. For Observations that do require review and verification for certain updates, it might not be the same as the `lastUpdated` time of the resource itself due to a non-clinically significant update that doesn’t require the new version to be reviewed and verified again.", "min": 0, "max": "1", "base": { "path": "Observation.issued", "min": 0, "max": "1" }, "type": [ { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.performer", "path": "Observation.performer", "min": 0, "max": "*", "base": { "path": "Observation.performer", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/CareTeam", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/RelatedPerson" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]", "path": "Observation.value[x]", "slicing": { "discriminator": [ { "type": "type", "path": "$this" } ], "ordered": false, "rules": "closed" }, "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "obs-7", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity", "path": "Observation.value[x]", "sliceName": "valueQuantity", "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "obs-7", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.id", "path": "Observation.value[x].id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.value[x]:valueQuantity.extension", "path": "Observation.value[x].extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.value[x]:valueQuantity.value", "path": "Observation.value[x].value", "comment": "The implicit precision in the value should always be honored. Monetary values have their own rules for handling precision (refer to standard accounting text books).", "min": 1, "max": "1", "base": { "path": "Quantity.value", "min": 0, "max": "1" }, "type": [ { "code": "decimal" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.comparator", "path": "Observation.value[x].comparator", "min": 0, "max": "1", "base": { "path": "Quantity.comparator", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "meaningWhenMissing": "If there is no comparator, then there is no modification of the value", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This is labeled as \"Is Modifier\" because the comparator modifies the interpretation of the value significantly. If there is no comparator, then there is no modification of the value", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "QuantityComparator" } ], "strength": "required", "description": "How the Quantity should be understood and represented.", "valueSet": "http://hl7.org/fhir/ValueSet/quantity-comparator|4.0.1" } }, { "id": "Observation.value[x]:valueQuantity.unit", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.value[x].unit", "min": 1, "max": "1", "base": { "path": "Quantity.unit", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.system", "path": "Observation.value[x].system", "min": 1, "max": "1", "base": { "path": "Quantity.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://unitsofmeasure.org", "condition": [ "qty-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.code", "path": "Observation.value[x].code", "comment": "The preferred system is UCUM, but SNOMED CT can also be used (for customary units) or ISO 4217 for currency. The context of use may additionally require a code from a particular system.", "min": 1, "max": "1", "base": { "path": "Quantity.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "/min", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.dataAbsentReason", "path": "Observation.dataAbsentReason", "comment": "Null or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"specimen unsatisfactory\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Note that an observation may only be reported if there are values to report. For example differential cell counts values may be reported only when > 0. Because of these options, use-case agreements are required to interpret general observations for null or exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.interpretation", "path": "Observation.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.note", "path": "Observation.note", "comment": "May include general statements about the observation, or statements about significant, unexpected or unreliable results values, or information about its source when relevant to its interpretation.", "min": 0, "max": "*", "base": { "path": "Observation.note", "min": 0, "max": "*" }, "type": [ { "code": "Annotation" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.bodySite", "path": "Observation.bodySite", "comment": "Only used if not implicit in code found in Observation.code. In many systems, this may be represented as a related observation instead of an inline component. \n\nIf the use case requires BodySite to be handled as a separate resource (e.g. to identify and track separately) then use the standard extension[ bodySite](http://hl7.org/fhir/extension-bodysite.html).", "min": 0, "max": "1", "base": { "path": "Observation.bodySite", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodySite" } ], "strength": "example", "description": "Codes describing anatomical locations. May include laterality.", "valueSet": "http://hl7.org/fhir/ValueSet/body-site" } }, { "id": "Observation.method", "path": "Observation.method", "comment": "Only used if not implicit in code for Observation.code.", "min": 0, "max": "1", "base": { "path": "Observation.method", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationMethod" } ], "strength": "example", "description": "Methods for simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-methods" } }, { "id": "Observation.specimen", "path": "Observation.specimen", "comment": "Should only be used if not implicit in code found in `Observation.code`. Observations are not made on specimens themselves; they are made on a subject, but in many cases by the means of a specimen. Note that although specimens are often involved, they are not always tracked and reported explicitly. Also note that observation resources may be used in contexts that track the specimen explicitly (e.g. Diagnostic Report).", "min": 0, "max": "1", "base": { "path": "Observation.specimen", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Specimen" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.device", "path": "Observation.device", "comment": "Note that this is not meant to represent a device involved in the transmission of the result, e.g., a gateway. Such devices may be documented using the Provenance resource where relevant.", "min": 0, "max": "1", "base": { "path": "Observation.device", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/DeviceMetric" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange", "path": "Observation.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.referenceRange", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "obs-3", "severity": "error", "human": "Must have at least a low or a high or text", "expression": "low.exists() or high.exists() or text.exists()", "xpath": "(exists(f:low) or exists(f:high)or exists(f:text))" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.id", "path": "Observation.referenceRange.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.extension", "path": "Observation.referenceRange.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.modifierExtension", "path": "Observation.referenceRange.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.referenceRange.low", "path": "Observation.referenceRange.low", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.low", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.high", "path": "Observation.referenceRange.high", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.high", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.type", "path": "Observation.referenceRange.type", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal range is assumed.", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeMeaning" } ], "strength": "preferred", "description": "Code for the meaning of a reference range.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-meaning" } }, { "id": "Observation.referenceRange.appliesTo", "path": "Observation.referenceRange.appliesTo", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal population is assumed.", "min": 0, "max": "*", "base": { "path": "Observation.referenceRange.appliesTo", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeType" } ], "strength": "example", "description": "Codes identifying the population the reference range applies to.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-appliesto" } }, { "id": "Observation.referenceRange.age", "path": "Observation.referenceRange.age", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.age", "min": 0, "max": "1" }, "type": [ { "code": "Range" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.text", "path": "Observation.referenceRange.text", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.hasMember", "path": "Observation.hasMember", "comment": "When using this element, an observation will typically have either a value or a set of related resources, although both may be present in some cases. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below. Note that a system may calculate results from [QuestionnaireResponse](http://hl7.org/fhir/questionnaireresponse.html) into a final score and represent the score as an Observation.", "min": 0, "max": "*", "base": { "path": "Observation.hasMember", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence", "http://hl7.org/fhir/StructureDefinition/vitalsigns" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.derivedFrom", "path": "Observation.derivedFrom", "comment": "All the reference choices that are listed in this element can represent clinical observations and other measurements that may be the source for a derived value. The most common reference will be another Observation. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below.", "min": 0, "max": "*", "base": { "path": "Observation.derivedFrom", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/DocumentReference", "http://hl7.org/fhir/StructureDefinition/ImagingStudy", "http://hl7.org/fhir/StructureDefinition/Media", "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence", "http://hl7.org/fhir/StructureDefinition/vitalsigns" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component", "path": "Observation.component", "comment": "For a discussion on the ways Observations can be assembled in groups together see [Notes](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "*", "base": { "path": "Observation.component", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "vs-3", "severity": "error", "human": "If there is no a value a data absent reason must be present", "expression": "value.exists() or dataAbsentReason.exists()", "xpath": "f:*[starts-with(local-name(.), 'value')] or f:dataAbsentReason" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.component.id", "path": "Observation.component.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.extension", "path": "Observation.component.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.modifierExtension", "path": "Observation.component.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.component.code", "path": "Observation.component.code", "comment": "*All* code-value and component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.", "min": 1, "max": "1", "base": { "path": "Observation.component.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSigns" } ], "strength": "extensible", "description": "This identifies the vital sign result type.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-vitalsignresult" } }, { "id": "Observation.component.value[x]", "path": "Observation.component.value[x]", "comment": "Used when observation has a set of component observations. An observation may have both a value (e.g. an Apgar score) and component observations (the observations from which the Apgar score was derived). If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.component.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" }, { "code": "CodeableConcept" }, { "code": "string" }, { "code": "boolean" }, { "code": "integer" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "SampledData" }, { "code": "time" }, { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "vs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSignsUnits" } ], "strength": "required", "description": "Common UCUM units for recording Vital Signs.", "valueSet": "http://hl7.org/fhir/ValueSet/ucum-vitals-common|4.0.1" } }, { "id": "Observation.component.dataAbsentReason", "path": "Observation.component.dataAbsentReason", "comment": "\"Null\" or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"test not done\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Because of these options, use-case agreements are required to interpret general observations for exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.component.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6", "vs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.component.interpretation", "path": "Observation.component.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.component.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.component.referenceRange", "path": "Observation.component.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.component.referenceRange", "min": 0, "max": "*" }, "contentReference": "#Observation.referenceRange", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "Observation", "path": "Observation", "min": 0, "max": "*" }, { "id": "Observation.code", "path": "Observation.code", "comment": "additional codes that translate or map to this code are allowed. For example a more granular LOINC code or code that is used locally in a system." }, { "id": "Observation.code.coding", "path": "Observation.code.coding", "slicing": { "discriminator": [ { "type": "value", "path": "code" }, { "type": "value", "path": "system" } ], "ordered": false, "rules": "open" } }, { "id": "Observation.code.coding:HeartRateCode", "path": "Observation.code.coding", "sliceName": "HeartRateCode", "min": 1, "max": "1" }, { "id": "Observation.code.coding:HeartRateCode.system", "path": "Observation.code.coding.system", "min": 1, "max": "1", "type": [ { "code": "uri" } ], "fixedUri": "http://loinc.org" }, { "id": "Observation.code.coding:HeartRateCode.code", "path": "Observation.code.coding.code", "min": 1, "max": "1", "type": [ { "code": "code" } ], "fixedCode": "8867-4" }, { "id": "Observation.valueQuantity", "path": "Observation.valueQuantity" }, { "id": "Observation.valueQuantity.value", "path": "Observation.valueQuantity.value", "min": 1, "max": "1", "type": [ { "code": "decimal" } ], "mustSupport": true }, { "id": "Observation.valueQuantity.unit", "path": "Observation.valueQuantity.unit", "min": 1, "max": "1", "type": [ { "code": "string" } ], "mustSupport": true }, { "id": "Observation.valueQuantity.system", "path": "Observation.valueQuantity.system", "min": 1, "max": "1", "type": [ { "code": "uri" } ], "fixedUri": "http://unitsofmeasure.org", "mustSupport": true }, { "id": "Observation.valueQuantity.code", "path": "Observation.valueQuantity.code", "min": 1, "max": "1", "type": [ { "code": "code" } ], "fixedCode": "/min", "mustSupport": true } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/bodytemp", "resource": { "resourceType": "StructureDefinition", "id": "bodytemp", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-summary", "valueMarkdown": "#### Complete Summary of the Mandatory Requirements\r\r1. One code in `Observation.code` which must have\r - a fixed `Observation.code.coding.system`=**'http ://loinc.org'**\r - a fixed `Observation.code.coding.code`= **'8310-5'**\r - Other additional Codings are allowed in `Observation.code`- e.g. more specific LOINC\r Codes, SNOMED CT concepts, system specific codes. All codes\r SHALL have an system value\r1. Either one Observation.valueQuantity or, if there is no value, one code in Observation.DataAbsentReason\r - Each Observation.valueQuantity must have:\r - One numeric value in Observation.valueQuantity.value\r - a fixed Observation.valueQuantity.system=\"http://unitsofmeasure.org\"\r - a UCUM unit code in Observation.valueQuantity.code = **'Cel', or '[degF]'**" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 5 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "oo" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/bodytemp", "version": "4.0.1", "name": "observation-bodytemp", "title": "Observation Body Temperature Profile", "status": "draft", "experimental": false, "date": "2018-08-11", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Observation", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/vitalsigns", "derivation": "constraint", "snapshot": { "element": [ { "id": "Observation", "path": "Observation", "comment": "Used for simple observations such as device measurements, laboratory atomic results, vital signs, height, weight, smoking status, comments, etc. Other resources are used to provide context for observations such as laboratory reports, etc.", "min": 0, "max": "*", "base": { "path": "Observation", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "obs-6", "severity": "error", "human": "dataAbsentReason SHALL only be present if Observation.value[x] is not present", "expression": "dataAbsentReason.empty() or value.empty()", "xpath": "not(exists(f:dataAbsentReason)) or (not(exists(*[starts-with(local-name(.), 'value')])))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "obs-7", "severity": "error", "human": "If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present", "expression": "value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()", "xpath": "not(f:*[starts-with(local-name(.), 'value')] and (for $coding in f:code/f:coding return f:component/f:code/f:coding[f:code/@value=$coding/f:code/@value] [f:system/@value=$coding/f:system/@value]))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "vs-2", "severity": "error", "human": "If there is no component or hasMember element then either a value[x] or a data absent reason must be present.", "expression": "(component.empty() and hasMember.empty()) implies (dataAbsentReason.exists() or value.exists())", "xpath": "f:component or f:memberOF or f:*[starts-with(local-name(.), 'value')] or f:dataAbsentReason", "source": "http://hl7.org/fhir/StructureDefinition/vitalsigns" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.id", "path": "Observation.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.meta", "path": "Observation.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.implicitRules", "path": "Observation.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Observation.language", "path": "Observation.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Observation.text", "path": "Observation.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.contained", "path": "Observation.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.extension", "path": "Observation.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.modifierExtension", "path": "Observation.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Observation.identifier", "path": "Observation.identifier", "min": 0, "max": "*", "base": { "path": "Observation.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.basedOn", "path": "Observation.basedOn", "min": 0, "max": "*", "base": { "path": "Observation.basedOn", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/CarePlan", "http://hl7.org/fhir/StructureDefinition/DeviceRequest", "http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation", "http://hl7.org/fhir/StructureDefinition/MedicationRequest", "http://hl7.org/fhir/StructureDefinition/NutritionOrder", "http://hl7.org/fhir/StructureDefinition/ServiceRequest" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.partOf", "path": "Observation.partOf", "comment": "To link an Observation to an Encounter use `encounter`. See the [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below for guidance on referencing another Observation.", "min": 0, "max": "*", "base": { "path": "Observation.partOf", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/MedicationAdministration", "http://hl7.org/fhir/StructureDefinition/MedicationDispense", "http://hl7.org/fhir/StructureDefinition/MedicationStatement", "http://hl7.org/fhir/StructureDefinition/Procedure", "http://hl7.org/fhir/StructureDefinition/Immunization", "http://hl7.org/fhir/StructureDefinition/ImagingStudy" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.status", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-display-hint", "valueString": "default: final" } ], "path": "Observation.status", "comment": "This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid.", "min": 1, "max": "1", "base": { "path": "Observation.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": true, "isModifierReason": "This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Status" } ], "strength": "required", "valueSet": "http://hl7.org/fhir/ValueSet/observation-status|4.0.1" } }, { "id": "Observation.category", "path": "Observation.category", "slicing": { "discriminator": [ { "type": "value", "path": "coding.code" }, { "type": "value", "path": "coding.system" } ], "ordered": false, "rules": "open" }, "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 1, "max": "*", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.category:VSCat", "path": "Observation.category", "sliceName": "VSCat", "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 1, "max": "1", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.category:VSCat.id", "path": "Observation.category.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.extension", "path": "Observation.category.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding", "path": "Observation.category.coding", "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 1, "max": "*", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.id", "path": "Observation.category.coding.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding.extension", "path": "Observation.category.coding.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding.system", "path": "Observation.category.coding.system", "comment": "The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.", "min": 1, "max": "1", "base": { "path": "Coding.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://terminology.hl7.org/CodeSystem/observation-category", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.version", "path": "Observation.category.coding.version", "comment": "Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.", "min": 0, "max": "1", "base": { "path": "Coding.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.code", "path": "Observation.category.coding.code", "min": 1, "max": "1", "base": { "path": "Coding.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "vital-signs", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.display", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.category.coding.display", "min": 0, "max": "1", "base": { "path": "Coding.display", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.userSelected", "path": "Observation.category.coding.userSelected", "comment": "Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.", "min": 0, "max": "1", "base": { "path": "Coding.userSelected", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.text", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.category.text", "comment": "Very often the text is the same as a displayName of one of the codings.", "min": 0, "max": "1", "base": { "path": "CodeableConcept.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code", "path": "Observation.code", "comment": "additional codes that translate or map to this code are allowed. For example a more granular LOINC code or code that is used locally in a system.", "min": 1, "max": "1", "base": { "path": "Observation.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSigns" } ], "strength": "extensible", "description": "This identifies the vital sign result type.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-vitalsignresult" } }, { "id": "Observation.code.id", "path": "Observation.code.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.extension", "path": "Observation.code.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding", "path": "Observation.code.coding", "slicing": { "discriminator": [ { "type": "value", "path": "code" }, { "type": "value", "path": "system" } ], "ordered": false, "rules": "open" }, "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 0, "max": "*", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BodyTempCode", "path": "Observation.code.coding", "sliceName": "BodyTempCode", "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 1, "max": "1", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BodyTempCode.id", "path": "Observation.code.coding.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding:BodyTempCode.extension", "path": "Observation.code.coding.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding:BodyTempCode.system", "path": "Observation.code.coding.system", "comment": "The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.", "min": 1, "max": "1", "base": { "path": "Coding.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://loinc.org", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BodyTempCode.version", "path": "Observation.code.coding.version", "comment": "Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.", "min": 0, "max": "1", "base": { "path": "Coding.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BodyTempCode.code", "path": "Observation.code.coding.code", "min": 1, "max": "1", "base": { "path": "Coding.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "8310-5", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BodyTempCode.display", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.code.coding.display", "min": 0, "max": "1", "base": { "path": "Coding.display", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BodyTempCode.userSelected", "path": "Observation.code.coding.userSelected", "comment": "Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.", "min": 0, "max": "1", "base": { "path": "Coding.userSelected", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.text", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.code.text", "comment": "Very often the text is the same as a displayName of one of the codings.", "min": 0, "max": "1", "base": { "path": "CodeableConcept.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.subject", "path": "Observation.subject", "comment": "One would expect this element to be a cardinality of 1..1. The only circumstance in which the subject can be missing is when the observation is made by a device that does not know the patient. In this case, the observation SHALL be matched to a patient through some context/channel matching technique, and at this point, the observation should be updated.", "min": 1, "max": "1", "base": { "path": "Observation.subject", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.focus", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "path": "Observation.focus", "comment": "Typically, an observation is made about the subject - a patient, or group of patients, location, or device - and the distinction between the subject and what is directly measured for an observation is specified in the observation code itself ( e.g., \"Blood Glucose\") and does not need to be represented separately using this element. Use `specimen` if a reference to a specimen is required. If a code is required instead of a resource use either `bodysite` for bodysites or the standard extension [focusCode](http://hl7.org/fhir/extension-observation-focuscode.html).", "min": 0, "max": "*", "base": { "path": "Observation.focus", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.encounter", "path": "Observation.encounter", "comment": "This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests).", "min": 0, "max": "1", "base": { "path": "Observation.encounter", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Encounter" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.effective[x]", "path": "Observation.effective[x]", "comment": "At least a date should be present unless this observation is a historical report. For recording imprecise or \"fuzzy\" times (For example, a blood glucose measurement taken \"after breakfast\") use the [Timing](http://hl7.org/fhir/datatypes.html#timing) datatype which allow the measurement to be tied to regular life events.", "min": 1, "max": "1", "base": { "path": "Observation.effective[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "vs-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "vs-1", "severity": "error", "human": "if Observation.effective[x] is dateTime and has a value then that value shall be precise to the day", "expression": "($this as dateTime).toString().length() >= 8", "xpath": "f:effectiveDateTime[matches(@value, '^\\d{4}-\\d{2}-\\d{2}')]" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.issued", "path": "Observation.issued", "comment": "For Observations that don’t require review and verification, it may be the same as the [`lastUpdated` ](http://hl7.org/fhir/resource-definitions.html#Meta.lastUpdated) time of the resource itself. For Observations that do require review and verification for certain updates, it might not be the same as the `lastUpdated` time of the resource itself due to a non-clinically significant update that doesn’t require the new version to be reviewed and verified again.", "min": 0, "max": "1", "base": { "path": "Observation.issued", "min": 0, "max": "1" }, "type": [ { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.performer", "path": "Observation.performer", "min": 0, "max": "*", "base": { "path": "Observation.performer", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/CareTeam", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/RelatedPerson" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]", "path": "Observation.value[x]", "slicing": { "discriminator": [ { "type": "type", "path": "$this" } ], "ordered": false, "rules": "closed" }, "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "obs-7", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity", "path": "Observation.value[x]", "sliceName": "valueQuantity", "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "obs-7", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.id", "path": "Observation.value[x].id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.value[x]:valueQuantity.extension", "path": "Observation.value[x].extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.value[x]:valueQuantity.value", "path": "Observation.value[x].value", "comment": "The implicit precision in the value should always be honored. Monetary values have their own rules for handling precision (refer to standard accounting text books).", "min": 1, "max": "1", "base": { "path": "Quantity.value", "min": 0, "max": "1" }, "type": [ { "code": "decimal" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.comparator", "path": "Observation.value[x].comparator", "min": 0, "max": "1", "base": { "path": "Quantity.comparator", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "meaningWhenMissing": "If there is no comparator, then there is no modification of the value", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This is labeled as \"Is Modifier\" because the comparator modifies the interpretation of the value significantly. If there is no comparator, then there is no modification of the value", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "QuantityComparator" } ], "strength": "required", "description": "How the Quantity should be understood and represented.", "valueSet": "http://hl7.org/fhir/ValueSet/quantity-comparator|4.0.1" } }, { "id": "Observation.value[x]:valueQuantity.unit", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.value[x].unit", "min": 1, "max": "1", "base": { "path": "Quantity.unit", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.system", "path": "Observation.value[x].system", "min": 1, "max": "1", "base": { "path": "Quantity.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://unitsofmeasure.org", "condition": [ "qty-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.code", "path": "Observation.value[x].code", "comment": "The preferred system is UCUM, but SNOMED CT can also be used (for customary units) or ISO 4217 for currency. The context of use may additionally require a code from a particular system.", "min": 1, "max": "1", "base": { "path": "Quantity.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodyTempUnits" } ], "strength": "required", "description": "Common UCUM units for Body Temperature.", "valueSet": "http://hl7.org/fhir/ValueSet/ucum-bodytemp|4.0.1" } }, { "id": "Observation.dataAbsentReason", "path": "Observation.dataAbsentReason", "comment": "Null or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"specimen unsatisfactory\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Note that an observation may only be reported if there are values to report. For example differential cell counts values may be reported only when > 0. Because of these options, use-case agreements are required to interpret general observations for null or exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.interpretation", "path": "Observation.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.note", "path": "Observation.note", "comment": "May include general statements about the observation, or statements about significant, unexpected or unreliable results values, or information about its source when relevant to its interpretation.", "min": 0, "max": "*", "base": { "path": "Observation.note", "min": 0, "max": "*" }, "type": [ { "code": "Annotation" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.bodySite", "path": "Observation.bodySite", "comment": "Only used if not implicit in code found in Observation.code. In many systems, this may be represented as a related observation instead of an inline component. \n\nIf the use case requires BodySite to be handled as a separate resource (e.g. to identify and track separately) then use the standard extension[ bodySite](http://hl7.org/fhir/extension-bodysite.html).", "min": 0, "max": "1", "base": { "path": "Observation.bodySite", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodySite" } ], "strength": "example", "description": "Codes describing anatomical locations. May include laterality.", "valueSet": "http://hl7.org/fhir/ValueSet/body-site" } }, { "id": "Observation.method", "path": "Observation.method", "comment": "Only used if not implicit in code for Observation.code.", "min": 0, "max": "1", "base": { "path": "Observation.method", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationMethod" } ], "strength": "example", "description": "Methods for simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-methods" } }, { "id": "Observation.specimen", "path": "Observation.specimen", "comment": "Should only be used if not implicit in code found in `Observation.code`. Observations are not made on specimens themselves; they are made on a subject, but in many cases by the means of a specimen. Note that although specimens are often involved, they are not always tracked and reported explicitly. Also note that observation resources may be used in contexts that track the specimen explicitly (e.g. Diagnostic Report).", "min": 0, "max": "1", "base": { "path": "Observation.specimen", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Specimen" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.device", "path": "Observation.device", "comment": "Note that this is not meant to represent a device involved in the transmission of the result, e.g., a gateway. Such devices may be documented using the Provenance resource where relevant.", "min": 0, "max": "1", "base": { "path": "Observation.device", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/DeviceMetric" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange", "path": "Observation.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.referenceRange", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "obs-3", "severity": "error", "human": "Must have at least a low or a high or text", "expression": "low.exists() or high.exists() or text.exists()", "xpath": "(exists(f:low) or exists(f:high)or exists(f:text))" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.id", "path": "Observation.referenceRange.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.extension", "path": "Observation.referenceRange.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.modifierExtension", "path": "Observation.referenceRange.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.referenceRange.low", "path": "Observation.referenceRange.low", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.low", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.high", "path": "Observation.referenceRange.high", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.high", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.type", "path": "Observation.referenceRange.type", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal range is assumed.", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeMeaning" } ], "strength": "preferred", "description": "Code for the meaning of a reference range.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-meaning" } }, { "id": "Observation.referenceRange.appliesTo", "path": "Observation.referenceRange.appliesTo", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal population is assumed.", "min": 0, "max": "*", "base": { "path": "Observation.referenceRange.appliesTo", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeType" } ], "strength": "example", "description": "Codes identifying the population the reference range applies to.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-appliesto" } }, { "id": "Observation.referenceRange.age", "path": "Observation.referenceRange.age", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.age", "min": 0, "max": "1" }, "type": [ { "code": "Range" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.text", "path": "Observation.referenceRange.text", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.hasMember", "path": "Observation.hasMember", "comment": "When using this element, an observation will typically have either a value or a set of related resources, although both may be present in some cases. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below. Note that a system may calculate results from [QuestionnaireResponse](http://hl7.org/fhir/questionnaireresponse.html) into a final score and represent the score as an Observation.", "min": 0, "max": "*", "base": { "path": "Observation.hasMember", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence", "http://hl7.org/fhir/StructureDefinition/vitalsigns" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.derivedFrom", "path": "Observation.derivedFrom", "comment": "All the reference choices that are listed in this element can represent clinical observations and other measurements that may be the source for a derived value. The most common reference will be another Observation. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below.", "min": 0, "max": "*", "base": { "path": "Observation.derivedFrom", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/DocumentReference", "http://hl7.org/fhir/StructureDefinition/ImagingStudy", "http://hl7.org/fhir/StructureDefinition/Media", "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence", "http://hl7.org/fhir/StructureDefinition/vitalsigns" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component", "path": "Observation.component", "comment": "For a discussion on the ways Observations can be assembled in groups together see [Notes](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "*", "base": { "path": "Observation.component", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "vs-3", "severity": "error", "human": "If there is no a value a data absent reason must be present", "expression": "value.exists() or dataAbsentReason.exists()", "xpath": "f:*[starts-with(local-name(.), 'value')] or f:dataAbsentReason" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.component.id", "path": "Observation.component.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.extension", "path": "Observation.component.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.modifierExtension", "path": "Observation.component.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.component.code", "path": "Observation.component.code", "comment": "*All* code-value and component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.", "min": 1, "max": "1", "base": { "path": "Observation.component.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSigns" } ], "strength": "extensible", "description": "This identifies the vital sign result type.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-vitalsignresult" } }, { "id": "Observation.component.value[x]", "path": "Observation.component.value[x]", "comment": "Used when observation has a set of component observations. An observation may have both a value (e.g. an Apgar score) and component observations (the observations from which the Apgar score was derived). If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.component.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" }, { "code": "CodeableConcept" }, { "code": "string" }, { "code": "boolean" }, { "code": "integer" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "SampledData" }, { "code": "time" }, { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "vs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSignsUnits" } ], "strength": "required", "description": "Common UCUM units for recording Vital Signs.", "valueSet": "http://hl7.org/fhir/ValueSet/ucum-vitals-common|4.0.1" } }, { "id": "Observation.component.dataAbsentReason", "path": "Observation.component.dataAbsentReason", "comment": "\"Null\" or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"test not done\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Because of these options, use-case agreements are required to interpret general observations for exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.component.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6", "vs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.component.interpretation", "path": "Observation.component.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.component.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.component.referenceRange", "path": "Observation.component.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.component.referenceRange", "min": 0, "max": "*" }, "contentReference": "#Observation.referenceRange", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "Observation", "path": "Observation", "min": 0, "max": "*" }, { "id": "Observation.code", "path": "Observation.code", "comment": "additional codes that translate or map to this code are allowed. For example a more granular LOINC code or code that is used locally in a system." }, { "id": "Observation.code.coding", "path": "Observation.code.coding", "slicing": { "discriminator": [ { "type": "value", "path": "code" }, { "type": "value", "path": "system" } ], "ordered": false, "rules": "open" } }, { "id": "Observation.code.coding:BodyTempCode", "path": "Observation.code.coding", "sliceName": "BodyTempCode", "min": 1, "max": "1" }, { "id": "Observation.code.coding:BodyTempCode.system", "path": "Observation.code.coding.system", "min": 1, "max": "1", "type": [ { "code": "uri" } ], "fixedUri": "http://loinc.org" }, { "id": "Observation.code.coding:BodyTempCode.code", "path": "Observation.code.coding.code", "min": 1, "max": "1", "type": [ { "code": "code" } ], "fixedCode": "8310-5" }, { "id": "Observation.valueQuantity", "path": "Observation.valueQuantity" }, { "id": "Observation.valueQuantity.value", "path": "Observation.valueQuantity.value", "min": 1, "max": "1", "type": [ { "code": "decimal" } ], "mustSupport": true }, { "id": "Observation.valueQuantity.unit", "path": "Observation.valueQuantity.unit", "min": 1, "max": "1", "type": [ { "code": "string" } ], "mustSupport": true }, { "id": "Observation.valueQuantity.system", "path": "Observation.valueQuantity.system", "min": 1, "max": "1", "type": [ { "code": "uri" } ], "fixedUri": "http://unitsofmeasure.org", "mustSupport": true }, { "id": "Observation.valueQuantity.code", "path": "Observation.valueQuantity.code", "min": 1, "max": "1", "type": [ { "code": "code" } ], "mustSupport": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodyTempUnits" } ], "strength": "required", "description": "Common UCUM units for Body Temperature.", "valueSet": "http://hl7.org/fhir/ValueSet/ucum-bodytemp|4.0.1" } } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/headcircum", "resource": { "resourceType": "StructureDefinition", "id": "headcircum", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-summary", "valueMarkdown": "#### Complete Summary of the Mandatory Requirements\r\r1. One code in `Observation.code` which must have\r - a fixed `Observation.code.coding.system`=**'http ://loinc.org'**\r - a fixed `Observation.code.coding.code`= **'9843-4'**\r - Other additional Codings are allowed in `Observation.code`- e.g. more specific LOINC\r Codes, SNOMED CT concepts, system specific codes. All codes\r SHALL have an system value\r1. Either one Observation.valueQuantity or, if there is no value, one code in Observation.DataAbsentReason\r - Each Observation.valueQuantity must have:\r - One numeric value in Observation.valueQuantity.value\r - a fixed Observation.valueQuantity.system=\"http://unitsofmeasure.org\"\r - a UCUM unit code in Observation.valueQuantity.code = **'cm', or '[in_i]'**" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 5 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "oo" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/headcircum", "version": "4.0.1", "name": "observation-headcircum", "title": "Observation Head Circumference Profile", "status": "draft", "experimental": false, "date": "2018-08-11", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Observation", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/vitalsigns", "derivation": "constraint", "snapshot": { "element": [ { "id": "Observation", "path": "Observation", "comment": "Used for simple observations such as device measurements, laboratory atomic results, vital signs, height, weight, smoking status, comments, etc. Other resources are used to provide context for observations such as laboratory reports, etc.", "min": 0, "max": "*", "base": { "path": "Observation", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "obs-6", "severity": "error", "human": "dataAbsentReason SHALL only be present if Observation.value[x] is not present", "expression": "dataAbsentReason.empty() or value.empty()", "xpath": "not(exists(f:dataAbsentReason)) or (not(exists(*[starts-with(local-name(.), 'value')])))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "obs-7", "severity": "error", "human": "If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present", "expression": "value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()", "xpath": "not(f:*[starts-with(local-name(.), 'value')] and (for $coding in f:code/f:coding return f:component/f:code/f:coding[f:code/@value=$coding/f:code/@value] [f:system/@value=$coding/f:system/@value]))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "vs-2", "severity": "error", "human": "If there is no component or hasMember element then either a value[x] or a data absent reason must be present.", "expression": "(component.empty() and hasMember.empty()) implies (dataAbsentReason.exists() or value.exists())", "xpath": "f:component or f:memberOF or f:*[starts-with(local-name(.), 'value')] or f:dataAbsentReason", "source": "http://hl7.org/fhir/StructureDefinition/vitalsigns" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.id", "path": "Observation.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.meta", "path": "Observation.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.implicitRules", "path": "Observation.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Observation.language", "path": "Observation.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Observation.text", "path": "Observation.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.contained", "path": "Observation.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.extension", "path": "Observation.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.modifierExtension", "path": "Observation.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Observation.identifier", "path": "Observation.identifier", "min": 0, "max": "*", "base": { "path": "Observation.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.basedOn", "path": "Observation.basedOn", "min": 0, "max": "*", "base": { "path": "Observation.basedOn", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/CarePlan", "http://hl7.org/fhir/StructureDefinition/DeviceRequest", "http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation", "http://hl7.org/fhir/StructureDefinition/MedicationRequest", "http://hl7.org/fhir/StructureDefinition/NutritionOrder", "http://hl7.org/fhir/StructureDefinition/ServiceRequest" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.partOf", "path": "Observation.partOf", "comment": "To link an Observation to an Encounter use `encounter`. See the [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below for guidance on referencing another Observation.", "min": 0, "max": "*", "base": { "path": "Observation.partOf", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/MedicationAdministration", "http://hl7.org/fhir/StructureDefinition/MedicationDispense", "http://hl7.org/fhir/StructureDefinition/MedicationStatement", "http://hl7.org/fhir/StructureDefinition/Procedure", "http://hl7.org/fhir/StructureDefinition/Immunization", "http://hl7.org/fhir/StructureDefinition/ImagingStudy" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.status", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-display-hint", "valueString": "default: final" } ], "path": "Observation.status", "comment": "This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid.", "min": 1, "max": "1", "base": { "path": "Observation.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": true, "isModifierReason": "This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Status" } ], "strength": "required", "valueSet": "http://hl7.org/fhir/ValueSet/observation-status|4.0.1" } }, { "id": "Observation.category", "path": "Observation.category", "slicing": { "discriminator": [ { "type": "value", "path": "coding.code" }, { "type": "value", "path": "coding.system" } ], "ordered": false, "rules": "open" }, "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 1, "max": "*", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.category:VSCat", "path": "Observation.category", "sliceName": "VSCat", "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 1, "max": "1", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.category:VSCat.id", "path": "Observation.category.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.extension", "path": "Observation.category.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding", "path": "Observation.category.coding", "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 1, "max": "*", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.id", "path": "Observation.category.coding.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding.extension", "path": "Observation.category.coding.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding.system", "path": "Observation.category.coding.system", "comment": "The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.", "min": 1, "max": "1", "base": { "path": "Coding.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://terminology.hl7.org/CodeSystem/observation-category", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.version", "path": "Observation.category.coding.version", "comment": "Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.", "min": 0, "max": "1", "base": { "path": "Coding.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.code", "path": "Observation.category.coding.code", "min": 1, "max": "1", "base": { "path": "Coding.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "vital-signs", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.display", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.category.coding.display", "min": 0, "max": "1", "base": { "path": "Coding.display", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.userSelected", "path": "Observation.category.coding.userSelected", "comment": "Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.", "min": 0, "max": "1", "base": { "path": "Coding.userSelected", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.text", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.category.text", "comment": "Very often the text is the same as a displayName of one of the codings.", "min": 0, "max": "1", "base": { "path": "CodeableConcept.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code", "path": "Observation.code", "comment": "additional codes that translate or map to this code are allowed. For example a more granular LOINC code or code that is used locally in a system.", "min": 1, "max": "1", "base": { "path": "Observation.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSigns" } ], "strength": "extensible", "description": "This identifies the vital sign result type.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-vitalsignresult" } }, { "id": "Observation.code.id", "path": "Observation.code.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.extension", "path": "Observation.code.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding", "path": "Observation.code.coding", "slicing": { "discriminator": [ { "type": "value", "path": "code" }, { "type": "value", "path": "system" } ], "ordered": false, "rules": "open" }, "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 0, "max": "*", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:HeadCircumCode", "path": "Observation.code.coding", "sliceName": "HeadCircumCode", "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 1, "max": "1", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:HeadCircumCode.id", "path": "Observation.code.coding.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding:HeadCircumCode.extension", "path": "Observation.code.coding.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding:HeadCircumCode.system", "path": "Observation.code.coding.system", "comment": "The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.", "min": 1, "max": "1", "base": { "path": "Coding.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://loinc.org", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:HeadCircumCode.version", "path": "Observation.code.coding.version", "comment": "Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.", "min": 0, "max": "1", "base": { "path": "Coding.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:HeadCircumCode.code", "path": "Observation.code.coding.code", "min": 1, "max": "1", "base": { "path": "Coding.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "9843-4", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:HeadCircumCode.display", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.code.coding.display", "min": 0, "max": "1", "base": { "path": "Coding.display", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:HeadCircumCode.userSelected", "path": "Observation.code.coding.userSelected", "comment": "Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.", "min": 0, "max": "1", "base": { "path": "Coding.userSelected", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.text", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.code.text", "comment": "Very often the text is the same as a displayName of one of the codings.", "min": 0, "max": "1", "base": { "path": "CodeableConcept.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.subject", "path": "Observation.subject", "comment": "One would expect this element to be a cardinality of 1..1. The only circumstance in which the subject can be missing is when the observation is made by a device that does not know the patient. In this case, the observation SHALL be matched to a patient through some context/channel matching technique, and at this point, the observation should be updated.", "min": 1, "max": "1", "base": { "path": "Observation.subject", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.focus", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "path": "Observation.focus", "comment": "Typically, an observation is made about the subject - a patient, or group of patients, location, or device - and the distinction between the subject and what is directly measured for an observation is specified in the observation code itself ( e.g., \"Blood Glucose\") and does not need to be represented separately using this element. Use `specimen` if a reference to a specimen is required. If a code is required instead of a resource use either `bodysite` for bodysites or the standard extension [focusCode](http://hl7.org/fhir/extension-observation-focuscode.html).", "min": 0, "max": "*", "base": { "path": "Observation.focus", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.encounter", "path": "Observation.encounter", "comment": "This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests).", "min": 0, "max": "1", "base": { "path": "Observation.encounter", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Encounter" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.effective[x]", "path": "Observation.effective[x]", "comment": "At least a date should be present unless this observation is a historical report. For recording imprecise or \"fuzzy\" times (For example, a blood glucose measurement taken \"after breakfast\") use the [Timing](http://hl7.org/fhir/datatypes.html#timing) datatype which allow the measurement to be tied to regular life events.", "min": 1, "max": "1", "base": { "path": "Observation.effective[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "vs-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "vs-1", "severity": "error", "human": "if Observation.effective[x] is dateTime and has a value then that value shall be precise to the day", "expression": "($this as dateTime).toString().length() >= 8", "xpath": "f:effectiveDateTime[matches(@value, '^\\d{4}-\\d{2}-\\d{2}')]" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.issued", "path": "Observation.issued", "comment": "For Observations that don’t require review and verification, it may be the same as the [`lastUpdated` ](http://hl7.org/fhir/resource-definitions.html#Meta.lastUpdated) time of the resource itself. For Observations that do require review and verification for certain updates, it might not be the same as the `lastUpdated` time of the resource itself due to a non-clinically significant update that doesn’t require the new version to be reviewed and verified again.", "min": 0, "max": "1", "base": { "path": "Observation.issued", "min": 0, "max": "1" }, "type": [ { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.performer", "path": "Observation.performer", "min": 0, "max": "*", "base": { "path": "Observation.performer", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/CareTeam", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/RelatedPerson" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]", "path": "Observation.value[x]", "slicing": { "discriminator": [ { "type": "type", "path": "$this" } ], "ordered": false, "rules": "closed" }, "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "obs-7", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity", "path": "Observation.value[x]", "sliceName": "valueQuantity", "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "obs-7", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.id", "path": "Observation.value[x].id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.value[x]:valueQuantity.extension", "path": "Observation.value[x].extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.value[x]:valueQuantity.value", "path": "Observation.value[x].value", "comment": "The implicit precision in the value should always be honored. Monetary values have their own rules for handling precision (refer to standard accounting text books).", "min": 1, "max": "1", "base": { "path": "Quantity.value", "min": 0, "max": "1" }, "type": [ { "code": "decimal" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.comparator", "path": "Observation.value[x].comparator", "min": 0, "max": "1", "base": { "path": "Quantity.comparator", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "meaningWhenMissing": "If there is no comparator, then there is no modification of the value", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This is labeled as \"Is Modifier\" because the comparator modifies the interpretation of the value significantly. If there is no comparator, then there is no modification of the value", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "QuantityComparator" } ], "strength": "required", "description": "How the Quantity should be understood and represented.", "valueSet": "http://hl7.org/fhir/ValueSet/quantity-comparator|4.0.1" } }, { "id": "Observation.value[x]:valueQuantity.unit", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.value[x].unit", "min": 1, "max": "1", "base": { "path": "Quantity.unit", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.system", "path": "Observation.value[x].system", "min": 1, "max": "1", "base": { "path": "Quantity.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://unitsofmeasure.org", "condition": [ "qty-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.code", "path": "Observation.value[x].code", "comment": "The preferred system is UCUM, but SNOMED CT can also be used (for customary units) or ISO 4217 for currency. The context of use may additionally require a code from a particular system.", "min": 1, "max": "1", "base": { "path": "Quantity.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodyLengthUnits" } ], "strength": "required", "description": "Common UCUM units for body length measures such as Body Height and Head Circumference.", "valueSet": "http://hl7.org/fhir/ValueSet/ucum-bodylength|4.0.1" } }, { "id": "Observation.dataAbsentReason", "path": "Observation.dataAbsentReason", "comment": "Null or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"specimen unsatisfactory\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Note that an observation may only be reported if there are values to report. For example differential cell counts values may be reported only when > 0. Because of these options, use-case agreements are required to interpret general observations for null or exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.interpretation", "path": "Observation.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.note", "path": "Observation.note", "comment": "May include general statements about the observation, or statements about significant, unexpected or unreliable results values, or information about its source when relevant to its interpretation.", "min": 0, "max": "*", "base": { "path": "Observation.note", "min": 0, "max": "*" }, "type": [ { "code": "Annotation" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.bodySite", "path": "Observation.bodySite", "comment": "Only used if not implicit in code found in Observation.code. In many systems, this may be represented as a related observation instead of an inline component. \n\nIf the use case requires BodySite to be handled as a separate resource (e.g. to identify and track separately) then use the standard extension[ bodySite](http://hl7.org/fhir/extension-bodysite.html).", "min": 0, "max": "1", "base": { "path": "Observation.bodySite", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodySite" } ], "strength": "example", "description": "Codes describing anatomical locations. May include laterality.", "valueSet": "http://hl7.org/fhir/ValueSet/body-site" } }, { "id": "Observation.method", "path": "Observation.method", "comment": "Only used if not implicit in code for Observation.code.", "min": 0, "max": "1", "base": { "path": "Observation.method", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationMethod" } ], "strength": "example", "description": "Methods for simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-methods" } }, { "id": "Observation.specimen", "path": "Observation.specimen", "comment": "Should only be used if not implicit in code found in `Observation.code`. Observations are not made on specimens themselves; they are made on a subject, but in many cases by the means of a specimen. Note that although specimens are often involved, they are not always tracked and reported explicitly. Also note that observation resources may be used in contexts that track the specimen explicitly (e.g. Diagnostic Report).", "min": 0, "max": "1", "base": { "path": "Observation.specimen", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Specimen" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.device", "path": "Observation.device", "comment": "Note that this is not meant to represent a device involved in the transmission of the result, e.g., a gateway. Such devices may be documented using the Provenance resource where relevant.", "min": 0, "max": "1", "base": { "path": "Observation.device", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/DeviceMetric" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange", "path": "Observation.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.referenceRange", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "obs-3", "severity": "error", "human": "Must have at least a low or a high or text", "expression": "low.exists() or high.exists() or text.exists()", "xpath": "(exists(f:low) or exists(f:high)or exists(f:text))" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.id", "path": "Observation.referenceRange.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.extension", "path": "Observation.referenceRange.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.modifierExtension", "path": "Observation.referenceRange.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.referenceRange.low", "path": "Observation.referenceRange.low", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.low", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.high", "path": "Observation.referenceRange.high", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.high", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.type", "path": "Observation.referenceRange.type", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal range is assumed.", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeMeaning" } ], "strength": "preferred", "description": "Code for the meaning of a reference range.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-meaning" } }, { "id": "Observation.referenceRange.appliesTo", "path": "Observation.referenceRange.appliesTo", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal population is assumed.", "min": 0, "max": "*", "base": { "path": "Observation.referenceRange.appliesTo", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeType" } ], "strength": "example", "description": "Codes identifying the population the reference range applies to.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-appliesto" } }, { "id": "Observation.referenceRange.age", "path": "Observation.referenceRange.age", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.age", "min": 0, "max": "1" }, "type": [ { "code": "Range" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.text", "path": "Observation.referenceRange.text", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.hasMember", "path": "Observation.hasMember", "comment": "When using this element, an observation will typically have either a value or a set of related resources, although both may be present in some cases. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below. Note that a system may calculate results from [QuestionnaireResponse](http://hl7.org/fhir/questionnaireresponse.html) into a final score and represent the score as an Observation.", "min": 0, "max": "*", "base": { "path": "Observation.hasMember", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence", "http://hl7.org/fhir/StructureDefinition/vitalsigns" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.derivedFrom", "path": "Observation.derivedFrom", "comment": "All the reference choices that are listed in this element can represent clinical observations and other measurements that may be the source for a derived value. The most common reference will be another Observation. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below.", "min": 0, "max": "*", "base": { "path": "Observation.derivedFrom", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/DocumentReference", "http://hl7.org/fhir/StructureDefinition/ImagingStudy", "http://hl7.org/fhir/StructureDefinition/Media", "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence", "http://hl7.org/fhir/StructureDefinition/vitalsigns" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component", "path": "Observation.component", "comment": "For a discussion on the ways Observations can be assembled in groups together see [Notes](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "*", "base": { "path": "Observation.component", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "vs-3", "severity": "error", "human": "If there is no a value a data absent reason must be present", "expression": "value.exists() or dataAbsentReason.exists()", "xpath": "f:*[starts-with(local-name(.), 'value')] or f:dataAbsentReason" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.component.id", "path": "Observation.component.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.extension", "path": "Observation.component.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.modifierExtension", "path": "Observation.component.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.component.code", "path": "Observation.component.code", "comment": "*All* code-value and component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.", "min": 1, "max": "1", "base": { "path": "Observation.component.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSigns" } ], "strength": "extensible", "description": "This identifies the vital sign result type.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-vitalsignresult" } }, { "id": "Observation.component.value[x]", "path": "Observation.component.value[x]", "comment": "Used when observation has a set of component observations. An observation may have both a value (e.g. an Apgar score) and component observations (the observations from which the Apgar score was derived). If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.component.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" }, { "code": "CodeableConcept" }, { "code": "string" }, { "code": "boolean" }, { "code": "integer" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "SampledData" }, { "code": "time" }, { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "vs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSignsUnits" } ], "strength": "required", "description": "Common UCUM units for recording Vital Signs.", "valueSet": "http://hl7.org/fhir/ValueSet/ucum-vitals-common|4.0.1" } }, { "id": "Observation.component.dataAbsentReason", "path": "Observation.component.dataAbsentReason", "comment": "\"Null\" or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"test not done\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Because of these options, use-case agreements are required to interpret general observations for exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.component.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6", "vs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.component.interpretation", "path": "Observation.component.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.component.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.component.referenceRange", "path": "Observation.component.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.component.referenceRange", "min": 0, "max": "*" }, "contentReference": "#Observation.referenceRange", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "Observation", "path": "Observation", "min": 0, "max": "*" }, { "id": "Observation.code", "path": "Observation.code", "comment": "additional codes that translate or map to this code are allowed. For example a more granular LOINC code or code that is used locally in a system." }, { "id": "Observation.code.coding", "path": "Observation.code.coding", "slicing": { "discriminator": [ { "type": "value", "path": "code" }, { "type": "value", "path": "system" } ], "ordered": false, "rules": "open" } }, { "id": "Observation.code.coding:HeadCircumCode", "path": "Observation.code.coding", "sliceName": "HeadCircumCode", "min": 1, "max": "1" }, { "id": "Observation.code.coding:HeadCircumCode.system", "path": "Observation.code.coding.system", "min": 1, "max": "1", "type": [ { "code": "uri" } ], "fixedUri": "http://loinc.org" }, { "id": "Observation.code.coding:HeadCircumCode.code", "path": "Observation.code.coding.code", "min": 1, "max": "1", "type": [ { "code": "code" } ], "fixedCode": "9843-4" }, { "id": "Observation.valueQuantity", "path": "Observation.valueQuantity" }, { "id": "Observation.valueQuantity.value", "path": "Observation.valueQuantity.value", "min": 1, "max": "1", "type": [ { "code": "decimal" } ], "mustSupport": true }, { "id": "Observation.valueQuantity.unit", "path": "Observation.valueQuantity.unit", "min": 1, "max": "1", "type": [ { "code": "string" } ], "mustSupport": true }, { "id": "Observation.valueQuantity.system", "path": "Observation.valueQuantity.system", "min": 1, "max": "1", "type": [ { "code": "uri" } ], "fixedUri": "http://unitsofmeasure.org", "mustSupport": true }, { "id": "Observation.valueQuantity.code", "path": "Observation.valueQuantity.code", "min": 1, "max": "1", "type": [ { "code": "code" } ], "mustSupport": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodyLengthUnits" } ], "strength": "required", "description": "Common UCUM units for body length measures such as Body Height and Head Circumference.", "valueSet": "http://hl7.org/fhir/ValueSet/ucum-bodylength|4.0.1" } } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/oxygensat", "resource": { "resourceType": "StructureDefinition", "id": "oxygensat", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-summary", "valueMarkdown": "\"#### Complete Summary of the Mandatory Requirements\n\n1. One code in `Observation.code` which must have\n - a fixed `Observation.code.coding.system`=**'http ://loinc.org'**\n - a fixed `Observation.code.coding.code`= **'2708-6'**\n - Other additional Codings are allowed in `Observation.code`- e.g. more specific LOINC\n Codes, SNOMED CT concepts, system specific codes. All codes\n SHALL have an system value\n1. Either one Observation.valueQuantity or, if there is no value, one code in Observation.DataAbsentReason\n - Each Observation.valueQuantity must have:\n - One numeric value in Observation.valueQuantity.value\n - a fixed Observation.valueQuantity.system=\"http://unitsofmeasure.org\"\n - a UCUM unit code in Observation.valueQuantity.code = **'%'**" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 5 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "oo" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/oxygensat", "version": "4.0.1", "name": "observation-oxygensat", "title": "Observation Oxygen Saturation Profile", "status": "draft", "experimental": false, "date": "2018-10-23", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Observation", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/vitalsigns", "derivation": "constraint", "snapshot": { "element": [ { "id": "Observation", "path": "Observation", "comment": "Used for simple observations such as device measurements, laboratory atomic results, vital signs, height, weight, smoking status, comments, etc. Other resources are used to provide context for observations such as laboratory reports, etc.", "min": 0, "max": "*", "base": { "path": "Observation", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "obs-6", "severity": "error", "human": "dataAbsentReason SHALL only be present if Observation.value[x] is not present", "expression": "dataAbsentReason.empty() or value.empty()", "xpath": "not(exists(f:dataAbsentReason)) or (not(exists(*[starts-with(local-name(.), 'value')])))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "obs-7", "severity": "error", "human": "If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present", "expression": "value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()", "xpath": "not(f:*[starts-with(local-name(.), 'value')] and (for $coding in f:code/f:coding return f:component/f:code/f:coding[f:code/@value=$coding/f:code/@value] [f:system/@value=$coding/f:system/@value]))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "vs-2", "severity": "error", "human": "If there is no component or hasMember element then either a value[x] or a data absent reason must be present.", "expression": "(component.empty() and hasMember.empty()) implies (dataAbsentReason.exists() or value.exists())", "xpath": "f:component or f:memberOF or f:*[starts-with(local-name(.), 'value')] or f:dataAbsentReason", "source": "http://hl7.org/fhir/StructureDefinition/vitalsigns" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.id", "path": "Observation.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.meta", "path": "Observation.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.implicitRules", "path": "Observation.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Observation.language", "path": "Observation.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Observation.text", "path": "Observation.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.contained", "path": "Observation.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.extension", "path": "Observation.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.modifierExtension", "path": "Observation.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Observation.identifier", "path": "Observation.identifier", "min": 0, "max": "*", "base": { "path": "Observation.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.basedOn", "path": "Observation.basedOn", "min": 0, "max": "*", "base": { "path": "Observation.basedOn", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/CarePlan", "http://hl7.org/fhir/StructureDefinition/DeviceRequest", "http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation", "http://hl7.org/fhir/StructureDefinition/MedicationRequest", "http://hl7.org/fhir/StructureDefinition/NutritionOrder", "http://hl7.org/fhir/StructureDefinition/ServiceRequest" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.partOf", "path": "Observation.partOf", "comment": "To link an Observation to an Encounter use `encounter`. See the [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below for guidance on referencing another Observation.", "min": 0, "max": "*", "base": { "path": "Observation.partOf", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/MedicationAdministration", "http://hl7.org/fhir/StructureDefinition/MedicationDispense", "http://hl7.org/fhir/StructureDefinition/MedicationStatement", "http://hl7.org/fhir/StructureDefinition/Procedure", "http://hl7.org/fhir/StructureDefinition/Immunization", "http://hl7.org/fhir/StructureDefinition/ImagingStudy" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.status", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-display-hint", "valueString": "default: final" } ], "path": "Observation.status", "comment": "This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid.", "min": 1, "max": "1", "base": { "path": "Observation.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": true, "isModifierReason": "This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Status" } ], "strength": "required", "valueSet": "http://hl7.org/fhir/ValueSet/observation-status|4.0.1" } }, { "id": "Observation.category", "path": "Observation.category", "slicing": { "discriminator": [ { "type": "value", "path": "coding.code" }, { "type": "value", "path": "coding.system" } ], "ordered": false, "rules": "open" }, "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 1, "max": "*", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.category:VSCat", "path": "Observation.category", "sliceName": "VSCat", "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 1, "max": "1", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.category:VSCat.id", "path": "Observation.category.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.extension", "path": "Observation.category.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding", "path": "Observation.category.coding", "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 1, "max": "*", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.id", "path": "Observation.category.coding.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding.extension", "path": "Observation.category.coding.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding.system", "path": "Observation.category.coding.system", "comment": "The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.", "min": 1, "max": "1", "base": { "path": "Coding.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://terminology.hl7.org/CodeSystem/observation-category", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.version", "path": "Observation.category.coding.version", "comment": "Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.", "min": 0, "max": "1", "base": { "path": "Coding.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.code", "path": "Observation.category.coding.code", "min": 1, "max": "1", "base": { "path": "Coding.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "vital-signs", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.display", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.category.coding.display", "min": 0, "max": "1", "base": { "path": "Coding.display", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.userSelected", "path": "Observation.category.coding.userSelected", "comment": "Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.", "min": 0, "max": "1", "base": { "path": "Coding.userSelected", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.text", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.category.text", "comment": "Very often the text is the same as a displayName of one of the codings.", "min": 0, "max": "1", "base": { "path": "CodeableConcept.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code", "path": "Observation.code", "comment": "additional codes that translate or map to this code are allowed. For example a more granular LOINC code or code that is used locally in a system.", "min": 1, "max": "1", "base": { "path": "Observation.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSigns" } ], "strength": "extensible", "description": "This identifies the vital sign result type.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-vitalsignresult" } }, { "id": "Observation.code.id", "path": "Observation.code.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.extension", "path": "Observation.code.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding", "path": "Observation.code.coding", "slicing": { "discriminator": [ { "type": "value", "path": "code" }, { "type": "value", "path": "system" } ], "ordered": false, "rules": "open" }, "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 0, "max": "*", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:OxygenSatCode", "path": "Observation.code.coding", "sliceName": "OxygenSatCode", "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 1, "max": "1", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:OxygenSatCode.id", "path": "Observation.code.coding.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding:OxygenSatCode.extension", "path": "Observation.code.coding.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding:OxygenSatCode.system", "path": "Observation.code.coding.system", "comment": "The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.", "min": 1, "max": "1", "base": { "path": "Coding.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://loinc.org", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:OxygenSatCode.version", "path": "Observation.code.coding.version", "comment": "Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.", "min": 0, "max": "1", "base": { "path": "Coding.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:OxygenSatCode.code", "path": "Observation.code.coding.code", "min": 1, "max": "1", "base": { "path": "Coding.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "2708-6", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:OxygenSatCode.display", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.code.coding.display", "min": 0, "max": "1", "base": { "path": "Coding.display", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:OxygenSatCode.userSelected", "path": "Observation.code.coding.userSelected", "comment": "Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.", "min": 0, "max": "1", "base": { "path": "Coding.userSelected", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.text", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.code.text", "comment": "Very often the text is the same as a displayName of one of the codings.", "min": 0, "max": "1", "base": { "path": "CodeableConcept.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.subject", "path": "Observation.subject", "comment": "One would expect this element to be a cardinality of 1..1. The only circumstance in which the subject can be missing is when the observation is made by a device that does not know the patient. In this case, the observation SHALL be matched to a patient through some context/channel matching technique, and at this point, the observation should be updated.", "min": 1, "max": "1", "base": { "path": "Observation.subject", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.focus", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "path": "Observation.focus", "comment": "Typically, an observation is made about the subject - a patient, or group of patients, location, or device - and the distinction between the subject and what is directly measured for an observation is specified in the observation code itself ( e.g., \"Blood Glucose\") and does not need to be represented separately using this element. Use `specimen` if a reference to a specimen is required. If a code is required instead of a resource use either `bodysite` for bodysites or the standard extension [focusCode](http://hl7.org/fhir/extension-observation-focuscode.html).", "min": 0, "max": "*", "base": { "path": "Observation.focus", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.encounter", "path": "Observation.encounter", "comment": "This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests).", "min": 0, "max": "1", "base": { "path": "Observation.encounter", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Encounter" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.effective[x]", "path": "Observation.effective[x]", "comment": "At least a date should be present unless this observation is a historical report. For recording imprecise or \"fuzzy\" times (For example, a blood glucose measurement taken \"after breakfast\") use the [Timing](http://hl7.org/fhir/datatypes.html#timing) datatype which allow the measurement to be tied to regular life events.", "min": 1, "max": "1", "base": { "path": "Observation.effective[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "vs-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "vs-1", "severity": "error", "human": "if Observation.effective[x] is dateTime and has a value then that value shall be precise to the day", "expression": "($this as dateTime).toString().length() >= 8", "xpath": "f:effectiveDateTime[matches(@value, '^\\d{4}-\\d{2}-\\d{2}')]" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.issued", "path": "Observation.issued", "comment": "For Observations that don’t require review and verification, it may be the same as the [`lastUpdated` ](http://hl7.org/fhir/resource-definitions.html#Meta.lastUpdated) time of the resource itself. For Observations that do require review and verification for certain updates, it might not be the same as the `lastUpdated` time of the resource itself due to a non-clinically significant update that doesn’t require the new version to be reviewed and verified again.", "min": 0, "max": "1", "base": { "path": "Observation.issued", "min": 0, "max": "1" }, "type": [ { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.performer", "path": "Observation.performer", "min": 0, "max": "*", "base": { "path": "Observation.performer", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/CareTeam", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/RelatedPerson" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]", "path": "Observation.value[x]", "slicing": { "discriminator": [ { "type": "type", "path": "$this" } ], "ordered": false, "rules": "closed" }, "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "obs-7", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity", "path": "Observation.value[x]", "sliceName": "valueQuantity", "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "obs-7", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.id", "path": "Observation.value[x].id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.value[x]:valueQuantity.extension", "path": "Observation.value[x].extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.value[x]:valueQuantity.value", "path": "Observation.value[x].value", "comment": "The implicit precision in the value should always be honored. Monetary values have their own rules for handling precision (refer to standard accounting text books).", "min": 1, "max": "1", "base": { "path": "Quantity.value", "min": 0, "max": "1" }, "type": [ { "code": "decimal" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.comparator", "path": "Observation.value[x].comparator", "min": 0, "max": "1", "base": { "path": "Quantity.comparator", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "meaningWhenMissing": "If there is no comparator, then there is no modification of the value", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This is labeled as \"Is Modifier\" because the comparator modifies the interpretation of the value significantly. If there is no comparator, then there is no modification of the value", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "QuantityComparator" } ], "strength": "required", "description": "How the Quantity should be understood and represented.", "valueSet": "http://hl7.org/fhir/ValueSet/quantity-comparator|4.0.1" } }, { "id": "Observation.value[x]:valueQuantity.unit", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.value[x].unit", "min": 1, "max": "1", "base": { "path": "Quantity.unit", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.system", "path": "Observation.value[x].system", "min": 1, "max": "1", "base": { "path": "Quantity.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://unitsofmeasure.org", "condition": [ "qty-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.code", "path": "Observation.value[x].code", "comment": "The preferred system is UCUM, but SNOMED CT can also be used (for customary units) or ISO 4217 for currency. The context of use may additionally require a code from a particular system.", "min": 1, "max": "1", "base": { "path": "Quantity.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "%", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.dataAbsentReason", "path": "Observation.dataAbsentReason", "comment": "Null or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"specimen unsatisfactory\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Note that an observation may only be reported if there are values to report. For example differential cell counts values may be reported only when > 0. Because of these options, use-case agreements are required to interpret general observations for null or exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.interpretation", "path": "Observation.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.note", "path": "Observation.note", "comment": "May include general statements about the observation, or statements about significant, unexpected or unreliable results values, or information about its source when relevant to its interpretation.", "min": 0, "max": "*", "base": { "path": "Observation.note", "min": 0, "max": "*" }, "type": [ { "code": "Annotation" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.bodySite", "path": "Observation.bodySite", "comment": "Only used if not implicit in code found in Observation.code. In many systems, this may be represented as a related observation instead of an inline component. \n\nIf the use case requires BodySite to be handled as a separate resource (e.g. to identify and track separately) then use the standard extension[ bodySite](http://hl7.org/fhir/extension-bodysite.html).", "min": 0, "max": "1", "base": { "path": "Observation.bodySite", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodySite" } ], "strength": "example", "description": "Codes describing anatomical locations. May include laterality.", "valueSet": "http://hl7.org/fhir/ValueSet/body-site" } }, { "id": "Observation.method", "path": "Observation.method", "comment": "Only used if not implicit in code for Observation.code.", "min": 0, "max": "1", "base": { "path": "Observation.method", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationMethod" } ], "strength": "example", "description": "Methods for simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-methods" } }, { "id": "Observation.specimen", "path": "Observation.specimen", "comment": "Should only be used if not implicit in code found in `Observation.code`. Observations are not made on specimens themselves; they are made on a subject, but in many cases by the means of a specimen. Note that although specimens are often involved, they are not always tracked and reported explicitly. Also note that observation resources may be used in contexts that track the specimen explicitly (e.g. Diagnostic Report).", "min": 0, "max": "1", "base": { "path": "Observation.specimen", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Specimen" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.device", "path": "Observation.device", "comment": "Note that this is not meant to represent a device involved in the transmission of the result, e.g., a gateway. Such devices may be documented using the Provenance resource where relevant.", "min": 0, "max": "1", "base": { "path": "Observation.device", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/DeviceMetric" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange", "path": "Observation.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.referenceRange", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "obs-3", "severity": "error", "human": "Must have at least a low or a high or text", "expression": "low.exists() or high.exists() or text.exists()", "xpath": "(exists(f:low) or exists(f:high)or exists(f:text))" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.id", "path": "Observation.referenceRange.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.extension", "path": "Observation.referenceRange.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.modifierExtension", "path": "Observation.referenceRange.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.referenceRange.low", "path": "Observation.referenceRange.low", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.low", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.high", "path": "Observation.referenceRange.high", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.high", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.type", "path": "Observation.referenceRange.type", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal range is assumed.", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeMeaning" } ], "strength": "preferred", "description": "Code for the meaning of a reference range.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-meaning" } }, { "id": "Observation.referenceRange.appliesTo", "path": "Observation.referenceRange.appliesTo", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal population is assumed.", "min": 0, "max": "*", "base": { "path": "Observation.referenceRange.appliesTo", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeType" } ], "strength": "example", "description": "Codes identifying the population the reference range applies to.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-appliesto" } }, { "id": "Observation.referenceRange.age", "path": "Observation.referenceRange.age", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.age", "min": 0, "max": "1" }, "type": [ { "code": "Range" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.text", "path": "Observation.referenceRange.text", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.hasMember", "path": "Observation.hasMember", "comment": "When using this element, an observation will typically have either a value or a set of related resources, although both may be present in some cases. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below. Note that a system may calculate results from [QuestionnaireResponse](http://hl7.org/fhir/questionnaireresponse.html) into a final score and represent the score as an Observation.", "min": 0, "max": "*", "base": { "path": "Observation.hasMember", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence", "http://hl7.org/fhir/StructureDefinition/vitalsigns" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.derivedFrom", "path": "Observation.derivedFrom", "comment": "All the reference choices that are listed in this element can represent clinical observations and other measurements that may be the source for a derived value. The most common reference will be another Observation. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below.", "min": 0, "max": "*", "base": { "path": "Observation.derivedFrom", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/DocumentReference", "http://hl7.org/fhir/StructureDefinition/ImagingStudy", "http://hl7.org/fhir/StructureDefinition/Media", "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence", "http://hl7.org/fhir/StructureDefinition/vitalsigns" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component", "path": "Observation.component", "comment": "For a discussion on the ways Observations can be assembled in groups together see [Notes](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "*", "base": { "path": "Observation.component", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "vs-3", "severity": "error", "human": "If there is no a value a data absent reason must be present", "expression": "value.exists() or dataAbsentReason.exists()", "xpath": "f:*[starts-with(local-name(.), 'value')] or f:dataAbsentReason" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.component.id", "path": "Observation.component.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.extension", "path": "Observation.component.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.modifierExtension", "path": "Observation.component.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.component.code", "path": "Observation.component.code", "comment": "*All* code-value and component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.", "min": 1, "max": "1", "base": { "path": "Observation.component.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSigns" } ], "strength": "extensible", "description": "This identifies the vital sign result type.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-vitalsignresult" } }, { "id": "Observation.component.value[x]", "path": "Observation.component.value[x]", "comment": "Used when observation has a set of component observations. An observation may have both a value (e.g. an Apgar score) and component observations (the observations from which the Apgar score was derived). If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.component.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" }, { "code": "CodeableConcept" }, { "code": "string" }, { "code": "boolean" }, { "code": "integer" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "SampledData" }, { "code": "time" }, { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "vs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSignsUnits" } ], "strength": "required", "description": "Common UCUM units for recording Vital Signs.", "valueSet": "http://hl7.org/fhir/ValueSet/ucum-vitals-common|4.0.1" } }, { "id": "Observation.component.dataAbsentReason", "path": "Observation.component.dataAbsentReason", "comment": "\"Null\" or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"test not done\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Because of these options, use-case agreements are required to interpret general observations for exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.component.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6", "vs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.component.interpretation", "path": "Observation.component.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.component.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.component.referenceRange", "path": "Observation.component.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.component.referenceRange", "min": 0, "max": "*" }, "contentReference": "#Observation.referenceRange", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "Observation", "path": "Observation", "min": 0, "max": "*" }, { "id": "Observation.code", "path": "Observation.code", "comment": "additional codes that translate or map to this code are allowed. For example a more granular LOINC code or code that is used locally in a system." }, { "id": "Observation.code.coding", "path": "Observation.code.coding", "slicing": { "discriminator": [ { "type": "value", "path": "code" }, { "type": "value", "path": "system" } ], "ordered": false, "rules": "open" } }, { "id": "Observation.code.coding:OxygenSatCode", "path": "Observation.code.coding", "sliceName": "OxygenSatCode", "min": 1, "max": "1" }, { "id": "Observation.code.coding:OxygenSatCode.system", "path": "Observation.code.coding.system", "min": 1, "max": "1", "type": [ { "code": "uri" } ], "fixedUri": "http://loinc.org" }, { "id": "Observation.code.coding:OxygenSatCode.code", "path": "Observation.code.coding.code", "min": 1, "max": "1", "type": [ { "code": "code" } ], "fixedCode": "2708-6" }, { "id": "Observation.valueQuantity", "path": "Observation.valueQuantity" }, { "id": "Observation.valueQuantity.value", "path": "Observation.valueQuantity.value", "min": 1, "max": "1", "type": [ { "code": "decimal" } ], "mustSupport": true }, { "id": "Observation.valueQuantity.unit", "path": "Observation.valueQuantity.unit", "min": 1, "max": "1", "type": [ { "code": "string" } ], "mustSupport": true }, { "id": "Observation.valueQuantity.system", "path": "Observation.valueQuantity.system", "min": 1, "max": "1", "type": [ { "code": "uri" } ], "fixedUri": "http://unitsofmeasure.org", "mustSupport": true }, { "id": "Observation.valueQuantity.code", "path": "Observation.valueQuantity.code", "min": 1, "max": "1", "type": [ { "code": "code" } ], "fixedCode": "%", "mustSupport": true } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/bmi", "resource": { "resourceType": "StructureDefinition", "id": "bmi", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-summary", "valueMarkdown": "#### Complete Summary of the Mandatory Requirements\r\r1. One code in `Observation.code` which must have\r - a fixed `Observation.code.coding.system`=**'http ://loinc.org'**\r - a fixed `Observation.code.coding.code`= **'39156-5'**\r - Other additional Codings are allowed in `Observation.code`- e.g. more specific LOINC\r Codes, SNOMED CT concepts, system specific codes. All codes\r SHALL have an system value\r1. Either one Observation.valueQuantity or, if there is no value, one code in Observation.DataAbsentReason\r - Each Observation.valueQuantity must have:\r - One numeric value in Observation.valueQuantity.value\r - a fixed Observation.valueQuantity.system=\"http://unitsofmeasure.org\"\r - a UCUM unit code in Observation.valueQuantity.code = **'kg/m2'**" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 5 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "oo" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/bmi", "version": "4.0.1", "name": "observation-bmi", "title": "Observation Body Mass Index Profile", "status": "draft", "experimental": false, "date": "2018-08-11", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Observation", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/vitalsigns", "derivation": "constraint", "snapshot": { "element": [ { "id": "Observation", "path": "Observation", "comment": "Used for simple observations such as device measurements, laboratory atomic results, vital signs, height, weight, smoking status, comments, etc. Other resources are used to provide context for observations such as laboratory reports, etc.", "min": 0, "max": "*", "base": { "path": "Observation", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "obs-6", "severity": "error", "human": "dataAbsentReason SHALL only be present if Observation.value[x] is not present", "expression": "dataAbsentReason.empty() or value.empty()", "xpath": "not(exists(f:dataAbsentReason)) or (not(exists(*[starts-with(local-name(.), 'value')])))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "obs-7", "severity": "error", "human": "If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present", "expression": "value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()", "xpath": "not(f:*[starts-with(local-name(.), 'value')] and (for $coding in f:code/f:coding return f:component/f:code/f:coding[f:code/@value=$coding/f:code/@value] [f:system/@value=$coding/f:system/@value]))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "vs-2", "severity": "error", "human": "If there is no component or hasMember element then either a value[x] or a data absent reason must be present.", "expression": "(component.empty() and hasMember.empty()) implies (dataAbsentReason.exists() or value.exists())", "xpath": "f:component or f:memberOF or f:*[starts-with(local-name(.), 'value')] or f:dataAbsentReason", "source": "http://hl7.org/fhir/StructureDefinition/vitalsigns" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.id", "path": "Observation.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.meta", "path": "Observation.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.implicitRules", "path": "Observation.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Observation.language", "path": "Observation.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Observation.text", "path": "Observation.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.contained", "path": "Observation.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.extension", "path": "Observation.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.modifierExtension", "path": "Observation.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Observation.identifier", "path": "Observation.identifier", "min": 0, "max": "*", "base": { "path": "Observation.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.basedOn", "path": "Observation.basedOn", "min": 0, "max": "*", "base": { "path": "Observation.basedOn", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/CarePlan", "http://hl7.org/fhir/StructureDefinition/DeviceRequest", "http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation", "http://hl7.org/fhir/StructureDefinition/MedicationRequest", "http://hl7.org/fhir/StructureDefinition/NutritionOrder", "http://hl7.org/fhir/StructureDefinition/ServiceRequest" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.partOf", "path": "Observation.partOf", "comment": "To link an Observation to an Encounter use `encounter`. See the [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below for guidance on referencing another Observation.", "min": 0, "max": "*", "base": { "path": "Observation.partOf", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/MedicationAdministration", "http://hl7.org/fhir/StructureDefinition/MedicationDispense", "http://hl7.org/fhir/StructureDefinition/MedicationStatement", "http://hl7.org/fhir/StructureDefinition/Procedure", "http://hl7.org/fhir/StructureDefinition/Immunization", "http://hl7.org/fhir/StructureDefinition/ImagingStudy" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.status", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-display-hint", "valueString": "default: final" } ], "path": "Observation.status", "comment": "This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid.", "min": 1, "max": "1", "base": { "path": "Observation.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": true, "isModifierReason": "This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Status" } ], "strength": "required", "valueSet": "http://hl7.org/fhir/ValueSet/observation-status|4.0.1" } }, { "id": "Observation.category", "path": "Observation.category", "slicing": { "discriminator": [ { "type": "value", "path": "coding.code" }, { "type": "value", "path": "coding.system" } ], "ordered": false, "rules": "open" }, "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 1, "max": "*", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.category:VSCat", "path": "Observation.category", "sliceName": "VSCat", "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 1, "max": "1", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.category:VSCat.id", "path": "Observation.category.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.extension", "path": "Observation.category.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding", "path": "Observation.category.coding", "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 1, "max": "*", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.id", "path": "Observation.category.coding.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding.extension", "path": "Observation.category.coding.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding.system", "path": "Observation.category.coding.system", "comment": "The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.", "min": 1, "max": "1", "base": { "path": "Coding.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://terminology.hl7.org/CodeSystem/observation-category", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.version", "path": "Observation.category.coding.version", "comment": "Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.", "min": 0, "max": "1", "base": { "path": "Coding.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.code", "path": "Observation.category.coding.code", "min": 1, "max": "1", "base": { "path": "Coding.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "vital-signs", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.display", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.category.coding.display", "min": 0, "max": "1", "base": { "path": "Coding.display", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.userSelected", "path": "Observation.category.coding.userSelected", "comment": "Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.", "min": 0, "max": "1", "base": { "path": "Coding.userSelected", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.text", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.category.text", "comment": "Very often the text is the same as a displayName of one of the codings.", "min": 0, "max": "1", "base": { "path": "CodeableConcept.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code", "path": "Observation.code", "comment": "additional codes that translate or map to this code are allowed. For example a more granular LOINC code or code that is used locally in a system.", "min": 1, "max": "1", "base": { "path": "Observation.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSigns" } ], "strength": "extensible", "description": "This identifies the vital sign result type.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-vitalsignresult" } }, { "id": "Observation.code.id", "path": "Observation.code.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.extension", "path": "Observation.code.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding", "path": "Observation.code.coding", "slicing": { "discriminator": [ { "type": "value", "path": "code" }, { "type": "value", "path": "system" } ], "ordered": false, "rules": "open" }, "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 0, "max": "*", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BMICode", "path": "Observation.code.coding", "sliceName": "BMICode", "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 1, "max": "1", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BMICode.id", "path": "Observation.code.coding.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding:BMICode.extension", "path": "Observation.code.coding.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding:BMICode.system", "path": "Observation.code.coding.system", "comment": "The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.", "min": 1, "max": "1", "base": { "path": "Coding.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://loinc.org", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BMICode.version", "path": "Observation.code.coding.version", "comment": "Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.", "min": 0, "max": "1", "base": { "path": "Coding.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BMICode.code", "path": "Observation.code.coding.code", "min": 1, "max": "1", "base": { "path": "Coding.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "39156-5", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BMICode.display", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.code.coding.display", "min": 0, "max": "1", "base": { "path": "Coding.display", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BMICode.userSelected", "path": "Observation.code.coding.userSelected", "comment": "Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.", "min": 0, "max": "1", "base": { "path": "Coding.userSelected", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.text", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.code.text", "comment": "Very often the text is the same as a displayName of one of the codings.", "min": 0, "max": "1", "base": { "path": "CodeableConcept.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.subject", "path": "Observation.subject", "comment": "One would expect this element to be a cardinality of 1..1. The only circumstance in which the subject can be missing is when the observation is made by a device that does not know the patient. In this case, the observation SHALL be matched to a patient through some context/channel matching technique, and at this point, the observation should be updated.", "min": 1, "max": "1", "base": { "path": "Observation.subject", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.focus", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "path": "Observation.focus", "comment": "Typically, an observation is made about the subject - a patient, or group of patients, location, or device - and the distinction between the subject and what is directly measured for an observation is specified in the observation code itself ( e.g., \"Blood Glucose\") and does not need to be represented separately using this element. Use `specimen` if a reference to a specimen is required. If a code is required instead of a resource use either `bodysite` for bodysites or the standard extension [focusCode](http://hl7.org/fhir/extension-observation-focuscode.html).", "min": 0, "max": "*", "base": { "path": "Observation.focus", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.encounter", "path": "Observation.encounter", "comment": "This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests).", "min": 0, "max": "1", "base": { "path": "Observation.encounter", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Encounter" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.effective[x]", "path": "Observation.effective[x]", "comment": "At least a date should be present unless this observation is a historical report. For recording imprecise or \"fuzzy\" times (For example, a blood glucose measurement taken \"after breakfast\") use the [Timing](http://hl7.org/fhir/datatypes.html#timing) datatype which allow the measurement to be tied to regular life events.", "min": 1, "max": "1", "base": { "path": "Observation.effective[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "vs-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "vs-1", "severity": "error", "human": "if Observation.effective[x] is dateTime and has a value then that value shall be precise to the day", "expression": "($this as dateTime).toString().length() >= 8", "xpath": "f:effectiveDateTime[matches(@value, '^\\d{4}-\\d{2}-\\d{2}')]" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.issued", "path": "Observation.issued", "comment": "For Observations that don’t require review and verification, it may be the same as the [`lastUpdated` ](http://hl7.org/fhir/resource-definitions.html#Meta.lastUpdated) time of the resource itself. For Observations that do require review and verification for certain updates, it might not be the same as the `lastUpdated` time of the resource itself due to a non-clinically significant update that doesn’t require the new version to be reviewed and verified again.", "min": 0, "max": "1", "base": { "path": "Observation.issued", "min": 0, "max": "1" }, "type": [ { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.performer", "path": "Observation.performer", "min": 0, "max": "*", "base": { "path": "Observation.performer", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/CareTeam", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/RelatedPerson" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]", "path": "Observation.value[x]", "slicing": { "discriminator": [ { "type": "type", "path": "$this" } ], "ordered": false, "rules": "closed" }, "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "obs-7", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity", "path": "Observation.value[x]", "sliceName": "valueQuantity", "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 1, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "obs-7", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.id", "path": "Observation.value[x].id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.value[x]:valueQuantity.extension", "path": "Observation.value[x].extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.value[x]:valueQuantity.value", "path": "Observation.value[x].value", "comment": "The implicit precision in the value should always be honored. Monetary values have their own rules for handling precision (refer to standard accounting text books).", "min": 1, "max": "1", "base": { "path": "Quantity.value", "min": 0, "max": "1" }, "type": [ { "code": "decimal" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.comparator", "path": "Observation.value[x].comparator", "min": 0, "max": "1", "base": { "path": "Quantity.comparator", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "meaningWhenMissing": "If there is no comparator, then there is no modification of the value", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This is labeled as \"Is Modifier\" because the comparator modifies the interpretation of the value significantly. If there is no comparator, then there is no modification of the value", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "QuantityComparator" } ], "strength": "required", "description": "How the Quantity should be understood and represented.", "valueSet": "http://hl7.org/fhir/ValueSet/quantity-comparator|4.0.1" } }, { "id": "Observation.value[x]:valueQuantity.unit", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.value[x].unit", "min": 1, "max": "1", "base": { "path": "Quantity.unit", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.system", "path": "Observation.value[x].system", "min": 1, "max": "1", "base": { "path": "Quantity.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://unitsofmeasure.org", "condition": [ "qty-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.code", "path": "Observation.value[x].code", "comment": "The preferred system is UCUM, but SNOMED CT can also be used (for customary units) or ISO 4217 for currency. The context of use may additionally require a code from a particular system.", "min": 1, "max": "1", "base": { "path": "Quantity.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "kg/m2", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.dataAbsentReason", "path": "Observation.dataAbsentReason", "comment": "Null or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"specimen unsatisfactory\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Note that an observation may only be reported if there are values to report. For example differential cell counts values may be reported only when > 0. Because of these options, use-case agreements are required to interpret general observations for null or exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.interpretation", "path": "Observation.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.note", "path": "Observation.note", "comment": "May include general statements about the observation, or statements about significant, unexpected or unreliable results values, or information about its source when relevant to its interpretation.", "min": 0, "max": "*", "base": { "path": "Observation.note", "min": 0, "max": "*" }, "type": [ { "code": "Annotation" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.bodySite", "path": "Observation.bodySite", "comment": "Only used if not implicit in code found in Observation.code. In many systems, this may be represented as a related observation instead of an inline component. \n\nIf the use case requires BodySite to be handled as a separate resource (e.g. to identify and track separately) then use the standard extension[ bodySite](http://hl7.org/fhir/extension-bodysite.html).", "min": 0, "max": "1", "base": { "path": "Observation.bodySite", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodySite" } ], "strength": "example", "description": "Codes describing anatomical locations. May include laterality.", "valueSet": "http://hl7.org/fhir/ValueSet/body-site" } }, { "id": "Observation.method", "path": "Observation.method", "comment": "Only used if not implicit in code for Observation.code.", "min": 0, "max": "1", "base": { "path": "Observation.method", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationMethod" } ], "strength": "example", "description": "Methods for simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-methods" } }, { "id": "Observation.specimen", "path": "Observation.specimen", "comment": "Should only be used if not implicit in code found in `Observation.code`. Observations are not made on specimens themselves; they are made on a subject, but in many cases by the means of a specimen. Note that although specimens are often involved, they are not always tracked and reported explicitly. Also note that observation resources may be used in contexts that track the specimen explicitly (e.g. Diagnostic Report).", "min": 0, "max": "1", "base": { "path": "Observation.specimen", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Specimen" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.device", "path": "Observation.device", "comment": "Note that this is not meant to represent a device involved in the transmission of the result, e.g., a gateway. Such devices may be documented using the Provenance resource where relevant.", "min": 0, "max": "1", "base": { "path": "Observation.device", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/DeviceMetric" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange", "path": "Observation.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.referenceRange", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "obs-3", "severity": "error", "human": "Must have at least a low or a high or text", "expression": "low.exists() or high.exists() or text.exists()", "xpath": "(exists(f:low) or exists(f:high)or exists(f:text))" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.id", "path": "Observation.referenceRange.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.extension", "path": "Observation.referenceRange.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.modifierExtension", "path": "Observation.referenceRange.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.referenceRange.low", "path": "Observation.referenceRange.low", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.low", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.high", "path": "Observation.referenceRange.high", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.high", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.type", "path": "Observation.referenceRange.type", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal range is assumed.", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeMeaning" } ], "strength": "preferred", "description": "Code for the meaning of a reference range.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-meaning" } }, { "id": "Observation.referenceRange.appliesTo", "path": "Observation.referenceRange.appliesTo", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal population is assumed.", "min": 0, "max": "*", "base": { "path": "Observation.referenceRange.appliesTo", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeType" } ], "strength": "example", "description": "Codes identifying the population the reference range applies to.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-appliesto" } }, { "id": "Observation.referenceRange.age", "path": "Observation.referenceRange.age", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.age", "min": 0, "max": "1" }, "type": [ { "code": "Range" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.text", "path": "Observation.referenceRange.text", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.hasMember", "path": "Observation.hasMember", "comment": "When using this element, an observation will typically have either a value or a set of related resources, although both may be present in some cases. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below. Note that a system may calculate results from [QuestionnaireResponse](http://hl7.org/fhir/questionnaireresponse.html) into a final score and represent the score as an Observation.", "min": 0, "max": "*", "base": { "path": "Observation.hasMember", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence", "http://hl7.org/fhir/StructureDefinition/vitalsigns" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.derivedFrom", "path": "Observation.derivedFrom", "comment": "All the reference choices that are listed in this element can represent clinical observations and other measurements that may be the source for a derived value. The most common reference will be another Observation. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below.", "min": 0, "max": "*", "base": { "path": "Observation.derivedFrom", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/DocumentReference", "http://hl7.org/fhir/StructureDefinition/ImagingStudy", "http://hl7.org/fhir/StructureDefinition/Media", "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence", "http://hl7.org/fhir/StructureDefinition/vitalsigns" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component", "path": "Observation.component", "comment": "For a discussion on the ways Observations can be assembled in groups together see [Notes](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "*", "base": { "path": "Observation.component", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "vs-3", "severity": "error", "human": "If there is no a value a data absent reason must be present", "expression": "value.exists() or dataAbsentReason.exists()", "xpath": "f:*[starts-with(local-name(.), 'value')] or f:dataAbsentReason" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.component.id", "path": "Observation.component.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.extension", "path": "Observation.component.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.modifierExtension", "path": "Observation.component.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.component.code", "path": "Observation.component.code", "comment": "*All* code-value and component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.", "min": 1, "max": "1", "base": { "path": "Observation.component.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSigns" } ], "strength": "extensible", "description": "This identifies the vital sign result type.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-vitalsignresult" } }, { "id": "Observation.component.value[x]", "path": "Observation.component.value[x]", "comment": "Used when observation has a set of component observations. An observation may have both a value (e.g. an Apgar score) and component observations (the observations from which the Apgar score was derived). If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.component.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" }, { "code": "CodeableConcept" }, { "code": "string" }, { "code": "boolean" }, { "code": "integer" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "SampledData" }, { "code": "time" }, { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "vs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSignsUnits" } ], "strength": "required", "description": "Common UCUM units for recording Vital Signs.", "valueSet": "http://hl7.org/fhir/ValueSet/ucum-vitals-common|4.0.1" } }, { "id": "Observation.component.dataAbsentReason", "path": "Observation.component.dataAbsentReason", "comment": "\"Null\" or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"test not done\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Because of these options, use-case agreements are required to interpret general observations for exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.component.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6", "vs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.component.interpretation", "path": "Observation.component.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.component.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.component.referenceRange", "path": "Observation.component.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.component.referenceRange", "min": 0, "max": "*" }, "contentReference": "#Observation.referenceRange", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "Observation", "path": "Observation", "min": 0, "max": "*" }, { "id": "Observation.code", "path": "Observation.code", "comment": "additional codes that translate or map to this code are allowed. For example a more granular LOINC code or code that is used locally in a system." }, { "id": "Observation.code.coding", "path": "Observation.code.coding", "slicing": { "discriminator": [ { "type": "value", "path": "code" }, { "type": "value", "path": "system" } ], "ordered": false, "rules": "open" } }, { "id": "Observation.code.coding:BMICode", "path": "Observation.code.coding", "sliceName": "BMICode", "min": 1, "max": "1" }, { "id": "Observation.code.coding:BMICode.system", "path": "Observation.code.coding.system", "min": 1, "max": "1", "type": [ { "code": "uri" } ], "fixedUri": "http://loinc.org" }, { "id": "Observation.code.coding:BMICode.code", "path": "Observation.code.coding.code", "min": 1, "max": "1", "type": [ { "code": "code" } ], "fixedCode": "39156-5" }, { "id": "Observation.valueQuantity", "path": "Observation.valueQuantity", "min": 1, "max": "1" }, { "id": "Observation.valueQuantity.value", "path": "Observation.valueQuantity.value", "min": 1, "max": "1", "type": [ { "code": "decimal" } ], "mustSupport": true }, { "id": "Observation.valueQuantity.unit", "path": "Observation.valueQuantity.unit", "min": 1, "max": "1", "type": [ { "code": "string" } ], "mustSupport": true }, { "id": "Observation.valueQuantity.system", "path": "Observation.valueQuantity.system", "min": 1, "max": "1", "type": [ { "code": "uri" } ], "fixedUri": "http://unitsofmeasure.org", "mustSupport": true }, { "id": "Observation.valueQuantity.code", "path": "Observation.valueQuantity.code", "min": 1, "max": "1", "type": [ { "code": "code" } ], "fixedCode": "kg/m2", "mustSupport": true } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/bp", "resource": { "resourceType": "StructureDefinition", "id": "bp", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-summary", "valueMarkdown": "#### Complete Summary of the Mandatory Requirements\r\r1. One code in `Observation.code` which must have\r - a fixed `Observation.code.coding.system`=**'http ://loinc.org'**\r - a fixed `Observation.code.coding.code`= **85354-9'**\r - Other additional Codings are allowed in `Observation.code`- e.g. more specific LOINC\r Codes, SNOMED CT concepts, system specific codes. All codes\r SHALL have an system value\r2. One `Observation.component.code` which must have\r - a fixed `Observation.component.code.coding.system`=**'http://loinc.org'**\r - fixed `Observation.component.code.coding.code`= **'8480-6'**\r - Other additional Codings are allowed in `Observation.code`- e.g. more specific LOINC\r Codes, SNOMED CT concepts, system specific codes. All codes\r SHALL have an system value\r3. One `Observation.component.code` which must have \r - a fixed `Observation.component.code.coding.system`=**'http://loinc.org'**\r - fixed `Observation.component.code.coding.code`= **'8462-4'**\r - Other additional Codings are allowed in `Observation.code`- e.g. more specific LOINC\r Codes, SNOMED CT concepts, system specific codes. All codes\r SHALL have an system value\r1. Either one Observation.valueQuantity or, if there is no value, one code in Observation.DataAbsentReason\r - Each Observation.valueQuantity must have:\r - One numeric value in Observation.valueQuantity.value\r - a fixed Observation.valueQuantity.system=\"http://unitsofmeasure.org\"\r - a UCUM unit code in Observation.valueQuantity.code = **'mm[Hg]'**" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 5 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "oo" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/bp", "version": "4.0.1", "name": "observation-bp", "title": "Observation Blood Pressure Profile", "status": "draft", "experimental": false, "date": "2018-08-11", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Observation", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/vitalsigns", "derivation": "constraint", "snapshot": { "element": [ { "id": "Observation", "path": "Observation", "comment": "Used for simple observations such as device measurements, laboratory atomic results, vital signs, height, weight, smoking status, comments, etc. Other resources are used to provide context for observations such as laboratory reports, etc.", "min": 0, "max": "*", "base": { "path": "Observation", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "obs-6", "severity": "error", "human": "dataAbsentReason SHALL only be present if Observation.value[x] is not present", "expression": "dataAbsentReason.empty() or value.empty()", "xpath": "not(exists(f:dataAbsentReason)) or (not(exists(*[starts-with(local-name(.), 'value')])))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "obs-7", "severity": "error", "human": "If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present", "expression": "value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()", "xpath": "not(f:*[starts-with(local-name(.), 'value')] and (for $coding in f:code/f:coding return f:component/f:code/f:coding[f:code/@value=$coding/f:code/@value] [f:system/@value=$coding/f:system/@value]))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "vs-2", "severity": "error", "human": "If there is no component or hasMember element then either a value[x] or a data absent reason must be present.", "expression": "(component.empty() and hasMember.empty()) implies (dataAbsentReason.exists() or value.exists())", "xpath": "f:component or f:memberOF or f:*[starts-with(local-name(.), 'value')] or f:dataAbsentReason", "source": "http://hl7.org/fhir/StructureDefinition/vitalsigns" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.id", "path": "Observation.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.meta", "path": "Observation.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.implicitRules", "path": "Observation.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Observation.language", "path": "Observation.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Observation.text", "path": "Observation.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.contained", "path": "Observation.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.extension", "path": "Observation.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.modifierExtension", "path": "Observation.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Observation.identifier", "path": "Observation.identifier", "min": 0, "max": "*", "base": { "path": "Observation.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.basedOn", "path": "Observation.basedOn", "min": 0, "max": "*", "base": { "path": "Observation.basedOn", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/CarePlan", "http://hl7.org/fhir/StructureDefinition/DeviceRequest", "http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation", "http://hl7.org/fhir/StructureDefinition/MedicationRequest", "http://hl7.org/fhir/StructureDefinition/NutritionOrder", "http://hl7.org/fhir/StructureDefinition/ServiceRequest" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.partOf", "path": "Observation.partOf", "comment": "To link an Observation to an Encounter use `encounter`. See the [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below for guidance on referencing another Observation.", "min": 0, "max": "*", "base": { "path": "Observation.partOf", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/MedicationAdministration", "http://hl7.org/fhir/StructureDefinition/MedicationDispense", "http://hl7.org/fhir/StructureDefinition/MedicationStatement", "http://hl7.org/fhir/StructureDefinition/Procedure", "http://hl7.org/fhir/StructureDefinition/Immunization", "http://hl7.org/fhir/StructureDefinition/ImagingStudy" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.status", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-display-hint", "valueString": "default: final" } ], "path": "Observation.status", "comment": "This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid.", "min": 1, "max": "1", "base": { "path": "Observation.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": true, "isModifierReason": "This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Status" } ], "strength": "required", "valueSet": "http://hl7.org/fhir/ValueSet/observation-status|4.0.1" } }, { "id": "Observation.category", "path": "Observation.category", "slicing": { "discriminator": [ { "type": "value", "path": "coding.code" }, { "type": "value", "path": "coding.system" } ], "ordered": false, "rules": "open" }, "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 1, "max": "*", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.category:VSCat", "path": "Observation.category", "sliceName": "VSCat", "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 1, "max": "1", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.category:VSCat.id", "path": "Observation.category.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.extension", "path": "Observation.category.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding", "path": "Observation.category.coding", "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 1, "max": "*", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.id", "path": "Observation.category.coding.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding.extension", "path": "Observation.category.coding.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.category:VSCat.coding.system", "path": "Observation.category.coding.system", "comment": "The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.", "min": 1, "max": "1", "base": { "path": "Coding.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://terminology.hl7.org/CodeSystem/observation-category", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.version", "path": "Observation.category.coding.version", "comment": "Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.", "min": 0, "max": "1", "base": { "path": "Coding.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.code", "path": "Observation.category.coding.code", "min": 1, "max": "1", "base": { "path": "Coding.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "vital-signs", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.display", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.category.coding.display", "min": 0, "max": "1", "base": { "path": "Coding.display", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.coding.userSelected", "path": "Observation.category.coding.userSelected", "comment": "Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.", "min": 0, "max": "1", "base": { "path": "Coding.userSelected", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.category:VSCat.text", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.category.text", "comment": "Very often the text is the same as a displayName of one of the codings.", "min": 0, "max": "1", "base": { "path": "CodeableConcept.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code", "path": "Observation.code", "comment": "additional codes that translate or map to this code are allowed. For example a more granular LOINC code or code that is used locally in a system.", "min": 1, "max": "1", "base": { "path": "Observation.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSigns" } ], "strength": "extensible", "description": "This identifies the vital sign result type.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-vitalsignresult" } }, { "id": "Observation.code.id", "path": "Observation.code.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.extension", "path": "Observation.code.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding", "path": "Observation.code.coding", "slicing": { "discriminator": [ { "type": "value", "path": "code" }, { "type": "value", "path": "system" } ], "ordered": false, "rules": "open" }, "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 0, "max": "*", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BPCode", "path": "Observation.code.coding", "sliceName": "BPCode", "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 1, "max": "1", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BPCode.id", "path": "Observation.code.coding.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding:BPCode.extension", "path": "Observation.code.coding.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.code.coding:BPCode.system", "path": "Observation.code.coding.system", "comment": "The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.", "min": 1, "max": "1", "base": { "path": "Coding.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://loinc.org", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BPCode.version", "path": "Observation.code.coding.version", "comment": "Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.", "min": 0, "max": "1", "base": { "path": "Coding.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BPCode.code", "path": "Observation.code.coding.code", "min": 1, "max": "1", "base": { "path": "Coding.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "85354-9", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BPCode.display", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.code.coding.display", "min": 0, "max": "1", "base": { "path": "Coding.display", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.coding:BPCode.userSelected", "path": "Observation.code.coding.userSelected", "comment": "Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.", "min": 0, "max": "1", "base": { "path": "Coding.userSelected", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.code.text", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.code.text", "comment": "Very often the text is the same as a displayName of one of the codings.", "min": 0, "max": "1", "base": { "path": "CodeableConcept.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.subject", "path": "Observation.subject", "comment": "One would expect this element to be a cardinality of 1..1. The only circumstance in which the subject can be missing is when the observation is made by a device that does not know the patient. In this case, the observation SHALL be matched to a patient through some context/channel matching technique, and at this point, the observation should be updated.", "min": 1, "max": "1", "base": { "path": "Observation.subject", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.focus", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "path": "Observation.focus", "comment": "Typically, an observation is made about the subject - a patient, or group of patients, location, or device - and the distinction between the subject and what is directly measured for an observation is specified in the observation code itself ( e.g., \"Blood Glucose\") and does not need to be represented separately using this element. Use `specimen` if a reference to a specimen is required. If a code is required instead of a resource use either `bodysite` for bodysites or the standard extension [focusCode](http://hl7.org/fhir/extension-observation-focuscode.html).", "min": 0, "max": "*", "base": { "path": "Observation.focus", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.encounter", "path": "Observation.encounter", "comment": "This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests).", "min": 0, "max": "1", "base": { "path": "Observation.encounter", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Encounter" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.effective[x]", "path": "Observation.effective[x]", "comment": "At least a date should be present unless this observation is a historical report. For recording imprecise or \"fuzzy\" times (For example, a blood glucose measurement taken \"after breakfast\") use the [Timing](http://hl7.org/fhir/datatypes.html#timing) datatype which allow the measurement to be tied to regular life events.", "min": 1, "max": "1", "base": { "path": "Observation.effective[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "vs-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "vs-1", "severity": "error", "human": "if Observation.effective[x] is dateTime and has a value then that value shall be precise to the day", "expression": "($this as dateTime).toString().length() >= 8", "xpath": "f:effectiveDateTime[matches(@value, '^\\d{4}-\\d{2}-\\d{2}')]" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.issued", "path": "Observation.issued", "comment": "For Observations that don’t require review and verification, it may be the same as the [`lastUpdated` ](http://hl7.org/fhir/resource-definitions.html#Meta.lastUpdated) time of the resource itself. For Observations that do require review and verification for certain updates, it might not be the same as the `lastUpdated` time of the resource itself due to a non-clinically significant update that doesn’t require the new version to be reviewed and verified again.", "min": 0, "max": "1", "base": { "path": "Observation.issued", "min": 0, "max": "1" }, "type": [ { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.performer", "path": "Observation.performer", "min": 0, "max": "*", "base": { "path": "Observation.performer", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/CareTeam", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/RelatedPerson" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]", "path": "Observation.value[x]", "slicing": { "discriminator": [ { "type": "type", "path": "$this" } ], "ordered": false, "rules": "closed" }, "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "obs-7", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity", "path": "Observation.value[x]", "sliceName": "valueQuantity", "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "0", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "obs-7", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.dataAbsentReason", "path": "Observation.dataAbsentReason", "comment": "Null or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"specimen unsatisfactory\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Note that an observation may only be reported if there are values to report. For example differential cell counts values may be reported only when > 0. Because of these options, use-case agreements are required to interpret general observations for null or exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6", "vs-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.interpretation", "path": "Observation.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.note", "path": "Observation.note", "comment": "May include general statements about the observation, or statements about significant, unexpected or unreliable results values, or information about its source when relevant to its interpretation.", "min": 0, "max": "*", "base": { "path": "Observation.note", "min": 0, "max": "*" }, "type": [ { "code": "Annotation" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.bodySite", "path": "Observation.bodySite", "comment": "Only used if not implicit in code found in Observation.code. In many systems, this may be represented as a related observation instead of an inline component. \n\nIf the use case requires BodySite to be handled as a separate resource (e.g. to identify and track separately) then use the standard extension[ bodySite](http://hl7.org/fhir/extension-bodysite.html).", "min": 0, "max": "1", "base": { "path": "Observation.bodySite", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodySite" } ], "strength": "example", "description": "Codes describing anatomical locations. May include laterality.", "valueSet": "http://hl7.org/fhir/ValueSet/body-site" } }, { "id": "Observation.method", "path": "Observation.method", "comment": "Only used if not implicit in code for Observation.code.", "min": 0, "max": "1", "base": { "path": "Observation.method", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationMethod" } ], "strength": "example", "description": "Methods for simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-methods" } }, { "id": "Observation.specimen", "path": "Observation.specimen", "comment": "Should only be used if not implicit in code found in `Observation.code`. Observations are not made on specimens themselves; they are made on a subject, but in many cases by the means of a specimen. Note that although specimens are often involved, they are not always tracked and reported explicitly. Also note that observation resources may be used in contexts that track the specimen explicitly (e.g. Diagnostic Report).", "min": 0, "max": "1", "base": { "path": "Observation.specimen", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Specimen" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.device", "path": "Observation.device", "comment": "Note that this is not meant to represent a device involved in the transmission of the result, e.g., a gateway. Such devices may be documented using the Provenance resource where relevant.", "min": 0, "max": "1", "base": { "path": "Observation.device", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/DeviceMetric" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange", "path": "Observation.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.referenceRange", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "obs-3", "severity": "error", "human": "Must have at least a low or a high or text", "expression": "low.exists() or high.exists() or text.exists()", "xpath": "(exists(f:low) or exists(f:high)or exists(f:text))" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.id", "path": "Observation.referenceRange.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.extension", "path": "Observation.referenceRange.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.modifierExtension", "path": "Observation.referenceRange.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.referenceRange.low", "path": "Observation.referenceRange.low", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.low", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.high", "path": "Observation.referenceRange.high", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.high", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.type", "path": "Observation.referenceRange.type", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal range is assumed.", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeMeaning" } ], "strength": "preferred", "description": "Code for the meaning of a reference range.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-meaning" } }, { "id": "Observation.referenceRange.appliesTo", "path": "Observation.referenceRange.appliesTo", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal population is assumed.", "min": 0, "max": "*", "base": { "path": "Observation.referenceRange.appliesTo", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeType" } ], "strength": "example", "description": "Codes identifying the population the reference range applies to.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-appliesto" } }, { "id": "Observation.referenceRange.age", "path": "Observation.referenceRange.age", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.age", "min": 0, "max": "1" }, "type": [ { "code": "Range" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.text", "path": "Observation.referenceRange.text", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.hasMember", "path": "Observation.hasMember", "comment": "When using this element, an observation will typically have either a value or a set of related resources, although both may be present in some cases. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below. Note that a system may calculate results from [QuestionnaireResponse](http://hl7.org/fhir/questionnaireresponse.html) into a final score and represent the score as an Observation.", "min": 0, "max": "*", "base": { "path": "Observation.hasMember", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence", "http://hl7.org/fhir/StructureDefinition/vitalsigns" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.derivedFrom", "path": "Observation.derivedFrom", "comment": "All the reference choices that are listed in this element can represent clinical observations and other measurements that may be the source for a derived value. The most common reference will be another Observation. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below.", "min": 0, "max": "*", "base": { "path": "Observation.derivedFrom", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/DocumentReference", "http://hl7.org/fhir/StructureDefinition/ImagingStudy", "http://hl7.org/fhir/StructureDefinition/Media", "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence", "http://hl7.org/fhir/StructureDefinition/vitalsigns" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component", "path": "Observation.component", "slicing": { "discriminator": [ { "type": "value", "path": "code.coding.code" }, { "type": "value", "path": "code.coding.system" } ], "ordered": false, "rules": "open" }, "comment": "For a discussion on the ways Observations can be assembled in groups together see [Notes](http://hl7.org/fhir/observation.html#notes) below.", "min": 2, "max": "*", "base": { "path": "Observation.component", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "vs-3", "severity": "error", "human": "If there is no a value a data absent reason must be present", "expression": "value.exists() or dataAbsentReason.exists()", "xpath": "f:*[starts-with(local-name(.), 'value')] or f:dataAbsentReason", "source": "http://hl7.org/fhir/StructureDefinition/vitalsigns" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.component.id", "path": "Observation.component.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.extension", "path": "Observation.component.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.modifierExtension", "path": "Observation.component.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.component.code", "path": "Observation.component.code", "comment": "*All* code-value and component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.", "min": 1, "max": "1", "base": { "path": "Observation.component.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSigns" } ], "strength": "extensible", "description": "This identifies the vital sign result type.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-vitalsignresult" } }, { "id": "Observation.component.value[x]", "path": "Observation.component.value[x]", "comment": "Used when observation has a set of component observations. An observation may have both a value (e.g. an Apgar score) and component observations (the observations from which the Apgar score was derived). If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.component.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" }, { "code": "CodeableConcept" }, { "code": "string" }, { "code": "boolean" }, { "code": "integer" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "SampledData" }, { "code": "time" }, { "code": "dateTime" }, { "code": "Period" } ], "condition": [ "vs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSignsUnits" } ], "strength": "required", "description": "Common UCUM units for recording Vital Signs.", "valueSet": "http://hl7.org/fhir/ValueSet/ucum-vitals-common|4.0.1" } }, { "id": "Observation.component.dataAbsentReason", "path": "Observation.component.dataAbsentReason", "comment": "\"Null\" or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"test not done\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Because of these options, use-case agreements are required to interpret general observations for exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.component.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6", "vs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.component.interpretation", "path": "Observation.component.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.component.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.component.referenceRange", "path": "Observation.component.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.component.referenceRange", "min": 0, "max": "*" }, "contentReference": "#Observation.referenceRange", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component:SystolicBP", "path": "Observation.component", "sliceName": "SystolicBP", "comment": "For a discussion on the ways Observations can be assembled in groups together see [Notes](http://hl7.org/fhir/observation.html#notes) below.", "min": 1, "max": "1", "base": { "path": "Observation.component", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "vs-3", "severity": "error", "human": "If there is no a value a data absent reason must be present", "expression": "value.exists() or dataAbsentReason.exists()", "xpath": "f:*[starts-with(local-name(.), 'value')] or f:dataAbsentReason", "source": "http://hl7.org/fhir/StructureDefinition/vitalsigns" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.component:SystolicBP.id", "path": "Observation.component.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component:SystolicBP.extension", "path": "Observation.component.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component:SystolicBP.modifierExtension", "path": "Observation.component.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.component:SystolicBP.code", "path": "Observation.component.code", "comment": "additional codes that translate or map to this code are allowed. For example a more granular LOINC code or code that is used locally in a system.", "min": 1, "max": "1", "base": { "path": "Observation.component.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSigns" } ], "strength": "extensible", "description": "This identifies the vital sign result type.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-vitalsignresult" } }, { "id": "Observation.component:SystolicBP.code.id", "path": "Observation.component.code.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component:SystolicBP.code.extension", "path": "Observation.component.code.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component:SystolicBP.code.coding", "path": "Observation.component.code.coding", "slicing": { "discriminator": [ { "type": "value", "path": "code" }, { "type": "value", "path": "system" } ], "ordered": false, "rules": "open" }, "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 0, "max": "*", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component:SystolicBP.code.coding:SBPCode", "path": "Observation.component.code.coding", "sliceName": "SBPCode", "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 1, "max": "1", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component:SystolicBP.code.coding:SBPCode.id", "path": "Observation.component.code.coding.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component:SystolicBP.code.coding:SBPCode.extension", "path": "Observation.component.code.coding.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component:SystolicBP.code.coding:SBPCode.system", "path": "Observation.component.code.coding.system", "comment": "The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.", "min": 1, "max": "1", "base": { "path": "Coding.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://loinc.org", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component:SystolicBP.code.coding:SBPCode.version", "path": "Observation.component.code.coding.version", "comment": "Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.", "min": 0, "max": "1", "base": { "path": "Coding.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component:SystolicBP.code.coding:SBPCode.code", "path": "Observation.component.code.coding.code", "min": 1, "max": "1", "base": { "path": "Coding.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "8480-6", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component:SystolicBP.code.coding:SBPCode.display", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.component.code.coding.display", "min": 0, "max": "1", "base": { "path": "Coding.display", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component:SystolicBP.code.coding:SBPCode.userSelected", "path": "Observation.component.code.coding.userSelected", "comment": "Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.", "min": 0, "max": "1", "base": { "path": "Coding.userSelected", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component:SystolicBP.code.text", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.component.code.text", "comment": "Very often the text is the same as a displayName of one of the codings.", "min": 0, "max": "1", "base": { "path": "CodeableConcept.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component:SystolicBP.value[x]", "path": "Observation.component.value[x]", "comment": "Used when observation has a set of component observations. An observation may have both a value (e.g. an Apgar score) and component observations (the observations from which the Apgar score was derived). If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.component.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "vs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSignsUnits" } ], "strength": "required", "description": "Common UCUM units for recording Vital Signs.", "valueSet": "http://hl7.org/fhir/ValueSet/ucum-vitals-common|4.0.1" } }, { "id": "Observation.component:SystolicBP.value[x].id", "path": "Observation.component.value[x].id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component:SystolicBP.value[x].extension", "path": "Observation.component.value[x].extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component:SystolicBP.value[x].value", "path": "Observation.component.value[x].value", "comment": "The implicit precision in the value should always be honored. Monetary values have their own rules for handling precision (refer to standard accounting text books).", "min": 1, "max": "1", "base": { "path": "Quantity.value", "min": 0, "max": "1" }, "type": [ { "code": "decimal" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.component:SystolicBP.value[x].comparator", "path": "Observation.component.value[x].comparator", "min": 0, "max": "1", "base": { "path": "Quantity.comparator", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "meaningWhenMissing": "If there is no comparator, then there is no modification of the value", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This is labeled as \"Is Modifier\" because the comparator modifies the interpretation of the value significantly. If there is no comparator, then there is no modification of the value", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "QuantityComparator" } ], "strength": "required", "description": "How the Quantity should be understood and represented.", "valueSet": "http://hl7.org/fhir/ValueSet/quantity-comparator|4.0.1" } }, { "id": "Observation.component:SystolicBP.value[x].unit", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.component.value[x].unit", "min": 1, "max": "1", "base": { "path": "Quantity.unit", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.component:SystolicBP.value[x].system", "path": "Observation.component.value[x].system", "min": 1, "max": "1", "base": { "path": "Quantity.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://unitsofmeasure.org", "condition": [ "qty-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.component:SystolicBP.value[x].code", "path": "Observation.component.value[x].code", "comment": "The preferred system is UCUM, but SNOMED CT can also be used (for customary units) or ISO 4217 for currency. The context of use may additionally require a code from a particular system.", "min": 1, "max": "1", "base": { "path": "Quantity.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "mm[Hg]", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.component:SystolicBP.dataAbsentReason", "path": "Observation.component.dataAbsentReason", "comment": "\"Null\" or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"test not done\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Because of these options, use-case agreements are required to interpret general observations for exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.component.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6", "vs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.component:SystolicBP.interpretation", "path": "Observation.component.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.component.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.component:SystolicBP.referenceRange", "path": "Observation.component.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.component.referenceRange", "min": 0, "max": "*" }, "contentReference": "#Observation.referenceRange", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component:DiastolicBP", "path": "Observation.component", "sliceName": "DiastolicBP", "comment": "For a discussion on the ways Observations can be assembled in groups together see [Notes](http://hl7.org/fhir/observation.html#notes) below.", "min": 1, "max": "1", "base": { "path": "Observation.component", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "vs-3", "severity": "error", "human": "If there is no a value a data absent reason must be present", "expression": "value.exists() or dataAbsentReason.exists()", "xpath": "f:*[starts-with(local-name(.), 'value')] or f:dataAbsentReason", "source": "http://hl7.org/fhir/StructureDefinition/vitalsigns" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.component:DiastolicBP.id", "path": "Observation.component.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component:DiastolicBP.extension", "path": "Observation.component.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component:DiastolicBP.modifierExtension", "path": "Observation.component.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.component:DiastolicBP.code", "path": "Observation.component.code", "comment": "additional codes that translate or map to this code are allowed. For example a more granular LOINC code or code that is used locally in a system.", "min": 1, "max": "1", "base": { "path": "Observation.component.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSigns" } ], "strength": "extensible", "description": "This identifies the vital sign result type.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-vitalsignresult" } }, { "id": "Observation.component:DiastolicBP.code.id", "path": "Observation.component.code.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component:DiastolicBP.code.extension", "path": "Observation.component.code.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component:DiastolicBP.code.coding", "path": "Observation.component.code.coding", "slicing": { "discriminator": [ { "type": "value", "path": "code" }, { "type": "value", "path": "system" } ], "ordered": false, "rules": "open" }, "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 0, "max": "*", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component:DiastolicBP.code.coding:DBPCode", "path": "Observation.component.code.coding", "sliceName": "DBPCode", "comment": "Codes may be defined very casually in enumerations, or code lists, up to very formal definitions such as SNOMED CT - see the HL7 v3 Core Principles for more information. Ordering of codings is undefined and SHALL NOT be used to infer meaning. Generally, at most only one of the coding values will be labeled as UserSelected = true.", "min": 1, "max": "1", "base": { "path": "CodeableConcept.coding", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component:DiastolicBP.code.coding:DBPCode.id", "path": "Observation.component.code.coding.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component:DiastolicBP.code.coding:DBPCode.extension", "path": "Observation.component.code.coding.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component:DiastolicBP.code.coding:DBPCode.system", "path": "Observation.component.code.coding.system", "comment": "The URI may be an OID (urn:oid:...) or a UUID (urn:uuid:...). OIDs and UUIDs SHALL be references to the HL7 OID registry. Otherwise, the URI should come from HL7's list of FHIR defined special URIs or it should reference to some definition that establishes the system clearly and unambiguously.", "min": 1, "max": "1", "base": { "path": "Coding.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://loinc.org", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component:DiastolicBP.code.coding:DBPCode.version", "path": "Observation.component.code.coding.version", "comment": "Where the terminology does not clearly define what string should be used to identify code system versions, the recommendation is to use the date (expressed in FHIR date format) on which that version was officially published as the version date.", "min": 0, "max": "1", "base": { "path": "Coding.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component:DiastolicBP.code.coding:DBPCode.code", "path": "Observation.component.code.coding.code", "min": 1, "max": "1", "base": { "path": "Coding.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "8462-4", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component:DiastolicBP.code.coding:DBPCode.display", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.component.code.coding.display", "min": 0, "max": "1", "base": { "path": "Coding.display", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component:DiastolicBP.code.coding:DBPCode.userSelected", "path": "Observation.component.code.coding.userSelected", "comment": "Amongst a set of alternatives, a directly chosen code is the most appropriate starting point for new translations. There is some ambiguity about what exactly 'directly chosen' implies, and trading partner agreement may be needed to clarify the use of this element and its consequences more completely.", "min": 0, "max": "1", "base": { "path": "Coding.userSelected", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component:DiastolicBP.code.text", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.component.code.text", "comment": "Very often the text is the same as a displayName of one of the codings.", "min": 0, "max": "1", "base": { "path": "CodeableConcept.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component:DiastolicBP.value[x]", "path": "Observation.component.value[x]", "comment": "Used when observation has a set of component observations. An observation may have both a value (e.g. an Apgar score) and component observations (the observations from which the Apgar score was derived). If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.component.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "vs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "VitalSignsUnits" } ], "strength": "required", "description": "Common UCUM units for recording Vital Signs.", "valueSet": "http://hl7.org/fhir/ValueSet/ucum-vitals-common|4.0.1" } }, { "id": "Observation.component:DiastolicBP.value[x].id", "path": "Observation.component.value[x].id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component:DiastolicBP.value[x].extension", "path": "Observation.component.value[x].extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component:DiastolicBP.value[x].value", "path": "Observation.component.value[x].value", "comment": "The implicit precision in the value should always be honored. Monetary values have their own rules for handling precision (refer to standard accounting text books).", "min": 1, "max": "1", "base": { "path": "Quantity.value", "min": 0, "max": "1" }, "type": [ { "code": "decimal" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.component:DiastolicBP.value[x].comparator", "path": "Observation.component.value[x].comparator", "min": 0, "max": "1", "base": { "path": "Quantity.comparator", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "meaningWhenMissing": "If there is no comparator, then there is no modification of the value", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This is labeled as \"Is Modifier\" because the comparator modifies the interpretation of the value significantly. If there is no comparator, then there is no modification of the value", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "QuantityComparator" } ], "strength": "required", "description": "How the Quantity should be understood and represented.", "valueSet": "http://hl7.org/fhir/ValueSet/quantity-comparator|4.0.1" } }, { "id": "Observation.component:DiastolicBP.value[x].unit", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.component.value[x].unit", "min": 1, "max": "1", "base": { "path": "Quantity.unit", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.component:DiastolicBP.value[x].system", "path": "Observation.component.value[x].system", "min": 1, "max": "1", "base": { "path": "Quantity.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://unitsofmeasure.org", "condition": [ "qty-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.component:DiastolicBP.value[x].code", "path": "Observation.component.value[x].code", "comment": "The preferred system is UCUM, but SNOMED CT can also be used (for customary units) or ISO 4217 for currency. The context of use may additionally require a code from a particular system.", "min": 1, "max": "1", "base": { "path": "Quantity.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "mm[Hg]", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.component:DiastolicBP.dataAbsentReason", "path": "Observation.component.dataAbsentReason", "comment": "\"Null\" or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"test not done\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Because of these options, use-case agreements are required to interpret general observations for exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.component.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6", "vs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.component:DiastolicBP.interpretation", "path": "Observation.component.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.component.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.component:DiastolicBP.referenceRange", "path": "Observation.component.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.component.referenceRange", "min": 0, "max": "*" }, "contentReference": "#Observation.referenceRange", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "Observation", "path": "Observation", "min": 0, "max": "*" }, { "id": "Observation.code", "path": "Observation.code", "comment": "additional codes that translate or map to this code are allowed. For example a more granular LOINC code or code that is used locally in a system." }, { "id": "Observation.code.coding", "path": "Observation.code.coding", "slicing": { "discriminator": [ { "type": "value", "path": "code" }, { "type": "value", "path": "system" } ], "ordered": false, "rules": "open" } }, { "id": "Observation.code.coding:BPCode", "path": "Observation.code.coding", "sliceName": "BPCode", "min": 1, "max": "1" }, { "id": "Observation.code.coding:BPCode.system", "path": "Observation.code.coding.system", "min": 1, "max": "1", "type": [ { "code": "uri" } ], "fixedUri": "http://loinc.org" }, { "id": "Observation.code.coding:BPCode.code", "path": "Observation.code.coding.code", "min": 1, "max": "1", "type": [ { "code": "code" } ], "fixedCode": "85354-9" }, { "id": "Observation.valueQuantity", "path": "Observation.valueQuantity", "min": 0, "max": "0" }, { "id": "Observation.component", "path": "Observation.component", "slicing": { "discriminator": [ { "type": "value", "path": "code.coding.code" }, { "type": "value", "path": "code.coding.system" } ], "ordered": false, "rules": "open" }, "min": 2, "max": "*" }, { "id": "Observation.component:SystolicBP", "path": "Observation.component", "sliceName": "SystolicBP", "min": 1, "max": "1" }, { "id": "Observation.component:SystolicBP.code", "path": "Observation.component.code", "comment": "additional codes that translate or map to this code are allowed. For example a more granular LOINC code or code that is used locally in a system." }, { "id": "Observation.component:SystolicBP.code.coding", "path": "Observation.component.code.coding", "slicing": { "discriminator": [ { "type": "value", "path": "code" }, { "type": "value", "path": "system" } ], "ordered": false, "rules": "open" } }, { "id": "Observation.component:SystolicBP.code.coding:SBPCode", "path": "Observation.component.code.coding", "sliceName": "SBPCode", "min": 1, "max": "1" }, { "id": "Observation.component:SystolicBP.code.coding:SBPCode.system", "path": "Observation.component.code.coding.system", "min": 1, "max": "1", "type": [ { "code": "uri" } ], "fixedUri": "http://loinc.org" }, { "id": "Observation.component:SystolicBP.code.coding:SBPCode.code", "path": "Observation.component.code.coding.code", "min": 1, "max": "1", "type": [ { "code": "code" } ], "fixedCode": "8480-6" }, { "id": "Observation.component:SystolicBP.valueQuantity", "path": "Observation.component.valueQuantity", "type": [ { "code": "Quantity" } ] }, { "id": "Observation.component:SystolicBP.valueQuantity.value", "path": "Observation.component.valueQuantity.value", "min": 1, "max": "1", "type": [ { "code": "decimal" } ], "mustSupport": true }, { "id": "Observation.component:SystolicBP.valueQuantity.unit", "path": "Observation.component.valueQuantity.unit", "min": 1, "max": "1", "type": [ { "code": "string" } ], "mustSupport": true }, { "id": "Observation.component:SystolicBP.valueQuantity.system", "path": "Observation.component.valueQuantity.system", "min": 1, "max": "1", "type": [ { "code": "uri" } ], "fixedUri": "http://unitsofmeasure.org", "mustSupport": true }, { "id": "Observation.component:SystolicBP.valueQuantity.code", "path": "Observation.component.valueQuantity.code", "min": 1, "max": "1", "type": [ { "code": "code" } ], "fixedCode": "mm[Hg]", "mustSupport": true }, { "id": "Observation.component:DiastolicBP", "path": "Observation.component", "sliceName": "DiastolicBP", "min": 1, "max": "1" }, { "id": "Observation.component:DiastolicBP.code", "path": "Observation.component.code", "comment": "additional codes that translate or map to this code are allowed. For example a more granular LOINC code or code that is used locally in a system." }, { "id": "Observation.component:DiastolicBP.code.coding", "path": "Observation.component.code.coding", "slicing": { "discriminator": [ { "type": "value", "path": "code" }, { "type": "value", "path": "system" } ], "ordered": false, "rules": "open" } }, { "id": "Observation.component:DiastolicBP.code.coding:DBPCode", "path": "Observation.component.code.coding", "sliceName": "DBPCode", "min": 1, "max": "1" }, { "id": "Observation.component:DiastolicBP.code.coding:DBPCode.system", "path": "Observation.component.code.coding.system", "min": 1, "max": "1", "type": [ { "code": "uri" } ], "fixedUri": "http://loinc.org" }, { "id": "Observation.component:DiastolicBP.code.coding:DBPCode.code", "path": "Observation.component.code.coding.code", "min": 1, "max": "1", "type": [ { "code": "code" } ], "fixedCode": "8462-4" }, { "id": "Observation.component:DiastolicBP.valueQuantity", "path": "Observation.component.valueQuantity", "type": [ { "code": "Quantity" } ] }, { "id": "Observation.component:DiastolicBP.valueQuantity.value", "path": "Observation.component.valueQuantity.value", "min": 1, "max": "1", "type": [ { "code": "decimal" } ], "mustSupport": true }, { "id": "Observation.component:DiastolicBP.valueQuantity.unit", "path": "Observation.component.valueQuantity.unit", "min": 1, "max": "1", "type": [ { "code": "string" } ], "mustSupport": true }, { "id": "Observation.component:DiastolicBP.valueQuantity.system", "path": "Observation.component.valueQuantity.system", "min": 1, "max": "1", "type": [ { "code": "uri" } ], "fixedUri": "http://unitsofmeasure.org", "mustSupport": true }, { "id": "Observation.component:DiastolicBP.valueQuantity.code", "path": "Observation.component.valueQuantity.code", "min": 1, "max": "1", "type": [ { "code": "code" } ], "fixedCode": "mm[Hg]", "mustSupport": true } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/shareablelibrary", "resource": { "resourceType": "StructureDefinition", "id": "shareablelibrary", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 2 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "cds" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/shareablelibrary", "version": "4.0.1", "name": "Shareable Library", "status": "draft", "experimental": false, "date": "2019-11-01T09:29:23+11:00", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Library", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Library", "derivation": "constraint", "snapshot": { "element": [ { "id": "Library", "path": "Library", "min": 1, "max": "1", "base": { "path": "Library", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "lib-0", "severity": "warning", "human": "Name should be usable as an identifier for the module by machine processing applications such as code generation", "expression": "name.matches('[A-Z]([A-Za-z0-9_]){0,254}')", "xpath": "not(exists(f:name/@value)) or matches(f:name/@value, '[A-Z]([A-Za-z0-9_]){0,254}')", "source": "http://hl7.org/fhir/StructureDefinition/Library" } ], "isModifier": false, "isSummary": false }, { "id": "Library.id", "path": "Library.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Library.meta", "path": "Library.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Library.implicitRules", "path": "Library.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Library.language", "path": "Library.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Library.text", "path": "Library.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Library.contained", "path": "Library.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Library.extension", "path": "Library.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Library.modifierExtension", "path": "Library.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Library.url", "path": "Library.url", "comment": "Can be a urn:uuid: or a urn:oid: but real http: addresses are preferred. Multiple instances may share the same URL if they have a distinct version.\n\nThe determination of when to create a new version of a resource (same url, new version) vs. defining a new artifact is up to the author. Considerations for making this decision are found in [Technical and Business Versions](http://hl7.org/fhir/resource.html#versions). \n\nIn some cases, the resource can no longer be found at the stated url, but the url itself cannot change. Implementations can use the [meta.source](http://hl7.org/fhir/resource.html#meta) element to indicate where the current master source of the resource can be found.", "min": 1, "max": "1", "base": { "path": "Library.url", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Library.identifier", "path": "Library.identifier", "comment": "Typically, this is used for identifiers that can go in an HL7 V3 II (instance identifier) data type, and can then identify this library outside of FHIR, where it is not possible to use the logical URI.", "min": 0, "max": "*", "base": { "path": "Library.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Library.version", "path": "Library.version", "comment": "There may be different library instances that have the same identifier but different versions. The version can be appended to the url in a reference to allow a reference to a particular business version of the library with the format [url]|[version].", "min": 1, "max": "1", "base": { "path": "Library.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Library.name", "path": "Library.name", "comment": "The name is not expected to be globally unique. The name should be a simple alphanumeric type name to ensure that it is machine-processing friendly.", "min": 1, "max": "1", "base": { "path": "Library.name", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "condition": [ "inv-0" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Library.title", "path": "Library.title", "comment": "This name does not need to be machine-processing friendly and may contain punctuation, white-space, etc.", "min": 0, "max": "1", "base": { "path": "Library.title", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Library.subtitle", "path": "Library.subtitle", "min": 0, "max": "1", "base": { "path": "Library.subtitle", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Library.status", "path": "Library.status", "comment": "Allows filtering of libraries that are appropriate for use vs. not.", "min": 1, "max": "1", "base": { "path": "Library.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This is labeled as \"Is Modifier\" because applications should not use a retired {{title}} without due consideration", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "PublicationStatus" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "required", "description": "The lifecycle status of an artifact.", "valueSet": "http://hl7.org/fhir/ValueSet/publication-status|4.0.1" } }, { "id": "Library.experimental", "path": "Library.experimental", "comment": "Allows filtering of librarys that are appropriate for use versus not.", "min": 1, "max": "1", "base": { "path": "Library.experimental", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Library.type", "path": "Library.type", "min": 1, "max": "1", "base": { "path": "Library.type", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "LibraryType" } ], "strength": "extensible", "description": "The type of knowledge asset this library contains.", "valueSet": "http://hl7.org/fhir/ValueSet/library-type" } }, { "id": "Library.subject[x]", "path": "Library.subject[x]", "min": 0, "max": "1", "base": { "path": "Library.subject[x]", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" }, { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Group" ] } ], "meaningWhenMissing": "Patient", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "SubjectType" } ], "strength": "extensible", "description": "The possible types of subjects for a library (E.g. Patient, Practitioner, Organization, Location, etc.).", "valueSet": "http://hl7.org/fhir/ValueSet/subject-type" } }, { "id": "Library.date", "path": "Library.date", "comment": "Note that this is not the same as the resource last-modified-date, since the resource may be a secondary representation of the library. Additional specific dates may be added as extensions or be found by consulting Provenances associated with past versions of the resource.", "min": 0, "max": "1", "base": { "path": "Library.date", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Library.publisher", "path": "Library.publisher", "comment": "Usually an organization but may be an individual. The publisher (or steward) of the library is the organization or individual primarily responsible for the maintenance and upkeep of the library. This is not necessarily the same individual or organization that developed and initially authored the content. The publisher is the primary point of contact for questions or issues with the library. This item SHOULD be populated unless the information is available from context.", "min": 1, "max": "1", "base": { "path": "Library.publisher", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Library.contact", "path": "Library.contact", "comment": "May be a web site, an email address, a telephone number, etc.", "min": 0, "max": "*", "base": { "path": "Library.contact", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Library.description", "path": "Library.description", "comment": "This description can be used to capture details such as why the library was built, comments about misuse, instructions for clinical use and interpretation, literature references, examples from the paper world, etc. It is not a rendering of the library as conveyed in the 'text' field of the resource itself. This item SHOULD be populated unless the information is available from context (e.g. the language of the library is presumed to be the predominant language in the place the library was created).", "min": 1, "max": "1", "base": { "path": "Library.description", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Library.useContext", "path": "Library.useContext", "comment": "When multiple useContexts are specified, there is no expectation that all or any of the contexts apply.", "min": 0, "max": "*", "base": { "path": "Library.useContext", "min": 0, "max": "*" }, "type": [ { "code": "UsageContext" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Library.jurisdiction", "path": "Library.jurisdiction", "comment": "It may be possible for the library to be used in jurisdictions other than those for which it was originally designed or intended.", "min": 0, "max": "*", "base": { "path": "Library.jurisdiction", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Jurisdiction" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "extensible", "description": "Countries and regions within which this artifact is targeted for use.", "valueSet": "http://hl7.org/fhir/ValueSet/jurisdiction" } }, { "id": "Library.purpose", "path": "Library.purpose", "comment": "This element does not describe the usage of the library. Instead, it provides traceability of ''why'' the resource is either needed or ''why'' it is defined as it is. This may be used to point to source materials or specifications that drove the structure of this library.", "min": 0, "max": "1", "base": { "path": "Library.purpose", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Library.usage", "path": "Library.usage", "min": 0, "max": "1", "base": { "path": "Library.usage", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Library.copyright", "path": "Library.copyright", "min": 0, "max": "1", "base": { "path": "Library.copyright", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Library.approvalDate", "path": "Library.approvalDate", "comment": "The 'date' element may be more recent than the approval date because of minor changes or editorial corrections.", "min": 0, "max": "1", "base": { "path": "Library.approvalDate", "min": 0, "max": "1" }, "type": [ { "code": "date" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Library.lastReviewDate", "path": "Library.lastReviewDate", "comment": "If specified, this date follows the original approval date.", "min": 0, "max": "1", "base": { "path": "Library.lastReviewDate", "min": 0, "max": "1" }, "type": [ { "code": "date" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Library.effectivePeriod", "path": "Library.effectivePeriod", "comment": "The effective period for a library determines when the content is applicable for usage and is independent of publication and review dates. For example, a measure intended to be used for the year 2016 might be published in 2015.", "min": 0, "max": "1", "base": { "path": "Library.effectivePeriod", "min": 0, "max": "1" }, "type": [ { "code": "Period" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Library.topic", "path": "Library.topic", "min": 0, "max": "*", "base": { "path": "Library.topic", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DefinitionTopic" } ], "strength": "example", "description": "High-level categorization of the definition, used for searching, sorting, and filtering.", "valueSet": "http://hl7.org/fhir/ValueSet/definition-topic" } }, { "id": "Library.author", "path": "Library.author", "min": 0, "max": "*", "base": { "path": "Library.author", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Library.editor", "path": "Library.editor", "min": 0, "max": "*", "base": { "path": "Library.editor", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Library.reviewer", "path": "Library.reviewer", "min": 0, "max": "*", "base": { "path": "Library.reviewer", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Library.endorser", "path": "Library.endorser", "min": 0, "max": "*", "base": { "path": "Library.endorser", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Library.relatedArtifact", "path": "Library.relatedArtifact", "comment": "Each related artifact is either an attachment, or a reference to another resource, but not both.", "min": 0, "max": "*", "base": { "path": "Library.relatedArtifact", "min": 0, "max": "*" }, "type": [ { "code": "RelatedArtifact" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Library.parameter", "path": "Library.parameter", "min": 0, "max": "*", "base": { "path": "Library.parameter", "min": 0, "max": "*" }, "type": [ { "code": "ParameterDefinition" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Library.dataRequirement", "path": "Library.dataRequirement", "min": 0, "max": "*", "base": { "path": "Library.dataRequirement", "min": 0, "max": "*" }, "type": [ { "code": "DataRequirement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Library.content", "path": "Library.content", "min": 0, "max": "*", "base": { "path": "Library.content", "min": 0, "max": "*" }, "type": [ { "code": "Attachment" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true } ] }, "differential": { "element": [ { "id": "Library", "path": "Library", "min": 1, "max": "1" }, { "id": "Library.url", "path": "Library.url", "min": 1, "max": "1", "type": [ { "code": "uri" } ] }, { "id": "Library.identifier", "path": "Library.identifier", "mustSupport": true }, { "id": "Library.version", "path": "Library.version", "min": 1, "max": "1", "type": [ { "code": "string" } ] }, { "id": "Library.name", "path": "Library.name", "min": 1, "max": "1", "type": [ { "code": "string" } ] }, { "id": "Library.title", "path": "Library.title", "min": 0, "max": "1", "mustSupport": true }, { "id": "Library.experimental", "path": "Library.experimental", "min": 1, "max": "1", "type": [ { "code": "boolean" } ] }, { "id": "Library.date", "path": "Library.date", "min": 0, "max": "1", "mustSupport": true }, { "id": "Library.publisher", "path": "Library.publisher", "min": 1, "max": "1", "type": [ { "code": "string" } ] }, { "id": "Library.contact", "path": "Library.contact", "mustSupport": true }, { "id": "Library.description", "path": "Library.description", "min": 1, "max": "1", "type": [ { "code": "markdown" } ] }, { "id": "Library.useContext", "path": "Library.useContext", "mustSupport": true }, { "id": "Library.jurisdiction", "path": "Library.jurisdiction", "mustSupport": true } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/cqllibrary", "resource": { "resourceType": "StructureDefinition", "id": "cqllibrary", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 2 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "cds" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/cqllibrary", "version": "4.0.1", "name": "CQL Library", "status": "draft", "experimental": false, "date": "2019-11-01T09:29:23+11:00", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Library", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Library", "derivation": "constraint", "snapshot": { "element": [ { "id": "Library", "path": "Library", "min": 1, "max": "1", "base": { "path": "Library", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "lib-0", "severity": "warning", "human": "Name should be usable as an identifier for the module by machine processing applications such as code generation", "expression": "name.matches('[A-Z]([A-Za-z0-9_]){0,254}')", "xpath": "not(exists(f:name/@value)) or matches(f:name/@value, '[A-Z]([A-Za-z0-9_]){0,254}')", "source": "http://hl7.org/fhir/StructureDefinition/Library" } ], "isModifier": false, "isSummary": false }, { "id": "Library.id", "path": "Library.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Library.meta", "path": "Library.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Library.implicitRules", "path": "Library.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Library.language", "path": "Library.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Library.text", "path": "Library.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Library.contained", "path": "Library.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Library.extension", "path": "Library.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Library.modifierExtension", "path": "Library.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Library.url", "path": "Library.url", "comment": "Can be a urn:uuid: or a urn:oid: but real http: addresses are preferred. Multiple instances may share the same URL if they have a distinct version.\n\nThe determination of when to create a new version of a resource (same url, new version) vs. defining a new artifact is up to the author. Considerations for making this decision are found in [Technical and Business Versions](http://hl7.org/fhir/resource.html#versions). \n\nIn some cases, the resource can no longer be found at the stated url, but the url itself cannot change. Implementations can use the [meta.source](http://hl7.org/fhir/resource.html#meta) element to indicate where the current master source of the resource can be found.", "min": 0, "max": "1", "base": { "path": "Library.url", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Library.identifier", "path": "Library.identifier", "comment": "Typically, this is used for identifiers that can go in an HL7 V3 II (instance identifier) data type, and can then identify this library outside of FHIR, where it is not possible to use the logical URI.", "min": 0, "max": "*", "base": { "path": "Library.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Library.version", "path": "Library.version", "comment": "There may be different library instances that have the same identifier but different versions. The version can be appended to the url in a reference to allow a reference to a particular business version of the library with the format [url]|[version].", "min": 0, "max": "1", "base": { "path": "Library.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Library.name", "path": "Library.name", "comment": "The name is not expected to be globally unique. The name should be a simple alphanumeric type name to ensure that it is machine-processing friendly.", "min": 0, "max": "1", "base": { "path": "Library.name", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "condition": [ "inv-0" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Library.title", "path": "Library.title", "comment": "This name does not need to be machine-processing friendly and may contain punctuation, white-space, etc.", "min": 0, "max": "1", "base": { "path": "Library.title", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Library.subtitle", "path": "Library.subtitle", "min": 0, "max": "1", "base": { "path": "Library.subtitle", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Library.status", "path": "Library.status", "comment": "Allows filtering of libraries that are appropriate for use vs. not.", "min": 1, "max": "1", "base": { "path": "Library.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This is labeled as \"Is Modifier\" because applications should not use a retired {{title}} without due consideration", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "PublicationStatus" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "required", "description": "The lifecycle status of an artifact.", "valueSet": "http://hl7.org/fhir/ValueSet/publication-status|4.0.1" } }, { "id": "Library.experimental", "path": "Library.experimental", "comment": "Allows filtering of librarys that are appropriate for use versus not.", "min": 0, "max": "1", "base": { "path": "Library.experimental", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Library.type", "path": "Library.type", "min": 1, "max": "1", "base": { "path": "Library.type", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "fixedCodeableConcept": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/library-type", "code": "logic-library", "display": "Logic Library" } ] }, "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "LibraryType" } ], "strength": "extensible", "description": "The type of knowledge asset this library contains.", "valueSet": "http://hl7.org/fhir/ValueSet/library-type" } }, { "id": "Library.subject[x]", "path": "Library.subject[x]", "min": 0, "max": "1", "base": { "path": "Library.subject[x]", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" }, { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Group" ] } ], "meaningWhenMissing": "Patient", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "SubjectType" } ], "strength": "extensible", "description": "The possible types of subjects for a library (E.g. Patient, Practitioner, Organization, Location, etc.).", "valueSet": "http://hl7.org/fhir/ValueSet/subject-type" } }, { "id": "Library.date", "path": "Library.date", "comment": "Note that this is not the same as the resource last-modified-date, since the resource may be a secondary representation of the library. Additional specific dates may be added as extensions or be found by consulting Provenances associated with past versions of the resource.", "min": 0, "max": "1", "base": { "path": "Library.date", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Library.publisher", "path": "Library.publisher", "comment": "Usually an organization but may be an individual. The publisher (or steward) of the library is the organization or individual primarily responsible for the maintenance and upkeep of the library. This is not necessarily the same individual or organization that developed and initially authored the content. The publisher is the primary point of contact for questions or issues with the library. This item SHOULD be populated unless the information is available from context.", "min": 0, "max": "1", "base": { "path": "Library.publisher", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Library.contact", "path": "Library.contact", "comment": "May be a web site, an email address, a telephone number, etc.", "min": 0, "max": "*", "base": { "path": "Library.contact", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Library.description", "path": "Library.description", "comment": "This description can be used to capture details such as why the library was built, comments about misuse, instructions for clinical use and interpretation, literature references, examples from the paper world, etc. It is not a rendering of the library as conveyed in the 'text' field of the resource itself. This item SHOULD be populated unless the information is available from context (e.g. the language of the library is presumed to be the predominant language in the place the library was created).", "min": 0, "max": "1", "base": { "path": "Library.description", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Library.useContext", "path": "Library.useContext", "comment": "When multiple useContexts are specified, there is no expectation that all or any of the contexts apply.", "min": 0, "max": "*", "base": { "path": "Library.useContext", "min": 0, "max": "*" }, "type": [ { "code": "UsageContext" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Library.jurisdiction", "path": "Library.jurisdiction", "comment": "It may be possible for the library to be used in jurisdictions other than those for which it was originally designed or intended.", "min": 0, "max": "*", "base": { "path": "Library.jurisdiction", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Jurisdiction" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "extensible", "description": "Countries and regions within which this artifact is targeted for use.", "valueSet": "http://hl7.org/fhir/ValueSet/jurisdiction" } }, { "id": "Library.purpose", "path": "Library.purpose", "comment": "This element does not describe the usage of the library. Instead, it provides traceability of ''why'' the resource is either needed or ''why'' it is defined as it is. This may be used to point to source materials or specifications that drove the structure of this library.", "min": 0, "max": "1", "base": { "path": "Library.purpose", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Library.usage", "path": "Library.usage", "min": 0, "max": "1", "base": { "path": "Library.usage", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Library.copyright", "path": "Library.copyright", "min": 0, "max": "1", "base": { "path": "Library.copyright", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Library.approvalDate", "path": "Library.approvalDate", "comment": "The 'date' element may be more recent than the approval date because of minor changes or editorial corrections.", "min": 0, "max": "1", "base": { "path": "Library.approvalDate", "min": 0, "max": "1" }, "type": [ { "code": "date" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Library.lastReviewDate", "path": "Library.lastReviewDate", "comment": "If specified, this date follows the original approval date.", "min": 0, "max": "1", "base": { "path": "Library.lastReviewDate", "min": 0, "max": "1" }, "type": [ { "code": "date" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Library.effectivePeriod", "path": "Library.effectivePeriod", "comment": "The effective period for a library determines when the content is applicable for usage and is independent of publication and review dates. For example, a measure intended to be used for the year 2016 might be published in 2015.", "min": 0, "max": "1", "base": { "path": "Library.effectivePeriod", "min": 0, "max": "1" }, "type": [ { "code": "Period" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Library.topic", "path": "Library.topic", "min": 0, "max": "*", "base": { "path": "Library.topic", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DefinitionTopic" } ], "strength": "example", "description": "High-level categorization of the definition, used for searching, sorting, and filtering.", "valueSet": "http://hl7.org/fhir/ValueSet/definition-topic" } }, { "id": "Library.author", "path": "Library.author", "min": 0, "max": "*", "base": { "path": "Library.author", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Library.editor", "path": "Library.editor", "min": 0, "max": "*", "base": { "path": "Library.editor", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Library.reviewer", "path": "Library.reviewer", "min": 0, "max": "*", "base": { "path": "Library.reviewer", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Library.endorser", "path": "Library.endorser", "min": 0, "max": "*", "base": { "path": "Library.endorser", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Library.relatedArtifact", "path": "Library.relatedArtifact", "comment": "Each related artifact is either an attachment, or a reference to another resource, but not both.", "min": 0, "max": "*", "base": { "path": "Library.relatedArtifact", "min": 0, "max": "*" }, "type": [ { "code": "RelatedArtifact" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Library.parameter", "path": "Library.parameter", "min": 0, "max": "*", "base": { "path": "Library.parameter", "min": 0, "max": "*" }, "type": [ { "code": "ParameterDefinition" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "Library.dataRequirement", "path": "Library.dataRequirement", "min": 0, "max": "*", "base": { "path": "Library.dataRequirement", "min": 0, "max": "*" }, "type": [ { "code": "DataRequirement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "Library.content", "path": "Library.content", "min": 0, "max": "*", "base": { "path": "Library.content", "min": 0, "max": "*" }, "type": [ { "code": "Attachment" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true } ] }, "differential": { "element": [ { "id": "Library", "path": "Library", "min": 1, "max": "1" }, { "id": "Library.type", "path": "Library.type", "min": 1, "max": "1", "type": [ { "code": "CodeableConcept" } ], "fixedCodeableConcept": { "coding": [ { "system": "http://terminology.hl7.org/CodeSystem/library-type", "code": "logic-library", "display": "Logic Library" } ] } }, { "id": "Library.parameter", "path": "Library.parameter", "min": 0, "max": "*", "type": [ { "code": "ParameterDefinition" } ], "mustSupport": true }, { "id": "Library.dataRequirement", "path": "Library.dataRequirement", "min": 0, "max": "*", "type": [ { "code": "DataRequirement" } ], "mustSupport": true } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/lipidprofile", "resource": { "resourceType": "StructureDefinition", "id": "lipidprofile", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-summary", "valueMarkdown": "This is a test summary [lipids](observation.html)" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 1 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "oo" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/lipidprofile", "version": "4.0.1", "name": "Example Lipid Profile", "status": "draft", "experimental": true, "date": "2012-05-12", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "DiagnosticReport", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/DiagnosticReport", "derivation": "constraint", "snapshot": { "element": [ { "id": "DiagnosticReport", "path": "DiagnosticReport", "comment": "In this profile, mustSupport means that authoring systems must include the ability to report these elements, and processing systems must cater for them by either displaying them to the user or considering them appropriately in decision support systems.", "min": 1, "max": "1", "base": { "path": "DiagnosticReport", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.id", "path": "DiagnosticReport.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.meta", "path": "DiagnosticReport.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.implicitRules", "path": "DiagnosticReport.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "DiagnosticReport.language", "path": "DiagnosticReport.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "DiagnosticReport.text", "path": "DiagnosticReport.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.contained", "path": "DiagnosticReport.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.extension", "path": "DiagnosticReport.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.modifierExtension", "path": "DiagnosticReport.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "DiagnosticReport.identifier", "path": "DiagnosticReport.identifier", "comment": "Usually assigned by the Information System of the diagnostic service provider (filler id).", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.basedOn", "path": "DiagnosticReport.basedOn", "comment": "Note: Usually there is one test request for each result, however in some circumstances multiple test requests may be represented using a single test result resource. Note that there are also cases where one request leads to multiple reports.", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.basedOn", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/CarePlan", "http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation", "http://hl7.org/fhir/StructureDefinition/MedicationRequest", "http://hl7.org/fhir/StructureDefinition/NutritionOrder", "http://hl7.org/fhir/StructureDefinition/ServiceRequest" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.status", "path": "DiagnosticReport.status", "min": 1, "max": "1", "base": { "path": "DiagnosticReport.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DiagnosticReportStatus" } ], "strength": "required", "description": "The status of the diagnostic report.", "valueSet": "http://hl7.org/fhir/ValueSet/diagnostic-report-status|4.0.1" } }, { "id": "DiagnosticReport.category", "path": "DiagnosticReport.category", "comment": "Multiple categories are allowed using various categorization schemes. The level of granularity is defined by the category concepts in the value set. More fine-grained filtering can be performed using the metadata and/or terminology hierarchy in DiagnosticReport.code.", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DiagnosticServiceSection" } ], "strength": "example", "description": "Codes for diagnostic service sections.", "valueSet": "http://hl7.org/fhir/ValueSet/diagnostic-service-sections" } }, { "id": "DiagnosticReport.code", "path": "DiagnosticReport.code", "comment": "LOINC code includes \"direct\" LDL - does this mean LDL derived by measuring VLDL by ultracentrifugation? This panel includes both measured and calculated LDL.", "min": 1, "max": "1", "base": { "path": "DiagnosticReport.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "fixedCodeableConcept": { "coding": [ { "system": "http://loinc.org", "code": "57698-3", "display": "Lipid panel with direct LDL - Serum or Plasma" } ] }, "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DiagnosticReportCodes" } ], "strength": "preferred", "description": "Codes that describe Diagnostic Reports.", "valueSet": "http://hl7.org/fhir/ValueSet/report-codes" } }, { "id": "DiagnosticReport.subject", "path": "DiagnosticReport.subject", "min": 0, "max": "1", "base": { "path": "DiagnosticReport.subject", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/Group", "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/Location" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.encounter", "path": "DiagnosticReport.encounter", "comment": "This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests).", "min": 0, "max": "1", "base": { "path": "DiagnosticReport.encounter", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Encounter" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.effective[x]", "path": "DiagnosticReport.effective[x]", "comment": "If the diagnostic procedure was performed on the patient, this is the time it was performed. If there are specimens, the diagnostically relevant time can be derived from the specimen collection times, but the specimen information is not always available, and the exact relationship between the specimens and the diagnostically relevant time is not always automatic.", "min": 0, "max": "1", "base": { "path": "DiagnosticReport.effective[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" }, { "code": "Period" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.issued", "path": "DiagnosticReport.issued", "comment": "May be different from the update time of the resource itself, because that is the status of the record (potentially a secondary copy), not the actual release time of the report.", "min": 0, "max": "1", "base": { "path": "DiagnosticReport.issued", "min": 0, "max": "1" }, "type": [ { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.performer", "path": "DiagnosticReport.performer", "comment": "This is not necessarily the source of the atomic data items or the entity that interpreted the results. It is the entity that takes responsibility for the clinical report.", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.performer", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/CareTeam" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.resultsInterpreter", "path": "DiagnosticReport.resultsInterpreter", "comment": "Might not be the same entity that takes responsibility for the clinical report.", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.resultsInterpreter", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/CareTeam" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.specimen", "path": "DiagnosticReport.specimen", "comment": "If the specimen is sufficiently specified with a code in the test result name, then this additional data may be redundant. If there are multiple specimens, these may be represented per observation or group.", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.specimen", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Specimen" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.result", "path": "DiagnosticReport.result", "slicing": { "discriminator": [ { "type": "value", "path": "resolve().code" } ], "ordered": true, "rules": "closed" }, "comment": "Observations can contain observations.", "min": 3, "max": "4", "base": { "path": "DiagnosticReport.result", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Observation" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.result:Cholesterol", "path": "DiagnosticReport.result", "sliceName": "Cholesterol", "comment": "Observations can contain observations.", "min": 1, "max": "1", "base": { "path": "DiagnosticReport.result", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/cholesterol" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.result:Triglyceride", "path": "DiagnosticReport.result", "sliceName": "Triglyceride", "comment": "Observations can contain observations.", "min": 1, "max": "1", "base": { "path": "DiagnosticReport.result", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/triglyceride" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.result:HDLCholesterol", "path": "DiagnosticReport.result", "sliceName": "HDLCholesterol", "comment": "Observations can contain observations.", "min": 1, "max": "1", "base": { "path": "DiagnosticReport.result", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/hdlcholesterol" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.result:LDLCholesterol", "path": "DiagnosticReport.result", "sliceName": "LDLCholesterol", "comment": "Observations can contain observations.", "min": 0, "max": "1", "base": { "path": "DiagnosticReport.result", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/ldlcholesterol" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.imagingStudy", "path": "DiagnosticReport.imagingStudy", "comment": "ImagingStudy and the image element are somewhat overlapping - typically, the list of image references in the image element will also be found in one of the imaging study resources. However, each caters to different types of displays for different types of purposes. Neither, either, or both may be provided.", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.imagingStudy", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/ImagingStudy" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.media", "path": "DiagnosticReport.media", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.media", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.media.id", "path": "DiagnosticReport.media.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.media.extension", "path": "DiagnosticReport.media.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.media.modifierExtension", "path": "DiagnosticReport.media.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "DiagnosticReport.media.comment", "path": "DiagnosticReport.media.comment", "comment": "The comment should be displayed with the image. It would be common for the report to include additional discussion of the image contents in other sections such as the conclusion.", "min": 0, "max": "1", "base": { "path": "DiagnosticReport.media.comment", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.media.link", "path": "DiagnosticReport.media.link", "min": 1, "max": "1", "base": { "path": "DiagnosticReport.media.link", "min": 1, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Media" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.conclusion", "path": "DiagnosticReport.conclusion", "comment": "It's not unusual for the lab to make some kind of interpretative comment on the set of results.", "min": 0, "max": "1", "base": { "path": "DiagnosticReport.conclusion", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.conclusionCode", "path": "DiagnosticReport.conclusionCode", "comment": "Not used in this context.", "min": 0, "max": "0", "base": { "path": "DiagnosticReport.conclusionCode", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "AdjunctDiagnosis" } ], "strength": "example", "description": "Diagnosis codes provided as adjuncts to the report.", "valueSet": "http://hl7.org/fhir/ValueSet/clinical-findings" } }, { "id": "DiagnosticReport.presentedForm", "path": "DiagnosticReport.presentedForm", "comment": "\"application/pdf\" is recommended as the most reliable and interoperable in this context.", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.presentedForm", "min": 0, "max": "*" }, "type": [ { "code": "Attachment" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "DiagnosticReport", "path": "DiagnosticReport", "comment": "In this profile, mustSupport means that authoring systems must include the ability to report these elements, and processing systems must cater for them by either displaying them to the user or considering them appropriately in decision support systems.", "min": 1, "max": "1" }, { "id": "DiagnosticReport.code", "path": "DiagnosticReport.code", "comment": "LOINC code includes \"direct\" LDL - does this mean LDL derived by measuring VLDL by ultracentrifugation? This panel includes both measured and calculated LDL.", "min": 1, "max": "1", "type": [ { "code": "CodeableConcept" } ], "fixedCodeableConcept": { "coding": [ { "system": "http://loinc.org", "code": "57698-3", "display": "Lipid panel with direct LDL - Serum or Plasma" } ] } }, { "id": "DiagnosticReport.result", "path": "DiagnosticReport.result", "slicing": { "discriminator": [ { "type": "value", "path": "resolve().code" } ], "ordered": true, "rules": "closed" }, "min": 3, "max": "4" }, { "id": "DiagnosticReport.result:Cholesterol", "path": "DiagnosticReport.result", "sliceName": "Cholesterol", "min": 1, "max": "1", "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/cholesterol" ] } ], "mustSupport": true }, { "id": "DiagnosticReport.result:Triglyceride", "path": "DiagnosticReport.result", "sliceName": "Triglyceride", "min": 1, "max": "1", "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/triglyceride" ] } ], "mustSupport": true }, { "id": "DiagnosticReport.result:HDLCholesterol", "path": "DiagnosticReport.result", "sliceName": "HDLCholesterol", "min": 1, "max": "1", "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/hdlcholesterol" ] } ], "mustSupport": true }, { "id": "DiagnosticReport.result:LDLCholesterol", "path": "DiagnosticReport.result", "sliceName": "LDLCholesterol", "min": 0, "max": "1", "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/ldlcholesterol" ] } ], "mustSupport": true }, { "id": "DiagnosticReport.conclusion", "path": "DiagnosticReport.conclusion", "comment": "It's not unusual for the lab to make some kind of interpretative comment on the set of results.", "min": 0, "max": "1", "type": [ { "code": "string" } ], "mustSupport": true }, { "id": "DiagnosticReport.conclusionCode", "path": "DiagnosticReport.conclusionCode", "comment": "Not used in this context.", "min": 0, "max": "0", "type": [ { "code": "CodeableConcept" } ] } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/cholesterol", "resource": { "resourceType": "StructureDefinition", "id": "cholesterol", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 1 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "oo" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/cholesterol", "version": "4.0.1", "name": "Example Lipid Profile", "status": "draft", "experimental": true, "date": "2012-05-12", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Observation", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Observation", "derivation": "constraint", "snapshot": { "element": [ { "id": "Observation", "path": "Observation", "comment": "Used for simple observations such as device measurements, laboratory atomic results, vital signs, height, weight, smoking status, comments, etc. Other resources are used to provide context for observations such as laboratory reports, etc.", "min": 1, "max": "1", "base": { "path": "Observation", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "obs-6", "severity": "error", "human": "dataAbsentReason SHALL only be present if Observation.value[x] is not present", "expression": "dataAbsentReason.empty() or value.empty()", "xpath": "not(exists(f:dataAbsentReason)) or (not(exists(*[starts-with(local-name(.), 'value')])))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "obs-7", "severity": "error", "human": "If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present", "expression": "value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()", "xpath": "not(f:*[starts-with(local-name(.), 'value')] and (for $coding in f:code/f:coding return f:component/f:code/f:coding[f:code/@value=$coding/f:code/@value] [f:system/@value=$coding/f:system/@value]))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.id", "path": "Observation.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.meta", "path": "Observation.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.implicitRules", "path": "Observation.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Observation.language", "path": "Observation.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Observation.text", "path": "Observation.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.contained", "path": "Observation.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.extension", "path": "Observation.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.modifierExtension", "path": "Observation.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Observation.identifier", "path": "Observation.identifier", "min": 0, "max": "*", "base": { "path": "Observation.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.basedOn", "path": "Observation.basedOn", "min": 0, "max": "*", "base": { "path": "Observation.basedOn", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/CarePlan", "http://hl7.org/fhir/StructureDefinition/DeviceRequest", "http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation", "http://hl7.org/fhir/StructureDefinition/MedicationRequest", "http://hl7.org/fhir/StructureDefinition/NutritionOrder", "http://hl7.org/fhir/StructureDefinition/ServiceRequest" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.partOf", "path": "Observation.partOf", "comment": "To link an Observation to an Encounter use `encounter`. See the [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below for guidance on referencing another Observation.", "min": 0, "max": "*", "base": { "path": "Observation.partOf", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/MedicationAdministration", "http://hl7.org/fhir/StructureDefinition/MedicationDispense", "http://hl7.org/fhir/StructureDefinition/MedicationStatement", "http://hl7.org/fhir/StructureDefinition/Procedure", "http://hl7.org/fhir/StructureDefinition/Immunization", "http://hl7.org/fhir/StructureDefinition/ImagingStudy" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.status", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-display-hint", "valueString": "default: final" } ], "path": "Observation.status", "comment": "This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid.", "min": 1, "max": "1", "base": { "path": "Observation.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationStatus" } ], "strength": "required", "description": "Codes providing the status of an observation.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-status|4.0.1" } }, { "id": "Observation.category", "path": "Observation.category", "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 0, "max": "*", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.code", "path": "Observation.code", "comment": "*All* code-value and, if present, component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.", "min": 1, "max": "1", "base": { "path": "Observation.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "fixedCodeableConcept": { "coding": [ { "system": "http://loinc.org", "code": "35200-5", "display": "Cholesterol [Moles/volume] in Serum or Plasma" } ] }, "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCode" } ], "strength": "example", "description": "Codes identifying names of simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-codes" } }, { "id": "Observation.subject", "path": "Observation.subject", "comment": "One would expect this element to be a cardinality of 1..1. The only circumstance in which the subject can be missing is when the observation is made by a device that does not know the patient. In this case, the observation SHALL be matched to a patient through some context/channel matching technique, and at this point, the observation should be updated.", "min": 0, "max": "1", "base": { "path": "Observation.subject", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/Group", "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/Location" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.focus", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "path": "Observation.focus", "comment": "Typically, an observation is made about the subject - a patient, or group of patients, location, or device - and the distinction between the subject and what is directly measured for an observation is specified in the observation code itself ( e.g., \"Blood Glucose\") and does not need to be represented separately using this element. Use `specimen` if a reference to a specimen is required. If a code is required instead of a resource use either `bodysite` for bodysites or the standard extension [focusCode](http://hl7.org/fhir/extension-observation-focuscode.html).", "min": 0, "max": "*", "base": { "path": "Observation.focus", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.encounter", "path": "Observation.encounter", "comment": "This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests).", "min": 0, "max": "1", "base": { "path": "Observation.encounter", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Encounter" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.effective[x]", "path": "Observation.effective[x]", "comment": "At least a date should be present unless this observation is a historical report. For recording imprecise or \"fuzzy\" times (For example, a blood glucose measurement taken \"after breakfast\") use the [Timing](http://hl7.org/fhir/datatypes.html#timing) datatype which allow the measurement to be tied to regular life events.", "min": 0, "max": "1", "base": { "path": "Observation.effective[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" }, { "code": "Period" }, { "code": "Timing" }, { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.issued", "path": "Observation.issued", "comment": "For Observations that don’t require review and verification, it may be the same as the [`lastUpdated` ](http://hl7.org/fhir/resource-definitions.html#Meta.lastUpdated) time of the resource itself. For Observations that do require review and verification for certain updates, it might not be the same as the `lastUpdated` time of the resource itself due to a non-clinically significant update that doesn’t require the new version to be reviewed and verified again.", "min": 0, "max": "1", "base": { "path": "Observation.issued", "min": 0, "max": "1" }, "type": [ { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.performer", "path": "Observation.performer", "min": 0, "max": "*", "base": { "path": "Observation.performer", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/CareTeam", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/RelatedPerson" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]", "path": "Observation.value[x]", "slicing": { "discriminator": [ { "type": "type", "path": "$this" } ], "ordered": false, "rules": "closed" }, "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "obs-7" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity", "path": "Observation.value[x]", "sliceName": "valueQuantity", "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "obs-7" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.id", "path": "Observation.value[x].id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.value[x]:valueQuantity.extension", "path": "Observation.value[x].extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.value[x]:valueQuantity.value", "path": "Observation.value[x].value", "comment": "The implicit precision in the value should always be honored. Monetary values have their own rules for handling precision (refer to standard accounting text books).", "min": 0, "max": "1", "base": { "path": "Quantity.value", "min": 0, "max": "1" }, "type": [ { "code": "decimal" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.comparator", "path": "Observation.value[x].comparator", "comment": "No need for this on cholesterol.", "min": 0, "max": "0", "base": { "path": "Quantity.comparator", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "meaningWhenMissing": "If there is no comparator, then there is no modification of the value", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This is labeled as \"Is Modifier\" because the comparator modifies the interpretation of the value significantly. If there is no comparator, then there is no modification of the value", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "QuantityComparator" } ], "strength": "required", "description": "How the Quantity should be understood and represented.", "valueSet": "http://hl7.org/fhir/ValueSet/quantity-comparator|4.0.1" } }, { "id": "Observation.value[x]:valueQuantity.unit", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "Observation.value[x].unit", "min": 1, "max": "1", "base": { "path": "Quantity.unit", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "fixedString": "mmol/L", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.system", "path": "Observation.value[x].system", "min": 1, "max": "1", "base": { "path": "Quantity.system", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "fixedUri": "http://unitsofmeasure.org", "condition": [ "qty-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity.code", "path": "Observation.value[x].code", "comment": "The preferred system is UCUM, but SNOMED CT can also be used (for customary units) or ISO 4217 for currency. The context of use may additionally require a code from a particular system.", "min": 1, "max": "1", "base": { "path": "Quantity.code", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "fixedCode": "mmol/L", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.dataAbsentReason", "path": "Observation.dataAbsentReason", "comment": "Null or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"specimen unsatisfactory\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Note that an observation may only be reported if there are values to report. For example differential cell counts values may be reported only when > 0. Because of these options, use-case agreements are required to interpret general observations for null or exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.interpretation", "path": "Observation.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "1", "base": { "path": "Observation.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.note", "path": "Observation.note", "comment": "May include general statements about the observation, or statements about significant, unexpected or unreliable results values, or information about its source when relevant to its interpretation.", "min": 0, "max": "*", "base": { "path": "Observation.note", "min": 0, "max": "*" }, "type": [ { "code": "Annotation" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "Observation.bodySite", "path": "Observation.bodySite", "comment": "Only used if not implicit in code found in Observation.code. In many systems, this may be represented as a related observation instead of an inline component. \n\nIf the use case requires BodySite to be handled as a separate resource (e.g. to identify and track separately) then use the standard extension[ bodySite](http://hl7.org/fhir/extension-bodysite.html).", "min": 0, "max": "1", "base": { "path": "Observation.bodySite", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodySite" } ], "strength": "example", "description": "Codes describing anatomical locations. May include laterality.", "valueSet": "http://hl7.org/fhir/ValueSet/body-site" } }, { "id": "Observation.method", "path": "Observation.method", "comment": "Only used if not implicit in code for Observation.code.", "min": 0, "max": "1", "base": { "path": "Observation.method", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationMethod" } ], "strength": "example", "description": "Methods for simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-methods" } }, { "id": "Observation.specimen", "path": "Observation.specimen", "comment": "Should only be used if not implicit in code found in `Observation.code`. Observations are not made on specimens themselves; they are made on a subject, but in many cases by the means of a specimen. Note that although specimens are often involved, they are not always tracked and reported explicitly. Also note that observation resources may be used in contexts that track the specimen explicitly (e.g. Diagnostic Report).", "min": 0, "max": "1", "base": { "path": "Observation.specimen", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Specimen" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.device", "path": "Observation.device", "comment": "Note that this is not meant to represent a device involved in the transmission of the result, e.g., a gateway. Such devices may be documented using the Provenance resource where relevant.", "min": 0, "max": "1", "base": { "path": "Observation.device", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/DeviceMetric" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange", "path": "Observation.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 1, "max": "1", "base": { "path": "Observation.referenceRange", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "obs-3", "severity": "error", "human": "Must have at least a low or a high or text", "expression": "low.exists() or high.exists() or text.exists()", "xpath": "(exists(f:low) or exists(f:high)or exists(f:text))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.id", "path": "Observation.referenceRange.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.extension", "path": "Observation.referenceRange.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.modifierExtension", "path": "Observation.referenceRange.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.referenceRange.low", "path": "Observation.referenceRange.low", "min": 0, "max": "0", "base": { "path": "Observation.referenceRange.low", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.high", "path": "Observation.referenceRange.high", "comment": "Per Australian NHF Recommendations.", "min": 1, "max": "1", "base": { "path": "Observation.referenceRange.high", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "fixedQuantity": { "value": 4.5 }, "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "qty-3", "severity": "error", "human": "If a code for the unit is present, the system SHALL also be present", "expression": "code.empty() or system.exists()", "xpath": "not(exists(f:code)) or exists(f:system)", "source": "http://hl7.org/fhir/StructureDefinition/Quantity" }, { "key": "sqty-1", "severity": "error", "human": "The comparator is not used on a SimpleQuantity", "expression": "comparator.empty()", "xpath": "not(exists(f:comparator))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" } ], "isModifier": false }, { "id": "Observation.referenceRange.type", "path": "Observation.referenceRange.type", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal range is assumed.", "min": 0, "max": "0", "base": { "path": "Observation.referenceRange.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeMeaning" } ], "strength": "preferred", "description": "Code for the meaning of a reference range.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-meaning" } }, { "id": "Observation.referenceRange.appliesTo", "path": "Observation.referenceRange.appliesTo", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal population is assumed.", "min": 0, "max": "0", "base": { "path": "Observation.referenceRange.appliesTo", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeType" } ], "strength": "example", "description": "Codes identifying the population the reference range applies to.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-appliesto" } }, { "id": "Observation.referenceRange.age", "path": "Observation.referenceRange.age", "min": 0, "max": "0", "base": { "path": "Observation.referenceRange.age", "min": 0, "max": "1" }, "type": [ { "code": "Range" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.text", "path": "Observation.referenceRange.text", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.hasMember", "path": "Observation.hasMember", "comment": "When using this element, an observation will typically have either a value or a set of related resources, although both may be present in some cases. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below. Note that a system may calculate results from [QuestionnaireResponse](http://hl7.org/fhir/questionnaireresponse.html) into a final score and represent the score as an Observation.", "min": 0, "max": "0", "base": { "path": "Observation.hasMember", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Observation", "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.derivedFrom", "path": "Observation.derivedFrom", "comment": "All the reference choices that are listed in this element can represent clinical observations and other measurements that may be the source for a derived value. The most common reference will be another Observation. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below.", "min": 0, "max": "0", "base": { "path": "Observation.derivedFrom", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/DocumentReference", "http://hl7.org/fhir/StructureDefinition/ImagingStudy", "http://hl7.org/fhir/StructureDefinition/Media", "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/Observation", "http://hl7.org/fhir/StructureDefinition/MolecularSequence" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component", "path": "Observation.component", "comment": "For a discussion on the ways Observations can be assembled in groups together see [Notes](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "*", "base": { "path": "Observation.component", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component.id", "path": "Observation.component.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.extension", "path": "Observation.component.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.modifierExtension", "path": "Observation.component.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.component.code", "path": "Observation.component.code", "comment": "*All* code-value and component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.", "min": 1, "max": "1", "base": { "path": "Observation.component.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCode" } ], "strength": "example", "description": "Codes identifying names of simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-codes" } }, { "id": "Observation.component.value[x]", "path": "Observation.component.value[x]", "comment": "Used when observation has a set of component observations. An observation may have both a value (e.g. an Apgar score) and component observations (the observations from which the Apgar score was derived). If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.component.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" }, { "code": "CodeableConcept" }, { "code": "string" }, { "code": "boolean" }, { "code": "integer" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "SampledData" }, { "code": "time" }, { "code": "dateTime" }, { "code": "Period" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component.dataAbsentReason", "path": "Observation.component.dataAbsentReason", "comment": "\"Null\" or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"test not done\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Because of these options, use-case agreements are required to interpret general observations for exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.component.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.component.interpretation", "path": "Observation.component.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.component.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.component.referenceRange", "path": "Observation.component.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.component.referenceRange", "min": 0, "max": "*" }, "contentReference": "#Observation.referenceRange", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "Observation", "path": "Observation", "min": 1, "max": "1" }, { "id": "Observation.code", "path": "Observation.code", "min": 1, "max": "1", "type": [ { "code": "CodeableConcept" } ], "fixedCodeableConcept": { "coding": [ { "system": "http://loinc.org", "code": "35200-5", "display": "Cholesterol [Moles/volume] in Serum or Plasma" } ] }, "mustSupport": true }, { "id": "Observation.valueQuantity", "path": "Observation.valueQuantity", "min": 0, "max": "1", "type": [ { "code": "Quantity" } ], "mustSupport": true }, { "id": "Observation.valueQuantity.value", "path": "Observation.valueQuantity.value", "min": 0, "max": "1", "type": [ { "code": "decimal" } ], "mustSupport": true }, { "id": "Observation.valueQuantity.comparator", "path": "Observation.valueQuantity.comparator", "comment": "No need for this on cholesterol.", "min": 0, "max": "0", "type": [ { "code": "code" } ] }, { "id": "Observation.valueQuantity.unit", "path": "Observation.valueQuantity.unit", "min": 1, "max": "1", "type": [ { "code": "string" } ], "fixedString": "mmol/L", "mustSupport": true }, { "id": "Observation.valueQuantity.system", "path": "Observation.valueQuantity.system", "min": 1, "max": "1", "type": [ { "code": "uri" } ], "fixedUri": "http://unitsofmeasure.org", "mustSupport": true }, { "id": "Observation.valueQuantity.code", "path": "Observation.valueQuantity.code", "min": 1, "max": "1", "type": [ { "code": "code" } ], "fixedCode": "mmol/L", "mustSupport": true }, { "id": "Observation.interpretation", "path": "Observation.interpretation", "min": 0, "max": "1", "type": [ { "code": "CodeableConcept" } ], "mustSupport": true }, { "id": "Observation.note", "path": "Observation.note", "min": 0, "max": "*", "type": [ { "code": "Annotation" } ], "mustSupport": true }, { "id": "Observation.referenceRange", "path": "Observation.referenceRange", "min": 1, "max": "1", "mustSupport": true }, { "id": "Observation.referenceRange.low", "path": "Observation.referenceRange.low", "min": 0, "max": "0" }, { "id": "Observation.referenceRange.high", "path": "Observation.referenceRange.high", "comment": "Per Australian NHF Recommendations.", "min": 1, "max": "1", "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "fixedQuantity": { "value": 4.5 } }, { "id": "Observation.referenceRange.type", "path": "Observation.referenceRange.type", "min": 0, "max": "0", "type": [ { "code": "CodeableConcept" } ] }, { "id": "Observation.referenceRange.appliesTo", "path": "Observation.referenceRange.appliesTo", "min": 0, "max": "0", "type": [ { "code": "CodeableConcept" } ] }, { "id": "Observation.referenceRange.age", "path": "Observation.referenceRange.age", "min": 0, "max": "0", "type": [ { "code": "Range" } ] }, { "id": "Observation.hasMember", "path": "Observation.hasMember", "min": 0, "max": "0" }, { "id": "Observation.derivedFrom", "path": "Observation.derivedFrom", "min": 0, "max": "0" } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/triglyceride", "resource": { "resourceType": "StructureDefinition", "id": "triglyceride", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 1 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "oo" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/triglyceride", "version": "4.0.1", "name": "Example Lipid Profile", "status": "draft", "experimental": true, "date": "2012-05-12", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Observation", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Observation", "derivation": "constraint", "snapshot": { "element": [ { "id": "Observation", "path": "Observation", "comment": "Used for simple observations such as device measurements, laboratory atomic results, vital signs, height, weight, smoking status, comments, etc. Other resources are used to provide context for observations such as laboratory reports, etc.", "min": 1, "max": "1", "base": { "path": "Observation", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "obs-6", "severity": "error", "human": "dataAbsentReason SHALL only be present if Observation.value[x] is not present", "expression": "dataAbsentReason.empty() or value.empty()", "xpath": "not(exists(f:dataAbsentReason)) or (not(exists(*[starts-with(local-name(.), 'value')])))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "obs-7", "severity": "error", "human": "If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present", "expression": "value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()", "xpath": "not(f:*[starts-with(local-name(.), 'value')] and (for $coding in f:code/f:coding return f:component/f:code/f:coding[f:code/@value=$coding/f:code/@value] [f:system/@value=$coding/f:system/@value]))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.id", "path": "Observation.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.meta", "path": "Observation.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.implicitRules", "path": "Observation.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Observation.language", "path": "Observation.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Observation.text", "path": "Observation.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.contained", "path": "Observation.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.extension", "path": "Observation.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.modifierExtension", "path": "Observation.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Observation.identifier", "path": "Observation.identifier", "min": 0, "max": "*", "base": { "path": "Observation.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.basedOn", "path": "Observation.basedOn", "min": 0, "max": "*", "base": { "path": "Observation.basedOn", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/CarePlan", "http://hl7.org/fhir/StructureDefinition/DeviceRequest", "http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation", "http://hl7.org/fhir/StructureDefinition/MedicationRequest", "http://hl7.org/fhir/StructureDefinition/NutritionOrder", "http://hl7.org/fhir/StructureDefinition/ServiceRequest" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.partOf", "path": "Observation.partOf", "comment": "To link an Observation to an Encounter use `encounter`. See the [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below for guidance on referencing another Observation.", "min": 0, "max": "*", "base": { "path": "Observation.partOf", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/MedicationAdministration", "http://hl7.org/fhir/StructureDefinition/MedicationDispense", "http://hl7.org/fhir/StructureDefinition/MedicationStatement", "http://hl7.org/fhir/StructureDefinition/Procedure", "http://hl7.org/fhir/StructureDefinition/Immunization", "http://hl7.org/fhir/StructureDefinition/ImagingStudy" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.status", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-display-hint", "valueString": "default: final" } ], "path": "Observation.status", "comment": "This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid.", "min": 1, "max": "1", "base": { "path": "Observation.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationStatus" } ], "strength": "required", "description": "Codes providing the status of an observation.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-status|4.0.1" } }, { "id": "Observation.category", "path": "Observation.category", "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 0, "max": "*", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.code", "path": "Observation.code", "comment": "*All* code-value and, if present, component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.", "min": 1, "max": "1", "base": { "path": "Observation.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "patternCodeableConcept": { "coding": [ { "system": "http://loinc.org", "code": "35217-9", "display": "Triglyceride [Moles/volume] in Serum or Plasma" } ] }, "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCode" } ], "strength": "example", "description": "Codes identifying names of simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-codes" } }, { "id": "Observation.subject", "path": "Observation.subject", "comment": "One would expect this element to be a cardinality of 1..1. The only circumstance in which the subject can be missing is when the observation is made by a device that does not know the patient. In this case, the observation SHALL be matched to a patient through some context/channel matching technique, and at this point, the observation should be updated.", "min": 0, "max": "1", "base": { "path": "Observation.subject", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/Group", "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/Location" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.focus", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "path": "Observation.focus", "comment": "Typically, an observation is made about the subject - a patient, or group of patients, location, or device - and the distinction between the subject and what is directly measured for an observation is specified in the observation code itself ( e.g., \"Blood Glucose\") and does not need to be represented separately using this element. Use `specimen` if a reference to a specimen is required. If a code is required instead of a resource use either `bodysite` for bodysites or the standard extension [focusCode](http://hl7.org/fhir/extension-observation-focuscode.html).", "min": 0, "max": "*", "base": { "path": "Observation.focus", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.encounter", "path": "Observation.encounter", "comment": "This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests).", "min": 0, "max": "1", "base": { "path": "Observation.encounter", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Encounter" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.effective[x]", "path": "Observation.effective[x]", "comment": "At least a date should be present unless this observation is a historical report. For recording imprecise or \"fuzzy\" times (For example, a blood glucose measurement taken \"after breakfast\") use the [Timing](http://hl7.org/fhir/datatypes.html#timing) datatype which allow the measurement to be tied to regular life events.", "min": 0, "max": "1", "base": { "path": "Observation.effective[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" }, { "code": "Period" }, { "code": "Timing" }, { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.issued", "path": "Observation.issued", "comment": "For Observations that don’t require review and verification, it may be the same as the [`lastUpdated` ](http://hl7.org/fhir/resource-definitions.html#Meta.lastUpdated) time of the resource itself. For Observations that do require review and verification for certain updates, it might not be the same as the `lastUpdated` time of the resource itself due to a non-clinically significant update that doesn’t require the new version to be reviewed and verified again.", "min": 0, "max": "1", "base": { "path": "Observation.issued", "min": 0, "max": "1" }, "type": [ { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.performer", "path": "Observation.performer", "min": 0, "max": "*", "base": { "path": "Observation.performer", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/CareTeam", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/RelatedPerson" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]", "path": "Observation.value[x]", "slicing": { "discriminator": [ { "type": "type", "path": "$this" } ], "ordered": false, "rules": "closed" }, "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "obs-7" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity", "path": "Observation.value[x]", "sliceName": "valueQuantity", "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "obs-7" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.dataAbsentReason", "path": "Observation.dataAbsentReason", "comment": "Null or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"specimen unsatisfactory\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Note that an observation may only be reported if there are values to report. For example differential cell counts values may be reported only when > 0. Because of these options, use-case agreements are required to interpret general observations for null or exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.interpretation", "path": "Observation.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "1", "base": { "path": "Observation.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.note", "path": "Observation.note", "comment": "May include general statements about the observation, or statements about significant, unexpected or unreliable results values, or information about its source when relevant to its interpretation.", "min": 0, "max": "*", "base": { "path": "Observation.note", "min": 0, "max": "*" }, "type": [ { "code": "Annotation" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "Observation.bodySite", "path": "Observation.bodySite", "comment": "Only used if not implicit in code found in Observation.code. In many systems, this may be represented as a related observation instead of an inline component. \n\nIf the use case requires BodySite to be handled as a separate resource (e.g. to identify and track separately) then use the standard extension[ bodySite](http://hl7.org/fhir/extension-bodysite.html).", "min": 0, "max": "1", "base": { "path": "Observation.bodySite", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodySite" } ], "strength": "example", "description": "Codes describing anatomical locations. May include laterality.", "valueSet": "http://hl7.org/fhir/ValueSet/body-site" } }, { "id": "Observation.method", "path": "Observation.method", "comment": "Only used if not implicit in code for Observation.code.", "min": 0, "max": "1", "base": { "path": "Observation.method", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationMethod" } ], "strength": "example", "description": "Methods for simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-methods" } }, { "id": "Observation.specimen", "path": "Observation.specimen", "comment": "Should only be used if not implicit in code found in `Observation.code`. Observations are not made on specimens themselves; they are made on a subject, but in many cases by the means of a specimen. Note that although specimens are often involved, they are not always tracked and reported explicitly. Also note that observation resources may be used in contexts that track the specimen explicitly (e.g. Diagnostic Report).", "min": 0, "max": "1", "base": { "path": "Observation.specimen", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Specimen" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.device", "path": "Observation.device", "comment": "Note that this is not meant to represent a device involved in the transmission of the result, e.g., a gateway. Such devices may be documented using the Provenance resource where relevant.", "min": 0, "max": "1", "base": { "path": "Observation.device", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/DeviceMetric" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange", "path": "Observation.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 1, "max": "1", "base": { "path": "Observation.referenceRange", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "obs-3", "severity": "error", "human": "Must have at least a low or a high or text", "expression": "low.exists() or high.exists() or text.exists()", "xpath": "(exists(f:low) or exists(f:high)or exists(f:text))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.id", "path": "Observation.referenceRange.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.extension", "path": "Observation.referenceRange.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.modifierExtension", "path": "Observation.referenceRange.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.referenceRange.low", "path": "Observation.referenceRange.low", "min": 0, "max": "0", "base": { "path": "Observation.referenceRange.low", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.high", "path": "Observation.referenceRange.high", "comment": "Per Australian NHF Recommendations.", "min": 1, "max": "1", "base": { "path": "Observation.referenceRange.high", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.type", "path": "Observation.referenceRange.type", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal range is assumed.", "min": 0, "max": "0", "base": { "path": "Observation.referenceRange.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeMeaning" } ], "strength": "preferred", "description": "Code for the meaning of a reference range.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-meaning" } }, { "id": "Observation.referenceRange.appliesTo", "path": "Observation.referenceRange.appliesTo", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal population is assumed.", "min": 0, "max": "0", "base": { "path": "Observation.referenceRange.appliesTo", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeType" } ], "strength": "example", "description": "Codes identifying the population the reference range applies to.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-appliesto" } }, { "id": "Observation.referenceRange.age", "path": "Observation.referenceRange.age", "min": 0, "max": "0", "base": { "path": "Observation.referenceRange.age", "min": 0, "max": "1" }, "type": [ { "code": "Range" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.text", "path": "Observation.referenceRange.text", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.hasMember", "path": "Observation.hasMember", "comment": "When using this element, an observation will typically have either a value or a set of related resources, although both may be present in some cases. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below. Note that a system may calculate results from [QuestionnaireResponse](http://hl7.org/fhir/questionnaireresponse.html) into a final score and represent the score as an Observation.", "min": 0, "max": "0", "base": { "path": "Observation.hasMember", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Observation", "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.derivedFrom", "path": "Observation.derivedFrom", "comment": "All the reference choices that are listed in this element can represent clinical observations and other measurements that may be the source for a derived value. The most common reference will be another Observation. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below.", "min": 0, "max": "0", "base": { "path": "Observation.derivedFrom", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/DocumentReference", "http://hl7.org/fhir/StructureDefinition/ImagingStudy", "http://hl7.org/fhir/StructureDefinition/Media", "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/Observation", "http://hl7.org/fhir/StructureDefinition/MolecularSequence" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component", "path": "Observation.component", "comment": "For a discussion on the ways Observations can be assembled in groups together see [Notes](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "*", "base": { "path": "Observation.component", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component.id", "path": "Observation.component.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.extension", "path": "Observation.component.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.modifierExtension", "path": "Observation.component.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.component.code", "path": "Observation.component.code", "comment": "*All* code-value and component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.", "min": 1, "max": "1", "base": { "path": "Observation.component.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCode" } ], "strength": "example", "description": "Codes identifying names of simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-codes" } }, { "id": "Observation.component.value[x]", "path": "Observation.component.value[x]", "comment": "Used when observation has a set of component observations. An observation may have both a value (e.g. an Apgar score) and component observations (the observations from which the Apgar score was derived). If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.component.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" }, { "code": "CodeableConcept" }, { "code": "string" }, { "code": "boolean" }, { "code": "integer" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "SampledData" }, { "code": "time" }, { "code": "dateTime" }, { "code": "Period" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component.dataAbsentReason", "path": "Observation.component.dataAbsentReason", "comment": "\"Null\" or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"test not done\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Because of these options, use-case agreements are required to interpret general observations for exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.component.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.component.interpretation", "path": "Observation.component.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.component.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.component.referenceRange", "path": "Observation.component.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.component.referenceRange", "min": 0, "max": "*" }, "contentReference": "#Observation.referenceRange", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "Observation", "path": "Observation", "min": 1, "max": "1" }, { "id": "Observation.code", "path": "Observation.code", "min": 1, "max": "1", "type": [ { "code": "CodeableConcept" } ], "patternCodeableConcept": { "coding": [ { "system": "http://loinc.org", "code": "35217-9", "display": "Triglyceride [Moles/volume] in Serum or Plasma" } ] }, "mustSupport": true }, { "id": "Observation.valueQuantity", "path": "Observation.valueQuantity", "min": 0, "max": "1", "type": [ { "code": "Quantity" } ], "mustSupport": true }, { "id": "Observation.interpretation", "path": "Observation.interpretation", "min": 0, "max": "1", "type": [ { "code": "CodeableConcept" } ], "mustSupport": true }, { "id": "Observation.note", "path": "Observation.note", "min": 0, "max": "*", "type": [ { "code": "Annotation" } ], "mustSupport": true }, { "id": "Observation.referenceRange", "path": "Observation.referenceRange", "min": 1, "max": "1", "mustSupport": true }, { "id": "Observation.referenceRange.low", "path": "Observation.referenceRange.low", "min": 0, "max": "0" }, { "id": "Observation.referenceRange.high", "path": "Observation.referenceRange.high", "comment": "Per Australian NHF Recommendations.", "min": 1, "max": "1" }, { "id": "Observation.referenceRange.type", "path": "Observation.referenceRange.type", "min": 0, "max": "0", "type": [ { "code": "CodeableConcept" } ] }, { "id": "Observation.referenceRange.appliesTo", "path": "Observation.referenceRange.appliesTo", "min": 0, "max": "0", "type": [ { "code": "CodeableConcept" } ] }, { "id": "Observation.referenceRange.age", "path": "Observation.referenceRange.age", "min": 0, "max": "0", "type": [ { "code": "Range" } ] }, { "id": "Observation.hasMember", "path": "Observation.hasMember", "min": 0, "max": "0" }, { "id": "Observation.derivedFrom", "path": "Observation.derivedFrom", "min": 0, "max": "0" } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/hdlcholesterol", "resource": { "resourceType": "StructureDefinition", "id": "hdlcholesterol", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 1 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "oo" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/hdlcholesterol", "version": "4.0.1", "name": "Example Lipid Profile", "status": "draft", "experimental": true, "date": "2012-05-12", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Observation", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Observation", "derivation": "constraint", "snapshot": { "element": [ { "id": "Observation", "path": "Observation", "comment": "Used for simple observations such as device measurements, laboratory atomic results, vital signs, height, weight, smoking status, comments, etc. Other resources are used to provide context for observations such as laboratory reports, etc.", "min": 1, "max": "1", "base": { "path": "Observation", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "obs-6", "severity": "error", "human": "dataAbsentReason SHALL only be present if Observation.value[x] is not present", "expression": "dataAbsentReason.empty() or value.empty()", "xpath": "not(exists(f:dataAbsentReason)) or (not(exists(*[starts-with(local-name(.), 'value')])))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "obs-7", "severity": "error", "human": "If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present", "expression": "value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()", "xpath": "not(f:*[starts-with(local-name(.), 'value')] and (for $coding in f:code/f:coding return f:component/f:code/f:coding[f:code/@value=$coding/f:code/@value] [f:system/@value=$coding/f:system/@value]))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.id", "path": "Observation.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.meta", "path": "Observation.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.implicitRules", "path": "Observation.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Observation.language", "path": "Observation.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Observation.text", "path": "Observation.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.contained", "path": "Observation.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.extension", "path": "Observation.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.modifierExtension", "path": "Observation.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Observation.identifier", "path": "Observation.identifier", "min": 0, "max": "*", "base": { "path": "Observation.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.basedOn", "path": "Observation.basedOn", "min": 0, "max": "*", "base": { "path": "Observation.basedOn", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/CarePlan", "http://hl7.org/fhir/StructureDefinition/DeviceRequest", "http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation", "http://hl7.org/fhir/StructureDefinition/MedicationRequest", "http://hl7.org/fhir/StructureDefinition/NutritionOrder", "http://hl7.org/fhir/StructureDefinition/ServiceRequest" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.partOf", "path": "Observation.partOf", "comment": "To link an Observation to an Encounter use `encounter`. See the [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below for guidance on referencing another Observation.", "min": 0, "max": "*", "base": { "path": "Observation.partOf", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/MedicationAdministration", "http://hl7.org/fhir/StructureDefinition/MedicationDispense", "http://hl7.org/fhir/StructureDefinition/MedicationStatement", "http://hl7.org/fhir/StructureDefinition/Procedure", "http://hl7.org/fhir/StructureDefinition/Immunization", "http://hl7.org/fhir/StructureDefinition/ImagingStudy" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.status", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-display-hint", "valueString": "default: final" } ], "path": "Observation.status", "comment": "This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid.", "min": 1, "max": "1", "base": { "path": "Observation.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationStatus" } ], "strength": "required", "description": "Codes providing the status of an observation.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-status|4.0.1" } }, { "id": "Observation.category", "path": "Observation.category", "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 0, "max": "*", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.code", "path": "Observation.code", "comment": "*All* code-value and, if present, component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.", "min": 1, "max": "1", "base": { "path": "Observation.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "fixedCodeableConcept": { "coding": [ { "system": "http://loinc.org", "code": "2085-9", "display": "HDL Cholesterol" } ] }, "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCode" } ], "strength": "example", "description": "Codes identifying names of simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-codes" } }, { "id": "Observation.subject", "path": "Observation.subject", "comment": "One would expect this element to be a cardinality of 1..1. The only circumstance in which the subject can be missing is when the observation is made by a device that does not know the patient. In this case, the observation SHALL be matched to a patient through some context/channel matching technique, and at this point, the observation should be updated.", "min": 0, "max": "1", "base": { "path": "Observation.subject", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/Group", "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/Location" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.focus", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "path": "Observation.focus", "comment": "Typically, an observation is made about the subject - a patient, or group of patients, location, or device - and the distinction between the subject and what is directly measured for an observation is specified in the observation code itself ( e.g., \"Blood Glucose\") and does not need to be represented separately using this element. Use `specimen` if a reference to a specimen is required. If a code is required instead of a resource use either `bodysite` for bodysites or the standard extension [focusCode](http://hl7.org/fhir/extension-observation-focuscode.html).", "min": 0, "max": "*", "base": { "path": "Observation.focus", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.encounter", "path": "Observation.encounter", "comment": "This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests).", "min": 0, "max": "1", "base": { "path": "Observation.encounter", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Encounter" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.effective[x]", "path": "Observation.effective[x]", "comment": "At least a date should be present unless this observation is a historical report. For recording imprecise or \"fuzzy\" times (For example, a blood glucose measurement taken \"after breakfast\") use the [Timing](http://hl7.org/fhir/datatypes.html#timing) datatype which allow the measurement to be tied to regular life events.", "min": 0, "max": "1", "base": { "path": "Observation.effective[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" }, { "code": "Period" }, { "code": "Timing" }, { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.issued", "path": "Observation.issued", "comment": "For Observations that don’t require review and verification, it may be the same as the [`lastUpdated` ](http://hl7.org/fhir/resource-definitions.html#Meta.lastUpdated) time of the resource itself. For Observations that do require review and verification for certain updates, it might not be the same as the `lastUpdated` time of the resource itself due to a non-clinically significant update that doesn’t require the new version to be reviewed and verified again.", "min": 0, "max": "1", "base": { "path": "Observation.issued", "min": 0, "max": "1" }, "type": [ { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.performer", "path": "Observation.performer", "min": 0, "max": "*", "base": { "path": "Observation.performer", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/CareTeam", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/RelatedPerson" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]", "path": "Observation.value[x]", "slicing": { "discriminator": [ { "type": "type", "path": "$this" } ], "ordered": false, "rules": "closed" }, "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "obs-7" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity", "path": "Observation.value[x]", "sliceName": "valueQuantity", "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "obs-7" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.dataAbsentReason", "path": "Observation.dataAbsentReason", "comment": "Null or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"specimen unsatisfactory\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Note that an observation may only be reported if there are values to report. For example differential cell counts values may be reported only when > 0. Because of these options, use-case agreements are required to interpret general observations for null or exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.interpretation", "path": "Observation.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "1", "base": { "path": "Observation.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.note", "path": "Observation.note", "comment": "May include general statements about the observation, or statements about significant, unexpected or unreliable results values, or information about its source when relevant to its interpretation.", "min": 0, "max": "*", "base": { "path": "Observation.note", "min": 0, "max": "*" }, "type": [ { "code": "Annotation" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "Observation.bodySite", "path": "Observation.bodySite", "comment": "Only used if not implicit in code found in Observation.code. In many systems, this may be represented as a related observation instead of an inline component. \n\nIf the use case requires BodySite to be handled as a separate resource (e.g. to identify and track separately) then use the standard extension[ bodySite](http://hl7.org/fhir/extension-bodysite.html).", "min": 0, "max": "1", "base": { "path": "Observation.bodySite", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodySite" } ], "strength": "example", "description": "Codes describing anatomical locations. May include laterality.", "valueSet": "http://hl7.org/fhir/ValueSet/body-site" } }, { "id": "Observation.method", "path": "Observation.method", "comment": "Only used if not implicit in code for Observation.code.", "min": 0, "max": "1", "base": { "path": "Observation.method", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationMethod" } ], "strength": "example", "description": "Methods for simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-methods" } }, { "id": "Observation.specimen", "path": "Observation.specimen", "comment": "Should only be used if not implicit in code found in `Observation.code`. Observations are not made on specimens themselves; they are made on a subject, but in many cases by the means of a specimen. Note that although specimens are often involved, they are not always tracked and reported explicitly. Also note that observation resources may be used in contexts that track the specimen explicitly (e.g. Diagnostic Report).", "min": 0, "max": "1", "base": { "path": "Observation.specimen", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Specimen" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.device", "path": "Observation.device", "comment": "Note that this is not meant to represent a device involved in the transmission of the result, e.g., a gateway. Such devices may be documented using the Provenance resource where relevant.", "min": 0, "max": "1", "base": { "path": "Observation.device", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/DeviceMetric" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange", "path": "Observation.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 1, "max": "1", "base": { "path": "Observation.referenceRange", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "obs-3", "severity": "error", "human": "Must have at least a low or a high or text", "expression": "low.exists() or high.exists() or text.exists()", "xpath": "(exists(f:low) or exists(f:high)or exists(f:text))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.id", "path": "Observation.referenceRange.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.extension", "path": "Observation.referenceRange.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.modifierExtension", "path": "Observation.referenceRange.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.referenceRange.low", "path": "Observation.referenceRange.low", "comment": "The context of use may frequently define what kind of quantity this is and therefore what kind of units can be used. The context of use may also restrict the values for the comparator.", "min": 1, "max": "1", "base": { "path": "Observation.referenceRange.low", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "fixedQuantity": { "value": 1.5 }, "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "qty-3", "severity": "error", "human": "If a code for the unit is present, the system SHALL also be present", "expression": "code.empty() or system.exists()", "xpath": "not(exists(f:code)) or exists(f:system)", "source": "http://hl7.org/fhir/StructureDefinition/Quantity" }, { "key": "sqty-1", "severity": "error", "human": "The comparator is not used on a SimpleQuantity", "expression": "comparator.empty()", "xpath": "not(exists(f:comparator))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" } ], "isModifier": false }, { "id": "Observation.referenceRange.high", "path": "Observation.referenceRange.high", "comment": "Per Australian NHF Recommendations.", "min": 0, "max": "0", "base": { "path": "Observation.referenceRange.high", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.type", "path": "Observation.referenceRange.type", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal range is assumed.", "min": 0, "max": "0", "base": { "path": "Observation.referenceRange.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeMeaning" } ], "strength": "preferred", "description": "Code for the meaning of a reference range.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-meaning" } }, { "id": "Observation.referenceRange.appliesTo", "path": "Observation.referenceRange.appliesTo", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal population is assumed.", "min": 0, "max": "0", "base": { "path": "Observation.referenceRange.appliesTo", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeType" } ], "strength": "example", "description": "Codes identifying the population the reference range applies to.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-appliesto" } }, { "id": "Observation.referenceRange.age", "path": "Observation.referenceRange.age", "min": 0, "max": "0", "base": { "path": "Observation.referenceRange.age", "min": 0, "max": "1" }, "type": [ { "code": "Range" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.text", "path": "Observation.referenceRange.text", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.hasMember", "path": "Observation.hasMember", "comment": "When using this element, an observation will typically have either a value or a set of related resources, although both may be present in some cases. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below. Note that a system may calculate results from [QuestionnaireResponse](http://hl7.org/fhir/questionnaireresponse.html) into a final score and represent the score as an Observation.", "min": 0, "max": "0", "base": { "path": "Observation.hasMember", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Observation", "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.derivedFrom", "path": "Observation.derivedFrom", "comment": "All the reference choices that are listed in this element can represent clinical observations and other measurements that may be the source for a derived value. The most common reference will be another Observation. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below.", "min": 0, "max": "0", "base": { "path": "Observation.derivedFrom", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/DocumentReference", "http://hl7.org/fhir/StructureDefinition/ImagingStudy", "http://hl7.org/fhir/StructureDefinition/Media", "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/Observation", "http://hl7.org/fhir/StructureDefinition/MolecularSequence" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component", "path": "Observation.component", "comment": "For a discussion on the ways Observations can be assembled in groups together see [Notes](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "*", "base": { "path": "Observation.component", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component.id", "path": "Observation.component.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.extension", "path": "Observation.component.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.modifierExtension", "path": "Observation.component.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.component.code", "path": "Observation.component.code", "comment": "*All* code-value and component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.", "min": 1, "max": "1", "base": { "path": "Observation.component.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCode" } ], "strength": "example", "description": "Codes identifying names of simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-codes" } }, { "id": "Observation.component.value[x]", "path": "Observation.component.value[x]", "comment": "Used when observation has a set of component observations. An observation may have both a value (e.g. an Apgar score) and component observations (the observations from which the Apgar score was derived). If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.component.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" }, { "code": "CodeableConcept" }, { "code": "string" }, { "code": "boolean" }, { "code": "integer" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "SampledData" }, { "code": "time" }, { "code": "dateTime" }, { "code": "Period" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component.dataAbsentReason", "path": "Observation.component.dataAbsentReason", "comment": "\"Null\" or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"test not done\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Because of these options, use-case agreements are required to interpret general observations for exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.component.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.component.interpretation", "path": "Observation.component.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.component.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.component.referenceRange", "path": "Observation.component.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.component.referenceRange", "min": 0, "max": "*" }, "contentReference": "#Observation.referenceRange", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "Observation", "path": "Observation", "min": 1, "max": "1" }, { "id": "Observation.code", "path": "Observation.code", "min": 1, "max": "1", "type": [ { "code": "CodeableConcept" } ], "fixedCodeableConcept": { "coding": [ { "system": "http://loinc.org", "code": "2085-9", "display": "HDL Cholesterol" } ] }, "mustSupport": true }, { "id": "Observation.valueQuantity", "path": "Observation.valueQuantity", "min": 0, "max": "1", "type": [ { "code": "Quantity" } ], "mustSupport": true }, { "id": "Observation.interpretation", "path": "Observation.interpretation", "min": 0, "max": "1", "type": [ { "code": "CodeableConcept" } ], "mustSupport": true }, { "id": "Observation.note", "path": "Observation.note", "min": 0, "max": "*", "type": [ { "code": "Annotation" } ], "mustSupport": true }, { "id": "Observation.referenceRange", "path": "Observation.referenceRange", "min": 1, "max": "1", "mustSupport": true }, { "id": "Observation.referenceRange.low", "path": "Observation.referenceRange.low", "min": 1, "max": "1", "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "fixedQuantity": { "value": 1.5 } }, { "id": "Observation.referenceRange.high", "path": "Observation.referenceRange.high", "comment": "Per Australian NHF Recommendations.", "min": 0, "max": "0" }, { "id": "Observation.referenceRange.type", "path": "Observation.referenceRange.type", "min": 0, "max": "0", "type": [ { "code": "CodeableConcept" } ] }, { "id": "Observation.referenceRange.appliesTo", "path": "Observation.referenceRange.appliesTo", "min": 0, "max": "0", "type": [ { "code": "CodeableConcept" } ] }, { "id": "Observation.referenceRange.age", "path": "Observation.referenceRange.age", "min": 0, "max": "0", "type": [ { "code": "Range" } ] }, { "id": "Observation.hasMember", "path": "Observation.hasMember", "min": 0, "max": "0" }, { "id": "Observation.derivedFrom", "path": "Observation.derivedFrom", "min": 0, "max": "0" } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/ldlcholesterol", "resource": { "resourceType": "StructureDefinition", "id": "ldlcholesterol", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 1 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "oo" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/ldlcholesterol", "version": "4.0.1", "name": "Example Lipid Profile", "status": "draft", "experimental": true, "date": "2012-05-12", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Observation", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Observation", "derivation": "constraint", "snapshot": { "element": [ { "id": "Observation", "path": "Observation", "comment": "Used for simple observations such as device measurements, laboratory atomic results, vital signs, height, weight, smoking status, comments, etc. Other resources are used to provide context for observations such as laboratory reports, etc.", "min": 1, "max": "1", "base": { "path": "Observation", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "obs-6", "severity": "error", "human": "dataAbsentReason SHALL only be present if Observation.value[x] is not present", "expression": "dataAbsentReason.empty() or value.empty()", "xpath": "not(exists(f:dataAbsentReason)) or (not(exists(*[starts-with(local-name(.), 'value')])))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" }, { "key": "obs-7", "severity": "error", "human": "If Observation.code is the same as an Observation.component.code then the value element associated with the code SHALL NOT be present", "expression": "value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()", "xpath": "not(f:*[starts-with(local-name(.), 'value')] and (for $coding in f:code/f:coding return f:component/f:code/f:coding[f:code/@value=$coding/f:code/@value] [f:system/@value=$coding/f:system/@value]))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.id", "path": "Observation.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.meta", "path": "Observation.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.implicitRules", "path": "Observation.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Observation.language", "path": "Observation.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Observation.text", "path": "Observation.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.contained", "path": "Observation.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.extension", "path": "Observation.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.modifierExtension", "path": "Observation.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Observation.identifier", "path": "Observation.identifier", "min": 0, "max": "*", "base": { "path": "Observation.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.basedOn", "path": "Observation.basedOn", "min": 0, "max": "*", "base": { "path": "Observation.basedOn", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/CarePlan", "http://hl7.org/fhir/StructureDefinition/DeviceRequest", "http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation", "http://hl7.org/fhir/StructureDefinition/MedicationRequest", "http://hl7.org/fhir/StructureDefinition/NutritionOrder", "http://hl7.org/fhir/StructureDefinition/ServiceRequest" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.partOf", "path": "Observation.partOf", "comment": "To link an Observation to an Encounter use `encounter`. See the [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below for guidance on referencing another Observation.", "min": 0, "max": "*", "base": { "path": "Observation.partOf", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/MedicationAdministration", "http://hl7.org/fhir/StructureDefinition/MedicationDispense", "http://hl7.org/fhir/StructureDefinition/MedicationStatement", "http://hl7.org/fhir/StructureDefinition/Procedure", "http://hl7.org/fhir/StructureDefinition/Immunization", "http://hl7.org/fhir/StructureDefinition/ImagingStudy" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.status", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-display-hint", "valueString": "default: final" } ], "path": "Observation.status", "comment": "This element is labeled as a modifier because the status contains codes that mark the resource as not currently valid.", "min": 1, "max": "1", "base": { "path": "Observation.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationStatus" } ], "strength": "required", "description": "Codes providing the status of an observation.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-status|4.0.1" } }, { "id": "Observation.category", "path": "Observation.category", "comment": "In addition to the required category valueset, this element allows various categorization schemes based on the owner’s definition of the category and effectively multiple categories can be used at once. The level of granularity is defined by the category concepts in the value set.", "min": 0, "max": "*", "base": { "path": "Observation.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCategory" } ], "strength": "preferred", "description": "Codes for high level observation categories.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-category" } }, { "id": "Observation.code", "path": "Observation.code", "comment": "*All* code-value and, if present, component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.", "min": 1, "max": "1", "base": { "path": "Observation.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "LDLCodes" } ], "strength": "required", "description": "LDL Cholesterol codes - measured or calculated.", "valueSet": "http://hl7.org/fhir/ValueSet/ldlcholesterol-codes|4.0.1" } }, { "id": "Observation.subject", "path": "Observation.subject", "comment": "One would expect this element to be a cardinality of 1..1. The only circumstance in which the subject can be missing is when the observation is made by a device that does not know the patient. In this case, the observation SHALL be matched to a patient through some context/channel matching technique, and at this point, the observation should be updated.", "min": 0, "max": "1", "base": { "path": "Observation.subject", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/Group", "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/Location" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.focus", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "path": "Observation.focus", "comment": "Typically, an observation is made about the subject - a patient, or group of patients, location, or device - and the distinction between the subject and what is directly measured for an observation is specified in the observation code itself ( e.g., \"Blood Glucose\") and does not need to be represented separately using this element. Use `specimen` if a reference to a specimen is required. If a code is required instead of a resource use either `bodysite` for bodysites or the standard extension [focusCode](http://hl7.org/fhir/extension-observation-focuscode.html).", "min": 0, "max": "*", "base": { "path": "Observation.focus", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.encounter", "path": "Observation.encounter", "comment": "This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests).", "min": 0, "max": "1", "base": { "path": "Observation.encounter", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Encounter" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.effective[x]", "path": "Observation.effective[x]", "comment": "At least a date should be present unless this observation is a historical report. For recording imprecise or \"fuzzy\" times (For example, a blood glucose measurement taken \"after breakfast\") use the [Timing](http://hl7.org/fhir/datatypes.html#timing) datatype which allow the measurement to be tied to regular life events.", "min": 0, "max": "1", "base": { "path": "Observation.effective[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" }, { "code": "Period" }, { "code": "Timing" }, { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.issued", "path": "Observation.issued", "comment": "For Observations that don’t require review and verification, it may be the same as the [`lastUpdated` ](http://hl7.org/fhir/resource-definitions.html#Meta.lastUpdated) time of the resource itself. For Observations that do require review and verification for certain updates, it might not be the same as the `lastUpdated` time of the resource itself due to a non-clinically significant update that doesn’t require the new version to be reviewed and verified again.", "min": 0, "max": "1", "base": { "path": "Observation.issued", "min": 0, "max": "1" }, "type": [ { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.performer", "path": "Observation.performer", "min": 0, "max": "*", "base": { "path": "Observation.performer", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/CareTeam", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/RelatedPerson" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]", "path": "Observation.value[x]", "slicing": { "discriminator": [ { "type": "type", "path": "$this" } ], "ordered": false, "rules": "closed" }, "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "obs-7" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.value[x]:valueQuantity", "path": "Observation.value[x]", "sliceName": "valueQuantity", "comment": "An observation may have; 1) a single value here, 2) both a value and a set of related or component values, or 3) only a set of related or component values. If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" } ], "condition": [ "obs-7" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Observation.dataAbsentReason", "path": "Observation.dataAbsentReason", "comment": "Null or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"specimen unsatisfactory\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Note that an observation may only be reported if there are values to report. For example differential cell counts values may be reported only when > 0. Because of these options, use-case agreements are required to interpret general observations for null or exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.interpretation", "path": "Observation.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "1", "base": { "path": "Observation.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.note", "path": "Observation.note", "comment": "May include general statements about the observation, or statements about significant, unexpected or unreliable results values, or information about its source when relevant to its interpretation.", "min": 0, "max": "*", "base": { "path": "Observation.note", "min": 0, "max": "*" }, "type": [ { "code": "Annotation" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "Observation.bodySite", "path": "Observation.bodySite", "comment": "Only used if not implicit in code found in Observation.code. In many systems, this may be represented as a related observation instead of an inline component. \n\nIf the use case requires BodySite to be handled as a separate resource (e.g. to identify and track separately) then use the standard extension[ bodySite](http://hl7.org/fhir/extension-bodysite.html).", "min": 0, "max": "1", "base": { "path": "Observation.bodySite", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BodySite" } ], "strength": "example", "description": "Codes describing anatomical locations. May include laterality.", "valueSet": "http://hl7.org/fhir/ValueSet/body-site" } }, { "id": "Observation.method", "path": "Observation.method", "comment": "Only used if not implicit in code for Observation.code.", "min": 0, "max": "1", "base": { "path": "Observation.method", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationMethod" } ], "strength": "example", "description": "Methods for simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-methods" } }, { "id": "Observation.specimen", "path": "Observation.specimen", "comment": "Should only be used if not implicit in code found in `Observation.code`. Observations are not made on specimens themselves; they are made on a subject, but in many cases by the means of a specimen. Note that although specimens are often involved, they are not always tracked and reported explicitly. Also note that observation resources may be used in contexts that track the specimen explicitly (e.g. Diagnostic Report).", "min": 0, "max": "1", "base": { "path": "Observation.specimen", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Specimen" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.device", "path": "Observation.device", "comment": "Note that this is not meant to represent a device involved in the transmission of the result, e.g., a gateway. Such devices may be documented using the Provenance resource where relevant.", "min": 0, "max": "1", "base": { "path": "Observation.device", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/DeviceMetric" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange", "path": "Observation.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 1, "max": "1", "base": { "path": "Observation.referenceRange", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "obs-3", "severity": "error", "human": "Must have at least a low or a high or text", "expression": "low.exists() or high.exists() or text.exists()", "xpath": "(exists(f:low) or exists(f:high)or exists(f:text))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.id", "path": "Observation.referenceRange.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.extension", "path": "Observation.referenceRange.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.modifierExtension", "path": "Observation.referenceRange.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.referenceRange.low", "path": "Observation.referenceRange.low", "min": 0, "max": "0", "base": { "path": "Observation.referenceRange.low", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "condition": [ "obs-3" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.high", "path": "Observation.referenceRange.high", "comment": "Per Australian NHF Recommendations.", "min": 1, "max": "1", "base": { "path": "Observation.referenceRange.high", "min": 0, "max": "1" }, "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "fixedQuantity": { "value": 3.0 }, "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "qty-3", "severity": "error", "human": "If a code for the unit is present, the system SHALL also be present", "expression": "code.empty() or system.exists()", "xpath": "not(exists(f:code)) or exists(f:system)", "source": "http://hl7.org/fhir/StructureDefinition/Quantity" }, { "key": "sqty-1", "severity": "error", "human": "The comparator is not used on a SimpleQuantity", "expression": "comparator.empty()", "xpath": "not(exists(f:comparator))", "source": "http://hl7.org/fhir/StructureDefinition/Observation" } ], "isModifier": false }, { "id": "Observation.referenceRange.type", "path": "Observation.referenceRange.type", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal range is assumed.", "min": 0, "max": "0", "base": { "path": "Observation.referenceRange.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeMeaning" } ], "strength": "preferred", "description": "Code for the meaning of a reference range.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-meaning" } }, { "id": "Observation.referenceRange.appliesTo", "path": "Observation.referenceRange.appliesTo", "comment": "This SHOULD be populated if there is more than one range. If this element is not present then the normal population is assumed.", "min": 0, "max": "0", "base": { "path": "Observation.referenceRange.appliesTo", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationRangeType" } ], "strength": "example", "description": "Codes identifying the population the reference range applies to.", "valueSet": "http://hl7.org/fhir/ValueSet/referencerange-appliesto" } }, { "id": "Observation.referenceRange.age", "path": "Observation.referenceRange.age", "min": 0, "max": "0", "base": { "path": "Observation.referenceRange.age", "min": 0, "max": "1" }, "type": [ { "code": "Range" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.referenceRange.text", "path": "Observation.referenceRange.text", "min": 0, "max": "1", "base": { "path": "Observation.referenceRange.text", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.hasMember", "path": "Observation.hasMember", "comment": "When using this element, an observation will typically have either a value or a set of related resources, although both may be present in some cases. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below. Note that a system may calculate results from [QuestionnaireResponse](http://hl7.org/fhir/questionnaireresponse.html) into a final score and represent the score as an Observation.", "min": 0, "max": "0", "base": { "path": "Observation.hasMember", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Observation", "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/MolecularSequence" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.derivedFrom", "path": "Observation.derivedFrom", "comment": "All the reference choices that are listed in this element can represent clinical observations and other measurements that may be the source for a derived value. The most common reference will be another Observation. For a discussion on the ways Observations can assembled in groups together, see [Notes](http://hl7.org/fhir/observation.html#obsgrouping) below.", "min": 0, "max": "0", "base": { "path": "Observation.derivedFrom", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/DocumentReference", "http://hl7.org/fhir/StructureDefinition/ImagingStudy", "http://hl7.org/fhir/StructureDefinition/Media", "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse", "http://hl7.org/fhir/StructureDefinition/Observation", "http://hl7.org/fhir/StructureDefinition/MolecularSequence" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component", "path": "Observation.component", "comment": "For a discussion on the ways Observations can be assembled in groups together see [Notes](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "*", "base": { "path": "Observation.component", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component.id", "path": "Observation.component.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.extension", "path": "Observation.component.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Observation.component.modifierExtension", "path": "Observation.component.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Observation.component.code", "path": "Observation.component.code", "comment": "*All* code-value and component.code-component.value pairs need to be taken into account to correctly understand the meaning of the observation.", "min": 1, "max": "1", "base": { "path": "Observation.component.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationCode" } ], "strength": "example", "description": "Codes identifying names of simple observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-codes" } }, { "id": "Observation.component.value[x]", "path": "Observation.component.value[x]", "comment": "Used when observation has a set of component observations. An observation may have both a value (e.g. an Apgar score) and component observations (the observations from which the Apgar score was derived). If a value is present, the datatype for this element should be determined by Observation.code. A CodeableConcept with just a text would be used instead of a string if the field was usually coded, or if the type associated with the Observation.code defines a coded value. For additional guidance, see the [Notes section](http://hl7.org/fhir/observation.html#notes) below.", "min": 0, "max": "1", "base": { "path": "Observation.component.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" }, { "code": "CodeableConcept" }, { "code": "string" }, { "code": "boolean" }, { "code": "integer" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "SampledData" }, { "code": "time" }, { "code": "dateTime" }, { "code": "Period" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Observation.component.dataAbsentReason", "path": "Observation.component.dataAbsentReason", "comment": "\"Null\" or exceptional values can be represented two ways in FHIR Observations. One way is to simply include them in the value set and represent the exceptions in the value. For example, measurement values for a serology test could be \"detected\", \"not detected\", \"inconclusive\", or \"test not done\". \n\nThe alternate way is to use the value element for actual observations and use the explicit dataAbsentReason element to record exceptional values. For example, the dataAbsentReason code \"error\" could be used when the measurement was not completed. Because of these options, use-case agreements are required to interpret general observations for exceptional values.", "min": 0, "max": "1", "base": { "path": "Observation.component.dataAbsentReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "obs-6" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationValueAbsentReason" } ], "strength": "extensible", "description": "Codes specifying why the result (`Observation.value[x]`) is missing.", "valueSet": "http://hl7.org/fhir/ValueSet/data-absent-reason" } }, { "id": "Observation.component.interpretation", "path": "Observation.component.interpretation", "comment": "Historically used for laboratory results (known as 'abnormal flag' ), its use extends to other use cases where coded interpretations are relevant. Often reported as one or more simple compact codes this element is often placed adjacent to the result value in reports and flow sheets to signal the meaning/normalcy status of the result.", "min": 0, "max": "*", "base": { "path": "Observation.component.interpretation", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ObservationInterpretation" } ], "strength": "extensible", "description": "Codes identifying interpretations of observations.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-interpretation" } }, { "id": "Observation.component.referenceRange", "path": "Observation.component.referenceRange", "comment": "Most observations only have one generic reference range. Systems MAY choose to restrict to only supplying the relevant reference range based on knowledge about the patient (e.g., specific to the patient's age, gender, weight and other factors), but this might not be possible or appropriate. Whenever more than one reference range is supplied, the differences between them SHOULD be provided in the reference range and/or age properties.", "min": 0, "max": "*", "base": { "path": "Observation.component.referenceRange", "min": 0, "max": "*" }, "contentReference": "#Observation.referenceRange", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "Observation", "path": "Observation", "min": 1, "max": "1" }, { "id": "Observation.code", "path": "Observation.code", "min": 1, "max": "1", "type": [ { "code": "CodeableConcept" } ], "mustSupport": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "LDLCodes" } ], "strength": "required", "description": "LDL Cholesterol codes - measured or calculated.", "valueSet": "http://hl7.org/fhir/ValueSet/ldlcholesterol-codes|4.0.1" } }, { "id": "Observation.valueQuantity", "path": "Observation.valueQuantity", "min": 0, "max": "1", "type": [ { "code": "Quantity" } ], "mustSupport": true }, { "id": "Observation.interpretation", "path": "Observation.interpretation", "min": 0, "max": "1", "type": [ { "code": "CodeableConcept" } ], "mustSupport": true }, { "id": "Observation.note", "path": "Observation.note", "min": 0, "max": "*", "type": [ { "code": "Annotation" } ], "mustSupport": true }, { "id": "Observation.referenceRange", "path": "Observation.referenceRange", "min": 1, "max": "1", "mustSupport": true }, { "id": "Observation.referenceRange.low", "path": "Observation.referenceRange.low", "min": 0, "max": "0" }, { "id": "Observation.referenceRange.high", "path": "Observation.referenceRange.high", "comment": "Per Australian NHF Recommendations.", "min": 1, "max": "1", "type": [ { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] } ], "fixedQuantity": { "value": 3.0 } }, { "id": "Observation.referenceRange.type", "path": "Observation.referenceRange.type", "min": 0, "max": "0", "type": [ { "code": "CodeableConcept" } ] }, { "id": "Observation.referenceRange.appliesTo", "path": "Observation.referenceRange.appliesTo", "min": 0, "max": "0", "type": [ { "code": "CodeableConcept" } ] }, { "id": "Observation.referenceRange.age", "path": "Observation.referenceRange.age", "min": 0, "max": "0", "type": [ { "code": "Range" } ] }, { "id": "Observation.hasMember", "path": "Observation.hasMember", "min": 0, "max": "0" }, { "id": "Observation.derivedFrom", "path": "Observation.derivedFrom", "min": 0, "max": "0" } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/diagnosticreport-genetics", "resource": { "resourceType": "StructureDefinition", "id": "diagnosticreport-genetics", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 3 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "oo" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/diagnosticreport-genetics", "version": "4.0.1", "name": "DiagnosticReport-Genetics", "status": "draft", "experimental": false, "date": "2015-10-09", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "DiagnosticReport", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/DiagnosticReport", "derivation": "constraint", "snapshot": { "element": [ { "id": "DiagnosticReport", "path": "DiagnosticReport", "comment": "This is intended to capture a single report and is not suitable for use in displaying summary information that covers multiple reports. For example, this resource has not been designed for laboratory cumulative reporting formats nor detailed structured reports for sequencing.", "min": 0, "max": "*", "base": { "path": "DiagnosticReport", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.id", "path": "DiagnosticReport.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.meta", "path": "DiagnosticReport.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.implicitRules", "path": "DiagnosticReport.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "DiagnosticReport.language", "path": "DiagnosticReport.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "DiagnosticReport.text", "path": "DiagnosticReport.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.contained", "path": "DiagnosticReport.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.extension", "path": "DiagnosticReport.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "ordered": false, "rules": "open" }, "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.extension:AssessedCondition", "path": "DiagnosticReport.extension", "sliceName": "AssessedCondition", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/DiagnosticReport-geneticsAssessedCondition" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false }, { "id": "DiagnosticReport.extension:FamilyMemberHistory", "path": "DiagnosticReport.extension", "sliceName": "FamilyMemberHistory", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/DiagnosticReport-geneticsFamilyMemberHistory" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false }, { "id": "DiagnosticReport.extension:Analysis", "path": "DiagnosticReport.extension", "sliceName": "Analysis", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/DiagnosticReport-geneticsAnalysis" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false }, { "id": "DiagnosticReport.extension:References", "path": "DiagnosticReport.extension", "sliceName": "References", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/DiagnosticReport-geneticsReferences" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false }, { "id": "DiagnosticReport.modifierExtension", "path": "DiagnosticReport.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "DiagnosticReport.identifier", "path": "DiagnosticReport.identifier", "comment": "Usually assigned by the Information System of the diagnostic service provider (filler id).", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.basedOn", "path": "DiagnosticReport.basedOn", "comment": "Note: Usually there is one test request for each result, however in some circumstances multiple test requests may be represented using a single test result resource. Note that there are also cases where one request leads to multiple reports.", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.basedOn", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/CarePlan", "http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation", "http://hl7.org/fhir/StructureDefinition/MedicationRequest", "http://hl7.org/fhir/StructureDefinition/NutritionOrder", "http://hl7.org/fhir/StructureDefinition/ServiceRequest" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.status", "path": "DiagnosticReport.status", "min": 1, "max": "1", "base": { "path": "DiagnosticReport.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DiagnosticReportStatus" } ], "strength": "required", "description": "The status of the diagnostic report.", "valueSet": "http://hl7.org/fhir/ValueSet/diagnostic-report-status|4.0.1" } }, { "id": "DiagnosticReport.category", "path": "DiagnosticReport.category", "comment": "Multiple categories are allowed using various categorization schemes. The level of granularity is defined by the category concepts in the value set. More fine-grained filtering can be performed using the metadata and/or terminology hierarchy in DiagnosticReport.code.", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DiagnosticServiceSection" } ], "strength": "example", "description": "Codes for diagnostic service sections.", "valueSet": "http://hl7.org/fhir/ValueSet/diagnostic-service-sections" } }, { "id": "DiagnosticReport.code", "path": "DiagnosticReport.code", "min": 1, "max": "1", "base": { "path": "DiagnosticReport.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DiagnosticReportCodes" } ], "strength": "preferred", "description": "Codes that describe Diagnostic Reports.", "valueSet": "http://hl7.org/fhir/ValueSet/report-codes" } }, { "id": "DiagnosticReport.subject", "path": "DiagnosticReport.subject", "min": 0, "max": "1", "base": { "path": "DiagnosticReport.subject", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/Group", "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/Location" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.encounter", "path": "DiagnosticReport.encounter", "comment": "This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests).", "min": 0, "max": "1", "base": { "path": "DiagnosticReport.encounter", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Encounter" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.effective[x]", "path": "DiagnosticReport.effective[x]", "comment": "If the diagnostic procedure was performed on the patient, this is the time it was performed. If there are specimens, the diagnostically relevant time can be derived from the specimen collection times, but the specimen information is not always available, and the exact relationship between the specimens and the diagnostically relevant time is not always automatic.", "min": 0, "max": "1", "base": { "path": "DiagnosticReport.effective[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" }, { "code": "Period" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.issued", "path": "DiagnosticReport.issued", "comment": "May be different from the update time of the resource itself, because that is the status of the record (potentially a secondary copy), not the actual release time of the report.", "min": 0, "max": "1", "base": { "path": "DiagnosticReport.issued", "min": 0, "max": "1" }, "type": [ { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.performer", "path": "DiagnosticReport.performer", "comment": "This is not necessarily the source of the atomic data items or the entity that interpreted the results. It is the entity that takes responsibility for the clinical report.", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.performer", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/CareTeam" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.resultsInterpreter", "path": "DiagnosticReport.resultsInterpreter", "comment": "Might not be the same entity that takes responsibility for the clinical report.", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.resultsInterpreter", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/CareTeam" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.specimen", "path": "DiagnosticReport.specimen", "comment": "If the specimen is sufficiently specified with a code in the test result name, then this additional data may be redundant. If there are multiple specimens, these may be represented per observation or group.", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.specimen", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Specimen" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.result", "path": "DiagnosticReport.result", "comment": "Observations can contain observations.", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.result", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Observation" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.imagingStudy", "path": "DiagnosticReport.imagingStudy", "comment": "ImagingStudy and the image element are somewhat overlapping - typically, the list of image references in the image element will also be found in one of the imaging study resources. However, each caters to different types of displays for different types of purposes. Neither, either, or both may be provided.", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.imagingStudy", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/ImagingStudy" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.media", "path": "DiagnosticReport.media", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.media", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.media.id", "path": "DiagnosticReport.media.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.media.extension", "path": "DiagnosticReport.media.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.media.modifierExtension", "path": "DiagnosticReport.media.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "DiagnosticReport.media.comment", "path": "DiagnosticReport.media.comment", "comment": "The comment should be displayed with the image. It would be common for the report to include additional discussion of the image contents in other sections such as the conclusion.", "min": 0, "max": "1", "base": { "path": "DiagnosticReport.media.comment", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.media.link", "path": "DiagnosticReport.media.link", "min": 1, "max": "1", "base": { "path": "DiagnosticReport.media.link", "min": 1, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Media" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.conclusion", "path": "DiagnosticReport.conclusion", "min": 0, "max": "1", "base": { "path": "DiagnosticReport.conclusion", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.conclusionCode", "path": "DiagnosticReport.conclusionCode", "min": 0, "max": "0", "base": { "path": "DiagnosticReport.conclusionCode", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "AdjunctDiagnosis" } ], "strength": "example", "description": "Diagnosis codes provided as adjuncts to the report.", "valueSet": "http://hl7.org/fhir/ValueSet/clinical-findings" } }, { "id": "DiagnosticReport.presentedForm", "path": "DiagnosticReport.presentedForm", "comment": "\"application/pdf\" is recommended as the most reliable and interoperable in this context.", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.presentedForm", "min": 0, "max": "*" }, "type": [ { "code": "Attachment" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "DiagnosticReport", "path": "DiagnosticReport", "min": 0, "max": "*" }, { "id": "DiagnosticReport.extension:AssessedCondition", "path": "DiagnosticReport.extension", "sliceName": "AssessedCondition", "min": 0, "max": "*", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/DiagnosticReport-geneticsAssessedCondition" ] } ] }, { "id": "DiagnosticReport.extension:FamilyMemberHistory", "path": "DiagnosticReport.extension", "sliceName": "FamilyMemberHistory", "min": 0, "max": "*", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/DiagnosticReport-geneticsFamilyMemberHistory" ] } ] }, { "id": "DiagnosticReport.extension:Analysis", "path": "DiagnosticReport.extension", "sliceName": "Analysis", "min": 0, "max": "*", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/DiagnosticReport-geneticsAnalysis" ] } ] }, { "id": "DiagnosticReport.extension:References", "path": "DiagnosticReport.extension", "sliceName": "References", "min": 0, "max": "*", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/DiagnosticReport-geneticsReferences" ] } ] }, { "id": "DiagnosticReport.conclusionCode", "path": "DiagnosticReport.conclusionCode", "min": 0, "max": "0", "type": [ { "code": "CodeableConcept" } ] } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/hlaresult", "resource": { "resourceType": "StructureDefinition", "id": "hlaresult", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 3 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "oo" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/hlaresult", "version": "4.0.1", "name": "Profile for HLA Genotyping Results", "status": "draft", "experimental": false, "date": "2015-10-09", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "DiagnosticReport", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/DiagnosticReport", "derivation": "constraint", "snapshot": { "element": [ { "id": "DiagnosticReport", "path": "DiagnosticReport", "comment": "This is intended to capture a single report and is not suitable for use in displaying summary information that covers multiple reports. For example, this resource has not been designed for laboratory cumulative reporting formats nor detailed structured reports for sequencing.", "min": 0, "max": "*", "base": { "path": "DiagnosticReport", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.id", "path": "DiagnosticReport.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.meta", "path": "DiagnosticReport.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.implicitRules", "path": "DiagnosticReport.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "DiagnosticReport.language", "path": "DiagnosticReport.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "DiagnosticReport.text", "path": "DiagnosticReport.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.contained", "path": "DiagnosticReport.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.extension", "path": "DiagnosticReport.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "ordered": false, "rules": "open" }, "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.extension:allele-database", "path": "DiagnosticReport.extension", "sliceName": "allele-database", "min": 0, "max": "1", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/hla-genotyping-results-allele-database" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false }, { "id": "DiagnosticReport.extension:glstring", "path": "DiagnosticReport.extension", "sliceName": "glstring", "min": 0, "max": "1", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/hla-genotyping-results-glstring" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false }, { "id": "DiagnosticReport.extension:haploid", "path": "DiagnosticReport.extension", "sliceName": "haploid", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/hla-genotyping-results-haploid" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false }, { "id": "DiagnosticReport.extension:method", "path": "DiagnosticReport.extension", "sliceName": "method", "min": 0, "max": "1", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/hla-genotyping-results-method" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false }, { "id": "DiagnosticReport.modifierExtension", "path": "DiagnosticReport.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "DiagnosticReport.identifier", "path": "DiagnosticReport.identifier", "comment": "Usually assigned by the Information System of the diagnostic service provider (filler id).", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.basedOn", "path": "DiagnosticReport.basedOn", "comment": "Note: Usually there is one test request for each result, however in some circumstances multiple test requests may be represented using a single test result resource. Note that there are also cases where one request leads to multiple reports.", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.basedOn", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/CarePlan", "http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation", "http://hl7.org/fhir/StructureDefinition/MedicationRequest", "http://hl7.org/fhir/StructureDefinition/NutritionOrder", "http://hl7.org/fhir/StructureDefinition/ServiceRequest" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.status", "path": "DiagnosticReport.status", "min": 1, "max": "1", "base": { "path": "DiagnosticReport.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DiagnosticReportStatus" } ], "strength": "required", "description": "The status of the diagnostic report.", "valueSet": "http://hl7.org/fhir/ValueSet/diagnostic-report-status|4.0.1" } }, { "id": "DiagnosticReport.category", "path": "DiagnosticReport.category", "comment": "Multiple categories are allowed using various categorization schemes. The level of granularity is defined by the category concepts in the value set. More fine-grained filtering can be performed using the metadata and/or terminology hierarchy in DiagnosticReport.code.", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DiagnosticServiceSection" } ], "strength": "example", "description": "Codes for diagnostic service sections.", "valueSet": "http://hl7.org/fhir/ValueSet/diagnostic-service-sections" } }, { "id": "DiagnosticReport.code", "path": "DiagnosticReport.code", "min": 1, "max": "1", "base": { "path": "DiagnosticReport.code", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DiagnosticReportCodes" } ], "strength": "preferred", "description": "Codes that describe Diagnostic Reports.", "valueSet": "http://hl7.org/fhir/ValueSet/report-codes" } }, { "id": "DiagnosticReport.subject", "path": "DiagnosticReport.subject", "min": 0, "max": "1", "base": { "path": "DiagnosticReport.subject", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/Group", "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/Location" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.encounter", "path": "DiagnosticReport.encounter", "comment": "This will typically be the encounter the event occurred within, but some events may be initiated prior to or after the official completion of an encounter but still be tied to the context of the encounter (e.g. pre-admission laboratory tests).", "min": 0, "max": "1", "base": { "path": "DiagnosticReport.encounter", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Encounter" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.effective[x]", "path": "DiagnosticReport.effective[x]", "comment": "If the diagnostic procedure was performed on the patient, this is the time it was performed. If there are specimens, the diagnostically relevant time can be derived from the specimen collection times, but the specimen information is not always available, and the exact relationship between the specimens and the diagnostically relevant time is not always automatic.", "min": 0, "max": "1", "base": { "path": "DiagnosticReport.effective[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" }, { "code": "Period" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.issued", "path": "DiagnosticReport.issued", "comment": "May be different from the update time of the resource itself, because that is the status of the record (potentially a secondary copy), not the actual release time of the report.", "min": 0, "max": "1", "base": { "path": "DiagnosticReport.issued", "min": 0, "max": "1" }, "type": [ { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.performer", "path": "DiagnosticReport.performer", "comment": "This is not necessarily the source of the atomic data items or the entity that interpreted the results. It is the entity that takes responsibility for the clinical report.", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.performer", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/CareTeam" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.resultsInterpreter", "path": "DiagnosticReport.resultsInterpreter", "comment": "Might not be the same entity that takes responsibility for the clinical report.", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.resultsInterpreter", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/CareTeam" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.specimen", "path": "DiagnosticReport.specimen", "comment": "If the specimen is sufficiently specified with a code in the test result name, then this additional data may be redundant. If there are multiple specimens, these may be represented per observation or group.", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.specimen", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Specimen" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.result", "path": "DiagnosticReport.result", "comment": "Observations can contain observations.", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.result", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Observation" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.imagingStudy", "path": "DiagnosticReport.imagingStudy", "comment": "ImagingStudy and the image element are somewhat overlapping - typically, the list of image references in the image element will also be found in one of the imaging study resources. However, each caters to different types of displays for different types of purposes. Neither, either, or both may be provided.", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.imagingStudy", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/ImagingStudy" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.media", "path": "DiagnosticReport.media", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.media", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.media.id", "path": "DiagnosticReport.media.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.media.extension", "path": "DiagnosticReport.media.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.media.modifierExtension", "path": "DiagnosticReport.media.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "DiagnosticReport.media.comment", "path": "DiagnosticReport.media.comment", "comment": "The comment should be displayed with the image. It would be common for the report to include additional discussion of the image contents in other sections such as the conclusion.", "min": 0, "max": "1", "base": { "path": "DiagnosticReport.media.comment", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.media.link", "path": "DiagnosticReport.media.link", "min": 1, "max": "1", "base": { "path": "DiagnosticReport.media.link", "min": 1, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Media" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "DiagnosticReport.conclusion", "path": "DiagnosticReport.conclusion", "min": 0, "max": "1", "base": { "path": "DiagnosticReport.conclusion", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "DiagnosticReport.conclusionCode", "path": "DiagnosticReport.conclusionCode", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.conclusionCode", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "AdjunctDiagnosis" } ], "strength": "example", "description": "Diagnosis codes provided as adjuncts to the report.", "valueSet": "http://hl7.org/fhir/ValueSet/clinical-findings" } }, { "id": "DiagnosticReport.presentedForm", "path": "DiagnosticReport.presentedForm", "comment": "\"application/pdf\" is recommended as the most reliable and interoperable in this context.", "min": 0, "max": "*", "base": { "path": "DiagnosticReport.presentedForm", "min": 0, "max": "*" }, "type": [ { "code": "Attachment" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "DiagnosticReport", "path": "DiagnosticReport", "min": 0, "max": "*" }, { "id": "DiagnosticReport.extension:allele-database", "path": "DiagnosticReport.extension", "sliceName": "allele-database", "min": 0, "max": "1", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/hla-genotyping-results-allele-database" ] } ] }, { "id": "DiagnosticReport.extension:glstring", "path": "DiagnosticReport.extension", "sliceName": "glstring", "min": 0, "max": "1", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/hla-genotyping-results-glstring" ] } ] }, { "id": "DiagnosticReport.extension:haploid", "path": "DiagnosticReport.extension", "sliceName": "haploid", "min": 0, "max": "*", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/hla-genotyping-results-haploid" ] } ] }, { "id": "DiagnosticReport.extension:method", "path": "DiagnosticReport.extension", "sliceName": "method", "min": 0, "max": "1", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/hla-genotyping-results-method" ] } ] } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/synthesis", "resource": { "resourceType": "StructureDefinition", "id": "synthesis", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 0 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "cds" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/synthesis", "version": "4.0.1", "name": "Evidence Synthesis Profile", "status": "draft", "experimental": false, "date": "2018-10-31", "purpose": "Need to be able to define and reuse the definition of individual elements of a research question.", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Evidence", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Evidence", "derivation": "constraint", "snapshot": { "element": [ { "id": "Evidence", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-display-hint", "valueString": "0;0" } ], "path": "Evidence", "comment": "PICO stands for Population (the population within which exposures are being compared), Intervention (the conditional state or exposure state being described for its effect on outcomes), Comparison (the alternative conditional state or alternative exposure state being compared against), and Outcome (the result or effect of the intervention in the population).", "min": 0, "max": "*", "base": { "path": "Evidence", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "evi-0", "severity": "warning", "human": "Name should be usable as an identifier for the module by machine processing applications such as code generation", "expression": "name.matches('[A-Z]([A-Za-z0-9_]){0,254}')", "xpath": "not(exists(f:name/@value)) or matches(f:name/@value, '[A-Z]([A-Za-z0-9_]){0,254}')", "source": "http://hl7.org/fhir/StructureDefinition/Evidence" } ], "isModifier": false, "isSummary": false }, { "id": "Evidence.id", "path": "Evidence.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Evidence.meta", "path": "Evidence.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Evidence.implicitRules", "path": "Evidence.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Evidence.language", "path": "Evidence.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Evidence.text", "path": "Evidence.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Evidence.contained", "path": "Evidence.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Evidence.extension", "path": "Evidence.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Evidence.modifierExtension", "path": "Evidence.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Evidence.url", "path": "Evidence.url", "comment": "Can be a urn:uuid: or a urn:oid: but real http: addresses are preferred. Multiple instances may share the same URL if they have a distinct version.\n\nThe determination of when to create a new version of a resource (same url, new version) vs. defining a new artifact is up to the author. Considerations for making this decision are found in [Technical and Business Versions](resource.html#versions). \n\nIn some cases, the resource can no longer be found at the stated url, but the url itself cannot change. Implementations can use the [meta.source](resource.html#meta) element to indicate where the current master source of the resource can be found.", "min": 0, "max": "1", "base": { "path": "Evidence.url", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Evidence.identifier", "path": "Evidence.identifier", "comment": "Typically, this is used for identifiers that can go in an HL7 V3 II (instance identifier) data type, and can then identify this evidence outside of FHIR, where it is not possible to use the logical URI.", "min": 0, "max": "*", "base": { "path": "Evidence.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Evidence.version", "path": "Evidence.version", "comment": "There may be different evidence instances that have the same identifier but different versions. The version can be appended to the url in a reference to allow a reference to a particular business version of the evidence with the format [url]|[version].", "min": 0, "max": "1", "base": { "path": "Evidence.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Evidence.name", "path": "Evidence.name", "comment": "The name is not expected to be globally unique. The name should be a simple alphanumeric type name to ensure that it is machine-processing friendly.", "min": 0, "max": "1", "base": { "path": "Evidence.name", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "condition": [ "inv-0" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Evidence.title", "path": "Evidence.title", "comment": "This name does not need to be machine-processing friendly and may contain punctuation, white-space, etc.", "min": 0, "max": "1", "base": { "path": "Evidence.title", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Evidence.shortTitle", "path": "Evidence.shortTitle", "min": 0, "max": "1", "base": { "path": "Evidence.shortTitle", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Evidence.subtitle", "path": "Evidence.subtitle", "min": 0, "max": "1", "base": { "path": "Evidence.subtitle", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Evidence.status", "path": "Evidence.status", "comment": "Allows filtering of evidences that are appropriate for use versus not.", "min": 1, "max": "1", "base": { "path": "Evidence.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This is labeled as \"Is Modifier\" because applications should not use a retired {{title}} without due consideration", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "PublicationStatus" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "required", "description": "The lifecycle status of an artifact.", "valueSet": "http://hl7.org/fhir/ValueSet/publication-status|4.0.1" } }, { "id": "Evidence.date", "path": "Evidence.date", "comment": "Note that this is not the same as the resource last-modified-date, since the resource may be a secondary representation of the evidence. Additional specific dates may be added as extensions or be found by consulting Provenances associated with past versions of the resource.", "min": 0, "max": "1", "base": { "path": "Evidence.date", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Evidence.publisher", "path": "Evidence.publisher", "comment": "Usually an organization but may be an individual. The publisher (or steward) of the evidence is the organization or individual primarily responsible for the maintenance and upkeep of the evidence. This is not necessarily the same individual or organization that developed and initially authored the content. The publisher is the primary point of contact for questions or issues with the evidence. This item SHOULD be populated unless the information is available from context.", "min": 0, "max": "1", "base": { "path": "Evidence.publisher", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Evidence.contact", "path": "Evidence.contact", "comment": "May be a web site, an email address, a telephone number, etc.", "min": 0, "max": "*", "base": { "path": "Evidence.contact", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Evidence.description", "path": "Evidence.description", "comment": "This description can be used to capture details such as why the evidence was built, comments about misuse, instructions for clinical use and interpretation, literature references, examples from the paper world, etc. It is not a rendering of the evidence as conveyed in the 'text' field of the resource itself. This item SHOULD be populated unless the information is available from context (e.g. the language of the evidence is presumed to be the predominant language in the place the evidence was created).", "min": 0, "max": "1", "base": { "path": "Evidence.description", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Evidence.note", "path": "Evidence.note", "min": 0, "max": "*", "base": { "path": "Evidence.note", "min": 0, "max": "*" }, "type": [ { "code": "Annotation" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Evidence.useContext", "path": "Evidence.useContext", "comment": "When multiple useContexts are specified, there is no expectation that all or any of the contexts apply.", "min": 0, "max": "*", "base": { "path": "Evidence.useContext", "min": 0, "max": "*" }, "type": [ { "code": "UsageContext" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Evidence.jurisdiction", "path": "Evidence.jurisdiction", "comment": "It may be possible for the evidence to be used in jurisdictions other than those for which it was originally designed or intended.", "min": 0, "max": "*", "base": { "path": "Evidence.jurisdiction", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Jurisdiction" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "extensible", "description": "Countries and regions within which this artifact is targeted for use.", "valueSet": "http://hl7.org/fhir/ValueSet/jurisdiction" } }, { "id": "Evidence.copyright", "path": "Evidence.copyright", "min": 0, "max": "1", "base": { "path": "Evidence.copyright", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Evidence.approvalDate", "path": "Evidence.approvalDate", "comment": "The 'date' element may be more recent than the approval date because of minor changes or editorial corrections.", "min": 0, "max": "1", "base": { "path": "Evidence.approvalDate", "min": 0, "max": "1" }, "type": [ { "code": "date" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Evidence.lastReviewDate", "path": "Evidence.lastReviewDate", "comment": "If specified, this date follows the original approval date.", "min": 0, "max": "1", "base": { "path": "Evidence.lastReviewDate", "min": 0, "max": "1" }, "type": [ { "code": "date" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Evidence.effectivePeriod", "path": "Evidence.effectivePeriod", "comment": "The effective period for a evidence determines when the content is applicable for usage and is independent of publication and review dates. For example, a measure intended to be used for the year 2016 might be published in 2015.", "min": 0, "max": "1", "base": { "path": "Evidence.effectivePeriod", "min": 0, "max": "1" }, "type": [ { "code": "Period" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Evidence.topic", "path": "Evidence.topic", "min": 0, "max": "*", "base": { "path": "Evidence.topic", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DefinitionTopic" } ], "strength": "example", "description": "High-level categorization of the definition, used for searching, sorting, and filtering.", "valueSet": "http://hl7.org/fhir/ValueSet/definition-topic" } }, { "id": "Evidence.author", "path": "Evidence.author", "min": 0, "max": "*", "base": { "path": "Evidence.author", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Evidence.editor", "path": "Evidence.editor", "min": 0, "max": "*", "base": { "path": "Evidence.editor", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Evidence.reviewer", "path": "Evidence.reviewer", "min": 0, "max": "*", "base": { "path": "Evidence.reviewer", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Evidence.endorser", "path": "Evidence.endorser", "min": 0, "max": "*", "base": { "path": "Evidence.endorser", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Evidence.relatedArtifact", "path": "Evidence.relatedArtifact", "comment": "Each related artifact is either an attachment, or a reference to another resource, but not both.", "min": 0, "max": "*", "base": { "path": "Evidence.relatedArtifact", "min": 0, "max": "*" }, "type": [ { "code": "RelatedArtifact" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Evidence.exposureBackground", "path": "Evidence.exposureBackground", "min": 1, "max": "1", "base": { "path": "Evidence.exposureBackground", "min": 1, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/EvidenceVariable" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Evidence.exposureVariant", "path": "Evidence.exposureVariant", "min": 1, "max": "2", "base": { "path": "Evidence.exposureVariant", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/EvidenceVariable" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Evidence.outcome", "path": "Evidence.outcome", "min": 1, "max": "*", "base": { "path": "Evidence.outcome", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/EvidenceVariable" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true } ] }, "differential": { "element": [ { "id": "Evidence", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-display-hint", "valueString": "0;0" } ], "path": "Evidence", "comment": "PICO stands for Population (the population within which exposures are being compared), Intervention (the conditional state or exposure state being described for its effect on outcomes), Comparison (the alternative conditional state or alternative exposure state being compared against), and Outcome (the result or effect of the intervention in the population).", "min": 0, "max": "*" }, { "id": "Evidence.url", "path": "Evidence.url", "comment": "Can be a urn:uuid: or a urn:oid: but real http: addresses are preferred. Multiple instances may share the same URL if they have a distinct version.\n\nThe determination of when to create a new version of a resource (same url, new version) vs. defining a new artifact is up to the author. Considerations for making this decision are found in [Technical and Business Versions](resource.html#versions). \n\nIn some cases, the resource can no longer be found at the stated url, but the url itself cannot change. Implementations can use the [meta.source](resource.html#meta) element to indicate where the current master source of the resource can be found.", "min": 0, "max": "1", "type": [ { "code": "uri" } ], "isSummary": true }, { "id": "Evidence.identifier", "path": "Evidence.identifier", "comment": "Typically, this is used for identifiers that can go in an HL7 V3 II (instance identifier) data type, and can then identify this evidence outside of FHIR, where it is not possible to use the logical URI.", "min": 0, "max": "*", "type": [ { "code": "Identifier" } ], "isSummary": true }, { "id": "Evidence.version", "path": "Evidence.version", "comment": "There may be different evidence instances that have the same identifier but different versions. The version can be appended to the url in a reference to allow a reference to a particular business version of the evidence with the format [url]|[version].", "min": 0, "max": "1", "type": [ { "code": "string" } ], "isSummary": true }, { "id": "Evidence.title", "path": "Evidence.title", "comment": "This name does not need to be machine-processing friendly and may contain punctuation, white-space, etc.", "min": 0, "max": "1", "type": [ { "code": "string" } ], "isSummary": true }, { "id": "Evidence.shortTitle", "path": "Evidence.shortTitle", "min": 0, "max": "1", "type": [ { "code": "string" } ] }, { "id": "Evidence.subtitle", "path": "Evidence.subtitle", "min": 0, "max": "1", "type": [ { "code": "string" } ] }, { "id": "Evidence.status", "path": "Evidence.status", "comment": "Allows filtering of evidences that are appropriate for use versus not.", "min": 1, "max": "1", "type": [ { "code": "code" } ], "isModifier": true, "isModifierReason": "This is labeled as \"Is Modifier\" because applications should not use a retired {{title}} without due consideration", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "PublicationStatus" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "required", "description": "The lifecycle status of an artifact.", "valueSet": "http://hl7.org/fhir/ValueSet/publication-status|4.0.1" } }, { "id": "Evidence.date", "path": "Evidence.date", "comment": "Note that this is not the same as the resource last-modified-date, since the resource may be a secondary representation of the evidence. Additional specific dates may be added as extensions or be found by consulting Provenances associated with past versions of the resource.", "min": 0, "max": "1", "type": [ { "code": "dateTime" } ], "isSummary": true }, { "id": "Evidence.publisher", "path": "Evidence.publisher", "comment": "Usually an organization but may be an individual. The publisher (or steward) of the evidence is the organization or individual primarily responsible for the maintenance and upkeep of the evidence. This is not necessarily the same individual or organization that developed and initially authored the content. The publisher is the primary point of contact for questions or issues with the evidence. This item SHOULD be populated unless the information is available from context.", "min": 0, "max": "1", "type": [ { "code": "string" } ], "isSummary": true }, { "id": "Evidence.contact", "path": "Evidence.contact", "comment": "May be a web site, an email address, a telephone number, etc.", "min": 0, "max": "*", "type": [ { "code": "ContactDetail" } ], "isSummary": true }, { "id": "Evidence.description", "path": "Evidence.description", "comment": "This description can be used to capture details such as why the evidence was built, comments about misuse, instructions for clinical use and interpretation, literature references, examples from the paper world, etc. It is not a rendering of the evidence as conveyed in the 'text' field of the resource itself. This item SHOULD be populated unless the information is available from context (e.g. the language of the evidence is presumed to be the predominant language in the place the evidence was created).", "min": 0, "max": "1", "type": [ { "code": "markdown" } ] }, { "id": "Evidence.note", "path": "Evidence.note", "min": 0, "max": "*", "type": [ { "code": "Annotation" } ] }, { "id": "Evidence.copyright", "path": "Evidence.copyright", "min": 0, "max": "1", "type": [ { "code": "markdown" } ] }, { "id": "Evidence.approvalDate", "path": "Evidence.approvalDate", "comment": "The 'date' element may be more recent than the approval date because of minor changes or editorial corrections.", "min": 0, "max": "1", "type": [ { "code": "date" } ] }, { "id": "Evidence.lastReviewDate", "path": "Evidence.lastReviewDate", "comment": "If specified, this date follows the original approval date.", "min": 0, "max": "1", "type": [ { "code": "date" } ] }, { "id": "Evidence.author", "path": "Evidence.author", "min": 0, "max": "*", "type": [ { "code": "ContactDetail" } ] }, { "id": "Evidence.editor", "path": "Evidence.editor", "min": 0, "max": "*", "type": [ { "code": "ContactDetail" } ] }, { "id": "Evidence.reviewer", "path": "Evidence.reviewer", "min": 0, "max": "*", "type": [ { "code": "ContactDetail" } ] }, { "id": "Evidence.relatedArtifact", "path": "Evidence.relatedArtifact", "comment": "Each related artifact is either an attachment, or a reference to another resource, but not both.", "min": 0, "max": "*", "type": [ { "code": "RelatedArtifact" } ] }, { "id": "Evidence.exposureBackground", "path": "Evidence.exposureBackground", "min": 1, "max": "1", "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/EvidenceVariable" ] } ] }, { "id": "Evidence.exposureVariant", "path": "Evidence.exposureVariant", "min": 1, "max": "2", "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/EvidenceVariable" ] } ] }, { "id": "Evidence.outcome", "path": "Evidence.outcome", "min": 1, "max": "*", "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/EvidenceVariable" ] } ] } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/clinicaldocument", "resource": { "resourceType": "StructureDefinition", "id": "clinicaldocument", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 2 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "sd" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/clinicaldocument", "version": "4.0.1", "name": "Clinical Document", "status": "draft", "experimental": false, "date": "2015-03-17", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Composition", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Composition", "derivation": "constraint", "snapshot": { "element": [ { "id": "Composition", "path": "Composition", "comment": "While the focus of this specification is on patient-specific clinical statements, this resource can also apply to other healthcare-related statements such as study protocol designs, healthcare invoices and other activities that are not necessarily patient-specific or clinical.", "min": 0, "max": "*", "base": { "path": "Composition", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.id", "path": "Composition.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Composition.meta", "path": "Composition.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Composition.implicitRules", "path": "Composition.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Composition.language", "path": "Composition.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Composition.text", "path": "Composition.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.contained", "path": "Composition.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.extension", "path": "Composition.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "ordered": false, "rules": "open" }, "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.extension:versionNumber", "path": "Composition.extension", "sliceName": "versionNumber", "comment": "While each resource, including the composition itself, has its own version identifier, this is a formal identifier for the logical version of the composition as a whole. It would remain constant if the resources were moved to a new server, and all got new individual resource versions, for example.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/composition-clinicaldocument-versionNumber" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false }, { "id": "Composition.modifierExtension", "path": "Composition.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Composition.identifier", "path": "Composition.identifier", "comment": "Similar to ClinicalDocument/setId in CDA. See discussion in resource definition for how these relate.", "min": 0, "max": "1", "base": { "path": "Composition.identifier", "min": 0, "max": "1" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Composition.status", "path": "Composition.status", "comment": "If a composition is marked as withdrawn, the compositions/documents in the series, or data from the composition or document series, should never be displayed to a user without being clearly marked as untrustworthy. The flag \"entered-in-error\" is why this element is labeled as a modifier of other elements. \n\nSome reporting work flows require that the original narrative of a final document never be altered; instead, only new narrative can be added. The composition resource has no explicit status for explicitly noting whether this business rule is in effect. This would be handled by an extension if required.", "min": 1, "max": "1", "base": { "path": "Composition.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labelled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "CompositionStatus" } ], "strength": "required", "description": "The workflow/clinical status of the composition.", "valueSet": "http://hl7.org/fhir/ValueSet/composition-status|4.0.1" } }, { "id": "Composition.type", "path": "Composition.type", "comment": "For Composition type, LOINC is ubiquitous and strongly endorsed by HL7. Most implementation guides will require a specific LOINC code, or use LOINC as an extensible binding.", "min": 1, "max": "1", "base": { "path": "Composition.type", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DocumentType" } ], "strength": "preferred", "description": "Type of a composition.", "valueSet": "http://hl7.org/fhir/ValueSet/doc-typecodes" } }, { "id": "Composition.category", "path": "Composition.category", "comment": "This is a metadata field from [XDS/MHD](http://wiki.ihe.net/index.php?title=Mobile_access_to_Health_Documents_(MHD)).", "min": 0, "max": "*", "base": { "path": "Composition.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DocumentCategory" } ], "strength": "example", "description": "High-level kind of a clinical document at a macro level.", "valueSet": "http://hl7.org/fhir/ValueSet/document-classcodes" } }, { "id": "Composition.subject", "path": "Composition.subject", "comment": "For clinical documents, this is usually the patient.", "min": 0, "max": "1", "base": { "path": "Composition.subject", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/Group", "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/Location" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Composition.encounter", "path": "Composition.encounter", "min": 0, "max": "1", "base": { "path": "Composition.encounter", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Encounter" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Composition.date", "path": "Composition.date", "comment": "The Last Modified Date on the composition may be after the date of the document was attested without being changed.", "min": 1, "max": "1", "base": { "path": "Composition.date", "min": 1, "max": "1" }, "type": [ { "code": "dateTime" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Composition.author", "path": "Composition.author", "min": 1, "max": "*", "base": { "path": "Composition.author", "min": 1, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/RelatedPerson", "http://hl7.org/fhir/StructureDefinition/Organization" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Composition.title", "path": "Composition.title", "comment": "For many compositions, the title is the same as the text or a display name of Composition.type (e.g. a \"consultation\" or \"progress note\"). Note that CDA does not make title mandatory, but there are no known cases where it is useful for title to be omitted, so it is mandatory here. Feedback on this requirement is welcome during the trial use period.", "min": 1, "max": "1", "base": { "path": "Composition.title", "min": 1, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Composition.confidentiality", "path": "Composition.confidentiality", "comment": "The exact use of this element, and enforcement and issues related to highly sensitive documents are out of scope for the base specification, and delegated to implementation profiles (see security section). This element is labeled as a modifier because highly confidential documents must not be treated as if they are not.", "min": 0, "max": "1", "base": { "path": "Composition.confidentiality", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DocumentConfidentiality" } ], "strength": "required", "description": "Codes specifying the level of confidentiality of the composition.", "valueSet": "http://terminology.hl7.org/ValueSet/v3-ConfidentialityClassification|2014-03-26" } }, { "id": "Composition.attester", "path": "Composition.attester", "comment": "Only list each attester once.", "min": 0, "max": "*", "base": { "path": "Composition.attester", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.attester.id", "path": "Composition.attester.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.attester.extension", "path": "Composition.attester.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.attester.modifierExtension", "path": "Composition.attester.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Composition.attester.mode", "path": "Composition.attester.mode", "min": 1, "max": "1", "base": { "path": "Composition.attester.mode", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "CompositionAttestationMode" } ], "strength": "required", "description": "The way in which a person authenticated a composition.", "valueSet": "http://hl7.org/fhir/ValueSet/composition-attestation-mode|4.0.1" } }, { "id": "Composition.attester.time", "path": "Composition.attester.time", "min": 0, "max": "1", "base": { "path": "Composition.attester.time", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.attester.party", "path": "Composition.attester.party", "min": 0, "max": "1", "base": { "path": "Composition.attester.party", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/RelatedPerson", "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.custodian", "path": "Composition.custodian", "comment": "This is useful when documents are derived from a composition - provides guidance for how to get the latest version of the document. This is optional because this is sometimes not known by the authoring system, and can be inferred by context. However, it is important that this information be known when working with a derived document, so providing a custodian is encouraged.", "min": 0, "max": "1", "base": { "path": "Composition.custodian", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Organization" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Composition.relatesTo", "path": "Composition.relatesTo", "comment": "A document is a version specific composition.", "min": 0, "max": "*", "base": { "path": "Composition.relatesTo", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.relatesTo.id", "path": "Composition.relatesTo.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.relatesTo.extension", "path": "Composition.relatesTo.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.relatesTo.modifierExtension", "path": "Composition.relatesTo.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Composition.relatesTo.code", "path": "Composition.relatesTo.code", "comment": "If this document appends another document, then the document cannot be fully understood without also accessing the referenced document.", "min": 1, "max": "1", "base": { "path": "Composition.relatesTo.code", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DocumentRelationshipType" } ], "strength": "required", "description": "The type of relationship between documents.", "valueSet": "http://hl7.org/fhir/ValueSet/document-relationship-type|4.0.1" } }, { "id": "Composition.relatesTo.target[x]", "path": "Composition.relatesTo.target[x]", "min": 1, "max": "1", "base": { "path": "Composition.relatesTo.target[x]", "min": 1, "max": "1" }, "type": [ { "code": "Identifier" }, { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Composition" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.event", "path": "Composition.event", "comment": "The event needs to be consistent with the type element, though can provide further information if desired.", "min": 0, "max": "*", "base": { "path": "Composition.event", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Composition.event.id", "path": "Composition.event.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.event.extension", "path": "Composition.event.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.event.modifierExtension", "path": "Composition.event.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Composition.event.code", "path": "Composition.event.code", "comment": "An event can further specialize the act inherent in the typeCode, such as where it is simply \"Procedure Report\" and the procedure was a \"colonoscopy\". If one or more eventCodes are included, they SHALL NOT conflict with the values inherent in the classCode, practiceSettingCode or typeCode, as such a conflict would create an ambiguous situation. This short list of codes is provided to be used as key words for certain types of queries.", "min": 0, "max": "*", "base": { "path": "Composition.event.code", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DocumentEventType" } ], "strength": "example", "description": "This list of codes represents the main clinical acts being documented.", "valueSet": "http://terminology.hl7.org/ValueSet/v3-ActCode" } }, { "id": "Composition.event.period", "path": "Composition.event.period", "min": 0, "max": "1", "base": { "path": "Composition.event.period", "min": 0, "max": "1" }, "type": [ { "code": "Period" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Composition.event.detail", "path": "Composition.event.detail", "min": 0, "max": "*", "base": { "path": "Composition.event.detail", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Composition.section", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-explicit-type-name", "valueString": "Section" } ], "path": "Composition.section", "min": 0, "max": "*", "base": { "path": "Composition.section", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "cmp-1", "severity": "error", "human": "A section must contain at least one of text, entries, or sub-sections", "expression": "text.exists() or entry.exists() or section.exists()", "xpath": "exists(f:text) or exists(f:entry) or exists(f:section)" }, { "key": "cmp-2", "severity": "error", "human": "A section can only have an emptyReason if it is empty", "expression": "emptyReason.empty() or entry.empty()", "xpath": "not(exists(f:emptyReason) and exists(f:entry))" }, { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.section.id", "path": "Composition.section.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.section.extension", "path": "Composition.section.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.section.modifierExtension", "path": "Composition.section.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Composition.section.title", "path": "Composition.section.title", "comment": "The title identifies the section for a human reader. The title must be consistent with the narrative of the resource that is the target of the section.content reference. Generally, sections SHOULD have titles, but in some documents, it is unnecessary or inappropriate. Typically, this is where a section has subsections that have their own adequately distinguishing title, or documents that only have a single section. Most Implementation Guides will make section title to be a required element.", "min": 0, "max": "1", "base": { "path": "Composition.section.title", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.section.code", "path": "Composition.section.code", "comment": "The code identifies the section for an automated processor of the document. This is particularly relevant when using profiles to control the structure of the document. \n\nIf the section has content (instead of sub-sections), the section.code does not change the meaning or interpretation of the resource that is the content of the section in the comments for the section.code.", "min": 0, "max": "1", "base": { "path": "Composition.section.code", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "CompositionSectionType" } ], "strength": "example", "description": "Classification of a section of a composition/document.", "valueSet": "http://hl7.org/fhir/ValueSet/doc-section-codes" } }, { "id": "Composition.section.author", "path": "Composition.section.author", "min": 0, "max": "*", "base": { "path": "Composition.section.author", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/RelatedPerson", "http://hl7.org/fhir/StructureDefinition/Organization" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.section.focus", "path": "Composition.section.focus", "comment": "Typically, sections in a doument are about the subject of the document, whether that is a patient, or group of patients, location, or device, or whatever. For some kind of documents, some sections actually contain data about related entities. Typical examples are a section in a newborn discharge summary concerning the mother, or family history documents, with a section about each family member, though there are many other examples.", "min": 0, "max": "1", "base": { "path": "Composition.section.focus", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.section.text", "path": "Composition.section.text", "comment": "Document profiles may define what content should be represented in the narrative to ensure clinical safety.", "min": 0, "max": "1", "base": { "path": "Composition.section.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "condition": [ "cmp-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.section.mode", "path": "Composition.section.mode", "comment": "This element is labeled as a modifier because a change list must not be misunderstood as a complete list.", "min": 0, "max": "1", "base": { "path": "Composition.section.mode", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "SectionMode" } ], "strength": "required", "description": "The processing mode that applies to this section.", "valueSet": "http://hl7.org/fhir/ValueSet/list-mode|4.0.1" } }, { "id": "Composition.section.orderedBy", "path": "Composition.section.orderedBy", "comment": "Applications SHOULD render ordered lists in the order provided, but MAY allow users to re-order based on their own preferences as well. If there is no order specified, the order is unknown, though there may still be some order.", "min": 0, "max": "1", "base": { "path": "Composition.section.orderedBy", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "SectionEntryOrder" } ], "strength": "preferred", "description": "What order applies to the items in the entry.", "valueSet": "http://hl7.org/fhir/ValueSet/list-order" } }, { "id": "Composition.section.entry", "path": "Composition.section.entry", "comment": "If there are no entries in the list, an emptyReason SHOULD be provided.", "min": 0, "max": "*", "base": { "path": "Composition.section.entry", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "condition": [ "cmp-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.section.emptyReason", "path": "Composition.section.emptyReason", "comment": "The various reasons for an empty section make a significant interpretation to its interpretation. Note that this code is for use when the entire section content has been suppressed, and not for when individual items are omitted - implementers may consider using a text note or a flag on an entry in these cases.", "min": 0, "max": "1", "base": { "path": "Composition.section.emptyReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "cmp-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "SectionEmptyReason" } ], "strength": "preferred", "description": "If a section is empty, why it is empty.", "valueSet": "http://hl7.org/fhir/ValueSet/list-empty-reason" } }, { "id": "Composition.section.section", "path": "Composition.section.section", "comment": "Nested sections are primarily used to help human readers navigate to particular portions of the document.", "min": 0, "max": "*", "base": { "path": "Composition.section.section", "min": 0, "max": "*" }, "contentReference": "#Composition.section", "condition": [ "cmp-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "Composition", "path": "Composition", "min": 0, "max": "*" }, { "id": "Composition.extension:versionNumber", "path": "Composition.extension", "sliceName": "versionNumber", "comment": "While each resource, including the composition itself, has its own version identifier, this is a formal identifier for the logical version of the composition as a whole. It would remain constant if the resources were moved to a new server, and all got new individual resource versions, for example.", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/composition-clinicaldocument-versionNumber" ] } ] }, { "id": "Composition.subject", "path": "Composition.subject", "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/Group", "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/Location" ] } ] } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/catalog", "resource": { "resourceType": "StructureDefinition", "id": "catalog", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 2 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "sd" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/catalog", "version": "4.0.1", "name": "Profile for Catalog", "status": "draft", "experimental": false, "date": "2014-01-31", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Composition", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Composition", "derivation": "constraint", "snapshot": { "element": [ { "id": "Composition", "path": "Composition", "comment": "While the focus of this specification is on patient-specific clinical statements, this resource can also apply to other healthcare-related statements such as study protocol designs, healthcare invoices and other activities that are not necessarily patient-specific or clinical.", "min": 0, "max": "*", "base": { "path": "Composition", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.id", "path": "Composition.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Composition.meta", "path": "Composition.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Composition.implicitRules", "path": "Composition.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Composition.language", "path": "Composition.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Composition.text", "path": "Composition.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.contained", "path": "Composition.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.extension", "path": "Composition.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "ordered": false, "rules": "open" }, "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.extension:ValidityPeriod", "path": "Composition.extension", "sliceName": "ValidityPeriod", "min": 1, "max": "1", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/cqm-ValidityPeriod" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false }, { "id": "Composition.modifierExtension", "path": "Composition.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Composition.identifier", "path": "Composition.identifier", "comment": "Similar to ClinicalDocument/setId in CDA. See discussion in resource definition for how these relate.", "min": 0, "max": "1", "base": { "path": "Composition.identifier", "min": 0, "max": "1" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Composition.status", "path": "Composition.status", "comment": "If a composition is marked as withdrawn, the compositions/documents in the series, or data from the composition or document series, should never be displayed to a user without being clearly marked as untrustworthy. The flag \"entered-in-error\" is why this element is labeled as a modifier of other elements. \n\nSome reporting work flows require that the original narrative of a final document never be altered; instead, only new narrative can be added. The composition resource has no explicit status for explicitly noting whether this business rule is in effect. This would be handled by an extension if required.", "min": 1, "max": "1", "base": { "path": "Composition.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labelled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "CompositionStatus" } ], "strength": "required", "description": "The workflow/clinical status of the composition.", "valueSet": "http://hl7.org/fhir/ValueSet/composition-status|4.0.1" } }, { "id": "Composition.type", "path": "Composition.type", "comment": "For Composition type, LOINC is ubiquitous and strongly endorsed by HL7. Most implementation guides will require a specific LOINC code, or use LOINC as an extensible binding.", "min": 1, "max": "1", "base": { "path": "Composition.type", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "fixedCodeableConcept": { "text": "Catalog" }, "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DocumentType" } ], "strength": "preferred", "description": "Type of a composition.", "valueSet": "http://hl7.org/fhir/ValueSet/doc-typecodes" } }, { "id": "Composition.category", "path": "Composition.category", "comment": "This is a metadata field from [XDS/MHD](http://wiki.ihe.net/index.php?title=Mobile_access_to_Health_Documents_(MHD)).", "min": 1, "max": "1", "base": { "path": "Composition.category", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "CatalogType" } ], "strength": "example", "description": "The type of catalog.", "valueSet": "http://hl7.org/fhir/ValueSet/catalogType" } }, { "id": "Composition.subject", "path": "Composition.subject", "comment": "For clinical documents, this is usually the patient.", "min": 0, "max": "0", "base": { "path": "Composition.subject", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Composition.encounter", "path": "Composition.encounter", "min": 0, "max": "1", "base": { "path": "Composition.encounter", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Encounter" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Composition.date:IssueDate", "path": "Composition.date", "sliceName": "IssueDate", "comment": "The Last Modified Date on the composition may be after the date of the document was attested without being changed.", "min": 1, "max": "1", "base": { "path": "Composition.date", "min": 1, "max": "1" }, "type": [ { "code": "dateTime" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Composition.author", "path": "Composition.author", "min": 1, "max": "*", "base": { "path": "Composition.author", "min": 1, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/RelatedPerson", "http://hl7.org/fhir/StructureDefinition/Organization" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Composition.title", "path": "Composition.title", "comment": "For many compositions, the title is the same as the text or a display name of Composition.type (e.g. a \"consultation\" or \"progress note\"). Note that CDA does not make title mandatory, but there are no known cases where it is useful for title to be omitted, so it is mandatory here. Feedback on this requirement is welcome during the trial use period.", "min": 1, "max": "1", "base": { "path": "Composition.title", "min": 1, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Composition.confidentiality", "path": "Composition.confidentiality", "comment": "The exact use of this element, and enforcement and issues related to highly sensitive documents are out of scope for the base specification, and delegated to implementation profiles (see security section). This element is labeled as a modifier because highly confidential documents must not be treated as if they are not.", "min": 0, "max": "1", "base": { "path": "Composition.confidentiality", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DocumentConfidentiality" } ], "strength": "required", "description": "Codes specifying the level of confidentiality of the composition.", "valueSet": "http://terminology.hl7.org/ValueSet/v3-ConfidentialityClassification|2014-03-26" } }, { "id": "Composition.attester", "path": "Composition.attester", "comment": "Only list each attester once.", "min": 0, "max": "*", "base": { "path": "Composition.attester", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.attester.id", "path": "Composition.attester.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.attester.extension", "path": "Composition.attester.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.attester.modifierExtension", "path": "Composition.attester.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Composition.attester.mode", "path": "Composition.attester.mode", "min": 1, "max": "1", "base": { "path": "Composition.attester.mode", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "CompositionAttestationMode" } ], "strength": "required", "description": "The way in which a person authenticated a composition.", "valueSet": "http://hl7.org/fhir/ValueSet/composition-attestation-mode|4.0.1" } }, { "id": "Composition.attester.time", "path": "Composition.attester.time", "min": 0, "max": "1", "base": { "path": "Composition.attester.time", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.attester.party", "path": "Composition.attester.party", "min": 0, "max": "1", "base": { "path": "Composition.attester.party", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/RelatedPerson", "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Organization" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.custodian", "path": "Composition.custodian", "comment": "This is useful when documents are derived from a composition - provides guidance for how to get the latest version of the document. This is optional because this is sometimes not known by the authoring system, and can be inferred by context. However, it is important that this information be known when working with a derived document, so providing a custodian is encouraged.", "min": 0, "max": "1", "base": { "path": "Composition.custodian", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Organization" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Composition.relatesTo", "path": "Composition.relatesTo", "comment": "A document is a version specific composition.", "min": 0, "max": "*", "base": { "path": "Composition.relatesTo", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.relatesTo.id", "path": "Composition.relatesTo.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.relatesTo.extension", "path": "Composition.relatesTo.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.relatesTo.modifierExtension", "path": "Composition.relatesTo.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Composition.relatesTo.code", "path": "Composition.relatesTo.code", "comment": "If this document appends another document, then the document cannot be fully understood without also accessing the referenced document.", "min": 1, "max": "1", "base": { "path": "Composition.relatesTo.code", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DocumentRelationshipType" } ], "strength": "required", "description": "The type of relationship between documents.", "valueSet": "http://hl7.org/fhir/ValueSet/document-relationship-type|4.0.1" } }, { "id": "Composition.relatesTo.target[x]", "path": "Composition.relatesTo.target[x]", "min": 1, "max": "1", "base": { "path": "Composition.relatesTo.target[x]", "min": 1, "max": "1" }, "type": [ { "code": "Identifier" }, { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Composition" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.event", "path": "Composition.event", "comment": "The event needs to be consistent with the type element, though can provide further information if desired.", "min": 0, "max": "*", "base": { "path": "Composition.event", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Composition.event.id", "path": "Composition.event.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.event.extension", "path": "Composition.event.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.event.modifierExtension", "path": "Composition.event.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Composition.event.code", "path": "Composition.event.code", "comment": "An event can further specialize the act inherent in the typeCode, such as where it is simply \"Procedure Report\" and the procedure was a \"colonoscopy\". If one or more eventCodes are included, they SHALL NOT conflict with the values inherent in the classCode, practiceSettingCode or typeCode, as such a conflict would create an ambiguous situation. This short list of codes is provided to be used as key words for certain types of queries.", "min": 0, "max": "*", "base": { "path": "Composition.event.code", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DocumentEventType" } ], "strength": "example", "description": "This list of codes represents the main clinical acts being documented.", "valueSet": "http://terminology.hl7.org/ValueSet/v3-ActCode" } }, { "id": "Composition.event.period", "path": "Composition.event.period", "min": 0, "max": "1", "base": { "path": "Composition.event.period", "min": 0, "max": "1" }, "type": [ { "code": "Period" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Composition.event.detail", "path": "Composition.event.detail", "min": 0, "max": "*", "base": { "path": "Composition.event.detail", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Composition.section", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-explicit-type-name", "valueString": "Section" } ], "path": "Composition.section", "min": 0, "max": "*", "base": { "path": "Composition.section", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "cmp-1", "severity": "error", "human": "A section must contain at least one of text, entries, or sub-sections", "expression": "text.exists() or entry.exists() or section.exists()", "xpath": "exists(f:text) or exists(f:entry) or exists(f:section)", "source": "http://hl7.org/fhir/StructureDefinition/Composition" }, { "key": "cmp-2", "severity": "error", "human": "A section can only have an emptyReason if it is empty", "expression": "emptyReason.empty() or entry.empty()", "xpath": "not(exists(f:emptyReason) and exists(f:entry))", "source": "http://hl7.org/fhir/StructureDefinition/Composition" }, { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.section.id", "path": "Composition.section.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.section.extension", "path": "Composition.section.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.section.modifierExtension", "path": "Composition.section.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Composition.section.title", "path": "Composition.section.title", "comment": "The title identifies the section for a human reader. The title must be consistent with the narrative of the resource that is the target of the section.content reference. Generally, sections SHOULD have titles, but in some documents, it is unnecessary or inappropriate. Typically, this is where a section has subsections that have their own adequately distinguishing title, or documents that only have a single section. Most Implementation Guides will make section title to be a required element.", "min": 0, "max": "1", "base": { "path": "Composition.section.title", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.section.code", "path": "Composition.section.code", "comment": "The code identifies the section for an automated processor of the document. This is particularly relevant when using profiles to control the structure of the document. \n\nIf the section has content (instead of sub-sections), the section.code does not change the meaning or interpretation of the resource that is the content of the section in the comments for the section.code.", "min": 0, "max": "1", "base": { "path": "Composition.section.code", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "CompositionSectionType" } ], "strength": "example", "description": "Classification of a section of a composition/document.", "valueSet": "http://hl7.org/fhir/ValueSet/doc-section-codes" } }, { "id": "Composition.section.author", "path": "Composition.section.author", "min": 0, "max": "*", "base": { "path": "Composition.section.author", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/RelatedPerson", "http://hl7.org/fhir/StructureDefinition/Organization" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.section.focus", "path": "Composition.section.focus", "comment": "Typically, sections in a doument are about the subject of the document, whether that is a patient, or group of patients, location, or device, or whatever. For some kind of documents, some sections actually contain data about related entities. Typical examples are a section in a newborn discharge summary concerning the mother, or family history documents, with a section about each family member, though there are many other examples.", "min": 0, "max": "1", "base": { "path": "Composition.section.focus", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.section.text", "path": "Composition.section.text", "comment": "Document profiles may define what content should be represented in the narrative to ensure clinical safety.", "min": 0, "max": "1", "base": { "path": "Composition.section.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "condition": [ "cmp-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.section.mode", "path": "Composition.section.mode", "comment": "This element is labeled as a modifier because a change list must not be misunderstood as a complete list.", "min": 0, "max": "1", "base": { "path": "Composition.section.mode", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "SectionMode" } ], "strength": "required", "description": "The processing mode that applies to this section.", "valueSet": "http://hl7.org/fhir/ValueSet/list-mode|4.0.1" } }, { "id": "Composition.section.orderedBy", "path": "Composition.section.orderedBy", "comment": "Applications SHOULD render ordered lists in the order provided, but MAY allow users to re-order based on their own preferences as well. If there is no order specified, the order is unknown, though there may still be some order.", "min": 0, "max": "1", "base": { "path": "Composition.section.orderedBy", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "SectionEntryOrder" } ], "strength": "preferred", "description": "What order applies to the items in the entry.", "valueSet": "http://hl7.org/fhir/ValueSet/list-order" } }, { "id": "Composition.section.entry", "path": "Composition.section.entry", "comment": "If there are no entries in the list, an emptyReason SHOULD be provided.", "min": 1, "max": "*", "base": { "path": "Composition.section.entry", "min": 0, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/CatalogEntry" ] } ], "condition": [ "cmp-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Composition.section.emptyReason", "path": "Composition.section.emptyReason", "comment": "The various reasons for an empty section make a significant interpretation to its interpretation. Note that this code is for use when the entire section content has been suppressed, and not for when individual items are omitted - implementers may consider using a text note or a flag on an entry in these cases.", "min": 0, "max": "1", "base": { "path": "Composition.section.emptyReason", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "condition": [ "cmp-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "SectionEmptyReason" } ], "strength": "preferred", "description": "If a section is empty, why it is empty.", "valueSet": "http://hl7.org/fhir/ValueSet/list-empty-reason" } }, { "id": "Composition.section.section", "path": "Composition.section.section", "comment": "Nested sections are primarily used to help human readers navigate to particular portions of the document.", "min": 0, "max": "*", "base": { "path": "Composition.section.section", "min": 0, "max": "*" }, "contentReference": "#Composition.section", "condition": [ "cmp-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "Composition", "path": "Composition", "min": 0, "max": "*" }, { "id": "Composition.extension:ValidityPeriod", "path": "Composition.extension", "sliceName": "ValidityPeriod", "min": 1, "max": "1", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/cqm-ValidityPeriod" ] } ] }, { "id": "Composition.type", "path": "Composition.type", "min": 1, "max": "1", "type": [ { "code": "CodeableConcept" } ], "fixedCodeableConcept": { "text": "Catalog" } }, { "id": "Composition.category", "path": "Composition.category", "min": 1, "max": "1", "type": [ { "code": "CodeableConcept" } ], "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "CatalogType" } ], "strength": "example", "description": "The type of catalog.", "valueSet": "http://hl7.org/fhir/ValueSet/catalogType" } }, { "id": "Composition.subject", "path": "Composition.subject", "min": 0, "max": "0", "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ] }, { "id": "Composition.date:IssueDate", "path": "Composition.date", "sliceName": "IssueDate", "min": 1, "max": "1", "type": [ { "code": "dateTime" } ] }, { "id": "Composition.section", "path": "Composition.section", "min": 0, "max": "*" }, { "id": "Composition.section.entry", "path": "Composition.section.entry", "min": 1, "max": "*", "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/CatalogEntry" ] } ] } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/shareableplandefinition", "resource": { "resourceType": "StructureDefinition", "id": "shareableplandefinition", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 2 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "cds" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/shareableplandefinition", "version": "4.0.1", "name": "Shareable PlanDefinition", "status": "draft", "experimental": false, "date": "2019-11-01T09:29:23+11:00", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "PlanDefinition", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/PlanDefinition", "derivation": "constraint", "snapshot": { "element": [ { "id": "PlanDefinition", "path": "PlanDefinition", "min": 1, "max": "1", "base": { "path": "PlanDefinition", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "pdf-0", "severity": "warning", "human": "Name should be usable as an identifier for the module by machine processing applications such as code generation", "expression": "name.matches('[A-Z]([A-Za-z0-9_]){0,254}')", "xpath": "not(exists(f:name/@value)) or matches(f:name/@value, '[A-Z]([A-Za-z0-9_]){0,254}')", "source": "http://hl7.org/fhir/StructureDefinition/PlanDefinition" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.id", "path": "PlanDefinition.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.meta", "path": "PlanDefinition.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.implicitRules", "path": "PlanDefinition.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "PlanDefinition.language", "path": "PlanDefinition.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "PlanDefinition.text", "path": "PlanDefinition.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.contained", "path": "PlanDefinition.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.extension", "path": "PlanDefinition.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.modifierExtension", "path": "PlanDefinition.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "PlanDefinition.url", "path": "PlanDefinition.url", "comment": "Can be a urn:uuid: or a urn:oid: but real http: addresses are preferred. Multiple instances may share the same URL if they have a distinct version.\n\nThe determination of when to create a new version of a resource (same url, new version) vs. defining a new artifact is up to the author. Considerations for making this decision are found in [Technical and Business Versions](http://hl7.org/fhir/resource.html#versions). \n\nIn some cases, the resource can no longer be found at the stated url, but the url itself cannot change. Implementations can use the [meta.source](http://hl7.org/fhir/resource.html#meta) element to indicate where the current master source of the resource can be found.", "min": 1, "max": "1", "base": { "path": "PlanDefinition.url", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.identifier", "path": "PlanDefinition.identifier", "comment": "Typically, this is used for identifiers that can go in an HL7 V3 II (instance identifier) data type, and can then identify this plan definition outside of FHIR, where it is not possible to use the logical URI.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.version", "path": "PlanDefinition.version", "comment": "There may be different plan definition instances that have the same identifier but different versions. The version can be appended to the url in a reference to allow a reference to a particular business version of the plan definition with the format [url]|[version].", "min": 1, "max": "1", "base": { "path": "PlanDefinition.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.name", "path": "PlanDefinition.name", "comment": "The name is not expected to be globally unique. The name should be a simple alphanumeric type name to ensure that it is machine-processing friendly.", "min": 1, "max": "1", "base": { "path": "PlanDefinition.name", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "condition": [ "inv-0" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.title", "path": "PlanDefinition.title", "comment": "This name does not need to be machine-processing friendly and may contain punctuation, white-space, etc.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.title", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.subtitle", "path": "PlanDefinition.subtitle", "min": 0, "max": "1", "base": { "path": "PlanDefinition.subtitle", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.type", "path": "PlanDefinition.type", "min": 0, "max": "1", "base": { "path": "PlanDefinition.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "PlanDefinitionType" } ], "strength": "extensible", "description": "The type of PlanDefinition.", "valueSet": "http://hl7.org/fhir/ValueSet/plan-definition-type" } }, { "id": "PlanDefinition.status", "path": "PlanDefinition.status", "comment": "Allows filtering of plan definitions that are appropriate for use versus not.", "min": 1, "max": "1", "base": { "path": "PlanDefinition.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This is labeled as \"Is Modifier\" because applications should not use a retired {{title}} without due consideration", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "PublicationStatus" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "required", "description": "The lifecycle status of an artifact.", "valueSet": "http://hl7.org/fhir/ValueSet/publication-status|4.0.1" } }, { "id": "PlanDefinition.experimental", "path": "PlanDefinition.experimental", "comment": "Allows filtering of plan definitions that are appropriate for use versus not.", "min": 1, "max": "1", "base": { "path": "PlanDefinition.experimental", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.subject[x]", "path": "PlanDefinition.subject[x]", "min": 0, "max": "1", "base": { "path": "PlanDefinition.subject[x]", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" }, { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Group" ] } ], "meaningWhenMissing": "Patient", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "SubjectType" } ], "strength": "extensible", "description": "The possible types of subjects for a plan definition (E.g. Patient, Practitioner, Organization, Location, etc.).", "valueSet": "http://hl7.org/fhir/ValueSet/subject-type" } }, { "id": "PlanDefinition.date", "path": "PlanDefinition.date", "comment": "Note that this is not the same as the resource last-modified-date, since the resource may be a secondary representation of the plan definition. Additional specific dates may be added as extensions or be found by consulting Provenances associated with past versions of the resource.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.date", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.publisher", "path": "PlanDefinition.publisher", "comment": "Usually an organization but may be an individual. The publisher (or steward) of the plan definition is the organization or individual primarily responsible for the maintenance and upkeep of the plan definition. This is not necessarily the same individual or organization that developed and initially authored the content. The publisher is the primary point of contact for questions or issues with the plan definition. This item SHOULD be populated unless the information is available from context.", "min": 1, "max": "1", "base": { "path": "PlanDefinition.publisher", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.contact", "path": "PlanDefinition.contact", "comment": "May be a web site, an email address, a telephone number, etc.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.contact", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.description", "path": "PlanDefinition.description", "comment": "This description can be used to capture details such as why the plan definition was built, comments about misuse, instructions for clinical use and interpretation, literature references, examples from the paper world, etc. It is not a rendering of the plan definition as conveyed in the 'text' field of the resource itself. This item SHOULD be populated unless the information is available from context (e.g. the language of the plan definition is presumed to be the predominant language in the place the plan definition was created).", "min": 1, "max": "1", "base": { "path": "PlanDefinition.description", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.useContext", "path": "PlanDefinition.useContext", "comment": "When multiple useContexts are specified, there is no expectation that all or any of the contexts apply.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.useContext", "min": 0, "max": "*" }, "type": [ { "code": "UsageContext" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.jurisdiction", "path": "PlanDefinition.jurisdiction", "comment": "It may be possible for the plan definition to be used in jurisdictions other than those for which it was originally designed or intended.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.jurisdiction", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Jurisdiction" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "extensible", "description": "Countries and regions within which this artifact is targeted for use.", "valueSet": "http://hl7.org/fhir/ValueSet/jurisdiction" } }, { "id": "PlanDefinition.purpose", "path": "PlanDefinition.purpose", "comment": "This element does not describe the usage of the plan definition. Instead, it provides traceability of ''why'' the resource is either needed or ''why'' it is defined as it is. This may be used to point to source materials or specifications that drove the structure of this plan definition.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.purpose", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.usage", "path": "PlanDefinition.usage", "min": 0, "max": "1", "base": { "path": "PlanDefinition.usage", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.copyright", "path": "PlanDefinition.copyright", "min": 0, "max": "1", "base": { "path": "PlanDefinition.copyright", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.approvalDate", "path": "PlanDefinition.approvalDate", "comment": "The 'date' element may be more recent than the approval date because of minor changes or editorial corrections.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.approvalDate", "min": 0, "max": "1" }, "type": [ { "code": "date" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.lastReviewDate", "path": "PlanDefinition.lastReviewDate", "comment": "If specified, this date follows the original approval date.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.lastReviewDate", "min": 0, "max": "1" }, "type": [ { "code": "date" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.effectivePeriod", "path": "PlanDefinition.effectivePeriod", "comment": "The effective period for a plan definition determines when the content is applicable for usage and is independent of publication and review dates. For example, a measure intended to be used for the year 2016 might be published in 2015.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.effectivePeriod", "min": 0, "max": "1" }, "type": [ { "code": "Period" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.topic", "path": "PlanDefinition.topic", "min": 0, "max": "*", "base": { "path": "PlanDefinition.topic", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DefinitionTopic" } ], "strength": "example", "description": "High-level categorization of the definition, used for searching, sorting, and filtering.", "valueSet": "http://hl7.org/fhir/ValueSet/definition-topic" } }, { "id": "PlanDefinition.author", "path": "PlanDefinition.author", "min": 0, "max": "*", "base": { "path": "PlanDefinition.author", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.editor", "path": "PlanDefinition.editor", "min": 0, "max": "*", "base": { "path": "PlanDefinition.editor", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.reviewer", "path": "PlanDefinition.reviewer", "min": 0, "max": "*", "base": { "path": "PlanDefinition.reviewer", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.endorser", "path": "PlanDefinition.endorser", "min": 0, "max": "*", "base": { "path": "PlanDefinition.endorser", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.relatedArtifact", "path": "PlanDefinition.relatedArtifact", "comment": "Each related artifact is either an attachment, or a reference to another resource, but not both.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.relatedArtifact", "min": 0, "max": "*" }, "type": [ { "code": "RelatedArtifact" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.library", "path": "PlanDefinition.library", "min": 0, "max": "*", "base": { "path": "PlanDefinition.library", "min": 0, "max": "*" }, "type": [ { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Library" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal", "path": "PlanDefinition.goal", "min": 0, "max": "*", "base": { "path": "PlanDefinition.goal", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal.id", "path": "PlanDefinition.goal.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal.extension", "path": "PlanDefinition.goal.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal.modifierExtension", "path": "PlanDefinition.goal.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "PlanDefinition.goal.category", "path": "PlanDefinition.goal.category", "min": 0, "max": "1", "base": { "path": "PlanDefinition.goal.category", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GoalCategory" } ], "strength": "example", "description": "Example codes for grouping goals for filtering or presentation.", "valueSet": "http://hl7.org/fhir/ValueSet/goal-category" } }, { "id": "PlanDefinition.goal.description", "path": "PlanDefinition.goal.description", "comment": "If no code is available, use CodeableConcept.text.", "min": 1, "max": "1", "base": { "path": "PlanDefinition.goal.description", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GoalDescription" } ], "strength": "example", "description": "Describes goals that can be achieved.", "valueSet": "http://hl7.org/fhir/ValueSet/clinical-findings" } }, { "id": "PlanDefinition.goal.priority", "path": "PlanDefinition.goal.priority", "min": 0, "max": "1", "base": { "path": "PlanDefinition.goal.priority", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GoalPriority" } ], "strength": "preferred", "description": "Indicates the level of importance associated with reaching or sustaining a goal.", "valueSet": "http://hl7.org/fhir/ValueSet/goal-priority" } }, { "id": "PlanDefinition.goal.start", "path": "PlanDefinition.goal.start", "min": 0, "max": "1", "base": { "path": "PlanDefinition.goal.start", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GoalStartEvent" } ], "strength": "example", "description": "Identifies the types of events that might trigger the start of a goal.", "valueSet": "http://hl7.org/fhir/ValueSet/goal-start-event" } }, { "id": "PlanDefinition.goal.addresses", "path": "PlanDefinition.goal.addresses", "min": 0, "max": "*", "base": { "path": "PlanDefinition.goal.addresses", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GoalAddresses" } ], "strength": "example", "description": "Identifies problems, conditions, issues, or concerns that goals may address.", "valueSet": "http://hl7.org/fhir/ValueSet/condition-code" } }, { "id": "PlanDefinition.goal.documentation", "path": "PlanDefinition.goal.documentation", "min": 0, "max": "*", "base": { "path": "PlanDefinition.goal.documentation", "min": 0, "max": "*" }, "type": [ { "code": "RelatedArtifact" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal.target", "path": "PlanDefinition.goal.target", "min": 0, "max": "*", "base": { "path": "PlanDefinition.goal.target", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal.target.id", "path": "PlanDefinition.goal.target.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal.target.extension", "path": "PlanDefinition.goal.target.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal.target.modifierExtension", "path": "PlanDefinition.goal.target.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "PlanDefinition.goal.target.measure", "path": "PlanDefinition.goal.target.measure", "min": 0, "max": "1", "base": { "path": "PlanDefinition.goal.target.measure", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GoalTargetMeasure" } ], "strength": "example", "description": "Identifies types of parameters that can be tracked to determine goal achievement.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-codes" } }, { "id": "PlanDefinition.goal.target.detail[x]", "path": "PlanDefinition.goal.target.detail[x]", "min": 0, "max": "1", "base": { "path": "PlanDefinition.goal.target.detail[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" }, { "code": "Range" }, { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal.target.due", "path": "PlanDefinition.goal.target.due", "min": 0, "max": "1", "base": { "path": "PlanDefinition.goal.target.due", "min": 0, "max": "1" }, "type": [ { "code": "Duration" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action", "path": "PlanDefinition.action", "comment": "Note that there is overlap between many of the elements defined here and the ActivityDefinition resource. When an ActivityDefinition is referenced (using the definition element), the overlapping elements in the plan override the content of the referenced ActivityDefinition unless otherwise documented in the specific elements. See the PlanDefinition resource for more detailed information.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.id", "path": "PlanDefinition.action.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.extension", "path": "PlanDefinition.action.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.modifierExtension", "path": "PlanDefinition.action.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "PlanDefinition.action.prefix", "path": "PlanDefinition.action.prefix", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.prefix", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.title", "path": "PlanDefinition.action.title", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.title", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.description", "path": "PlanDefinition.action.description", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.description", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.textEquivalent", "path": "PlanDefinition.action.textEquivalent", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.textEquivalent", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.priority", "path": "PlanDefinition.action.priority", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.priority", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "RequestPriority" } ], "strength": "required", "description": "Identifies the level of importance to be assigned to actioning the request.", "valueSet": "http://hl7.org/fhir/ValueSet/request-priority|4.0.1" } }, { "id": "PlanDefinition.action.code", "path": "PlanDefinition.action.code", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.code", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.reason", "path": "PlanDefinition.action.reason", "comment": "This is different than the clinical evidence documentation, it's an actual business description of the reason for performing the action.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.reason", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.documentation", "path": "PlanDefinition.action.documentation", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.documentation", "min": 0, "max": "*" }, "type": [ { "code": "RelatedArtifact" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.goalId", "path": "PlanDefinition.action.goalId", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.goalId", "min": 0, "max": "*" }, "type": [ { "code": "id" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.subject[x]", "path": "PlanDefinition.action.subject[x]", "comment": "The subject of an action overrides the subject at a parent action or on the root of the PlanDefinition if specified.\n\nIn addition, because the subject needs to be resolved during realization, use of subjects in actions (or in the ActivityDefinition referenced by the action) resolves based on the set of subjects supplied in context and by type (i.e. the patient subject would resolve to a resource of type Patient).", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.subject[x]", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" }, { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Group" ] } ], "meaningWhenMissing": "Patient", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "SubjectType" } ], "strength": "extensible", "description": "The possible types of subjects for a plan definition (E.g. Patient, Practitioner, Organization, Location, etc.).", "valueSet": "http://hl7.org/fhir/ValueSet/subject-type" } }, { "id": "PlanDefinition.action.trigger", "path": "PlanDefinition.action.trigger", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.trigger", "min": 0, "max": "*" }, "type": [ { "code": "TriggerDefinition" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.condition", "path": "PlanDefinition.action.condition", "comment": "When multiple conditions of the same kind are present, the effects are combined using AND semantics, so the overall condition is true only if all the conditions are true.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.condition", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.condition.id", "path": "PlanDefinition.action.condition.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.condition.extension", "path": "PlanDefinition.action.condition.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.condition.modifierExtension", "path": "PlanDefinition.action.condition.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "PlanDefinition.action.condition.kind", "path": "PlanDefinition.action.condition.kind", "comment": "Applicability criteria are used to determine immediate applicability when a plan definition is applied to a given context. Start and stop criteria are carried through application and used to describe enter/exit criteria for an action.", "min": 1, "max": "1", "base": { "path": "PlanDefinition.action.condition.kind", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionConditionKind" } ], "strength": "required", "description": "Defines the kinds of conditions that can appear on actions.", "valueSet": "http://hl7.org/fhir/ValueSet/action-condition-kind|4.0.1" } }, { "id": "PlanDefinition.action.condition.expression", "path": "PlanDefinition.action.condition.expression", "comment": "The expression may be inlined or may be a reference to a named expression within a logic library referenced by the library element.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.condition.expression", "min": 0, "max": "1" }, "type": [ { "code": "Expression" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.input", "path": "PlanDefinition.action.input", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.input", "min": 0, "max": "*" }, "type": [ { "code": "DataRequirement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.output", "path": "PlanDefinition.action.output", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.output", "min": 0, "max": "*" }, "type": [ { "code": "DataRequirement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.relatedAction", "path": "PlanDefinition.action.relatedAction", "comment": "When an action depends on multiple actions, the meaning is that all actions are dependencies, rather than that any of the actions are a dependency.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.relatedAction", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.relatedAction.id", "path": "PlanDefinition.action.relatedAction.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.relatedAction.extension", "path": "PlanDefinition.action.relatedAction.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.relatedAction.modifierExtension", "path": "PlanDefinition.action.relatedAction.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "PlanDefinition.action.relatedAction.actionId", "path": "PlanDefinition.action.relatedAction.actionId", "min": 1, "max": "1", "base": { "path": "PlanDefinition.action.relatedAction.actionId", "min": 1, "max": "1" }, "type": [ { "code": "id" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.relatedAction.relationship", "path": "PlanDefinition.action.relatedAction.relationship", "min": 1, "max": "1", "base": { "path": "PlanDefinition.action.relatedAction.relationship", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionRelationshipType" } ], "strength": "required", "description": "Defines the types of relationships between actions.", "valueSet": "http://hl7.org/fhir/ValueSet/action-relationship-type|4.0.1" } }, { "id": "PlanDefinition.action.relatedAction.offset[x]", "path": "PlanDefinition.action.relatedAction.offset[x]", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.relatedAction.offset[x]", "min": 0, "max": "1" }, "type": [ { "code": "Duration" }, { "code": "Range" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.timing[x]", "path": "PlanDefinition.action.timing[x]", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.timing[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" }, { "code": "Age" }, { "code": "Period" }, { "code": "Duration" }, { "code": "Range" }, { "code": "Timing" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.participant", "path": "PlanDefinition.action.participant", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.participant", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.participant.id", "path": "PlanDefinition.action.participant.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.participant.extension", "path": "PlanDefinition.action.participant.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.participant.modifierExtension", "path": "PlanDefinition.action.participant.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "PlanDefinition.action.participant.type", "path": "PlanDefinition.action.participant.type", "min": 1, "max": "1", "base": { "path": "PlanDefinition.action.participant.type", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionParticipantType" } ], "strength": "required", "description": "The type of participant for the action.", "valueSet": "http://hl7.org/fhir/ValueSet/action-participant-type|4.0.1" } }, { "id": "PlanDefinition.action.participant.role", "path": "PlanDefinition.action.participant.role", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.participant.role", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionParticipantRole" } ], "strength": "example", "description": "Defines roles played by participants for the action.", "valueSet": "http://hl7.org/fhir/ValueSet/action-participant-role" } }, { "id": "PlanDefinition.action.type", "path": "PlanDefinition.action.type", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionType" } ], "strength": "extensible", "description": "The type of action to be performed.", "valueSet": "http://hl7.org/fhir/ValueSet/action-type" } }, { "id": "PlanDefinition.action.groupingBehavior", "path": "PlanDefinition.action.groupingBehavior", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.groupingBehavior", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionGroupingBehavior" } ], "strength": "required", "description": "Defines organization behavior of a group.", "valueSet": "http://hl7.org/fhir/ValueSet/action-grouping-behavior|4.0.1" } }, { "id": "PlanDefinition.action.selectionBehavior", "path": "PlanDefinition.action.selectionBehavior", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.selectionBehavior", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionSelectionBehavior" } ], "strength": "required", "description": "Defines selection behavior of a group.", "valueSet": "http://hl7.org/fhir/ValueSet/action-selection-behavior|4.0.1" } }, { "id": "PlanDefinition.action.requiredBehavior", "path": "PlanDefinition.action.requiredBehavior", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.requiredBehavior", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionRequiredBehavior" } ], "strength": "required", "description": "Defines expectations around whether an action or action group is required.", "valueSet": "http://hl7.org/fhir/ValueSet/action-required-behavior|4.0.1" } }, { "id": "PlanDefinition.action.precheckBehavior", "path": "PlanDefinition.action.precheckBehavior", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.precheckBehavior", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionPrecheckBehavior" } ], "strength": "required", "description": "Defines selection frequency behavior for an action or group.", "valueSet": "http://hl7.org/fhir/ValueSet/action-precheck-behavior|4.0.1" } }, { "id": "PlanDefinition.action.cardinalityBehavior", "path": "PlanDefinition.action.cardinalityBehavior", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.cardinalityBehavior", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionCardinalityBehavior" } ], "strength": "required", "description": "Defines behavior for an action or a group for how many times that item may be repeated.", "valueSet": "http://hl7.org/fhir/ValueSet/action-cardinality-behavior|4.0.1" } }, { "id": "PlanDefinition.action.definition[x]", "path": "PlanDefinition.action.definition[x]", "comment": "Note that the definition is optional, and if no definition is specified, a dynamicValue with a root ($this) path can be used to define the entire resource dynamically.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.definition[x]", "min": 0, "max": "1" }, "type": [ { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/ActivityDefinition", "http://hl7.org/fhir/StructureDefinition/PlanDefinition", "http://hl7.org/fhir/StructureDefinition/Questionnaire" ] }, { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.transform", "path": "PlanDefinition.action.transform", "comment": "Note that when a referenced ActivityDefinition also defines a transform, the transform specified here generally takes precedence. In addition, if both a transform and dynamic values are specific, the dynamic values are applied to the result of the transform.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.transform", "min": 0, "max": "1" }, "type": [ { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/StructureMap" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.dynamicValue", "path": "PlanDefinition.action.dynamicValue", "comment": "Dynamic values are applied in the order in which they are defined in the PlanDefinition resource. Note that when dynamic values are also specified by a referenced ActivityDefinition, the dynamicValues from the ActivityDefinition are applied first, followed by the dynamicValues specified here. In addition, if both a transform and dynamic values are specific, the dynamic values are applied to the result of the transform.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.dynamicValue", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.dynamicValue.id", "path": "PlanDefinition.action.dynamicValue.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.dynamicValue.extension", "path": "PlanDefinition.action.dynamicValue.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.dynamicValue.modifierExtension", "path": "PlanDefinition.action.dynamicValue.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "PlanDefinition.action.dynamicValue.path", "path": "PlanDefinition.action.dynamicValue.path", "comment": "To specify the path to the current action being realized, the %action environment variable is available in this path. For example, to specify the description element of the target action, the path would be %action.description. The path attribute contains a [Simple FHIRPath Subset](http://hl7.org/fhir/fhirpath.html#simple) that allows path traversal, but not calculation.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.dynamicValue.path", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.dynamicValue.expression", "path": "PlanDefinition.action.dynamicValue.expression", "comment": "The expression may be inlined or may be a reference to a named expression within a logic library referenced by the library element.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.dynamicValue.expression", "min": 0, "max": "1" }, "type": [ { "code": "Expression" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.action", "path": "PlanDefinition.action.action", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.action", "min": 0, "max": "*" }, "contentReference": "#PlanDefinition.action", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "PlanDefinition", "path": "PlanDefinition", "min": 1, "max": "1" }, { "id": "PlanDefinition.url", "path": "PlanDefinition.url", "min": 1, "max": "1", "type": [ { "code": "uri" } ] }, { "id": "PlanDefinition.identifier", "path": "PlanDefinition.identifier", "mustSupport": true }, { "id": "PlanDefinition.version", "path": "PlanDefinition.version", "min": 1, "max": "1", "type": [ { "code": "string" } ] }, { "id": "PlanDefinition.name", "path": "PlanDefinition.name", "min": 1, "max": "1", "type": [ { "code": "string" } ] }, { "id": "PlanDefinition.title", "path": "PlanDefinition.title", "min": 0, "max": "1", "mustSupport": true }, { "id": "PlanDefinition.experimental", "path": "PlanDefinition.experimental", "min": 1, "max": "1", "type": [ { "code": "boolean" } ] }, { "id": "PlanDefinition.date", "path": "PlanDefinition.date", "min": 0, "max": "1", "mustSupport": true }, { "id": "PlanDefinition.publisher", "path": "PlanDefinition.publisher", "min": 1, "max": "1", "type": [ { "code": "string" } ] }, { "id": "PlanDefinition.contact", "path": "PlanDefinition.contact", "mustSupport": true }, { "id": "PlanDefinition.description", "path": "PlanDefinition.description", "min": 1, "max": "1", "type": [ { "code": "markdown" } ] }, { "id": "PlanDefinition.useContext", "path": "PlanDefinition.useContext", "mustSupport": true }, { "id": "PlanDefinition.jurisdiction", "path": "PlanDefinition.jurisdiction", "mustSupport": true } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/computableplandefinition", "resource": { "resourceType": "StructureDefinition", "id": "computableplandefinition", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 2 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "cds" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/computableplandefinition", "version": "4.0.1", "name": "Computable PlanDefinition", "status": "draft", "experimental": false, "date": "2019-11-01T09:29:23+11:00", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "PlanDefinition", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/PlanDefinition", "derivation": "constraint", "snapshot": { "element": [ { "id": "PlanDefinition", "path": "PlanDefinition", "min": 1, "max": "1", "base": { "path": "PlanDefinition", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "pdf-0", "severity": "warning", "human": "Name should be usable as an identifier for the module by machine processing applications such as code generation", "expression": "name.matches('[A-Z]([A-Za-z0-9_]){0,254}')", "xpath": "not(exists(f:name/@value)) or matches(f:name/@value, '[A-Z]([A-Za-z0-9_]){0,254}')", "source": "http://hl7.org/fhir/StructureDefinition/PlanDefinition" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.id", "path": "PlanDefinition.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.meta", "path": "PlanDefinition.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.implicitRules", "path": "PlanDefinition.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "PlanDefinition.language", "path": "PlanDefinition.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "PlanDefinition.text", "path": "PlanDefinition.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.contained", "path": "PlanDefinition.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.extension", "path": "PlanDefinition.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.modifierExtension", "path": "PlanDefinition.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "PlanDefinition.url", "path": "PlanDefinition.url", "comment": "Can be a urn:uuid: or a urn:oid: but real http: addresses are preferred. Multiple instances may share the same URL if they have a distinct version.\n\nThe determination of when to create a new version of a resource (same url, new version) vs. defining a new artifact is up to the author. Considerations for making this decision are found in [Technical and Business Versions](http://hl7.org/fhir/resource.html#versions). \n\nIn some cases, the resource can no longer be found at the stated url, but the url itself cannot change. Implementations can use the [meta.source](http://hl7.org/fhir/resource.html#meta) element to indicate where the current master source of the resource can be found.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.url", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.identifier", "path": "PlanDefinition.identifier", "comment": "Typically, this is used for identifiers that can go in an HL7 V3 II (instance identifier) data type, and can then identify this plan definition outside of FHIR, where it is not possible to use the logical URI.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.version", "path": "PlanDefinition.version", "comment": "There may be different plan definition instances that have the same identifier but different versions. The version can be appended to the url in a reference to allow a reference to a particular business version of the plan definition with the format [url]|[version].", "min": 0, "max": "1", "base": { "path": "PlanDefinition.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.name", "path": "PlanDefinition.name", "comment": "The name is not expected to be globally unique. The name should be a simple alphanumeric type name to ensure that it is machine-processing friendly.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.name", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "condition": [ "inv-0" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.title", "path": "PlanDefinition.title", "comment": "This name does not need to be machine-processing friendly and may contain punctuation, white-space, etc.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.title", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.subtitle", "path": "PlanDefinition.subtitle", "min": 0, "max": "1", "base": { "path": "PlanDefinition.subtitle", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.type", "path": "PlanDefinition.type", "min": 0, "max": "1", "base": { "path": "PlanDefinition.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "PlanDefinitionType" } ], "strength": "extensible", "description": "The type of PlanDefinition.", "valueSet": "http://hl7.org/fhir/ValueSet/plan-definition-type" } }, { "id": "PlanDefinition.status", "path": "PlanDefinition.status", "comment": "Allows filtering of plan definitions that are appropriate for use versus not.", "min": 1, "max": "1", "base": { "path": "PlanDefinition.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This is labeled as \"Is Modifier\" because applications should not use a retired {{title}} without due consideration", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "PublicationStatus" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "required", "description": "The lifecycle status of an artifact.", "valueSet": "http://hl7.org/fhir/ValueSet/publication-status|4.0.1" } }, { "id": "PlanDefinition.experimental", "path": "PlanDefinition.experimental", "comment": "Allows filtering of plan definitions that are appropriate for use versus not.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.experimental", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.subject[x]", "path": "PlanDefinition.subject[x]", "min": 0, "max": "1", "base": { "path": "PlanDefinition.subject[x]", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" }, { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Group" ] } ], "meaningWhenMissing": "Patient", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "SubjectType" } ], "strength": "extensible", "description": "The possible types of subjects for a plan definition (E.g. Patient, Practitioner, Organization, Location, etc.).", "valueSet": "http://hl7.org/fhir/ValueSet/subject-type" } }, { "id": "PlanDefinition.date", "path": "PlanDefinition.date", "comment": "Note that this is not the same as the resource last-modified-date, since the resource may be a secondary representation of the plan definition. Additional specific dates may be added as extensions or be found by consulting Provenances associated with past versions of the resource.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.date", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.publisher", "path": "PlanDefinition.publisher", "comment": "Usually an organization but may be an individual. The publisher (or steward) of the plan definition is the organization or individual primarily responsible for the maintenance and upkeep of the plan definition. This is not necessarily the same individual or organization that developed and initially authored the content. The publisher is the primary point of contact for questions or issues with the plan definition. This item SHOULD be populated unless the information is available from context.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.publisher", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.contact", "path": "PlanDefinition.contact", "comment": "May be a web site, an email address, a telephone number, etc.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.contact", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.description", "path": "PlanDefinition.description", "comment": "This description can be used to capture details such as why the plan definition was built, comments about misuse, instructions for clinical use and interpretation, literature references, examples from the paper world, etc. It is not a rendering of the plan definition as conveyed in the 'text' field of the resource itself. This item SHOULD be populated unless the information is available from context (e.g. the language of the plan definition is presumed to be the predominant language in the place the plan definition was created).", "min": 0, "max": "1", "base": { "path": "PlanDefinition.description", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.useContext", "path": "PlanDefinition.useContext", "comment": "When multiple useContexts are specified, there is no expectation that all or any of the contexts apply.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.useContext", "min": 0, "max": "*" }, "type": [ { "code": "UsageContext" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.jurisdiction", "path": "PlanDefinition.jurisdiction", "comment": "It may be possible for the plan definition to be used in jurisdictions other than those for which it was originally designed or intended.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.jurisdiction", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Jurisdiction" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "extensible", "description": "Countries and regions within which this artifact is targeted for use.", "valueSet": "http://hl7.org/fhir/ValueSet/jurisdiction" } }, { "id": "PlanDefinition.purpose", "path": "PlanDefinition.purpose", "comment": "This element does not describe the usage of the plan definition. Instead, it provides traceability of ''why'' the resource is either needed or ''why'' it is defined as it is. This may be used to point to source materials or specifications that drove the structure of this plan definition.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.purpose", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.usage", "path": "PlanDefinition.usage", "min": 0, "max": "1", "base": { "path": "PlanDefinition.usage", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.copyright", "path": "PlanDefinition.copyright", "min": 0, "max": "1", "base": { "path": "PlanDefinition.copyright", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.approvalDate", "path": "PlanDefinition.approvalDate", "comment": "The 'date' element may be more recent than the approval date because of minor changes or editorial corrections.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.approvalDate", "min": 0, "max": "1" }, "type": [ { "code": "date" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.lastReviewDate", "path": "PlanDefinition.lastReviewDate", "comment": "If specified, this date follows the original approval date.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.lastReviewDate", "min": 0, "max": "1" }, "type": [ { "code": "date" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.effectivePeriod", "path": "PlanDefinition.effectivePeriod", "comment": "The effective period for a plan definition determines when the content is applicable for usage and is independent of publication and review dates. For example, a measure intended to be used for the year 2016 might be published in 2015.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.effectivePeriod", "min": 0, "max": "1" }, "type": [ { "code": "Period" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.topic", "path": "PlanDefinition.topic", "min": 0, "max": "*", "base": { "path": "PlanDefinition.topic", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DefinitionTopic" } ], "strength": "example", "description": "High-level categorization of the definition, used for searching, sorting, and filtering.", "valueSet": "http://hl7.org/fhir/ValueSet/definition-topic" } }, { "id": "PlanDefinition.author", "path": "PlanDefinition.author", "min": 0, "max": "*", "base": { "path": "PlanDefinition.author", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.editor", "path": "PlanDefinition.editor", "min": 0, "max": "*", "base": { "path": "PlanDefinition.editor", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.reviewer", "path": "PlanDefinition.reviewer", "min": 0, "max": "*", "base": { "path": "PlanDefinition.reviewer", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.endorser", "path": "PlanDefinition.endorser", "min": 0, "max": "*", "base": { "path": "PlanDefinition.endorser", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.relatedArtifact", "path": "PlanDefinition.relatedArtifact", "comment": "Each related artifact is either an attachment, or a reference to another resource, but not both.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.relatedArtifact", "min": 0, "max": "*" }, "type": [ { "code": "RelatedArtifact" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.library", "path": "PlanDefinition.library", "min": 1, "max": "1", "base": { "path": "PlanDefinition.library", "min": 0, "max": "*" }, "type": [ { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Library" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal", "path": "PlanDefinition.goal", "min": 0, "max": "*", "base": { "path": "PlanDefinition.goal", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal.id", "path": "PlanDefinition.goal.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal.extension", "path": "PlanDefinition.goal.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal.modifierExtension", "path": "PlanDefinition.goal.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "PlanDefinition.goal.category", "path": "PlanDefinition.goal.category", "min": 0, "max": "1", "base": { "path": "PlanDefinition.goal.category", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GoalCategory" } ], "strength": "example", "description": "Example codes for grouping goals for filtering or presentation.", "valueSet": "http://hl7.org/fhir/ValueSet/goal-category" } }, { "id": "PlanDefinition.goal.description", "path": "PlanDefinition.goal.description", "comment": "If no code is available, use CodeableConcept.text.", "min": 1, "max": "1", "base": { "path": "PlanDefinition.goal.description", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GoalDescription" } ], "strength": "example", "description": "Describes goals that can be achieved.", "valueSet": "http://hl7.org/fhir/ValueSet/clinical-findings" } }, { "id": "PlanDefinition.goal.priority", "path": "PlanDefinition.goal.priority", "min": 0, "max": "1", "base": { "path": "PlanDefinition.goal.priority", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GoalPriority" } ], "strength": "preferred", "description": "Indicates the level of importance associated with reaching or sustaining a goal.", "valueSet": "http://hl7.org/fhir/ValueSet/goal-priority" } }, { "id": "PlanDefinition.goal.start", "path": "PlanDefinition.goal.start", "min": 0, "max": "1", "base": { "path": "PlanDefinition.goal.start", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GoalStartEvent" } ], "strength": "example", "description": "Identifies the types of events that might trigger the start of a goal.", "valueSet": "http://hl7.org/fhir/ValueSet/goal-start-event" } }, { "id": "PlanDefinition.goal.addresses", "path": "PlanDefinition.goal.addresses", "min": 0, "max": "*", "base": { "path": "PlanDefinition.goal.addresses", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GoalAddresses" } ], "strength": "example", "description": "Identifies problems, conditions, issues, or concerns that goals may address.", "valueSet": "http://hl7.org/fhir/ValueSet/condition-code" } }, { "id": "PlanDefinition.goal.documentation", "path": "PlanDefinition.goal.documentation", "min": 0, "max": "*", "base": { "path": "PlanDefinition.goal.documentation", "min": 0, "max": "*" }, "type": [ { "code": "RelatedArtifact" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal.target", "path": "PlanDefinition.goal.target", "min": 0, "max": "*", "base": { "path": "PlanDefinition.goal.target", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal.target.id", "path": "PlanDefinition.goal.target.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal.target.extension", "path": "PlanDefinition.goal.target.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal.target.modifierExtension", "path": "PlanDefinition.goal.target.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "PlanDefinition.goal.target.measure", "path": "PlanDefinition.goal.target.measure", "min": 0, "max": "1", "base": { "path": "PlanDefinition.goal.target.measure", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GoalTargetMeasure" } ], "strength": "example", "description": "Identifies types of parameters that can be tracked to determine goal achievement.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-codes" } }, { "id": "PlanDefinition.goal.target.detail[x]", "path": "PlanDefinition.goal.target.detail[x]", "min": 0, "max": "1", "base": { "path": "PlanDefinition.goal.target.detail[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" }, { "code": "Range" }, { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal.target.due", "path": "PlanDefinition.goal.target.due", "min": 0, "max": "1", "base": { "path": "PlanDefinition.goal.target.due", "min": 0, "max": "1" }, "type": [ { "code": "Duration" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action", "path": "PlanDefinition.action", "comment": "Note that there is overlap between many of the elements defined here and the ActivityDefinition resource. When an ActivityDefinition is referenced (using the definition element), the overlapping elements in the plan override the content of the referenced ActivityDefinition unless otherwise documented in the specific elements. See the PlanDefinition resource for more detailed information.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.id", "path": "PlanDefinition.action.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.extension", "path": "PlanDefinition.action.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.modifierExtension", "path": "PlanDefinition.action.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "PlanDefinition.action.prefix", "path": "PlanDefinition.action.prefix", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.prefix", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.title", "path": "PlanDefinition.action.title", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.title", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.description", "path": "PlanDefinition.action.description", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.description", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.textEquivalent", "path": "PlanDefinition.action.textEquivalent", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.textEquivalent", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.priority", "path": "PlanDefinition.action.priority", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.priority", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "RequestPriority" } ], "strength": "required", "description": "Identifies the level of importance to be assigned to actioning the request.", "valueSet": "http://hl7.org/fhir/ValueSet/request-priority|4.0.1" } }, { "id": "PlanDefinition.action.code", "path": "PlanDefinition.action.code", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.code", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.reason", "path": "PlanDefinition.action.reason", "comment": "This is different than the clinical evidence documentation, it's an actual business description of the reason for performing the action.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.reason", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.documentation", "path": "PlanDefinition.action.documentation", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.documentation", "min": 0, "max": "*" }, "type": [ { "code": "RelatedArtifact" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.goalId", "path": "PlanDefinition.action.goalId", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.goalId", "min": 0, "max": "*" }, "type": [ { "code": "id" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.subject[x]", "path": "PlanDefinition.action.subject[x]", "comment": "The subject of an action overrides the subject at a parent action or on the root of the PlanDefinition if specified.\n\nIn addition, because the subject needs to be resolved during realization, use of subjects in actions (or in the ActivityDefinition referenced by the action) resolves based on the set of subjects supplied in context and by type (i.e. the patient subject would resolve to a resource of type Patient).", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.subject[x]", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" }, { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Group" ] } ], "meaningWhenMissing": "Patient", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "SubjectType" } ], "strength": "extensible", "description": "The possible types of subjects for a plan definition (E.g. Patient, Practitioner, Organization, Location, etc.).", "valueSet": "http://hl7.org/fhir/ValueSet/subject-type" } }, { "id": "PlanDefinition.action.trigger", "path": "PlanDefinition.action.trigger", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.trigger", "min": 0, "max": "*" }, "type": [ { "code": "TriggerDefinition" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.condition", "path": "PlanDefinition.action.condition", "comment": "When multiple conditions of the same kind are present, the effects are combined using AND semantics, so the overall condition is true only if all the conditions are true.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.condition", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.condition.id", "path": "PlanDefinition.action.condition.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.condition.extension", "path": "PlanDefinition.action.condition.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.condition.modifierExtension", "path": "PlanDefinition.action.condition.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "PlanDefinition.action.condition.kind", "path": "PlanDefinition.action.condition.kind", "comment": "Applicability criteria are used to determine immediate applicability when a plan definition is applied to a given context. Start and stop criteria are carried through application and used to describe enter/exit criteria for an action.", "min": 1, "max": "1", "base": { "path": "PlanDefinition.action.condition.kind", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionConditionKind" } ], "strength": "required", "description": "Defines the kinds of conditions that can appear on actions.", "valueSet": "http://hl7.org/fhir/ValueSet/action-condition-kind|4.0.1" } }, { "id": "PlanDefinition.action.condition.expression", "path": "PlanDefinition.action.condition.expression", "comment": "The expression may be inlined or may be a reference to a named expression within a logic library referenced by the library element.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.condition.expression", "min": 0, "max": "1" }, "type": [ { "code": "Expression" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.input", "path": "PlanDefinition.action.input", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.input", "min": 0, "max": "*" }, "type": [ { "code": "DataRequirement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.output", "path": "PlanDefinition.action.output", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.output", "min": 0, "max": "*" }, "type": [ { "code": "DataRequirement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.relatedAction", "path": "PlanDefinition.action.relatedAction", "comment": "When an action depends on multiple actions, the meaning is that all actions are dependencies, rather than that any of the actions are a dependency.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.relatedAction", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.relatedAction.id", "path": "PlanDefinition.action.relatedAction.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.relatedAction.extension", "path": "PlanDefinition.action.relatedAction.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.relatedAction.modifierExtension", "path": "PlanDefinition.action.relatedAction.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "PlanDefinition.action.relatedAction.actionId", "path": "PlanDefinition.action.relatedAction.actionId", "min": 1, "max": "1", "base": { "path": "PlanDefinition.action.relatedAction.actionId", "min": 1, "max": "1" }, "type": [ { "code": "id" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.relatedAction.relationship", "path": "PlanDefinition.action.relatedAction.relationship", "min": 1, "max": "1", "base": { "path": "PlanDefinition.action.relatedAction.relationship", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionRelationshipType" } ], "strength": "required", "description": "Defines the types of relationships between actions.", "valueSet": "http://hl7.org/fhir/ValueSet/action-relationship-type|4.0.1" } }, { "id": "PlanDefinition.action.relatedAction.offset[x]", "path": "PlanDefinition.action.relatedAction.offset[x]", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.relatedAction.offset[x]", "min": 0, "max": "1" }, "type": [ { "code": "Duration" }, { "code": "Range" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.timing[x]", "path": "PlanDefinition.action.timing[x]", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.timing[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" }, { "code": "Age" }, { "code": "Period" }, { "code": "Duration" }, { "code": "Range" }, { "code": "Timing" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.participant", "path": "PlanDefinition.action.participant", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.participant", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.participant.id", "path": "PlanDefinition.action.participant.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.participant.extension", "path": "PlanDefinition.action.participant.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.participant.modifierExtension", "path": "PlanDefinition.action.participant.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "PlanDefinition.action.participant.type", "path": "PlanDefinition.action.participant.type", "min": 1, "max": "1", "base": { "path": "PlanDefinition.action.participant.type", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionParticipantType" } ], "strength": "required", "description": "The type of participant for the action.", "valueSet": "http://hl7.org/fhir/ValueSet/action-participant-type|4.0.1" } }, { "id": "PlanDefinition.action.participant.role", "path": "PlanDefinition.action.participant.role", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.participant.role", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionParticipantRole" } ], "strength": "example", "description": "Defines roles played by participants for the action.", "valueSet": "http://hl7.org/fhir/ValueSet/action-participant-role" } }, { "id": "PlanDefinition.action.type", "path": "PlanDefinition.action.type", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionType" } ], "strength": "extensible", "description": "The type of action to be performed.", "valueSet": "http://hl7.org/fhir/ValueSet/action-type" } }, { "id": "PlanDefinition.action.groupingBehavior", "path": "PlanDefinition.action.groupingBehavior", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.groupingBehavior", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionGroupingBehavior" } ], "strength": "required", "description": "Defines organization behavior of a group.", "valueSet": "http://hl7.org/fhir/ValueSet/action-grouping-behavior|4.0.1" } }, { "id": "PlanDefinition.action.selectionBehavior", "path": "PlanDefinition.action.selectionBehavior", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.selectionBehavior", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionSelectionBehavior" } ], "strength": "required", "description": "Defines selection behavior of a group.", "valueSet": "http://hl7.org/fhir/ValueSet/action-selection-behavior|4.0.1" } }, { "id": "PlanDefinition.action.requiredBehavior", "path": "PlanDefinition.action.requiredBehavior", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.requiredBehavior", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionRequiredBehavior" } ], "strength": "required", "description": "Defines expectations around whether an action or action group is required.", "valueSet": "http://hl7.org/fhir/ValueSet/action-required-behavior|4.0.1" } }, { "id": "PlanDefinition.action.precheckBehavior", "path": "PlanDefinition.action.precheckBehavior", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.precheckBehavior", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionPrecheckBehavior" } ], "strength": "required", "description": "Defines selection frequency behavior for an action or group.", "valueSet": "http://hl7.org/fhir/ValueSet/action-precheck-behavior|4.0.1" } }, { "id": "PlanDefinition.action.cardinalityBehavior", "path": "PlanDefinition.action.cardinalityBehavior", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.cardinalityBehavior", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionCardinalityBehavior" } ], "strength": "required", "description": "Defines behavior for an action or a group for how many times that item may be repeated.", "valueSet": "http://hl7.org/fhir/ValueSet/action-cardinality-behavior|4.0.1" } }, { "id": "PlanDefinition.action.definition[x]", "path": "PlanDefinition.action.definition[x]", "comment": "Note that the definition is optional, and if no definition is specified, a dynamicValue with a root ($this) path can be used to define the entire resource dynamically.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.definition[x]", "min": 0, "max": "1" }, "type": [ { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/ActivityDefinition", "http://hl7.org/fhir/StructureDefinition/PlanDefinition", "http://hl7.org/fhir/StructureDefinition/Questionnaire" ] }, { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.transform", "path": "PlanDefinition.action.transform", "comment": "Note that when a referenced ActivityDefinition also defines a transform, the transform specified here generally takes precedence. In addition, if both a transform and dynamic values are specific, the dynamic values are applied to the result of the transform.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.transform", "min": 0, "max": "1" }, "type": [ { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/StructureMap" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.dynamicValue", "path": "PlanDefinition.action.dynamicValue", "comment": "Dynamic values are applied in the order in which they are defined in the PlanDefinition resource. Note that when dynamic values are also specified by a referenced ActivityDefinition, the dynamicValues from the ActivityDefinition are applied first, followed by the dynamicValues specified here. In addition, if both a transform and dynamic values are specific, the dynamic values are applied to the result of the transform.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.dynamicValue", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.dynamicValue.id", "path": "PlanDefinition.action.dynamicValue.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.dynamicValue.extension", "path": "PlanDefinition.action.dynamicValue.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.dynamicValue.modifierExtension", "path": "PlanDefinition.action.dynamicValue.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "PlanDefinition.action.dynamicValue.path", "path": "PlanDefinition.action.dynamicValue.path", "comment": "To specify the path to the current action being realized, the %action environment variable is available in this path. For example, to specify the description element of the target action, the path would be %action.description. The path attribute contains a [Simple FHIRPath Subset](http://hl7.org/fhir/fhirpath.html#simple) that allows path traversal, but not calculation.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.dynamicValue.path", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.dynamicValue.expression", "path": "PlanDefinition.action.dynamicValue.expression", "comment": "The expression may be inlined or may be a reference to a named expression within a logic library referenced by the library element.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.dynamicValue.expression", "min": 0, "max": "1" }, "type": [ { "code": "Expression" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.action", "path": "PlanDefinition.action.action", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.action", "min": 0, "max": "*" }, "contentReference": "#PlanDefinition.action", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "PlanDefinition", "path": "PlanDefinition", "min": 1, "max": "1" }, { "id": "PlanDefinition.library", "path": "PlanDefinition.library", "min": 1, "max": "1", "type": [ { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Library" ] } ] } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/cdshooksserviceplandefinition", "resource": { "resourceType": "StructureDefinition", "id": "cdshooksserviceplandefinition", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 2 }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "cds" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/cdshooksserviceplandefinition", "version": "4.0.1", "name": "CDS Hooks Service PlanDefinition", "status": "draft", "experimental": false, "date": "2019-11-01T09:29:23+11:00", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "PlanDefinition", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/PlanDefinition", "derivation": "constraint", "snapshot": { "element": [ { "id": "PlanDefinition", "path": "PlanDefinition", "min": 1, "max": "1", "base": { "path": "PlanDefinition", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "pdf-0", "severity": "warning", "human": "Name should be usable as an identifier for the module by machine processing applications such as code generation", "expression": "name.matches('[A-Z]([A-Za-z0-9_]){0,254}')", "xpath": "not(exists(f:name/@value)) or matches(f:name/@value, '[A-Z]([A-Za-z0-9_]){0,254}')", "source": "http://hl7.org/fhir/StructureDefinition/PlanDefinition" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.id", "path": "PlanDefinition.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.meta", "path": "PlanDefinition.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.implicitRules", "path": "PlanDefinition.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "PlanDefinition.language", "path": "PlanDefinition.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "PlanDefinition.text", "path": "PlanDefinition.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.contained", "path": "PlanDefinition.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.extension", "path": "PlanDefinition.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "ordered": false, "rules": "open" }, "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.extension:cdsHooksEndpoint", "path": "PlanDefinition.extension", "sliceName": "cdsHooksEndpoint", "min": 1, "max": "1", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/cqf-cdsHooksEndpoint" ] } ], "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false }, { "id": "PlanDefinition.modifierExtension", "path": "PlanDefinition.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "PlanDefinition.url", "path": "PlanDefinition.url", "comment": "Can be a urn:uuid: or a urn:oid: but real http: addresses are preferred. Multiple instances may share the same URL if they have a distinct version.\n\nThe determination of when to create a new version of a resource (same url, new version) vs. defining a new artifact is up to the author. Considerations for making this decision are found in [Technical and Business Versions](http://hl7.org/fhir/resource.html#versions). \n\nIn some cases, the resource can no longer be found at the stated url, but the url itself cannot change. Implementations can use the [meta.source](http://hl7.org/fhir/resource.html#meta) element to indicate where the current master source of the resource can be found.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.url", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.identifier", "path": "PlanDefinition.identifier", "comment": "Typically, this is used for identifiers that can go in an HL7 V3 II (instance identifier) data type, and can then identify this plan definition outside of FHIR, where it is not possible to use the logical URI.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.identifier", "min": 0, "max": "*" }, "type": [ { "code": "Identifier" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.version", "path": "PlanDefinition.version", "comment": "There may be different plan definition instances that have the same identifier but different versions. The version can be appended to the url in a reference to allow a reference to a particular business version of the plan definition with the format [url]|[version].", "min": 0, "max": "1", "base": { "path": "PlanDefinition.version", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.name", "path": "PlanDefinition.name", "comment": "The name is not expected to be globally unique. The name should be a simple alphanumeric type name to ensure that it is machine-processing friendly.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.name", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "condition": [ "inv-0" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.title", "path": "PlanDefinition.title", "comment": "This name does not need to be machine-processing friendly and may contain punctuation, white-space, etc.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.title", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.subtitle", "path": "PlanDefinition.subtitle", "min": 0, "max": "1", "base": { "path": "PlanDefinition.subtitle", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.type", "path": "PlanDefinition.type", "min": 0, "max": "1", "base": { "path": "PlanDefinition.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "PlanDefinitionType" } ], "strength": "extensible", "description": "The type of PlanDefinition.", "valueSet": "http://hl7.org/fhir/ValueSet/plan-definition-type" } }, { "id": "PlanDefinition.status", "path": "PlanDefinition.status", "comment": "Allows filtering of plan definitions that are appropriate for use versus not.", "min": 1, "max": "1", "base": { "path": "PlanDefinition.status", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This is labeled as \"Is Modifier\" because applications should not use a retired {{title}} without due consideration", "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "PublicationStatus" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "required", "description": "The lifecycle status of an artifact.", "valueSet": "http://hl7.org/fhir/ValueSet/publication-status|4.0.1" } }, { "id": "PlanDefinition.experimental", "path": "PlanDefinition.experimental", "comment": "Allows filtering of plan definitions that are appropriate for use versus not.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.experimental", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.subject[x]", "path": "PlanDefinition.subject[x]", "min": 0, "max": "1", "base": { "path": "PlanDefinition.subject[x]", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" }, { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Group" ] } ], "meaningWhenMissing": "Patient", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "SubjectType" } ], "strength": "extensible", "description": "The possible types of subjects for a plan definition (E.g. Patient, Practitioner, Organization, Location, etc.).", "valueSet": "http://hl7.org/fhir/ValueSet/subject-type" } }, { "id": "PlanDefinition.date", "path": "PlanDefinition.date", "comment": "Note that this is not the same as the resource last-modified-date, since the resource may be a secondary representation of the plan definition. Additional specific dates may be added as extensions or be found by consulting Provenances associated with past versions of the resource.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.date", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.publisher", "path": "PlanDefinition.publisher", "comment": "Usually an organization but may be an individual. The publisher (or steward) of the plan definition is the organization or individual primarily responsible for the maintenance and upkeep of the plan definition. This is not necessarily the same individual or organization that developed and initially authored the content. The publisher is the primary point of contact for questions or issues with the plan definition. This item SHOULD be populated unless the information is available from context.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.publisher", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.contact", "path": "PlanDefinition.contact", "comment": "May be a web site, an email address, a telephone number, etc.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.contact", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.description", "path": "PlanDefinition.description", "comment": "This description can be used to capture details such as why the plan definition was built, comments about misuse, instructions for clinical use and interpretation, literature references, examples from the paper world, etc. It is not a rendering of the plan definition as conveyed in the 'text' field of the resource itself. This item SHOULD be populated unless the information is available from context (e.g. the language of the plan definition is presumed to be the predominant language in the place the plan definition was created).", "min": 0, "max": "1", "base": { "path": "PlanDefinition.description", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.useContext", "path": "PlanDefinition.useContext", "comment": "When multiple useContexts are specified, there is no expectation that all or any of the contexts apply.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.useContext", "min": 0, "max": "*" }, "type": [ { "code": "UsageContext" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.jurisdiction", "path": "PlanDefinition.jurisdiction", "comment": "It may be possible for the plan definition to be used in jurisdictions other than those for which it was originally designed or intended.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.jurisdiction", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Jurisdiction" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "extensible", "description": "Countries and regions within which this artifact is targeted for use.", "valueSet": "http://hl7.org/fhir/ValueSet/jurisdiction" } }, { "id": "PlanDefinition.purpose", "path": "PlanDefinition.purpose", "comment": "This element does not describe the usage of the plan definition. Instead, it provides traceability of ''why'' the resource is either needed or ''why'' it is defined as it is. This may be used to point to source materials or specifications that drove the structure of this plan definition.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.purpose", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.usage", "path": "PlanDefinition.usage", "min": 0, "max": "1", "base": { "path": "PlanDefinition.usage", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.copyright", "path": "PlanDefinition.copyright", "min": 0, "max": "1", "base": { "path": "PlanDefinition.copyright", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.approvalDate", "path": "PlanDefinition.approvalDate", "comment": "The 'date' element may be more recent than the approval date because of minor changes or editorial corrections.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.approvalDate", "min": 0, "max": "1" }, "type": [ { "code": "date" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.lastReviewDate", "path": "PlanDefinition.lastReviewDate", "comment": "If specified, this date follows the original approval date.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.lastReviewDate", "min": 0, "max": "1" }, "type": [ { "code": "date" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.effectivePeriod", "path": "PlanDefinition.effectivePeriod", "comment": "The effective period for a plan definition determines when the content is applicable for usage and is independent of publication and review dates. For example, a measure intended to be used for the year 2016 might be published in 2015.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.effectivePeriod", "min": 0, "max": "1" }, "type": [ { "code": "Period" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "PlanDefinition.topic", "path": "PlanDefinition.topic", "min": 0, "max": "*", "base": { "path": "PlanDefinition.topic", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DefinitionTopic" } ], "strength": "example", "description": "High-level categorization of the definition, used for searching, sorting, and filtering.", "valueSet": "http://hl7.org/fhir/ValueSet/definition-topic" } }, { "id": "PlanDefinition.author", "path": "PlanDefinition.author", "min": 0, "max": "*", "base": { "path": "PlanDefinition.author", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.editor", "path": "PlanDefinition.editor", "min": 0, "max": "*", "base": { "path": "PlanDefinition.editor", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.reviewer", "path": "PlanDefinition.reviewer", "min": 0, "max": "*", "base": { "path": "PlanDefinition.reviewer", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.endorser", "path": "PlanDefinition.endorser", "min": 0, "max": "*", "base": { "path": "PlanDefinition.endorser", "min": 0, "max": "*" }, "type": [ { "code": "ContactDetail" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.relatedArtifact", "path": "PlanDefinition.relatedArtifact", "comment": "Each related artifact is either an attachment, or a reference to another resource, but not both.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.relatedArtifact", "min": 0, "max": "*" }, "type": [ { "code": "RelatedArtifact" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.library", "path": "PlanDefinition.library", "min": 0, "max": "*", "base": { "path": "PlanDefinition.library", "min": 0, "max": "*" }, "type": [ { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Library" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal", "path": "PlanDefinition.goal", "min": 0, "max": "*", "base": { "path": "PlanDefinition.goal", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal.id", "path": "PlanDefinition.goal.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal.extension", "path": "PlanDefinition.goal.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal.modifierExtension", "path": "PlanDefinition.goal.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "PlanDefinition.goal.category", "path": "PlanDefinition.goal.category", "min": 0, "max": "1", "base": { "path": "PlanDefinition.goal.category", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GoalCategory" } ], "strength": "example", "description": "Example codes for grouping goals for filtering or presentation.", "valueSet": "http://hl7.org/fhir/ValueSet/goal-category" } }, { "id": "PlanDefinition.goal.description", "path": "PlanDefinition.goal.description", "comment": "If no code is available, use CodeableConcept.text.", "min": 1, "max": "1", "base": { "path": "PlanDefinition.goal.description", "min": 1, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GoalDescription" } ], "strength": "example", "description": "Describes goals that can be achieved.", "valueSet": "http://hl7.org/fhir/ValueSet/clinical-findings" } }, { "id": "PlanDefinition.goal.priority", "path": "PlanDefinition.goal.priority", "min": 0, "max": "1", "base": { "path": "PlanDefinition.goal.priority", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GoalPriority" } ], "strength": "preferred", "description": "Indicates the level of importance associated with reaching or sustaining a goal.", "valueSet": "http://hl7.org/fhir/ValueSet/goal-priority" } }, { "id": "PlanDefinition.goal.start", "path": "PlanDefinition.goal.start", "min": 0, "max": "1", "base": { "path": "PlanDefinition.goal.start", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GoalStartEvent" } ], "strength": "example", "description": "Identifies the types of events that might trigger the start of a goal.", "valueSet": "http://hl7.org/fhir/ValueSet/goal-start-event" } }, { "id": "PlanDefinition.goal.addresses", "path": "PlanDefinition.goal.addresses", "min": 0, "max": "*", "base": { "path": "PlanDefinition.goal.addresses", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GoalAddresses" } ], "strength": "example", "description": "Identifies problems, conditions, issues, or concerns that goals may address.", "valueSet": "http://hl7.org/fhir/ValueSet/condition-code" } }, { "id": "PlanDefinition.goal.documentation", "path": "PlanDefinition.goal.documentation", "min": 0, "max": "*", "base": { "path": "PlanDefinition.goal.documentation", "min": 0, "max": "*" }, "type": [ { "code": "RelatedArtifact" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal.target", "path": "PlanDefinition.goal.target", "min": 0, "max": "*", "base": { "path": "PlanDefinition.goal.target", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal.target.id", "path": "PlanDefinition.goal.target.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal.target.extension", "path": "PlanDefinition.goal.target.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal.target.modifierExtension", "path": "PlanDefinition.goal.target.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "PlanDefinition.goal.target.measure", "path": "PlanDefinition.goal.target.measure", "min": 0, "max": "1", "base": { "path": "PlanDefinition.goal.target.measure", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "GoalTargetMeasure" } ], "strength": "example", "description": "Identifies types of parameters that can be tracked to determine goal achievement.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-codes" } }, { "id": "PlanDefinition.goal.target.detail[x]", "path": "PlanDefinition.goal.target.detail[x]", "min": 0, "max": "1", "base": { "path": "PlanDefinition.goal.target.detail[x]", "min": 0, "max": "1" }, "type": [ { "code": "Quantity" }, { "code": "Range" }, { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.goal.target.due", "path": "PlanDefinition.goal.target.due", "min": 0, "max": "1", "base": { "path": "PlanDefinition.goal.target.due", "min": 0, "max": "1" }, "type": [ { "code": "Duration" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action", "path": "PlanDefinition.action", "comment": "Note that there is overlap between many of the elements defined here and the ActivityDefinition resource. When an ActivityDefinition is referenced (using the definition element), the overlapping elements in the plan override the content of the referenced ActivityDefinition unless otherwise documented in the specific elements. See the PlanDefinition resource for more detailed information.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.id", "path": "PlanDefinition.action.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.extension", "path": "PlanDefinition.action.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.modifierExtension", "path": "PlanDefinition.action.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "PlanDefinition.action.prefix", "path": "PlanDefinition.action.prefix", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.prefix", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.title", "path": "PlanDefinition.action.title", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.title", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.description", "path": "PlanDefinition.action.description", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.description", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.textEquivalent", "path": "PlanDefinition.action.textEquivalent", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.textEquivalent", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.priority", "path": "PlanDefinition.action.priority", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.priority", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "RequestPriority" } ], "strength": "required", "description": "Identifies the level of importance to be assigned to actioning the request.", "valueSet": "http://hl7.org/fhir/ValueSet/request-priority|4.0.1" } }, { "id": "PlanDefinition.action.code", "path": "PlanDefinition.action.code", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.code", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.reason", "path": "PlanDefinition.action.reason", "comment": "This is different than the clinical evidence documentation, it's an actual business description of the reason for performing the action.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.reason", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.documentation", "path": "PlanDefinition.action.documentation", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.documentation", "min": 0, "max": "*" }, "type": [ { "code": "RelatedArtifact" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.goalId", "path": "PlanDefinition.action.goalId", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.goalId", "min": 0, "max": "*" }, "type": [ { "code": "id" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.subject[x]", "path": "PlanDefinition.action.subject[x]", "comment": "The subject of an action overrides the subject at a parent action or on the root of the PlanDefinition if specified.\n\nIn addition, because the subject needs to be resolved during realization, use of subjects in actions (or in the ActivityDefinition referenced by the action) resolves based on the set of subjects supplied in context and by type (i.e. the patient subject would resolve to a resource of type Patient).", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.subject[x]", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" }, { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Group" ] } ], "meaningWhenMissing": "Patient", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "SubjectType" } ], "strength": "extensible", "description": "The possible types of subjects for a plan definition (E.g. Patient, Practitioner, Organization, Location, etc.).", "valueSet": "http://hl7.org/fhir/ValueSet/subject-type" } }, { "id": "PlanDefinition.action.trigger", "path": "PlanDefinition.action.trigger", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.trigger", "min": 0, "max": "*" }, "type": [ { "code": "TriggerDefinition" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.condition", "path": "PlanDefinition.action.condition", "comment": "When multiple conditions of the same kind are present, the effects are combined using AND semantics, so the overall condition is true only if all the conditions are true.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.condition", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.condition.id", "path": "PlanDefinition.action.condition.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.condition.extension", "path": "PlanDefinition.action.condition.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.condition.modifierExtension", "path": "PlanDefinition.action.condition.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "PlanDefinition.action.condition.kind", "path": "PlanDefinition.action.condition.kind", "comment": "Applicability criteria are used to determine immediate applicability when a plan definition is applied to a given context. Start and stop criteria are carried through application and used to describe enter/exit criteria for an action.", "min": 1, "max": "1", "base": { "path": "PlanDefinition.action.condition.kind", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionConditionKind" } ], "strength": "required", "description": "Defines the kinds of conditions that can appear on actions.", "valueSet": "http://hl7.org/fhir/ValueSet/action-condition-kind|4.0.1" } }, { "id": "PlanDefinition.action.condition.expression", "path": "PlanDefinition.action.condition.expression", "comment": "The expression may be inlined or may be a reference to a named expression within a logic library referenced by the library element.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.condition.expression", "min": 0, "max": "1" }, "type": [ { "code": "Expression" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.input", "path": "PlanDefinition.action.input", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.input", "min": 0, "max": "*" }, "type": [ { "code": "DataRequirement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.output", "path": "PlanDefinition.action.output", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.output", "min": 0, "max": "*" }, "type": [ { "code": "DataRequirement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.relatedAction", "path": "PlanDefinition.action.relatedAction", "comment": "When an action depends on multiple actions, the meaning is that all actions are dependencies, rather than that any of the actions are a dependency.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.relatedAction", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.relatedAction.id", "path": "PlanDefinition.action.relatedAction.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.relatedAction.extension", "path": "PlanDefinition.action.relatedAction.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.relatedAction.modifierExtension", "path": "PlanDefinition.action.relatedAction.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "PlanDefinition.action.relatedAction.actionId", "path": "PlanDefinition.action.relatedAction.actionId", "min": 1, "max": "1", "base": { "path": "PlanDefinition.action.relatedAction.actionId", "min": 1, "max": "1" }, "type": [ { "code": "id" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.relatedAction.relationship", "path": "PlanDefinition.action.relatedAction.relationship", "min": 1, "max": "1", "base": { "path": "PlanDefinition.action.relatedAction.relationship", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionRelationshipType" } ], "strength": "required", "description": "Defines the types of relationships between actions.", "valueSet": "http://hl7.org/fhir/ValueSet/action-relationship-type|4.0.1" } }, { "id": "PlanDefinition.action.relatedAction.offset[x]", "path": "PlanDefinition.action.relatedAction.offset[x]", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.relatedAction.offset[x]", "min": 0, "max": "1" }, "type": [ { "code": "Duration" }, { "code": "Range" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.timing[x]", "path": "PlanDefinition.action.timing[x]", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.timing[x]", "min": 0, "max": "1" }, "type": [ { "code": "dateTime" }, { "code": "Age" }, { "code": "Period" }, { "code": "Duration" }, { "code": "Range" }, { "code": "Timing" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.participant", "path": "PlanDefinition.action.participant", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.participant", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.participant.id", "path": "PlanDefinition.action.participant.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.participant.extension", "path": "PlanDefinition.action.participant.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.participant.modifierExtension", "path": "PlanDefinition.action.participant.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "PlanDefinition.action.participant.type", "path": "PlanDefinition.action.participant.type", "min": 1, "max": "1", "base": { "path": "PlanDefinition.action.participant.type", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionParticipantType" } ], "strength": "required", "description": "The type of participant for the action.", "valueSet": "http://hl7.org/fhir/ValueSet/action-participant-type|4.0.1" } }, { "id": "PlanDefinition.action.participant.role", "path": "PlanDefinition.action.participant.role", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.participant.role", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionParticipantRole" } ], "strength": "example", "description": "Defines roles played by participants for the action.", "valueSet": "http://hl7.org/fhir/ValueSet/action-participant-role" } }, { "id": "PlanDefinition.action.type", "path": "PlanDefinition.action.type", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionType" } ], "strength": "extensible", "description": "The type of action to be performed.", "valueSet": "http://hl7.org/fhir/ValueSet/action-type" } }, { "id": "PlanDefinition.action.groupingBehavior", "path": "PlanDefinition.action.groupingBehavior", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.groupingBehavior", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionGroupingBehavior" } ], "strength": "required", "description": "Defines organization behavior of a group.", "valueSet": "http://hl7.org/fhir/ValueSet/action-grouping-behavior|4.0.1" } }, { "id": "PlanDefinition.action.selectionBehavior", "path": "PlanDefinition.action.selectionBehavior", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.selectionBehavior", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionSelectionBehavior" } ], "strength": "required", "description": "Defines selection behavior of a group.", "valueSet": "http://hl7.org/fhir/ValueSet/action-selection-behavior|4.0.1" } }, { "id": "PlanDefinition.action.requiredBehavior", "path": "PlanDefinition.action.requiredBehavior", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.requiredBehavior", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionRequiredBehavior" } ], "strength": "required", "description": "Defines expectations around whether an action or action group is required.", "valueSet": "http://hl7.org/fhir/ValueSet/action-required-behavior|4.0.1" } }, { "id": "PlanDefinition.action.precheckBehavior", "path": "PlanDefinition.action.precheckBehavior", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.precheckBehavior", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionPrecheckBehavior" } ], "strength": "required", "description": "Defines selection frequency behavior for an action or group.", "valueSet": "http://hl7.org/fhir/ValueSet/action-precheck-behavior|4.0.1" } }, { "id": "PlanDefinition.action.cardinalityBehavior", "path": "PlanDefinition.action.cardinalityBehavior", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.cardinalityBehavior", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ActionCardinalityBehavior" } ], "strength": "required", "description": "Defines behavior for an action or a group for how many times that item may be repeated.", "valueSet": "http://hl7.org/fhir/ValueSet/action-cardinality-behavior|4.0.1" } }, { "id": "PlanDefinition.action.definition[x]", "path": "PlanDefinition.action.definition[x]", "comment": "Note that the definition is optional, and if no definition is specified, a dynamicValue with a root ($this) path can be used to define the entire resource dynamically.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.definition[x]", "min": 0, "max": "1" }, "type": [ { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/ActivityDefinition", "http://hl7.org/fhir/StructureDefinition/PlanDefinition", "http://hl7.org/fhir/StructureDefinition/Questionnaire" ] }, { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.transform", "path": "PlanDefinition.action.transform", "comment": "Note that when a referenced ActivityDefinition also defines a transform, the transform specified here generally takes precedence. In addition, if both a transform and dynamic values are specific, the dynamic values are applied to the result of the transform.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.transform", "min": 0, "max": "1" }, "type": [ { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/StructureMap" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.dynamicValue", "path": "PlanDefinition.action.dynamicValue", "comment": "Dynamic values are applied in the order in which they are defined in the PlanDefinition resource. Note that when dynamic values are also specified by a referenced ActivityDefinition, the dynamicValues from the ActivityDefinition are applied first, followed by the dynamicValues specified here. In addition, if both a transform and dynamic values are specific, the dynamic values are applied to the result of the transform.", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.dynamicValue", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.dynamicValue.id", "path": "PlanDefinition.action.dynamicValue.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.dynamicValue.extension", "path": "PlanDefinition.action.dynamicValue.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.dynamicValue.modifierExtension", "path": "PlanDefinition.action.dynamicValue.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "PlanDefinition.action.dynamicValue.path", "path": "PlanDefinition.action.dynamicValue.path", "comment": "To specify the path to the current action being realized, the %action environment variable is available in this path. For example, to specify the description element of the target action, the path would be %action.description. The path attribute contains a [Simple FHIRPath Subset](http://hl7.org/fhir/fhirpath.html#simple) that allows path traversal, but not calculation.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.dynamicValue.path", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.dynamicValue.expression", "path": "PlanDefinition.action.dynamicValue.expression", "comment": "The expression may be inlined or may be a reference to a named expression within a logic library referenced by the library element.", "min": 0, "max": "1", "base": { "path": "PlanDefinition.action.dynamicValue.expression", "min": 0, "max": "1" }, "type": [ { "code": "Expression" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "PlanDefinition.action.action", "path": "PlanDefinition.action.action", "min": 0, "max": "*", "base": { "path": "PlanDefinition.action.action", "min": 0, "max": "*" }, "contentReference": "#PlanDefinition.action", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "PlanDefinition", "path": "PlanDefinition", "min": 1, "max": "1" }, { "id": "PlanDefinition.extension:cdsHooksEndpoint", "path": "PlanDefinition.extension", "sliceName": "cdsHooksEndpoint", "min": 1, "max": "1", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/cqf-cdsHooksEndpoint" ] } ] }, { "id": "PlanDefinition.action", "path": "PlanDefinition.action" }, { "id": "PlanDefinition.action.title", "path": "PlanDefinition.action.title", "mustSupport": true }, { "id": "PlanDefinition.action.description", "path": "PlanDefinition.action.description", "mustSupport": true }, { "id": "PlanDefinition.action.priority", "path": "PlanDefinition.action.priority", "mustSupport": true }, { "id": "PlanDefinition.action.trigger", "path": "PlanDefinition.action.trigger", "mustSupport": true }, { "id": "PlanDefinition.action.condition", "path": "PlanDefinition.action.condition", "mustSupport": true }, { "id": "PlanDefinition.action.timing[x]", "path": "PlanDefinition.action.timing[x]", "mustSupport": true }, { "id": "PlanDefinition.action.participant", "path": "PlanDefinition.action.participant", "mustSupport": true }, { "id": "PlanDefinition.action.type", "path": "PlanDefinition.action.type", "mustSupport": true }, { "id": "PlanDefinition.action.selectionBehavior", "path": "PlanDefinition.action.selectionBehavior", "mustSupport": true }, { "id": "PlanDefinition.action.definition[x]", "path": "PlanDefinition.action.definition[x]", "mustSupport": true } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/elementdefinition-de", "resource": { "resourceType": "StructureDefinition", "id": "elementdefinition-de", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "fhir" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-de", "version": "4.0.1", "name": "DataElement constraint on ElementDefinition data type", "status": "draft", "experimental": false, "date": "2015-02-28", "fhirVersion": "4.0.1", "kind": "complex-type", "abstract": false, "type": "ElementDefinition", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/ElementDefinition", "derivation": "constraint", "snapshot": { "element": [ { "id": "ElementDefinition", "path": "ElementDefinition", "min": 0, "max": "*", "base": { "path": "ElementDefinition", "min": 0, "max": "*" }, "constraint": [ { "key": "eld-2", "severity": "error", "human": "Min <= Max", "expression": "min.empty() or max.empty() or (max = '*') or iif(max != '*', min <= max.toInteger())", "xpath": "not(exists(f:min)) or not(exists(f:max)) or (not(f:max/@value) and not(f:min/@value)) or (f:max/@value = '*') or (number(f:max/@value) >= f:min/@value)", "source": "http://hl7.org/fhir/StructureDefinition/ElementDefinition" }, { "key": "eld-5", "severity": "error", "human": "if the element definition has a contentReference, it cannot have type, defaultValue, fixed, pattern, example, minValue, maxValue, maxLength, or binding", "expression": "contentReference.empty() or (type.empty() and defaultValue.empty() and fixed.empty() and pattern.empty() and example.empty() and minValue.empty() and maxValue.empty() and maxLength.empty() and binding.empty())", "xpath": "not(exists(f:contentReference) and (exists(f:type) or exists(f:*[starts-with(local-name(.), 'value')]) or exists(f:*[starts-with(local-name(.), 'defaultValue')]) or exists(f:*[starts-with(local-name(.), 'fixed')]) or exists(f:*[starts-with(local-name(.), 'pattern')]) or exists(f:*[starts-with(local-name(.), 'example')]) or exists(f:*[starts-with(local-name(.), 'f:minValue')]) or exists(f:*[starts-with(local-name(.), 'f:maxValue')]) or exists(f:maxLength) or exists(f:binding)))", "source": "http://hl7.org/fhir/StructureDefinition/ElementDefinition" }, { "key": "eld-6", "severity": "error", "human": "Fixed value may only be specified if there is one type", "expression": "fixed.empty() or (type.count() <= 1)", "xpath": "not(exists(f:*[starts-with(local-name(.), 'fixed')])) or (count(f:type)<=1)", "source": "http://hl7.org/fhir/StructureDefinition/ElementDefinition" }, { "key": "eld-7", "severity": "error", "human": "Pattern may only be specified if there is one type", "expression": "pattern.empty() or (type.count() <= 1)", "xpath": "not(exists(f:*[starts-with(local-name(.), 'pattern')])) or (count(f:type)<=1)", "source": "http://hl7.org/fhir/StructureDefinition/ElementDefinition" }, { "key": "eld-8", "severity": "error", "human": "Pattern and fixed are mutually exclusive", "expression": "pattern.empty() or fixed.empty()", "xpath": "not(exists(f:*[starts-with(local-name(.), 'pattern')])) or not(exists(f:*[starts-with(local-name(.), 'fixed')]))", "source": "http://hl7.org/fhir/StructureDefinition/ElementDefinition" }, { "key": "eld-11", "severity": "error", "human": "Binding can only be present for coded elements, string, and uri", "expression": "binding.empty() or type.code.empty() or type.select((code = 'code') or (code = 'Coding') or (code='CodeableConcept') or (code = 'Quantity') or (code = 'string') or (code = 'uri')).exists()", "xpath": "not(exists(f:binding)) or (count(f:type/f:code) = 0) or f:type/f:code/@value=('code','Coding','CodeableConcept','Quantity','string', 'uri')", "source": "http://hl7.org/fhir/StructureDefinition/ElementDefinition" }, { "key": "eld-13", "severity": "error", "human": "Types must be unique by code", "expression": "type.select(code).isDistinct()", "xpath": "not(exists(for $type in f:type return $type/preceding-sibling::f:type[f:code/@value=$type/f:code/@value]))", "source": "http://hl7.org/fhir/StructureDefinition/ElementDefinition" }, { "key": "eld-14", "severity": "error", "human": "Constraints must be unique by key", "expression": "constraint.select(key).isDistinct()", "xpath": "count(f:constraint) = count(distinct-values(f:constraint/f:key/@value))", "source": "http://hl7.org/fhir/StructureDefinition/ElementDefinition" }, { "key": "eld-15", "severity": "error", "human": "default value and meaningWhenMissing are mutually exclusive", "expression": "defaultValue.empty() or meaningWhenMissing.empty()", "xpath": "not(exists(f:*[starts-with(local-name(.), 'fixed')])) or not(exists(f:meaningWhenMissing))", "source": "http://hl7.org/fhir/StructureDefinition/ElementDefinition" }, { "key": "eld-16", "severity": "error", "human": "sliceName must be composed of proper tokens separated by \"/\"", "expression": "sliceName.empty() or sliceName.matches('^[a-zA-Z0-9\\\\/\\\\-_\\\\[\\\\]\\\\@]+$')", "xpath": "not(exists(f:sliceName/@value)) or matches(f:sliceName/@value, '^[a-zA-Z0-9\\/\\-_\\[\\]\\@]+$')", "source": "http://hl7.org/fhir/StructureDefinition/ElementDefinition" }, { "key": "eld-18", "severity": "error", "human": "Must have a modifier reason if isModifier = true", "expression": "(isModifier.exists() and isModifier) implies isModifierReason.exists()", "xpath": "not(f:isModifier/@value = 'true') or exists(f:isModifierReason)", "source": "http://hl7.org/fhir/StructureDefinition/ElementDefinition" }, { "key": "eld-19", "severity": "error", "human": "Element names cannot include some special characters", "expression": "path.matches('[^\\\\s\\\\.,:;\\\\\\'\"\\\\/|?!@#$%&*()\\\\[\\\\]{}]{1,64}(\\\\.[^\\\\s\\\\.,:;\\\\\\'\"\\\\/|?!@#$%&*()\\\\[\\\\]{}]{1,64}(\\\\[x\\\\])?(\\\\:[^\\\\s\\\\.]+)?)*')", "xpath": "matches(path/@value, '[^\\s\\.,:;\\'"\\/|?!@#$%&*()\\[\\]{}]{1,64}(\\.[^\\s\\.,:;\\'"\\/|?!@#$%&*()\\[\\]{}]{1,64}(\\[x\\])?(\\:[^\\s\\.]+)?)*')", "source": "http://hl7.org/fhir/StructureDefinition/ElementDefinition" }, { "key": "eld-20", "severity": "warning", "human": "Element names should be simple alphanumerics with a max of 64 characters, or code generation tools may be broken", "expression": "path.matches('[A-Za-z][A-Za-z0-9]*(\\\\.[a-z][A-Za-z0-9]*(\\\\[x])?)*')", "xpath": "matches(path/@value, '[A-Za-z][A-Za-z0-9]*(\\.[a-z][A-Za-z0-9]*(\\[x])?)*')", "source": "http://hl7.org/fhir/StructureDefinition/ElementDefinition" }, { "key": "eld-22", "severity": "error", "human": "sliceIsConstraining can only appear if slicename is present", "expression": "sliceIsConstraining.exists() implies sliceName.exists()", "xpath": "exists(f:sliceName) or not(exists(f:sliceIsConstraining))", "source": "http://hl7.org/fhir/StructureDefinition/ElementDefinition" }, { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false }, { "id": "ElementDefinition.id", "path": "ElementDefinition.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.extension", "path": "ElementDefinition.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.extension:Question", "path": "ElementDefinition.extension", "sliceName": "Question", "comment": "Question and label serve similar purposes in they both can be used to prompt for capturing a data element. Whether the question form or label form should be used will depend on the type of instrument being used to capture the information. The ordering is in order of preference. I.e. Most preferred question form is listed first. Note that this is for alternate phrasings of the question. Language translations are handled using the ISO 21090 string translation extensions.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/elementdefinition-question" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.extension:Question.id", "path": "ElementDefinition.extension.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.extension:Question.extension", "path": "ElementDefinition.extension.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "min": 0, "max": "0", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.extension:Question.url", "path": "ElementDefinition.extension.url", "representation": [ "xmlAttr" ], "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": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "uri" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "fixedUri": "http://hl7.org/fhir/StructureDefinition/elementdefinition-question", "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.extension:Question.value[x]", "path": "ElementDefinition.extension.value[x]", "min": 1, "max": "1", "base": { "path": "Extension.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.extension:AllowedUnits", "path": "ElementDefinition.extension", "sliceName": "AllowedUnits", "comment": "Use a value set if more than one unit of measure is possible. Value sets will typically be short enough to display in a drop-down selection list.", "min": 0, "max": "1", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/elementdefinition-allowedUnits" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.extension:AllowedUnits.id", "path": "ElementDefinition.extension.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.extension:AllowedUnits.extension", "path": "ElementDefinition.extension.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "min": 0, "max": "0", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.extension:AllowedUnits.url", "path": "ElementDefinition.extension.url", "representation": [ "xmlAttr" ], "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": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "uri" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "fixedUri": "http://hl7.org/fhir/StructureDefinition/elementdefinition-allowedUnits", "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.extension:AllowedUnits.value[x]", "path": "ElementDefinition.extension.value[x]", "min": 1, "max": "1", "base": { "path": "Extension.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" }, { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/ValueSet" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Units" } ], "strength": "required", "description": "Units of measure allowed for an element.", "valueSet": "http://hl7.org/fhir/ValueSet/ucum-units|4.0.1" } }, { "id": "ElementDefinition.modifierExtension", "path": "ElementDefinition.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "ElementDefinition.path", "path": "ElementDefinition.path", "min": 1, "max": "1", "base": { "path": "ElementDefinition.path", "min": 1, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.representation", "path": "ElementDefinition.representation", "comment": "In resources, this is rarely used except for special cases where the representation deviates from the normal, and can only be done in the base standard (and profiles must reproduce what the base standard does). This element is used quite commonly in Logical models when the logical models represent a specific serialization format (e.g. CDA, v2 etc.).", "min": 0, "max": "0", "base": { "path": "ElementDefinition.representation", "min": 0, "max": "*" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "PropertyRepresentation" } ], "strength": "required", "description": "How a property is represented when serialized.", "valueSet": "http://hl7.org/fhir/ValueSet/property-representation|4.0.1" } }, { "id": "ElementDefinition.sliceName", "path": "ElementDefinition.sliceName", "comment": "The name SHALL be unique within the structure within the context of the constrained resource element. (Though to avoid confusion, uniqueness across all elements is recommended.).", "min": 0, "max": "1", "base": { "path": "ElementDefinition.sliceName", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.sliceIsConstraining", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "path": "ElementDefinition.sliceIsConstraining", "comment": "If set to true, an ancestor profile SHALL have a slicing definition with this name. If set to false, no ancestor profile is permitted to have a slicing definition with this name.", "min": 0, "max": "1", "base": { "path": "ElementDefinition.sliceIsConstraining", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.label", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "ElementDefinition.label", "comment": "See also the extension (http://hl7.org/fhir/StructureDefinition/elementdefinition-question)[extension-elementdefinition-question.html].", "min": 0, "max": "1", "base": { "path": "ElementDefinition.label", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.code", "path": "ElementDefinition.code", "comment": "The concept SHALL be properly aligned with the data element definition and other constraints, as defined in the code system, including relationships, of any code listed here. Where multiple codes exist in a terminology that could correspond to the data element, the most granular code(s) should be selected, so long as they are not more restrictive than the data element itself. The mappings may be used to provide more or less granular or structured equivalences in the code system.", "min": 0, "max": "*", "base": { "path": "ElementDefinition.code", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ElementDefinitionCode" } ], "strength": "example", "description": "Codes that indicate the meaning of a data element.", "valueSet": "http://hl7.org/fhir/ValueSet/observation-codes" } }, { "id": "ElementDefinition.slicing", "path": "ElementDefinition.slicing", "comment": "The first element in the sequence, the one that carries the slicing, is the definition that applies to all the slices. This is based on the unconstrained element, but can apply any constraints as appropriate. This may include the common constraints on the children of the element.", "min": 0, "max": "0", "base": { "path": "ElementDefinition.slicing", "min": 0, "max": "1" }, "type": [ { "code": "Element" } ], "constraint": [ { "key": "eld-1", "severity": "error", "human": "If there are no discriminators, there must be a definition", "expression": "discriminator.exists() or description.exists()", "xpath": "(f:discriminator) or (f:description)", "source": "http://hl7.org/fhir/StructureDefinition/ElementDefinition" }, { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.slicing.id", "path": "ElementDefinition.slicing.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.slicing.extension", "path": "ElementDefinition.slicing.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.slicing.discriminator", "path": "ElementDefinition.slicing.discriminator", "comment": "If there is no discriminator, the content is hard to process, so this should be avoided.", "min": 0, "max": "*", "base": { "path": "ElementDefinition.slicing.discriminator", "min": 0, "max": "*" }, "type": [ { "code": "Element" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.slicing.discriminator.id", "path": "ElementDefinition.slicing.discriminator.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.slicing.discriminator.extension", "path": "ElementDefinition.slicing.discriminator.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.slicing.discriminator.type", "path": "ElementDefinition.slicing.discriminator.type", "min": 1, "max": "1", "base": { "path": "ElementDefinition.slicing.discriminator.type", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DiscriminatorType" } ], "strength": "required", "description": "How an element value is interpreted when discrimination is evaluated.", "valueSet": "http://hl7.org/fhir/ValueSet/discriminator-type|4.0.1" } }, { "id": "ElementDefinition.slicing.discriminator.path", "path": "ElementDefinition.slicing.discriminator.path", "comment": "The only FHIRPath functions that are allowed are as(type), resolve(), and extension(url).", "min": 1, "max": "1", "base": { "path": "ElementDefinition.slicing.discriminator.path", "min": 1, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.slicing.description", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "ElementDefinition.slicing.description", "comment": "If it's really not possible to differentiate them, the design should be re-evaluated to make the content usable.", "min": 0, "max": "1", "base": { "path": "ElementDefinition.slicing.description", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "condition": [ "eld-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.slicing.ordered", "path": "ElementDefinition.slicing.ordered", "comment": "Order should only be required when it is a pressing concern for presentation. Profile authors should consider making the order a feature of the rules about the narrative, not the rules about the data - requiring ordered data makes the profile much less re-usable.", "min": 0, "max": "1", "base": { "path": "ElementDefinition.slicing.ordered", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "meaningWhenMissing": "Order is not required unless specified", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.slicing.rules", "path": "ElementDefinition.slicing.rules", "comment": "Allowing additional elements makes for a much for flexible template - it's open for use in wider contexts, but also means that the content of the resource is not closed, and applications have to decide how to handle content not described by the profile.", "min": 1, "max": "1", "base": { "path": "ElementDefinition.slicing.rules", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "SlicingRules" } ], "strength": "required", "description": "How slices are interpreted when evaluating an instance.", "valueSet": "http://hl7.org/fhir/ValueSet/resource-slicing-rules|4.0.1" } }, { "id": "ElementDefinition.short", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "ElementDefinition.short", "comment": "It is easy for a different short definition to change the meaning of an element and this can have nasty downstream consequences. Please be careful when providing short definitions in a profile.", "min": 0, "max": "0", "base": { "path": "ElementDefinition.short", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.definition", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "ElementDefinition.definition", "comment": "It is easy for a different definition to change the meaning of an element and this can have nasty downstream consequences. Please be careful when providing definitions in a profile.", "min": 0, "max": "1", "base": { "path": "ElementDefinition.definition", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.comment", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "ElementDefinition.comment", "comment": "If it is possible to capture usage rules using constraints, that mechanism should be used in preference to this element.", "min": 0, "max": "1", "base": { "path": "ElementDefinition.comment", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.requirements", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "ElementDefinition.requirements", "comment": "This element does not describe the usage of the element (that's done in comments), rather it's for traceability of *why* the element is either needed or why the constraints exist as they do. This may be used to point to source materials or specifications that drove the structure of this data element.", "min": 0, "max": "1", "base": { "path": "ElementDefinition.requirements", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.alias", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "ElementDefinition.alias", "min": 0, "max": "*", "base": { "path": "ElementDefinition.alias", "min": 0, "max": "*" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.min", "path": "ElementDefinition.min", "min": 0, "max": "1", "base": { "path": "ElementDefinition.min", "min": 0, "max": "1" }, "type": [ { "code": "unsignedInt" } ], "condition": [ "eld-2" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.max", "path": "ElementDefinition.max", "min": 0, "max": "1", "base": { "path": "ElementDefinition.max", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "condition": [ "eld-3", "eld-2" ], "constraint": [ { "key": "eld-3", "severity": "error", "human": "Max SHALL be a number or \"*\"", "expression": "empty() or ($this = '*') or (toInteger() >= 0)", "xpath": "@value='*' or (normalize-space(@value)!='' and normalize-space(translate(@value, '0123456789',''))='')" }, { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.base", "path": "ElementDefinition.base", "comment": "The base information does not carry any information that could not be determined from the path and related profiles, but making this determination requires both that the related profiles are available, and that the algorithm to determine them be available. For tooling simplicity, the base information must always be populated in element definitions in snap shots, even if it is the same.", "min": 0, "max": "1", "base": { "path": "ElementDefinition.base", "min": 0, "max": "1" }, "type": [ { "code": "Element" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.base.id", "path": "ElementDefinition.base.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.base.extension", "path": "ElementDefinition.base.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.base.path", "path": "ElementDefinition.base.path", "min": 1, "max": "1", "base": { "path": "ElementDefinition.base.path", "min": 1, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.base.min", "path": "ElementDefinition.base.min", "comment": "This is provided for consistency with max, and may affect code generation of mandatory elements of the base resource are generated differently (some reference implementations have done this).", "min": 1, "max": "1", "base": { "path": "ElementDefinition.base.min", "min": 1, "max": "1" }, "type": [ { "code": "unsignedInt" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.base.max", "path": "ElementDefinition.base.max", "comment": "This is provided to code generation, since the serialization representation in JSON differs depending on whether the base element has max > 1. Also, some forms of code generation may differ.", "min": 1, "max": "1", "base": { "path": "ElementDefinition.base.max", "min": 1, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.contentReference", "path": "ElementDefinition.contentReference", "comment": "ContentReferences can only be defined in specializations, not constrained types, and they cannot be changed and always reference the non-constrained definition.", "min": 0, "max": "0", "base": { "path": "ElementDefinition.contentReference", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "condition": [ "eld-5" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.type", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-explicit-type-name", "valueString": "TypeRef" } ], "path": "ElementDefinition.type", "comment": "The Type of the element can be left blank in a differential constraint, in which case the type is inherited from the resource. Abstract types are not permitted to appear as a type when multiple types are listed. (I.e. Abstract types cannot be part of a choice).", "min": 0, "max": "*", "base": { "path": "ElementDefinition.type", "min": 0, "max": "*" }, "type": [ { "code": "Element" } ], "condition": [ "eld-13" ], "constraint": [ { "key": "eld-4", "severity": "error", "human": "Aggregation may only be specified if one of the allowed types for the element is a reference", "expression": "aggregation.empty() or (code = 'Reference') or (code = 'canonical')", "xpath": "not(exists(f:aggregation)) or exists(f:code[@value = 'Reference']) or exists(f:code[@value = 'canonical'])", "source": "http://hl7.org/fhir/StructureDefinition/ElementDefinition" }, { "key": "eld-17", "severity": "error", "human": "targetProfile is only allowed if the type is Reference or canonical", "expression": "(code='Reference' or code = 'canonical') or targetProfile.empty()", "xpath": "not(exists(f:targetProfile)) or (f:code/@value = 'Reference')", "source": "http://hl7.org/fhir/StructureDefinition/ElementDefinition" }, { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.type.id", "path": "ElementDefinition.type.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.type.extension", "path": "ElementDefinition.type.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.type.code", "path": "ElementDefinition.type.code", "comment": "If the element is a reference to another resource, this element contains \"Reference\", and the targetProfile element defines what resources can be referenced. The targetProfile may be a reference to the general definition of a resource (e.g. http://hl7.org/fhir/StructureDefinition/Patient).", "min": 1, "max": "1", "base": { "path": "ElementDefinition.type.code", "min": 1, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "FHIRDefinedTypeExt" } ], "strength": "extensible", "description": "Either a resource or a data type, including logical model types.", "valueSet": "http://hl7.org/fhir/ValueSet/defined-types" } }, { "id": "ElementDefinition.type.profile", "path": "ElementDefinition.type.profile", "comment": "It is possible to profile backbone element (e.g. part of a resource), using the [profile-element](http://hl7.org/fhir/extension-elementdefinition-profile-element.html) extension.", "min": 0, "max": "0", "base": { "path": "ElementDefinition.type.profile", "min": 0, "max": "*" }, "type": [ { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/StructureDefinition", "http://hl7.org/fhir/StructureDefinition/ImplementationGuide" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.type.targetProfile", "path": "ElementDefinition.type.targetProfile", "min": 0, "max": "*", "base": { "path": "ElementDefinition.type.targetProfile", "min": 0, "max": "*" }, "type": [ { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/StructureDefinition", "http://hl7.org/fhir/StructureDefinition/ImplementationGuide" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.type.aggregation", "path": "ElementDefinition.type.aggregation", "comment": "See [Aggregation Rules](http://hl7.org/fhir/elementdefinition.html#aggregation) for further clarification.", "min": 0, "max": "0", "base": { "path": "ElementDefinition.type.aggregation", "min": 0, "max": "*" }, "type": [ { "code": "code" } ], "condition": [ "eld-4" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "AggregationMode" } ], "strength": "required", "description": "How resource references can be aggregated.", "valueSet": "http://hl7.org/fhir/ValueSet/resource-aggregation-mode|4.0.1" } }, { "id": "ElementDefinition.type.versioning", "path": "ElementDefinition.type.versioning", "comment": "The base specification never makes a rule as to which form is allowed, but implementation guides may do this. See [Aggregation Rules](http://hl7.org/fhir/elementdefinition.html#aggregation) for further clarification.", "min": 0, "max": "1", "base": { "path": "ElementDefinition.type.versioning", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ReferenceVersionRules" } ], "strength": "required", "description": "Whether a reference needs to be version specific or version independent, or whether either can be used.", "valueSet": "http://hl7.org/fhir/ValueSet/reference-version-rules|4.0.1" } }, { "id": "ElementDefinition.defaultValue[x]", "path": "ElementDefinition.defaultValue[x]", "comment": "Specifying a default value means that the property can never been unknown - it must always have a value. Further, the default value can never be changed, or changed in constraints on content models. Defining default values creates many difficulties in implementation (e.g. when is a value missing?). For these reasons, default values are (and should be) used extremely sparingly. \n\nNo default values are ever defined in the FHIR specification, nor can they be defined in constraints (\"profiles\") on data types or resources. This element only exists so that default values may be defined in logical models.\r\n This element should only be used on child elements of complex data elements.", "min": 0, "max": "1", "base": { "path": "ElementDefinition.defaultValue[x]", "min": 0, "max": "1" }, "type": [ { "code": "base64Binary" }, { "code": "boolean" }, { "code": "canonical" }, { "code": "code" }, { "code": "date" }, { "code": "dateTime" }, { "code": "decimal" }, { "code": "id" }, { "code": "instant" }, { "code": "integer" }, { "code": "markdown" }, { "code": "oid" }, { "code": "positiveInt" }, { "code": "string" }, { "code": "time" }, { "code": "unsignedInt" }, { "code": "uri" }, { "code": "url" }, { "code": "uuid" }, { "code": "Address" }, { "code": "Age" }, { "code": "Annotation" }, { "code": "Attachment" }, { "code": "CodeableConcept" }, { "code": "Coding" }, { "code": "ContactPoint" }, { "code": "Count" }, { "code": "Distance" }, { "code": "Duration" }, { "code": "HumanName" }, { "code": "Identifier" }, { "code": "Money" }, { "code": "Period" }, { "code": "Quantity" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "Reference" }, { "code": "SampledData" }, { "code": "Signature" }, { "code": "Timing" }, { "code": "ContactDetail" }, { "code": "Contributor" }, { "code": "DataRequirement" }, { "code": "Expression" }, { "code": "ParameterDefinition" }, { "code": "RelatedArtifact" }, { "code": "TriggerDefinition" }, { "code": "UsageContext" }, { "code": "Dosage" }, { "code": "Meta" } ], "condition": [ "eld-15" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.meaningWhenMissing", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "ElementDefinition.meaningWhenMissing", "comment": "Implicit meanings for missing values can only be specified on a resource, data type, or extension definition, and never in a profile that applies to one of these. An implicit meaning for a missing value can never be changed, and specifying one has the consequence that constraining its use in profiles eliminates use cases as possibilities, not merely moving them out of scope.\r\n This element should only be used on child elements of complex data elements.", "min": 0, "max": "1", "base": { "path": "ElementDefinition.meaningWhenMissing", "min": 0, "max": "1" }, "type": [ { "code": "markdown" } ], "condition": [ "eld-15" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.orderMeaning", "path": "ElementDefinition.orderMeaning", "comment": "This element can only be asserted on repeating elements and can only be introduced when defining resources or data types. It can be further refined profiled elements but if absent in the base type, a profile cannot assert meaning.", "min": 0, "max": "1", "base": { "path": "ElementDefinition.orderMeaning", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.fixed[x]", "path": "ElementDefinition.fixed[x]", "comment": "This is not recommended for Coding and CodeableConcept since these often have highly contextual properties such as version or display.", "min": 0, "max": "0", "base": { "path": "ElementDefinition.fixed[x]", "min": 0, "max": "1" }, "type": [ { "code": "base64Binary" }, { "code": "boolean" }, { "code": "canonical" }, { "code": "code" }, { "code": "date" }, { "code": "dateTime" }, { "code": "decimal" }, { "code": "id" }, { "code": "instant" }, { "code": "integer" }, { "code": "markdown" }, { "code": "oid" }, { "code": "positiveInt" }, { "code": "string" }, { "code": "time" }, { "code": "unsignedInt" }, { "code": "uri" }, { "code": "url" }, { "code": "uuid" }, { "code": "Address" }, { "code": "Age" }, { "code": "Annotation" }, { "code": "Attachment" }, { "code": "CodeableConcept" }, { "code": "Coding" }, { "code": "ContactPoint" }, { "code": "Count" }, { "code": "Distance" }, { "code": "Duration" }, { "code": "HumanName" }, { "code": "Identifier" }, { "code": "Money" }, { "code": "Period" }, { "code": "Quantity" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "Reference" }, { "code": "SampledData" }, { "code": "Signature" }, { "code": "Timing" }, { "code": "ContactDetail" }, { "code": "Contributor" }, { "code": "DataRequirement" }, { "code": "Expression" }, { "code": "ParameterDefinition" }, { "code": "RelatedArtifact" }, { "code": "TriggerDefinition" }, { "code": "UsageContext" }, { "code": "Dosage" }, { "code": "Meta" } ], "condition": [ "eld-5", "eld-6", "eld-8" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.pattern[x]", "path": "ElementDefinition.pattern[x]", "comment": "Mostly used for fixing values of CodeableConcept. In general, pattern[x] is not intended for use with primitive types, where is has the same meaning as fixed[x].", "min": 0, "max": "0", "base": { "path": "ElementDefinition.pattern[x]", "min": 0, "max": "1" }, "type": [ { "code": "base64Binary" }, { "code": "boolean" }, { "code": "canonical" }, { "code": "code" }, { "code": "date" }, { "code": "dateTime" }, { "code": "decimal" }, { "code": "id" }, { "code": "instant" }, { "code": "integer" }, { "code": "markdown" }, { "code": "oid" }, { "code": "positiveInt" }, { "code": "string" }, { "code": "time" }, { "code": "unsignedInt" }, { "code": "uri" }, { "code": "url" }, { "code": "uuid" }, { "code": "Address" }, { "code": "Age" }, { "code": "Annotation" }, { "code": "Attachment" }, { "code": "CodeableConcept" }, { "code": "Coding" }, { "code": "ContactPoint" }, { "code": "Count" }, { "code": "Distance" }, { "code": "Duration" }, { "code": "HumanName" }, { "code": "Identifier" }, { "code": "Money" }, { "code": "Period" }, { "code": "Quantity" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "Reference" }, { "code": "SampledData" }, { "code": "Signature" }, { "code": "Timing" }, { "code": "ContactDetail" }, { "code": "Contributor" }, { "code": "DataRequirement" }, { "code": "Expression" }, { "code": "ParameterDefinition" }, { "code": "RelatedArtifact" }, { "code": "TriggerDefinition" }, { "code": "UsageContext" }, { "code": "Dosage" }, { "code": "Meta" } ], "condition": [ "eld-5", "eld-7", "eld-8" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.example", "path": "ElementDefinition.example", "comment": "Examples will most commonly be present for data where it's not implicitly obvious from either the data type or value set what the values might be. (I.e. Example values for dates or quantities would generally be unnecessary.) If the example value is fully populated, the publication tool can generate an instance automatically.", "min": 0, "max": "*", "base": { "path": "ElementDefinition.example", "min": 0, "max": "*" }, "type": [ { "code": "Element" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.example.id", "path": "ElementDefinition.example.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.example.extension", "path": "ElementDefinition.example.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.example.label", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "ElementDefinition.example.label", "min": 1, "max": "1", "base": { "path": "ElementDefinition.example.label", "min": 1, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.example.value[x]", "path": "ElementDefinition.example.value[x]", "min": 1, "max": "1", "base": { "path": "ElementDefinition.example.value[x]", "min": 1, "max": "1" }, "type": [ { "code": "base64Binary" }, { "code": "boolean" }, { "code": "canonical" }, { "code": "code" }, { "code": "date" }, { "code": "dateTime" }, { "code": "decimal" }, { "code": "id" }, { "code": "instant" }, { "code": "integer" }, { "code": "markdown" }, { "code": "oid" }, { "code": "positiveInt" }, { "code": "string" }, { "code": "time" }, { "code": "unsignedInt" }, { "code": "uri" }, { "code": "url" }, { "code": "uuid" }, { "code": "Address" }, { "code": "Age" }, { "code": "Annotation" }, { "code": "Attachment" }, { "code": "CodeableConcept" }, { "code": "Coding" }, { "code": "ContactPoint" }, { "code": "Count" }, { "code": "Distance" }, { "code": "Duration" }, { "code": "HumanName" }, { "code": "Identifier" }, { "code": "Money" }, { "code": "Period" }, { "code": "Quantity" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "Reference" }, { "code": "SampledData" }, { "code": "Signature" }, { "code": "Timing" }, { "code": "ContactDetail" }, { "code": "Contributor" }, { "code": "DataRequirement" }, { "code": "Expression" }, { "code": "ParameterDefinition" }, { "code": "RelatedArtifact" }, { "code": "TriggerDefinition" }, { "code": "UsageContext" }, { "code": "Dosage" }, { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.minValue[x]", "path": "ElementDefinition.minValue[x]", "comment": "Except for date/date/instant, the type of the minValue[x] SHALL be the same as the specified type of the element. For the date/dateTime/instant values, the type of minValue[x] SHALL be either the same, or a [Duration](http://hl7.org/fhir/datatypes.html#Duration) which specifies a relative time limit to the current time. The duration value is positive, and is subtracted from the current clock to determine the minimum allowable value. A minimum value for a Quantity is interpreted as an canonical minimum - e.g. you cannot provide 100mg if the minimum value is 10g.", "min": 0, "max": "1", "base": { "path": "ElementDefinition.minValue[x]", "min": 0, "max": "1" }, "type": [ { "code": "date" }, { "code": "dateTime" }, { "code": "instant" }, { "code": "time" }, { "code": "decimal" }, { "code": "integer" }, { "code": "positiveInt" }, { "code": "unsignedInt" }, { "code": "Quantity" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.maxValue[x]", "path": "ElementDefinition.maxValue[x]", "comment": "Except for date/date/instant, the type of the maxValue[x] SHALL be the same as the specified type of the element. For the date/dateTime/instant values, the type of maxValue[x] SHALL be either the same, or a [Duration](http://hl7.org/fhir/datatypes.html#Duration) which specifies a relative time limit to the current time. The duration value is positive, and is added to the current clock to determine the maximum allowable value. A maximum value for a Quantity is interpreted as an canonical maximum - e.g. you cannot provide 10g if the maximum value is 50mg.", "min": 0, "max": "1", "base": { "path": "ElementDefinition.maxValue[x]", "min": 0, "max": "1" }, "type": [ { "code": "date" }, { "code": "dateTime" }, { "code": "instant" }, { "code": "time" }, { "code": "decimal" }, { "code": "integer" }, { "code": "positiveInt" }, { "code": "unsignedInt" }, { "code": "Quantity" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.maxLength", "path": "ElementDefinition.maxLength", "comment": "Receivers are not required to reject instances that exceed the maximum length. The full length could be stored. In some cases, data might be truncated, though truncation should be undertaken with care and an understanding of the consequences of doing so. If not specified, there is no conformance expectation for length support.", "min": 0, "max": "1", "base": { "path": "ElementDefinition.maxLength", "min": 0, "max": "1" }, "type": [ { "code": "integer" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.condition", "path": "ElementDefinition.condition", "min": 0, "max": "*", "base": { "path": "ElementDefinition.condition", "min": 0, "max": "*" }, "type": [ { "code": "id" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.constraint", "path": "ElementDefinition.constraint", "comment": "Constraints should be declared on the \"context\" element - the lowest element in the hierarchy that is common to all nodes referenced by the constraint.", "min": 0, "max": "*", "base": { "path": "ElementDefinition.constraint", "min": 0, "max": "*" }, "type": [ { "code": "Element" } ], "constraint": [ { "key": "eld-21", "severity": "warning", "human": "Constraints should have an expression or else validators will not be able to enforce them", "expression": "expression.exists()", "xpath": "exists(f:expression/@value)" }, { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.constraint.id", "path": "ElementDefinition.constraint.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.constraint.extension", "path": "ElementDefinition.constraint.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.constraint.key", "path": "ElementDefinition.constraint.key", "min": 1, "max": "1", "base": { "path": "ElementDefinition.constraint.key", "min": 1, "max": "1" }, "type": [ { "code": "id" } ], "condition": [ "eld-14" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.constraint.requirements", "path": "ElementDefinition.constraint.requirements", "comment": "To be used if the reason for the constraint might not be intuitive to all implementers.", "min": 0, "max": "1", "base": { "path": "ElementDefinition.constraint.requirements", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.constraint.severity", "path": "ElementDefinition.constraint.severity", "comment": "This allows constraints to be asserted as \"shall\" (error) and \"should\" (warning).", "min": 1, "max": "1", "base": { "path": "ElementDefinition.constraint.severity", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ConstraintSeverity" } ], "strength": "required", "description": "SHALL applications comply with this constraint?", "valueSet": "http://hl7.org/fhir/ValueSet/constraint-severity|4.0.1" } }, { "id": "ElementDefinition.constraint.human", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "ElementDefinition.constraint.human", "comment": "Should be expressed in business terms as much as possible.", "min": 1, "max": "1", "base": { "path": "ElementDefinition.constraint.human", "min": 1, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.constraint.expression", "path": "ElementDefinition.constraint.expression", "comment": "In the absense of an expression, the expression is likely not enforceable by validators, and might be missed by many systems.", "min": 0, "max": "1", "base": { "path": "ElementDefinition.constraint.expression", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.constraint.xpath", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "path": "ElementDefinition.constraint.xpath", "comment": "Elements SHALL use \"f\" as the namespace prefix for the FHIR namespace, and \"x\" for the xhtml namespace, and SHALL NOT use any other prefixes. Note: XPath is generally considered not useful because it does not apply to JSON and other formats and because of XSLT implementation issues, and may be removed in the future.", "min": 0, "max": "1", "base": { "path": "ElementDefinition.constraint.xpath", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.constraint.source", "path": "ElementDefinition.constraint.source", "comment": "This is used when, e.g. rendering, where it is not useful to present inherited constraints when rendering the snapshot.", "min": 0, "max": "1", "base": { "path": "ElementDefinition.constraint.source", "min": 0, "max": "1" }, "type": [ { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/StructureDefinition" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.mustSupport", "path": "ElementDefinition.mustSupport", "comment": "\"Something useful\" is context dependent and impossible to describe in the base FHIR specification. For this reason, tue mustSupport flag is never set to true by the FHIR specification itself - it is only set to true in profiles. A profile on a type can always make musSupport = true if it is false in the base type but cannot make mustSupport = false if it is true in the base type. This is done in [Resource Profiles](http://hl7.org/fhir/profiling.html#mustsupport), where the profile labels an element as mustSupport=true. When a profile does this, it SHALL also make clear exactly what kind of \"support\" is required, as this can mean many things. Note that an element that has the property IsModifier is not necessarily a \"key\" element (e.g. one of the important elements to make use of the resource), nor is it automatically mustSupport - however both of these things are more likely to be true for IsModifier elements than for other elements.", "min": 0, "max": "1", "base": { "path": "ElementDefinition.mustSupport", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "meaningWhenMissing": "In a base type, where the element is being defined for the first time, the element is assumed to be mustSupport = false. In a profile (a constraint on an existing type), if mustSupport is not specific in either the differentil or the snapshot, the mustSupport value is not changed fro the base definition. Not, though, that the snapshot SHOULD always populate the mustSuppot value", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.isModifier", "path": "ElementDefinition.isModifier", "comment": "Only the definition of an element can set IsModifier true - either the specification itself or where an extension is originally defined. Once set, it cannot be changed in derived profiles. An element/extension that has isModifier=true SHOULD also have a minimum cardinality of 1, so that there is no lack of clarity about what to do if it is missing. If it can be missing, the definition SHALL make the meaning of a missing element clear.", "min": 0, "max": "0", "base": { "path": "ElementDefinition.isModifier", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "meaningWhenMissing": "An element is not a modifier element unless it is explicitly specified to be one", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.isModifierReason", "path": "ElementDefinition.isModifierReason", "min": 0, "max": "1", "base": { "path": "ElementDefinition.isModifierReason", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.isSummary", "path": "ElementDefinition.isSummary", "comment": "Some resources include a set of simple metadata, and some very large data. This element is used to reduce the quantity of data returned in searches. Note that servers may pre-cache summarized resources for optimal performance, so servers might not support per-profile use of the isSummary flag. When a request is made with _summary=true, serailisers only include elements marked as 'isSummary = true'. Other than Attachment.data, all data type properties are included in the summary form. In resource and data type definitions, if an element is at the root or has a parent that is 'mustSupport' and the minimum cardinality is 1 or the element is a modifier, it must be marked as isSummary=true.", "min": 0, "max": "0", "base": { "path": "ElementDefinition.isSummary", "min": 0, "max": "1" }, "type": [ { "code": "boolean" } ], "meaningWhenMissing": "An element is not included in the summary unless it is explicitly specified to be so", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.binding", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-explicit-type-name", "valueString": "ElementDefinitionBinding" } ], "path": "ElementDefinition.binding", "comment": "For a CodeableConcept, when no codes are allowed - only text, use a binding of strength \"required\" with a description explaining that no coded values are allowed and what sort of information to put in the \"text\" element.", "min": 0, "max": "1", "base": { "path": "ElementDefinition.binding", "min": 0, "max": "1" }, "type": [ { "code": "Element" } ], "condition": [ "eld-11" ], "constraint": [ { "key": "eld-12", "severity": "error", "human": "ValueSet SHALL start with http:// or https:// or urn:", "expression": "valueSet.exists() implies (valueSet.startsWith('http:') or valueSet.startsWith('https') or valueSet.startsWith('urn:'))", "xpath": "(starts-with(string(f:valueSet/@value), 'http:') or starts-with(string(f:valueSet/@value), 'https:') or starts-with(string(f:valueSet/@value), 'urn:'))" }, { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.binding.id", "path": "ElementDefinition.binding.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.binding.extension", "path": "ElementDefinition.binding.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.binding.strength", "path": "ElementDefinition.binding.strength", "comment": "For further discussion, see [Using Terminologies](http://hl7.org/fhir/terminologies.html).", "min": 1, "max": "1", "base": { "path": "ElementDefinition.binding.strength", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "BindingStrength" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "required", "description": "Indication of the degree of conformance expectations associated with a binding.", "valueSet": "http://hl7.org/fhir/ValueSet/binding-strength|4.0.1" } }, { "id": "ElementDefinition.binding.description", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable", "valueBoolean": true } ], "path": "ElementDefinition.binding.description", "min": 0, "max": "1", "base": { "path": "ElementDefinition.binding.description", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.binding.valueSet", "path": "ElementDefinition.binding.valueSet", "comment": "The reference may be version-specific or not (e.g. have a |[version] at the end of the canonical URL).", "min": 0, "max": "1", "base": { "path": "ElementDefinition.binding.valueSet", "min": 0, "max": "1" }, "type": [ { "code": "canonical", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/ValueSet" ] } ], "condition": [ "eld-12" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.mapping", "path": "ElementDefinition.mapping", "comment": "Mappings are not necessarily specific enough for safe translation.", "min": 0, "max": "*", "base": { "path": "ElementDefinition.mapping", "min": 0, "max": "*" }, "type": [ { "code": "Element" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.mapping.id", "path": "ElementDefinition.mapping.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.mapping.extension", "path": "ElementDefinition.mapping.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "ElementDefinition.mapping.identity", "path": "ElementDefinition.mapping.identity", "min": 1, "max": "1", "base": { "path": "ElementDefinition.mapping.identity", "min": 1, "max": "1" }, "type": [ { "code": "id" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.mapping.language", "path": "ElementDefinition.mapping.language", "comment": "If omitted, then there can be no expectation of computational interpretation of the mapping.", "min": 0, "max": "1", "base": { "path": "ElementDefinition.mapping.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "MimeType" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "required", "description": "The mime type of an attachment. Any valid mime type is allowed.", "valueSet": "http://hl7.org/fhir/ValueSet/mimetypes|4.0.1" } }, { "id": "ElementDefinition.mapping.map", "path": "ElementDefinition.mapping.map", "comment": "For most mappings, the syntax is undefined. Syntax will be provided for mappings to the RIM. Multiple mappings may be possible and may include constraints on other resource elements that identify when a particular mapping applies.", "min": 1, "max": "1", "base": { "path": "ElementDefinition.mapping.map", "min": 1, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "ElementDefinition.mapping.comment", "path": "ElementDefinition.mapping.comment", "min": 0, "max": "1", "base": { "path": "ElementDefinition.mapping.comment", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true } ] }, "differential": { "element": [ { "id": "ElementDefinition", "path": "ElementDefinition", "min": 0, "max": "*" }, { "id": "ElementDefinition.extension:Question", "path": "ElementDefinition.extension", "sliceName": "Question", "min": 0, "max": "*", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/elementdefinition-question" ] } ] }, { "id": "ElementDefinition.extension:AllowedUnits", "path": "ElementDefinition.extension", "sliceName": "AllowedUnits", "min": 0, "max": "1", "type": [ { "code": "Extension", "profile": [ "http://hl7.org/fhir/StructureDefinition/elementdefinition-allowedUnits" ] } ] }, { "id": "ElementDefinition.representation", "path": "ElementDefinition.representation", "min": 0, "max": "0" }, { "id": "ElementDefinition.slicing", "path": "ElementDefinition.slicing", "min": 0, "max": "0" }, { "id": "ElementDefinition.short", "path": "ElementDefinition.short", "min": 0, "max": "0" }, { "id": "ElementDefinition.contentReference", "path": "ElementDefinition.contentReference", "min": 0, "max": "0" }, { "id": "ElementDefinition.type", "path": "ElementDefinition.type" }, { "id": "ElementDefinition.type.profile", "path": "ElementDefinition.type.profile", "min": 0, "max": "0" }, { "id": "ElementDefinition.type.aggregation", "path": "ElementDefinition.type.aggregation", "min": 0, "max": "0" }, { "id": "ElementDefinition.defaultValue[x]", "path": "ElementDefinition.defaultValue[x]", "comment": "... This element should only be used on child elements of complex data elements." }, { "id": "ElementDefinition.meaningWhenMissing", "path": "ElementDefinition.meaningWhenMissing", "comment": "... This element should only be used on child elements of complex data elements." }, { "id": "ElementDefinition.fixed[x]", "path": "ElementDefinition.fixed[x]", "min": 0, "max": "0" }, { "id": "ElementDefinition.pattern[x]", "path": "ElementDefinition.pattern[x]", "min": 0, "max": "0" }, { "id": "ElementDefinition.isModifier", "path": "ElementDefinition.isModifier", "min": 0, "max": "0" }, { "id": "ElementDefinition.isSummary", "path": "ElementDefinition.isSummary", "min": 0, "max": "0" } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/ehrsrle-auditevent", "resource": { "resourceType": "StructureDefinition", "id": "ehrsrle-auditevent", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "ehr" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/ehrsrle-auditevent", "version": "4.0.1", "name": "EHRS FM Record Lifecycle Event - Audit Event", "status": "draft", "experimental": false, "date": "2014-12-04", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "AuditEvent", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/AuditEvent", "derivation": "constraint", "snapshot": { "element": [ { "id": "AuditEvent", "path": "AuditEvent", "comment": "Based on IHE-ATNA.", "min": 0, "max": "*", "base": { "path": "AuditEvent", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" } ], "isModifier": false, "isSummary": false }, { "id": "AuditEvent.id", "path": "AuditEvent.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "AuditEvent.meta", "path": "AuditEvent.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "AuditEvent.implicitRules", "path": "AuditEvent.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "AuditEvent.language", "path": "AuditEvent.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "AuditEvent.text", "path": "AuditEvent.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "AuditEvent.contained", "path": "AuditEvent.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "AuditEvent.extension", "path": "AuditEvent.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "AuditEvent.modifierExtension", "path": "AuditEvent.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "AuditEvent.type", "path": "AuditEvent.type", "min": 1, "max": "1", "base": { "path": "AuditEvent.type", "min": 1, "max": "1" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "AuditEventType" } ], "strength": "extensible", "description": "Type of event.", "valueSet": "http://hl7.org/fhir/ValueSet/audit-event-type" } }, { "id": "AuditEvent.subtype", "path": "AuditEvent.subtype", "min": 0, "max": "*", "base": { "path": "AuditEvent.subtype", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "AuditEventSubType" } ], "strength": "extensible", "description": "Sub-type of event.", "valueSet": "http://hl7.org/fhir/ValueSet/audit-event-sub-type" } }, { "id": "AuditEvent.action", "path": "AuditEvent.action", "min": 0, "max": "1", "base": { "path": "AuditEvent.action", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "AuditEventAction" } ], "strength": "required", "description": "Indicator for type of action performed during the event that generated the event.", "valueSet": "http://hl7.org/fhir/ValueSet/audit-event-action|4.0.1" } }, { "id": "AuditEvent.period", "path": "AuditEvent.period", "comment": "The period can be a little arbitrary; where possible, the time should correspond to human assessment of the activity time.", "min": 0, "max": "1", "base": { "path": "AuditEvent.period", "min": 0, "max": "1" }, "type": [ { "code": "Period" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "AuditEvent.recorded", "path": "AuditEvent.recorded", "comment": "In a distributed system, some sort of common time base (e.g. an NTP [RFC1305] server) is a good implementation tactic.", "min": 1, "max": "1", "base": { "path": "AuditEvent.recorded", "min": 1, "max": "1" }, "type": [ { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "AuditEvent.outcome", "path": "AuditEvent.outcome", "comment": "In some cases a \"success\" may be partial, for example, an incomplete or interrupted transfer of a radiological study. For the purpose of establishing accountability, these distinctions are not relevant.", "min": 0, "max": "1", "base": { "path": "AuditEvent.outcome", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "AuditEventOutcome" } ], "strength": "required", "description": "Indicates whether the event succeeded or failed.", "valueSet": "http://hl7.org/fhir/ValueSet/audit-event-outcome|4.0.1" } }, { "id": "AuditEvent.outcomeDesc", "path": "AuditEvent.outcomeDesc", "min": 0, "max": "1", "base": { "path": "AuditEvent.outcomeDesc", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "AuditEvent.purposeOfEvent", "path": "AuditEvent.purposeOfEvent", "comment": "Use AuditEvent.agent.purposeOfUse when you know that it is specific to the agent, otherwise use AuditEvent.purposeOfEvent. For example, during a machine-to-machine transfer it might not be obvious to the audit system who caused the event, but it does know why.", "min": 0, "max": "*", "base": { "path": "AuditEvent.purposeOfEvent", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "AuditPurposeOfUse" } ], "strength": "extensible", "description": "The reason the activity took place.", "valueSet": "http://terminology.hl7.org/ValueSet/v3-PurposeOfUse" } }, { "id": "AuditEvent.agent", "path": "AuditEvent.agent", "comment": "Several agents may be associated (i.e. have some responsibility for an activity) with an event or activity.\n\nFor example, an activity may be initiated by one user for other users or involve more than one user. However, only one user may be the initiator/requestor for the activity.", "min": 1, "max": "*", "base": { "path": "AuditEvent.agent", "min": 1, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "AuditEvent.agent.id", "path": "AuditEvent.agent.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "AuditEvent.agent.extension", "path": "AuditEvent.agent.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "AuditEvent.agent.modifierExtension", "path": "AuditEvent.agent.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "AuditEvent.agent.type", "path": "AuditEvent.agent.type", "min": 0, "max": "1", "base": { "path": "AuditEvent.agent.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "AuditAgentType" } ], "strength": "extensible", "description": "The Participation type of the agent to the event.", "valueSet": "http://hl7.org/fhir/ValueSet/participation-role-type" } }, { "id": "AuditEvent.agent.role", "path": "AuditEvent.agent.role", "comment": "Should be roles relevant to the event. Should not be an exhaustive list of roles.", "min": 0, "max": "*", "base": { "path": "AuditEvent.agent.role", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "AuditAgentRole" } ], "strength": "example", "description": "What security role enabled the agent to participate in the event.", "valueSet": "http://hl7.org/fhir/ValueSet/security-role-type" } }, { "id": "AuditEvent.agent.who", "path": "AuditEvent.agent.who", "comment": "Where a User ID is available it will go into who.identifier.", "min": 0, "max": "1", "base": { "path": "AuditEvent.agent.who", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/RelatedPerson" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "AuditEvent.agent.altId", "path": "AuditEvent.agent.altId", "min": 0, "max": "1", "base": { "path": "AuditEvent.agent.altId", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "AuditEvent.agent.name", "path": "AuditEvent.agent.name", "min": 0, "max": "1", "base": { "path": "AuditEvent.agent.name", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "AuditEvent.agent.requestor", "path": "AuditEvent.agent.requestor", "comment": "There can only be one initiator. If the initiator is not clear, then do not choose any one agent as the initiator.", "min": 1, "max": "1", "base": { "path": "AuditEvent.agent.requestor", "min": 1, "max": "1" }, "type": [ { "code": "boolean" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "AuditEvent.agent.location", "path": "AuditEvent.agent.location", "min": 0, "max": "1", "base": { "path": "AuditEvent.agent.location", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Location" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "AuditEvent.agent.policy", "path": "AuditEvent.agent.policy", "comment": "For example: Where an OAuth token authorizes, the unique identifier from the OAuth token is placed into the policy element Where a policy engine (e.g. XACML) holds policy logic, the unique policy identifier is placed into the policy element.", "min": 0, "max": "*", "base": { "path": "AuditEvent.agent.policy", "min": 0, "max": "*" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "AuditEvent.agent.media", "path": "AuditEvent.agent.media", "min": 0, "max": "1", "base": { "path": "AuditEvent.agent.media", "min": 0, "max": "1" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "DICOMMediaType" } ], "strength": "extensible", "description": "Used when the event is about exporting/importing onto media.", "valueSet": "http://hl7.org/fhir/ValueSet/dicm-405-mediatype" } }, { "id": "AuditEvent.agent.network", "path": "AuditEvent.agent.network", "min": 0, "max": "1", "base": { "path": "AuditEvent.agent.network", "min": 0, "max": "1" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "AuditEvent.agent.network.id", "path": "AuditEvent.agent.network.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "AuditEvent.agent.network.extension", "path": "AuditEvent.agent.network.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "AuditEvent.agent.network.modifierExtension", "path": "AuditEvent.agent.network.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "AuditEvent.agent.network.address", "path": "AuditEvent.agent.network.address", "comment": "This could be a device id, IP address or some other identifier associated with a device.", "min": 0, "max": "1", "base": { "path": "AuditEvent.agent.network.address", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "AuditEvent.agent.network.type", "path": "AuditEvent.agent.network.type", "min": 0, "max": "1", "base": { "path": "AuditEvent.agent.network.type", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "AuditEventAgentNetworkType" } ], "strength": "required", "description": "The type of network access point of this agent in the audit event.", "valueSet": "http://hl7.org/fhir/ValueSet/network-type|4.0.1" } }, { "id": "AuditEvent.agent.purposeOfUse", "path": "AuditEvent.agent.purposeOfUse", "comment": "Use AuditEvent.agent.purposeOfUse when you know that is specific to the agent, otherwise use AuditEvent.purposeOfEvent. For example, during a machine-to-machine transfer it might not be obvious to the audit system who caused the event, but it does know why.", "min": 0, "max": "*", "base": { "path": "AuditEvent.agent.purposeOfUse", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "AuditPurposeOfUse" } ], "strength": "extensible", "description": "The reason the activity took place.", "valueSet": "http://terminology.hl7.org/ValueSet/v3-PurposeOfUse" } }, { "id": "AuditEvent.source", "path": "AuditEvent.source", "comment": "Since multi-tier, distributed, or composite applications make source identification ambiguous, this collection of fields may repeat for each application or process actively involved in the event. For example, multiple value-sets can identify participating web servers, application processes, and database server threads in an n-tier distributed application. Passive event participants (e.g. low-level network transports) need not be identified.", "min": 1, "max": "1", "base": { "path": "AuditEvent.source", "min": 1, "max": "1" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "AuditEvent.source.id", "path": "AuditEvent.source.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "AuditEvent.source.extension", "path": "AuditEvent.source.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "AuditEvent.source.modifierExtension", "path": "AuditEvent.source.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "AuditEvent.source.site", "path": "AuditEvent.source.site", "min": 0, "max": "1", "base": { "path": "AuditEvent.source.site", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "AuditEvent.source.observer", "path": "AuditEvent.source.observer", "min": 1, "max": "1", "base": { "path": "AuditEvent.source.observer", "min": 1, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/Organization", "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/RelatedPerson" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "AuditEvent.source.type", "path": "AuditEvent.source.type", "min": 0, "max": "*", "base": { "path": "AuditEvent.source.type", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "AuditEventSourceType" } ], "strength": "extensible", "description": "Code specifying the type of system that detected and recorded the event.", "valueSet": "http://hl7.org/fhir/ValueSet/audit-source-type" } }, { "id": "AuditEvent.entity", "path": "AuditEvent.entity", "comment": "Required unless the values for event identification, agent identification, and audit source identification are sufficient to document the entire auditable event. Because events may have more than one entity, this group can be a repeating set of values.", "min": 0, "max": "*", "base": { "path": "AuditEvent.entity", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "sev-1", "severity": "error", "human": "Either a name or a query (NOT both)", "expression": "name.empty() or query.empty()", "xpath": "not(exists(f:name)) or not(exists(f:query))", "source": "http://hl7.org/fhir/StructureDefinition/AuditEvent" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "AuditEvent.entity.id", "path": "AuditEvent.entity.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "AuditEvent.entity.extension", "path": "AuditEvent.entity.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "AuditEvent.entity.modifierExtension", "path": "AuditEvent.entity.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "AuditEvent.entity.what", "path": "AuditEvent.entity.what", "min": 0, "max": "1", "base": { "path": "AuditEvent.entity.what", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "AuditEvent.entity.type", "path": "AuditEvent.entity.type", "comment": "This value is distinct from the user's role or any user relationship to the entity.", "min": 0, "max": "1", "base": { "path": "AuditEvent.entity.type", "min": 0, "max": "1" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "AuditEventEntityType" } ], "strength": "extensible", "description": "Code for the entity type involved in the audit event.", "valueSet": "http://hl7.org/fhir/ValueSet/audit-entity-type" } }, { "id": "AuditEvent.entity.role", "path": "AuditEvent.entity.role", "min": 0, "max": "1", "base": { "path": "AuditEvent.entity.role", "min": 0, "max": "1" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "AuditEventEntityRole" } ], "strength": "extensible", "description": "Code representing the role the entity played in the audit event.", "valueSet": "http://hl7.org/fhir/ValueSet/object-role" } }, { "id": "AuditEvent.entity.lifecycle", "path": "AuditEvent.entity.lifecycle", "comment": "This can be used to provide an audit trail for data, over time, as it passes through the system.", "min": 0, "max": "1", "base": { "path": "AuditEvent.entity.lifecycle", "min": 0, "max": "1" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "AuditEventEntityLifecycle" } ], "strength": "extensible", "description": "Identifier for the data life-cycle stage for the entity.", "valueSet": "http://hl7.org/fhir/ValueSet/object-lifecycle-events" } }, { "id": "AuditEvent.entity.securityLabel", "path": "AuditEvent.entity.securityLabel", "comment": "Copied from entity meta security tags.", "min": 0, "max": "*", "base": { "path": "AuditEvent.entity.securityLabel", "min": 0, "max": "*" }, "type": [ { "code": "Coding" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "SecurityLabels" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "extensible", "description": "Security Labels from the Healthcare Privacy and Security Classification System.", "valueSet": "http://hl7.org/fhir/ValueSet/security-labels" } }, { "id": "AuditEvent.entity.name", "path": "AuditEvent.entity.name", "comment": "This field may be used in a query/report to identify audit events for a specific person. For example, where multiple synonymous entity identifiers (patient number, medical record number, encounter number, etc.) have been used.", "min": 0, "max": "1", "base": { "path": "AuditEvent.entity.name", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "condition": [ "sev-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "AuditEvent.entity.description", "path": "AuditEvent.entity.description", "min": 0, "max": "1", "base": { "path": "AuditEvent.entity.description", "min": 0, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "AuditEvent.entity.query", "path": "AuditEvent.entity.query", "comment": "The meaning and secondary-encoding of the content of base64 encoded blob is specific to the AuditEvent.type, AuditEvent.subtype, AuditEvent.entity.type, and AuditEvent.entity.role. The base64 is a general-use and safe container for event specific data blobs regardless of the encoding used by the transaction being recorded. An AuditEvent consuming application must understand the event it is consuming and the formats used by the event. For example, if auditing an Oracle network database access, the Oracle formats must be understood as they will be simply encoded in the base64binary blob.", "min": 0, "max": "1", "base": { "path": "AuditEvent.entity.query", "min": 0, "max": "1" }, "type": [ { "code": "base64Binary" } ], "condition": [ "sev-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "AuditEvent.entity.detail", "path": "AuditEvent.entity.detail", "min": 0, "max": "*", "base": { "path": "AuditEvent.entity.detail", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "AuditEvent.entity.detail.id", "path": "AuditEvent.entity.detail.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "AuditEvent.entity.detail.extension", "path": "AuditEvent.entity.detail.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "AuditEvent.entity.detail.modifierExtension", "path": "AuditEvent.entity.detail.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "AuditEvent.entity.detail.type", "path": "AuditEvent.entity.detail.type", "min": 1, "max": "1", "base": { "path": "AuditEvent.entity.detail.type", "min": 1, "max": "1" }, "type": [ { "code": "string" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "AuditEvent.entity.detail.value[x]", "path": "AuditEvent.entity.detail.value[x]", "comment": "The value can be string when known to be a string, else base64 encoding should be used to protect binary or undefined content. The meaning and secondary-encoding of the content of base64 encoded blob is specific to the AuditEvent.type, AuditEvent.subtype, AuditEvent.entity.type, and AuditEvent.entity.role. The base64 is a general-use and safe container for event specific data blobs regardless of the encoding used by the transaction being recorded. An AuditEvent consuming application must understand the event it is consuming and the formats used by the event. For example if auditing an Oracle network database access, the Oracle formats must be understood as they will be simply encoded in the base64binary blob.", "min": 1, "max": "1", "base": { "path": "AuditEvent.entity.detail.value[x]", "min": 1, "max": "1" }, "type": [ { "code": "string" }, { "code": "base64Binary" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "AuditEvent", "path": "AuditEvent", "min": 0, "max": "*" }, { "id": "AuditEvent.type", "path": "AuditEvent.type", "mustSupport": true }, { "id": "AuditEvent.subtype", "path": "AuditEvent.subtype", "mustSupport": true }, { "id": "AuditEvent.action", "path": "AuditEvent.action", "mustSupport": true }, { "id": "AuditEvent.recorded", "path": "AuditEvent.recorded", "mustSupport": true }, { "id": "AuditEvent.purposeOfEvent", "path": "AuditEvent.purposeOfEvent", "mustSupport": true }, { "id": "AuditEvent.agent", "path": "AuditEvent.agent", "mustSupport": true }, { "id": "AuditEvent.agent.role", "path": "AuditEvent.agent.role", "mustSupport": true }, { "id": "AuditEvent.agent.who", "path": "AuditEvent.agent.who", "mustSupport": true }, { "id": "AuditEvent.agent.requestor", "path": "AuditEvent.agent.requestor", "mustSupport": true }, { "id": "AuditEvent.agent.location", "path": "AuditEvent.agent.location", "mustSupport": true }, { "id": "AuditEvent.agent.policy", "path": "AuditEvent.agent.policy", "mustSupport": true }, { "id": "AuditEvent.agent.network", "path": "AuditEvent.agent.network", "mustSupport": true }, { "id": "AuditEvent.agent.network.address", "path": "AuditEvent.agent.network.address", "mustSupport": true }, { "id": "AuditEvent.agent.network.type", "path": "AuditEvent.agent.network.type", "mustSupport": true }, { "id": "AuditEvent.agent.purposeOfUse", "path": "AuditEvent.agent.purposeOfUse", "mustSupport": true }, { "id": "AuditEvent.source", "path": "AuditEvent.source", "mustSupport": true }, { "id": "AuditEvent.source.site", "path": "AuditEvent.source.site", "mustSupport": true }, { "id": "AuditEvent.source.observer", "path": "AuditEvent.source.observer", "mustSupport": true }, { "id": "AuditEvent.source.type", "path": "AuditEvent.source.type", "mustSupport": true }, { "id": "AuditEvent.entity", "path": "AuditEvent.entity", "mustSupport": true }, { "id": "AuditEvent.entity.what", "path": "AuditEvent.entity.what", "mustSupport": true }, { "id": "AuditEvent.entity.type", "path": "AuditEvent.entity.type", "mustSupport": true }, { "id": "AuditEvent.entity.role", "path": "AuditEvent.entity.role", "mustSupport": true }, { "id": "AuditEvent.entity.lifecycle", "path": "AuditEvent.entity.lifecycle", "mustSupport": true }, { "id": "AuditEvent.entity.securityLabel", "path": "AuditEvent.entity.securityLabel", "mustSupport": true } ] } } }, { "fullUrl": "http://hl7.org/fhir/StructureDefinition/ehrsrle-provenance", "resource": { "resourceType": "StructureDefinition", "id": "ehrsrle-provenance", "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "ehr" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use" } ], "url": "http://hl7.org/fhir/StructureDefinition/ehrsrle-provenance", "version": "4.0.1", "name": "EHRS FM Record Lifecycle Event - Provenance", "status": "draft", "experimental": false, "date": "2014-01-31", "fhirVersion": "4.0.1", "kind": "resource", "abstract": false, "type": "Provenance", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Provenance", "derivation": "constraint", "snapshot": { "element": [ { "id": "Provenance", "path": "Provenance", "comment": "Some parties may be duplicated between the target resource and its provenance. For instance, the prescriber is usually (but not always) the author of the prescription resource. This resource is defined with close consideration for W3C Provenance.", "min": 0, "max": "*", "base": { "path": "Provenance", "min": 0, "max": "*" }, "constraint": [ { "key": "dom-2", "severity": "error", "human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources", "expression": "contained.contained.empty()", "xpath": "not(parent::f:contained and f:contained)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-3", "severity": "error", "human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource", "expression": "contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()", "xpath": "not(exists(for $id in f:contained/*/f:id/@value return $contained[not(parent::*/descendant::f:reference/@value=concat('#', $contained/*/id/@value) or descendant::f:reference[@value='#'])]))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-4", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated", "expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "key": "dom-5", "severity": "error", "human": "If a resource is contained in another resource, it SHALL NOT have a security label", "expression": "contained.meta.security.empty()", "xpath": "not(exists(f:contained/*/f:meta/f:security))", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" }, { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice", "valueBoolean": true }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice-explanation", "valueMarkdown": "When a resource has no narrative, only systems that fully understand the data can display the resource to a human safely. Including a human readable representation in the resource makes for a much more robust eco-system and cheaper handling of resources by intermediary systems. Some ecosystems restrict distribution of resources to only those systems that do fully understand the resources, and as a consequence implementers may believe that the narrative is superfluous. However experience shows that such eco-systems often open up to new participants over time." } ], "key": "dom-6", "severity": "warning", "human": "A resource should have narrative for robust management", "expression": "text.`div`.exists()", "xpath": "exists(f:text/h:div)", "source": "http://hl7.org/fhir/StructureDefinition/DomainResource" } ], "isModifier": false, "isSummary": false }, { "id": "Provenance.id", "path": "Provenance.id", "comment": "The only time that a resource does not have an id is when it is being submitted to the server using a create operation.", "min": 0, "max": "1", "base": { "path": "Resource.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": true }, { "id": "Provenance.meta", "path": "Provenance.meta", "min": 0, "max": "1", "base": { "path": "Resource.meta", "min": 0, "max": "1" }, "type": [ { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Provenance.implicitRules", "path": "Provenance.implicitRules", "comment": "Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.", "min": 0, "max": "1", "base": { "path": "Resource.implicitRules", "min": 0, "max": "1" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": true, "isModifierReason": "This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation", "isSummary": true }, { "id": "Provenance.language", "path": "Provenance.language", "comment": "Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).", "min": 0, "max": "1", "base": { "path": "Resource.language", "min": 0, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet", "valueCanonical": "http://hl7.org/fhir/ValueSet/all-languages" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "Language" }, { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-isCommonBinding", "valueBoolean": true } ], "strength": "preferred", "description": "A human language.", "valueSet": "http://hl7.org/fhir/ValueSet/languages" } }, { "id": "Provenance.text", "path": "Provenance.text", "comment": "Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded information is added later.", "min": 0, "max": "1", "base": { "path": "DomainResource.text", "min": 0, "max": "1" }, "type": [ { "code": "Narrative" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Provenance.contained", "path": "Provenance.contained", "comment": "This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.", "min": 0, "max": "*", "base": { "path": "DomainResource.contained", "min": 0, "max": "*" }, "type": [ { "code": "Resource" } ], "isModifier": false, "isSummary": false }, { "id": "Provenance.extension", "path": "Provenance.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.", "min": 0, "max": "*", "base": { "path": "DomainResource.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Provenance.modifierExtension", "path": "Provenance.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "DomainResource.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them", "isSummary": false }, { "id": "Provenance.target", "path": "Provenance.target", "comment": "Target references are usually version specific, but might not be, if a version has not been assigned or if the provenance information is part of the set of resources being maintained (i.e. a document). When using the RESTful API, the identity of the resource might not be known (especially not the version specific one); the client may either submit the resource first, and then the provenance, or it may submit both using a single transaction. See the notes on transaction for further discussion.", "min": 1, "max": "*", "base": { "path": "Provenance.target", "min": 1, "max": "*" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Provenance.occurred[x]", "path": "Provenance.occurred[x]", "comment": "The period can be a little arbitrary; where possible, the time should correspond to human assessment of the activity time.", "min": 0, "max": "1", "base": { "path": "Provenance.occurred[x]", "min": 0, "max": "1" }, "type": [ { "code": "Period" }, { "code": "dateTime" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "Provenance.recorded", "path": "Provenance.recorded", "comment": "This can be a little different from the time stamp on the resource if there is a delay between recording the event and updating the provenance and target resource.", "min": 1, "max": "1", "base": { "path": "Provenance.recorded", "min": 1, "max": "1" }, "type": [ { "code": "instant" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Provenance.policy", "path": "Provenance.policy", "comment": "For example: Where an OAuth token authorizes, the unique identifier from the OAuth token is placed into the policy element Where a policy engine (e.g. XACML) holds policy logic, the unique policy identifier is placed into the policy element.", "min": 0, "max": "*", "base": { "path": "Provenance.policy", "min": 0, "max": "*" }, "type": [ { "code": "uri" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "Provenance.location", "path": "Provenance.location", "min": 0, "max": "1", "base": { "path": "Provenance.location", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Location" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "Provenance.reason", "path": "Provenance.reason", "min": 0, "max": "*", "base": { "path": "Provenance.reason", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ProvenanceReason" } ], "strength": "extensible", "description": "The reason the activity took place.", "valueSet": "http://terminology.hl7.org/ValueSet/v3-PurposeOfUse" } }, { "id": "Provenance.activity", "path": "Provenance.activity", "min": 0, "max": "1", "base": { "path": "Provenance.activity", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ProvenanceActivity" } ], "strength": "extensible", "description": "The activity that took place.", "valueSet": "http://hl7.org/fhir/ValueSet/provenance-activity-type" } }, { "id": "Provenance.agent", "path": "Provenance.agent", "comment": "Several agents may be associated (i.e. has some responsibility for an activity) with an activity and vice-versa.", "min": 1, "max": "*", "base": { "path": "Provenance.agent", "min": 1, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "Provenance.agent.id", "path": "Provenance.agent.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Provenance.agent.extension", "path": "Provenance.agent.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Provenance.agent.modifierExtension", "path": "Provenance.agent.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Provenance.agent.type", "path": "Provenance.agent.type", "comment": "For example: author, performer, enterer, attester, etc.", "min": 0, "max": "1", "base": { "path": "Provenance.agent.type", "min": 0, "max": "1" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ProvenanceAgentType" } ], "strength": "extensible", "description": "The type of participation that a provenance agent played with respect to the activity.", "valueSet": "http://hl7.org/fhir/ValueSet/provenance-agent-type" } }, { "id": "Provenance.agent.role", "path": "Provenance.agent.role", "comment": "For example: doctor, nurse, clerk, etc.", "min": 0, "max": "*", "base": { "path": "Provenance.agent.role", "min": 0, "max": "*" }, "type": [ { "code": "CodeableConcept" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ProvenanceAgentRole" } ], "strength": "example", "description": "The role that a provenance agent played with respect to the activity.", "valueSet": "http://hl7.org/fhir/ValueSet/security-role-type" } }, { "id": "Provenance.agent.who", "path": "Provenance.agent.who", "comment": "whoIdentity should be used when the agent is not a Resource type.", "min": 1, "max": "1", "base": { "path": "Provenance.agent.who", "min": 1, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/RelatedPerson", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/Organization" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": true }, { "id": "Provenance.agent.onBehalfOf", "path": "Provenance.agent.onBehalfOf", "comment": "onBehalfOfIdentity should be used when the agent is not a Resource type.", "min": 0, "max": "1", "base": { "path": "Provenance.agent.onBehalfOf", "min": 0, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Practitioner", "http://hl7.org/fhir/StructureDefinition/PractitionerRole", "http://hl7.org/fhir/StructureDefinition/RelatedPerson", "http://hl7.org/fhir/StructureDefinition/Patient", "http://hl7.org/fhir/StructureDefinition/Device", "http://hl7.org/fhir/StructureDefinition/Organization" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false }, { "id": "Provenance.entity", "path": "Provenance.entity", "min": 0, "max": "*", "base": { "path": "Provenance.entity", "min": 0, "max": "*" }, "type": [ { "code": "BackboneElement" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Provenance.entity.id", "path": "Provenance.entity.id", "representation": [ "xmlAttr" ], "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false }, { "id": "Provenance.entity.extension", "path": "Provenance.entity.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.", "min": 0, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Provenance.entity.modifierExtension", "path": "Provenance.entity.modifierExtension", "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.", "min": 0, "max": "*", "base": { "path": "BackboneElement.modifierExtension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/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": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": true, "isModifierReason": "Modifier extensions are expected to modify the meaning or interpretation of the element that contains them", "isSummary": true }, { "id": "Provenance.entity.role", "path": "Provenance.entity.role", "min": 1, "max": "1", "base": { "path": "Provenance.entity.role", "min": 1, "max": "1" }, "type": [ { "code": "code" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true, "binding": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName", "valueString": "ProvenanceEntityRole" } ], "strength": "required", "description": "How an entity was used in an activity.", "valueSet": "http://hl7.org/fhir/ValueSet/provenance-entity-role|4.0.1" } }, { "id": "Provenance.entity.what", "path": "Provenance.entity.what", "comment": "whatIdentity should be used for entities that are not a Resource type.", "min": 1, "max": "1", "base": { "path": "Provenance.entity.what", "min": 1, "max": "1" }, "type": [ { "code": "Reference", "targetProfile": [ "http://hl7.org/fhir/StructureDefinition/Resource" ] } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": true }, { "id": "Provenance.entity.agent", "path": "Provenance.entity.agent", "comment": "A usecase where one Provenance.entity.agent is used where the Entity that was used in the creation/updating of the Target, is not in the context of the same custodianship as the Target, and thus the meaning of Provenance.entity.agent is to say that the entity referenced is managed elsewhere and that this Agent provided access to it. This would be similar to where the Entity being referenced is managed outside FHIR, such as through HL7 v2, v3, or XDS. This might be where the Entity being referenced is managed in another FHIR resource server. Thus it explains the Provenance of that Entity's use in the context of this Provenance activity.", "min": 0, "max": "*", "base": { "path": "Provenance.entity.agent", "min": 0, "max": "*" }, "contentReference": "#Provenance.agent", "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false }, { "id": "Provenance.signature", "path": "Provenance.signature", "min": 0, "max": "*", "base": { "path": "Provenance.signature", "min": 0, "max": "*" }, "type": [ { "code": "Signature" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "mustSupport": true, "isModifier": false, "isSummary": false } ] }, "differential": { "element": [ { "id": "Provenance", "path": "Provenance", "min": 0, "max": "*" }, { "id": "Provenance.target", "path": "Provenance.target", "mustSupport": true }, { "id": "Provenance.occurred[x]", "path": "Provenance.occurred[x]", "mustSupport": true }, { "id": "Provenance.recorded", "path": "Provenance.recorded", "mustSupport": true }, { "id": "Provenance.policy", "path": "Provenance.policy", "mustSupport": true }, { "id": "Provenance.location", "path": "Provenance.location", "mustSupport": true }, { "id": "Provenance.reason", "path": "Provenance.reason", "mustSupport": true }, { "id": "Provenance.activity", "path": "Provenance.activity", "mustSupport": true }, { "id": "Provenance.agent", "path": "Provenance.agent", "mustSupport": true }, { "id": "Provenance.agent.who", "path": "Provenance.agent.who", "mustSupport": true }, { "id": "Provenance.agent.onBehalfOf", "path": "Provenance.agent.onBehalfOf", "mustSupport": true }, { "id": "Provenance.signature", "path": "Provenance.signature", "mustSupport": true } ] } } } ]
}