{
"description": null,
"_filename": "Profile-chargeitem-ebm-0.2.json",
"package_name": "basisprofil.de",
"date": "2017-11-08T15:54:47.688+01:00",
"derivation": "constraint",
"meta": {
"lastUpdated": "2017-11-08T18:58:00.445+01:00"
},
"publisher": "HL7 Deutschland e.V. (Technisches Komitee FHIR)",
"fhirVersion": "3.0.1",
"name": "chargeitem-ebm-0.2",
"abstract": false,
"copyright": "HL7 Deutschland e.V.",
"type": "ChargeItem",
"experimental": null,
"resourceType": "StructureDefinition",
"title": "ChargeItem für EBM-Ziffer als Abrechnungsposition (Version 0.2)",
"package_version": "0.2.30",
"snapshot": {
"element": [ {
"constraint": [ {
"key": "dom-2",
"human": "If the resource is contained in another resource, it SHALL NOT contain nested Resources",
"xpath": "not(parent::f:contained and f:contained)",
"severity": "error",
"expression": "contained.contained.empty()"
}, {
"key": "dom-1",
"human": "If the resource is contained in another resource, it SHALL NOT contain any narrative",
"xpath": "not(parent::f:contained and f:text)",
"severity": "error",
"expression": "contained.text.empty()"
}, {
"key": "dom-4",
"human": "If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated",
"xpath": "not(exists(f:contained/*/f:meta/f:versionId)) and not(exists(f:contained/*/f:meta/f:lastUpdated))",
"severity": "error",
"expression": "contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()"
}, {
"key": "dom-3",
"human": "If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource",
"xpath": "not(exists(for $id in f:contained/*/@id return $id[not(ancestor::f:contained/parent::*/descendant::f:reference/@value=concat('#', $id))]))",
"severity": "error",
"expression": "contained.where(('#'+id in %resource.descendants().reference).not()).empty()"
} ],
"path": "ChargeItem",
"min": 0,
"definition": "The resource ChargeItem describes the provision of healthcare provider products for a certain patient, therefore referring not only to the product, but containing in addition details of the provision, like date, time, amounts and participating organizations and persons. Main Usage of the ChargeItem is to enable the billing process and internal cost allocation.",
"short": "Item containing charge code(s) associated with the provision of healthcare provider products",
"mapping": [ {
"map": "Entity. Role, or Act",
"identity": "rim"
}, {
"map": "FT1",
"identity": "v2"
}, {
"map": "Act[moodCode=EVN]",
"identity": "rim"
}, {
"map": "financial.support",
"identity": "w5"
} ],
"max": "*",
"id": "ChargeItem",
"base": {
"max": "*",
"min": 0,
"path": "Resource"
}
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.id",
"min": 0,
"definition": "The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.",
"short": "Logical id of this artifact",
"mapping": [ {
"map": "n/a",
"identity": "rim"
} ],
"type": [ {
"code": "id"
} ],
"max": "1",
"id": "ChargeItem.id",
"condition": [ "ele-1" ],
"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.",
"base": {
"max": "1",
"min": 0,
"path": "Resource.id"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.meta",
"min": 0,
"definition": "The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content may not always be associated with version changes to the resource.",
"short": "Metadata about the resource",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "N/A",
"identity": "rim"
} ],
"type": [ {
"code": "Meta"
} ],
"max": "1",
"id": "ChargeItem.meta",
"condition": [ "ele-1" ],
"base": {
"max": "1",
"min": 0,
"path": "Resource.meta"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.implicitRules",
"min": 0,
"definition": "A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content.",
"isModifier": true,
"short": "A set of rules under which this content was created",
"mapping": [ {
"map": "n/a",
"identity": "rim"
} ],
"type": [ {
"code": "uri"
} ],
"max": "1",
"id": "ChargeItem.implicitRules",
"condition": [ "ele-1" ],
"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. \n\nThis element is labelled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation.",
"base": {
"max": "1",
"min": 0,
"path": "Resource.implicitRules"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.language",
"min": 0,
"definition": "The base language in which the resource is written.",
"short": "Language of the resource content",
"mapping": [ {
"map": "n/a",
"identity": "rim"
} ],
"type": [ {
"code": "code"
} ],
"binding": {
"strength": "extensible",
"extension": [ {
"url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet",
"valueReference": {
"reference": "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
} ],
"description": "A human language.",
"valueSetReference": {
"reference": "http://hl7.org/fhir/ValueSet/languages"
}
},
"max": "1",
"id": "ChargeItem.language",
"condition": [ "ele-1" ],
"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).",
"base": {
"max": "1",
"min": 0,
"path": "Resource.language"
}
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.text",
"min": 0,
"definition": "A human-readable narrative that contains a summary of the resource, and may be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it \"clinically safe\" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.",
"short": "Text summary of the resource, for human interpretation",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "N/A",
"identity": "rim"
}, {
"map": "Act.text?",
"identity": "rim"
} ],
"type": [ {
"code": "Narrative"
} ],
"alias": [ "narrative", "html", "xhtml", "display" ],
"max": "1",
"id": "ChargeItem.text",
"condition": [ "ele-1", "dom-1" ],
"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 in formation is added later.",
"base": {
"max": "1",
"min": 0,
"path": "DomainResource.text"
}
}, {
"path": "ChargeItem.contained",
"min": 0,
"definition": "These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.",
"short": "Contained, inline Resources",
"mapping": [ {
"map": "Entity. Role, or Act",
"identity": "rim"
}, {
"map": "N/A",
"identity": "rim"
} ],
"type": [ {
"code": "Resource"
} ],
"alias": [ "inline resources", "anonymous resources", "contained resources" ],
"max": "*",
"id": "ChargeItem.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.",
"base": {
"max": "*",
"min": 0,
"path": "DomainResource.contained"
}
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
}, {
"key": "ext-1",
"human": "Must have either extensions or value[x], not both",
"xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')])",
"severity": "error",
"expression": "extension.exists() != value.exists()"
} ],
"path": "ChargeItem.extension",
"min": 0,
"definition": "May be used to represent additional information that is not part of the basic definition of the resource. In order to make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.",
"short": "Additional Content defined by implementations",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "N/A",
"identity": "rim"
} ],
"slicing": {
"rules": "open",
"description": "Extensions are always sliced by (at least) url",
"discriminator": [ {
"path": "url",
"type": "value"
} ]
},
"type": [ {
"code": "Extension"
} ],
"alias": [ "extensions", "user content" ],
"max": "*",
"id": "ChargeItem.extension",
"condition": [ "ele-1" ],
"comment": "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
"base": {
"max": "*",
"min": 0,
"path": "DomainResource.extension"
}
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
}, {
"key": "ext-1",
"human": "Must have either extensions or value[x], not both",
"xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')])",
"severity": "error",
"expression": "extension.exists() != value.exists()"
} ],
"path": "ChargeItem.modifierExtension",
"min": 0,
"definition": "May be used to represent additional information that is not part of the basic definition of the resource, and that modifies the understanding of the element that contains it. Usually modifier elements provide negation or qualification. In order to make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.",
"isModifier": true,
"short": "Extensions that cannot be ignored",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "N/A",
"identity": "rim"
} ],
"slicing": {
"rules": "open",
"description": "Extensions are always sliced by (at least) url",
"discriminator": [ {
"path": "url",
"type": "value"
} ]
},
"type": [ {
"code": "Extension"
} ],
"alias": [ "extensions", "user content" ],
"max": "*",
"id": "ChargeItem.modifierExtension",
"condition": [ "ele-1" ],
"comment": "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
"base": {
"max": "*",
"min": 0,
"path": "DomainResource.modifierExtension"
}
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.identifier",
"requirements": "Allows identification of the charge Item as it is known by various participating systems and in a way that remains consistent across servers.",
"min": 0,
"definition": "Identifiers assigned to this event performer or other systems.",
"short": "Business Identifier for item",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "CX / EI (occasionally, more often EI maps to a resource id or a URL)",
"identity": "v2"
}, {
"map": "II - see see identifier pattern at http://wiki.hl7.org/index.php?title=Common_Design_Patterns#Identifier_Pattern for relevant discussion. The Identifier class is a little looser than the v3 type II because it allows URIs as well as registered OIDs or GUIDs. Also maps to Role[classCode=IDENT]",
"identity": "rim"
}, {
"map": "Identifier",
"identity": "servd"
}, {
"map": "FT1.2",
"identity": "v2"
}, {
"map": ".identifier",
"identity": "rim"
}, {
"map": "id",
"identity": "w5"
} ],
"type": [ {
"code": "Identifier"
} ],
"max": "1",
"id": "ChargeItem.identifier",
"condition": [ "ele-1" ],
"base": {
"max": "1",
"min": 0,
"path": "ChargeItem.identifier"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.definition",
"min": 0,
"definition": "References the source of pricing information, rules of application for the code this ChargeItem uses.",
"short": "Defining information about the code of this charge item",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "Varies by domain",
"identity": "v2"
}, {
"map": ".outboundRelationship[typeCode=DEFN].target",
"identity": "rim"
} ],
"type": [ {
"code": "uri"
} ],
"max": "*",
"id": "ChargeItem.definition",
"condition": [ "ele-1" ],
"comment": "Target Resource is yet to be defined as a container that holds information about list prices and rules applicable to the charge item code. Once defined, change type back to Reference(Definition Type).",
"base": {
"max": "*",
"min": 0,
"path": "ChargeItem.definition"
},
"isSummary": false
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.status",
"min": 1,
"definition": "The current state of the ChargeItem.",
"isModifier": true,
"short": "planned | billable | not-billable | aborted | billed | entered-in-error | unknown",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "Varies by domain",
"identity": "v2"
}, {
"map": ".status",
"identity": "rim"
}, {
"map": "status",
"identity": "w5"
} ],
"type": [ {
"code": "code"
} ],
"mustSupport": true,
"binding": {
"strength": "required",
"extension": [ {
"url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
"valueString": "ChargeItemStatus"
} ],
"description": "Codes identifying the stage lifecycle stage of a ChargeItem",
"valueSetReference": {
"reference": "http://hl7.org/fhir/ValueSet/chargeitem-status"
}
},
"max": "1",
"id": "ChargeItem.status",
"condition": [ "ele-1" ],
"comment": "Unknown does not represent \"other\" - one of the defined statuses must apply. Unknown is used when the authoring system is not sure what the current status is.\n\nThis element is labeled as a modifier because the status contains the code entered-in-error that marks the charge item as not currently valid.",
"base": {
"max": "1",
"min": 1,
"path": "ChargeItem.status"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
}, {
"key": "ref-1",
"human": "SHALL have a contained resource if a local reference is provided",
"xpath": "not(starts-with(f:reference/@value, '#')) or exists(ancestor::*[self::f:entry or self::f:parameter]/f:resource/f:*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')]|/*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')])",
"severity": "error",
"expression": "reference.startsWith('#').not() or (reference.substring(1).trace('url') in %resource.contained.id.trace('ids'))"
} ],
"path": "ChargeItem.partOf",
"requirements": "E.g. Drug administration as part of a procedure, procedure as part of observation, etc.",
"min": 0,
"definition": "ChargeItems can be grouped to larger ChargeItems covering the whole set.",
"short": "Part of referenced ChargeItem",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "The target of a resource reference is a RIM entry point (Act, Role, or Entity)",
"identity": "rim"
}, {
"map": "Varies by domain",
"identity": "v2"
}, {
"map": ".inboundRelationship[typeCode=COMP].source[moodCode=EVN]",
"identity": "rim"
} ],
"type": [ {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/ChargeItem"
} ],
"alias": [ "container" ],
"max": "*",
"id": "ChargeItem.partOf",
"condition": [ "ele-1" ],
"comment": "References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository.",
"base": {
"max": "*",
"min": 0,
"path": "ChargeItem.partOf"
},
"isSummary": false
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.code",
"min": 1,
"definition": "A code that identifies the charge, like a billing code.",
"short": "A code that identifies the charge, like a billing code",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "CE/CNE/CWE",
"identity": "v2"
}, {
"map": "CD",
"identity": "rim"
}, {
"map": "fhir:CodeableConcept rdfs:subClassOf dt:CD",
"identity": "orim"
}, {
"map": "Event.code",
"identity": "workflow"
}, {
"map": "FT1.7",
"identity": "v2"
}, {
"map": ".code",
"identity": "rim"
}, {
"map": "what",
"identity": "w5"
} ],
"type": [ {
"code": "CodeableConcept"
} ],
"mustSupport": true,
"binding": {
"strength": "example",
"extension": [ {
"url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
"valueString": "ChargeItemCode"
} ],
"description": "Example set of codes that can be used for billing purposes",
"valueSetReference": {
"reference": "http://hl7.org/fhir/ValueSet/chargeitem-billingcodes"
}
},
"alias": [ "type" ],
"max": "1",
"id": "ChargeItem.code",
"condition": [ "ele-1" ],
"comment": "Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.",
"base": {
"max": "1",
"min": 1,
"path": "ChargeItem.code"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.code.id",
"min": 0,
"definition": "unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
"short": "xml:id (or equivalent in JSON)",
"mapping": [ {
"map": "n/a",
"identity": "rim"
} ],
"type": [ {
"code": "string"
} ],
"representation": [ "xmlAttr" ],
"max": "1",
"id": "ChargeItem.code.id",
"condition": [ "ele-1" ],
"comment": "Note that FHIR strings may not exceed 1MB in size",
"base": {
"max": "1",
"min": 0,
"path": "Element.id"
}
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
}, {
"key": "ext-1",
"human": "Must have either extensions or value[x], not both",
"xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')])",
"severity": "error",
"expression": "extension.exists() != value.exists()"
} ],
"path": "ChargeItem.code.extension",
"min": 0,
"definition": "May be used to represent additional information that is not part of the basic definition of the element. In order to make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.",
"short": "Additional Content defined by implementations",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "N/A",
"identity": "rim"
} ],
"slicing": {
"rules": "open",
"description": "Extensions are always sliced by (at least) url",
"discriminator": [ {
"path": "url",
"type": "value"
} ]
},
"type": [ {
"code": "Extension"
} ],
"alias": [ "extensions", "user content" ],
"max": "*",
"id": "ChargeItem.code.extension",
"condition": [ "ele-1" ],
"comment": "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
"base": {
"max": "*",
"min": 0,
"path": "Element.extension"
}
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.code.coding",
"requirements": "Allows for translations and alternate encodings within a code system. Also supports communication of the same instance to systems requiring different encodings.",
"min": 0,
"definition": "A reference to a code defined by a terminology system.",
"short": "Code defined by a terminology system",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "CE/CNE/CWE subset one of the sets of component 1-3 or 4-6",
"identity": "v2"
}, {
"map": "CV",
"identity": "rim"
}, {
"map": "fhir:Coding rdfs:subClassOf dt:CDCoding",
"identity": "orim"
}, {
"map": "C*E.1-8, C*E.10-22",
"identity": "v2"
}, {
"map": "union(., ./translation)",
"identity": "rim"
}, {
"map": "fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding",
"identity": "orim"
} ],
"type": [ {
"code": "Coding"
} ],
"binding": {
"strength": "required",
"valueSetUri": "http://fhir.de/ValueSet/kbv/ebm"
},
"max": "*",
"id": "ChargeItem.code.coding",
"condition": [ "ele-1" ],
"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.",
"base": {
"max": "*",
"min": 0,
"path": "CodeableConcept.coding"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.code.coding.id",
"min": 0,
"definition": "unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
"short": "xml:id (or equivalent in JSON)",
"mapping": [ {
"map": "n/a",
"identity": "rim"
} ],
"type": [ {
"code": "string"
} ],
"representation": [ "xmlAttr" ],
"max": "1",
"id": "ChargeItem.code.coding.id",
"condition": [ "ele-1" ],
"comment": "Note that FHIR strings may not exceed 1MB in size",
"base": {
"max": "1",
"min": 0,
"path": "Element.id"
}
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
}, {
"key": "ext-1",
"human": "Must have either extensions or value[x], not both",
"xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')])",
"severity": "error",
"expression": "extension.exists() != value.exists()"
} ],
"path": "ChargeItem.code.coding.extension",
"min": 0,
"definition": "May be used to represent additional information that is not part of the basic definition of the element. In order to make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.",
"short": "Additional Content defined by implementations",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "N/A",
"identity": "rim"
} ],
"slicing": {
"rules": "open",
"description": "Extensions are always sliced by (at least) url",
"discriminator": [ {
"path": "url",
"type": "value"
} ]
},
"type": [ {
"code": "Extension"
} ],
"alias": [ "extensions", "user content" ],
"max": "*",
"id": "ChargeItem.code.coding.extension",
"condition": [ "ele-1" ],
"comment": "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
"base": {
"max": "*",
"min": 0,
"path": "Element.extension"
}
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.code.coding.system",
"requirements": "Need to be unambiguous about the source of the definition of the symbol.",
"min": 0,
"definition": "The identification of the code system that defines the meaning of the symbol in the code.",
"short": "Identity of the terminology system",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "C*E.3",
"identity": "v2"
}, {
"map": "./codeSystem",
"identity": "rim"
}, {
"map": "fhir:Coding.system rdfs:subPropertyOf dt:CDCoding.codeSystem",
"identity": "orim"
} ],
"type": [ {
"code": "uri"
} ],
"max": "1",
"id": "ChargeItem.code.coding.system",
"condition": [ "ele-1" ],
"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 de-reference to some definition that establish the system clearly and unambiguously.",
"base": {
"max": "1",
"min": 0,
"path": "Coding.system"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.code.coding.version",
"min": 0,
"definition": "The version of the code system which was used when choosing this code. Note that a well-maintained code system does not need the version reported, because the meaning of codes is consistent across versions. However this cannot consistently be assured. and when the meaning is not guaranteed to be consistent, the version SHOULD be exchanged.",
"short": "Version of the system - if relevant",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "C*E.7",
"identity": "v2"
}, {
"map": "./codeSystemVersion",
"identity": "rim"
}, {
"map": "fhir:Coding.version rdfs:subPropertyOf dt:CDCoding.codeSystemVersion",
"identity": "orim"
} ],
"type": [ {
"code": "string"
} ],
"max": "1",
"id": "ChargeItem.code.coding.version",
"condition": [ "ele-1" ],
"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.",
"base": {
"max": "1",
"min": 0,
"path": "Coding.version"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
}, {
"key": "ebm-1",
"human": "Der Code muss dem Schema [0-9]{5}[A-Z]{0,1} entsprechen",
"severity": "warning",
"expression": "matches('[0-9]{5}[A-Z]{0,1}')"
} ],
"path": "ChargeItem.code.coding.code",
"requirements": "Need to refer to a particular code in the system.",
"min": 0,
"definition": "A symbol in syntax defined by the system. The symbol may be a predefined code or an expression in a syntax defined by the coding system (e.g. post-coordination).",
"short": "Symbol in syntax defined by the system",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "C*E.1",
"identity": "v2"
}, {
"map": "./code",
"identity": "rim"
}, {
"map": "fhir:Coding.code rdfs:subPropertyOf dt:CDCoding.code",
"identity": "orim"
} ],
"type": [ {
"code": "code"
} ],
"max": "1",
"id": "ChargeItem.code.coding.code",
"condition": [ "ele-1" ],
"comment": "Note that FHIR strings may not exceed 1MB in size",
"base": {
"max": "1",
"min": 0,
"path": "Coding.code"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.code.coding.display",
"requirements": "Need to be able to carry a human-readable meaning of the code for readers that do not know the system.",
"min": 0,
"definition": "A representation of the meaning of the code in the system, following the rules of the system.",
"short": "Representation defined by the system",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "C*E.2 - but note this is not well followed",
"identity": "v2"
}, {
"map": "CV.displayName",
"identity": "rim"
}, {
"map": "fhir:Coding.display rdfs:subPropertyOf dt:CDCoding.displayName",
"identity": "orim"
} ],
"type": [ {
"code": "string"
} ],
"extension": [ {
"url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable",
"valueBoolean": true
} ],
"max": "1",
"id": "ChargeItem.code.coding.display",
"condition": [ "ele-1" ],
"comment": "Note that FHIR strings may not exceed 1MB in size",
"base": {
"max": "1",
"min": 0,
"path": "Coding.display"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.code.coding.userSelected",
"requirements": "This has been identified as a clinical safety criterium - that this exact system/code pair was chosen explicitly, rather than inferred by the system based on some rules or language processing.",
"min": 0,
"definition": "Indicates that this coding was chosen by a user directly - i.e. off a pick list of available items (codes or displays).",
"short": "If this coding was chosen directly by the user",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "Sometimes implied by being first",
"identity": "v2"
}, {
"map": "CD.codingRationale",
"identity": "rim"
}, {
"map": "fhir:Coding.userSelected fhir:mapsTo dt:CDCoding.codingRationale. fhir:Coding.userSelected fhir:hasMap fhir:Coding.userSelected.map. fhir:Coding.userSelected.map a fhir:Map; fhir:target dt:CDCoding.codingRationale. fhir:Coding.userSelected\\#true a [ fhir:source \"true\"; fhir:target dt:CDCoding.codingRationale\\#O ]",
"identity": "orim"
} ],
"type": [ {
"code": "boolean"
} ],
"max": "1",
"id": "ChargeItem.code.coding.userSelected",
"condition": [ "ele-1" ],
"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.",
"base": {
"max": "1",
"min": 0,
"path": "Coding.userSelected"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.code.text",
"requirements": "The codes from the terminologies do not always capture the correct meaning with all the nuances of the human using them, or sometimes there is no appropriate code at all. In these cases, the text is used to capture the full meaning of the source.",
"min": 0,
"definition": "A human language representation of the concept as seen/selected/uttered by the user who entered the data and/or which represents the intended meaning of the user.",
"short": "Plain text representation of the concept",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "C*E.9. But note many systems use C*E.2 for this",
"identity": "v2"
}, {
"map": "./originalText[mediaType/code=\"text/plain\"]/data",
"identity": "rim"
}, {
"map": "fhir:CodeableConcept.text rdfs:subPropertyOf dt:CD.originalText",
"identity": "orim"
} ],
"type": [ {
"code": "string"
} ],
"extension": [ {
"url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable",
"valueBoolean": true
} ],
"max": "1",
"id": "ChargeItem.code.text",
"condition": [ "ele-1" ],
"comment": "Very often the text is the same as a displayName of one of the codings.",
"base": {
"max": "1",
"min": 0,
"path": "CodeableConcept.text"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
}, {
"key": "ref-1",
"human": "SHALL have a contained resource if a local reference is provided",
"xpath": "not(starts-with(f:reference/@value, '#')) or exists(ancestor::*[self::f:entry or self::f:parameter]/f:resource/f:*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')]|/*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')])",
"severity": "error",
"expression": "reference.startsWith('#').not() or (reference.substring(1).trace('url') in %resource.contained.id.trace('ids'))"
} ],
"path": "ChargeItem.subject",
"requirements": "Links the event to the Patient context.",
"min": 1,
"definition": "The individual or set of individuals the action is being or was performed on.",
"short": "Individual service was done for/to",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "The target of a resource reference is a RIM entry point (Act, Role, or Entity)",
"identity": "rim"
}, {
"map": "Event.subject",
"identity": "workflow"
}, {
"map": "PAT in proximity to FT1 segment",
"identity": "v2"
}, {
"map": ".participation[typeCode=SBJ].role",
"identity": "rim"
}, {
"map": "who.focus",
"identity": "w5"
} ],
"type": [ {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/Patient"
}, {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/Group"
} ],
"mustSupport": true,
"alias": [ "patient" ],
"max": "1",
"id": "ChargeItem.subject",
"condition": [ "ele-1" ],
"comment": "References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository.",
"base": {
"max": "1",
"min": 1,
"path": "ChargeItem.subject"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
}, {
"key": "ref-1",
"human": "SHALL have a contained resource if a local reference is provided",
"xpath": "not(starts-with(f:reference/@value, '#')) or exists(ancestor::*[self::f:entry or self::f:parameter]/f:resource/f:*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')]|/*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')])",
"severity": "error",
"expression": "reference.startsWith('#').not() or (reference.substring(1).trace('url') in %resource.contained.id.trace('ids'))"
} ],
"path": "ChargeItem.context",
"requirements": "Links the request to the Encounter context.",
"min": 0,
"definition": "The encounter or episode of care that establishes the context for this event.",
"short": "Encounter / Episode associated with event",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "The target of a resource reference is a RIM entry point (Act, Role, or Entity)",
"identity": "rim"
}, {
"map": "Event.context",
"identity": "workflow"
}, {
"map": "PV1 in proximity to FT1 segment",
"identity": "v2"
}, {
"map": ".inboundRelationship(typeCode=COMP].source[classCode<=PCPR, moodCode=EVN]",
"identity": "rim"
}, {
"map": "context",
"identity": "w5"
} ],
"type": [ {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/Encounter"
}, {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/EpisodeOfCare"
} ],
"alias": [ "encounter" ],
"max": "1",
"id": "ChargeItem.context",
"condition": [ "ele-1" ],
"comment": "References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository.",
"base": {
"max": "1",
"min": 0,
"path": "ChargeItem.context"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.occurrenceDateTime",
"min": 1,
"definition": "Date/time(s) or duration when the charged service was applied.",
"short": "When the charged service was applied",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "Varies by domain",
"identity": "v2"
}, {
"map": ".effectiveTime",
"identity": "rim"
}, {
"map": "when.done",
"identity": "w5"
} ],
"type": [ {
"code": "dateTime"
} ],
"mustSupport": true,
"sliceName": "occurrenceDateTime",
"alias": [ "timing" ],
"max": "1",
"id": "ChargeItem.occurrence[x]:occurrenceDateTime",
"condition": [ "ele-1" ],
"comment": "The list of types may be constrained as appropriate for the type of charge item.",
"base": {
"max": "1",
"min": 0,
"path": "ChargeItem.occurrence[x]"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.participant",
"min": 0,
"definition": "Indicates who or what performed or participated in the charged service.",
"short": "Who performed charged service",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "EVN.5 or by domain",
"identity": "v2"
}, {
"map": ".participation[typeCode=PRF].role[scoper.determinerCode=INSTANCE]",
"identity": "rim"
} ],
"type": [ {
"code": "BackboneElement"
} ],
"max": "*",
"id": "ChargeItem.participant",
"condition": [ "ele-1" ],
"base": {
"max": "*",
"min": 0,
"path": "ChargeItem.participant"
},
"isSummary": false
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.participant.id",
"min": 0,
"definition": "unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
"short": "xml:id (or equivalent in JSON)",
"mapping": [ {
"map": "n/a",
"identity": "rim"
} ],
"type": [ {
"code": "string"
} ],
"representation": [ "xmlAttr" ],
"max": "1",
"id": "ChargeItem.participant.id",
"condition": [ "ele-1" ],
"comment": "Note that FHIR strings may not exceed 1MB in size",
"base": {
"max": "1",
"min": 0,
"path": "Element.id"
}
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
}, {
"key": "ext-1",
"human": "Must have either extensions or value[x], not both",
"xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')])",
"severity": "error",
"expression": "extension.exists() != value.exists()"
} ],
"path": "ChargeItem.participant.extension",
"min": 0,
"definition": "May be used to represent additional information that is not part of the basic definition of the element. In order to make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.",
"short": "Additional Content defined by implementations",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "N/A",
"identity": "rim"
} ],
"slicing": {
"rules": "open",
"description": "Extensions are always sliced by (at least) url",
"discriminator": [ {
"path": "url",
"type": "value"
} ]
},
"type": [ {
"code": "Extension"
} ],
"alias": [ "extensions", "user content" ],
"max": "*",
"id": "ChargeItem.participant.extension",
"condition": [ "ele-1" ],
"comment": "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
"base": {
"max": "*",
"min": 0,
"path": "Element.extension"
}
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
}, {
"key": "ext-1",
"human": "Must have either extensions or value[x], not both",
"xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')])",
"severity": "error",
"expression": "extension.exists() != value.exists()"
} ],
"path": "ChargeItem.participant.modifierExtension",
"min": 0,
"definition": "May be used to represent additional information that is not part of the basic definition of the element, and that modifies the understanding of the element that contains it. Usually modifier elements provide negation or qualification. In order to make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.",
"isModifier": true,
"short": "Extensions that cannot be ignored",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "N/A",
"identity": "rim"
} ],
"type": [ {
"code": "Extension"
} ],
"alias": [ "extensions", "user content", "modifiers" ],
"max": "*",
"id": "ChargeItem.participant.modifierExtension",
"condition": [ "ele-1" ],
"comment": "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
"base": {
"max": "*",
"min": 0,
"path": "BackboneElement.modifierExtension"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.participant.role",
"min": 0,
"definition": "Describes the type of performance or participation(e.g. primary surgeon, anaesthesiologiest, etc.).",
"short": "What type of performance was done",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "CE/CNE/CWE",
"identity": "v2"
}, {
"map": "CD",
"identity": "rim"
}, {
"map": "fhir:CodeableConcept rdfs:subClassOf dt:CD",
"identity": "orim"
}, {
"map": "Varies by domain",
"identity": "v2"
}, {
"map": ".participation.functionCode",
"identity": "rim"
} ],
"type": [ {
"code": "CodeableConcept"
} ],
"binding": {
"strength": "example",
"extension": [ {
"url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
"valueString": "ChargeItemPerformerRole"
} ],
"description": "Codes describing the types of functional roles performers can take on when performing events",
"valueSetReference": {
"reference": "http://hl7.org/fhir/ValueSet/performer-role"
}
},
"max": "1",
"id": "ChargeItem.participant.role",
"condition": [ "ele-1" ],
"comment": "Not all terminology uses fit this general pattern. In some cases, models should not use CodeableConcept and use Coding directly and provide their own structure for managing text, codings, translations and the relationship between elements and pre- and post-coordination.",
"base": {
"max": "1",
"min": 0,
"path": "ChargeItem.participant.role"
},
"isSummary": false
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
}, {
"key": "ref-1",
"human": "SHALL have a contained resource if a local reference is provided",
"xpath": "not(starts-with(f:reference/@value, '#')) or exists(ancestor::*[self::f:entry or self::f:parameter]/f:resource/f:*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')]|/*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')])",
"severity": "error",
"expression": "reference.startsWith('#').not() or (reference.substring(1).trace('url') in %resource.contained.id.trace('ids'))"
} ],
"path": "ChargeItem.participant.actor",
"min": 1,
"definition": "The device, practitioner, etc. who performed or participated in the service.",
"short": "Individual who was performing",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "The target of a resource reference is a RIM entry point (Act, Role, or Entity)",
"identity": "rim"
}, {
"map": "EVN.5 or by domain",
"identity": "v2"
}, {
"map": ".player",
"identity": "rim"
}, {
"map": "who.actor",
"identity": "w5"
} ],
"type": [ {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/Practitioner"
}, {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/Organization"
}, {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/Patient"
}, {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/Device"
}, {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/RelatedPerson"
} ],
"max": "1",
"id": "ChargeItem.participant.actor",
"condition": [ "ele-1" ],
"comment": "References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository.",
"base": {
"max": "1",
"min": 1,
"path": "ChargeItem.participant.actor"
},
"isSummary": false
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
}, {
"key": "ref-1",
"human": "SHALL have a contained resource if a local reference is provided",
"xpath": "not(starts-with(f:reference/@value, '#')) or exists(ancestor::*[self::f:entry or self::f:parameter]/f:resource/f:*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')]|/*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')])",
"severity": "error",
"expression": "reference.startsWith('#').not() or (reference.substring(1).trace('url') in %resource.contained.id.trace('ids'))"
} ],
"path": "ChargeItem.performingOrganization",
"min": 0,
"definition": "The organization requesting the service.",
"short": "Organization providing the charged sevice",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "The target of a resource reference is a RIM entry point (Act, Role, or Entity)",
"identity": "rim"
}, {
"map": "N/A",
"identity": "v2"
}, {
"map": ".scoper",
"identity": "rim"
} ],
"type": [ {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/Organization"
} ],
"max": "1",
"id": "ChargeItem.performingOrganization",
"condition": [ "ele-1" ],
"comment": "Practitioners and Devices can be associated with multiple organizations. It has to be made clear, on behalf of which Organization the services have been rendered.",
"base": {
"max": "1",
"min": 0,
"path": "ChargeItem.performingOrganization"
},
"isSummary": false
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
}, {
"key": "ref-1",
"human": "SHALL have a contained resource if a local reference is provided",
"xpath": "not(starts-with(f:reference/@value, '#')) or exists(ancestor::*[self::f:entry or self::f:parameter]/f:resource/f:*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')]|/*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')])",
"severity": "error",
"expression": "reference.startsWith('#').not() or (reference.substring(1).trace('url') in %resource.contained.id.trace('ids'))"
} ],
"path": "ChargeItem.requestingOrganization",
"min": 0,
"definition": "The organization performing the service.",
"short": "Organization requesting the charged service",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "The target of a resource reference is a RIM entry point (Act, Role, or Entity)",
"identity": "rim"
}, {
"map": "N/A",
"identity": "v2"
}, {
"map": ".scoper",
"identity": "rim"
} ],
"type": [ {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/Organization"
} ],
"max": "1",
"id": "ChargeItem.requestingOrganization",
"condition": [ "ele-1" ],
"comment": "The rendered Service may not be associated with a Request. It has to be made clear, ob which Organization's Request, the services have been rendered. (In many cases, this may just be the Department associated with the Encounter.location).",
"base": {
"max": "1",
"min": 0,
"path": "ChargeItem.requestingOrganization"
},
"isSummary": false
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
}, {
"key": "qty-3",
"human": "If a code for the unit is present, the system SHALL also be present",
"xpath": "not(exists(f:code)) or exists(f:system)",
"severity": "error",
"expression": "code.empty() or system.exists()"
} ],
"path": "ChargeItem.quantity",
"min": 1,
"definition": "Quantity of which the charge item has been serviced.",
"short": "Quantity of which the charge item has been serviced",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "SN (see also Range) or CQ",
"identity": "v2"
}, {
"map": "PQ, IVL, MO, CO, depending on the values",
"identity": "rim"
}, {
"map": "FT1.10",
"identity": "v2"
} ],
"type": [ {
"code": "Quantity"
} ],
"mustSupport": true,
"max": "1",
"id": "ChargeItem.quantity",
"condition": [ "ele-1" ],
"comment": "In many cases this may just be a value, if the underlying units are implicit in the definition of the charge item code.",
"base": {
"max": "1",
"min": 0,
"path": "ChargeItem.quantity"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.quantity.id",
"min": 0,
"definition": "unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.",
"short": "xml:id (or equivalent in JSON)",
"mapping": [ {
"map": "n/a",
"identity": "rim"
} ],
"type": [ {
"code": "string"
} ],
"representation": [ "xmlAttr" ],
"max": "1",
"id": "ChargeItem.quantity.id",
"condition": [ "ele-1" ],
"comment": "Note that FHIR strings may not exceed 1MB in size",
"base": {
"max": "1",
"min": 0,
"path": "Element.id"
}
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
}, {
"key": "ext-1",
"human": "Must have either extensions or value[x], not both",
"xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')])",
"severity": "error",
"expression": "extension.exists() != value.exists()"
} ],
"path": "ChargeItem.quantity.extension",
"min": 0,
"definition": "May be used to represent additional information that is not part of the basic definition of the element. In order to make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.",
"short": "Additional Content defined by implementations",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "N/A",
"identity": "rim"
} ],
"slicing": {
"rules": "open",
"description": "Extensions are always sliced by (at least) url",
"discriminator": [ {
"path": "url",
"type": "value"
} ]
},
"type": [ {
"code": "Extension"
} ],
"alias": [ "extensions", "user content" ],
"max": "*",
"id": "ChargeItem.quantity.extension",
"condition": [ "ele-1" ],
"comment": "There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.",
"base": {
"max": "*",
"min": 0,
"path": "Element.extension"
}
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.quantity.value",
"requirements": "Precision is handled implicitly in almost all cases of measurement.",
"min": 1,
"definition": "The value of the measured amount. The value includes an implicit precision in the presentation of the value.",
"short": "Numerical value (with implicit precision)",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "SN.2 / CQ - N/A",
"identity": "v2"
}, {
"map": "PQ.value, CO.value, MO.value, IVL.high or IVL.low depending on the value",
"identity": "rim"
} ],
"type": [ {
"code": "decimal"
} ],
"max": "1",
"id": "ChargeItem.quantity.value",
"condition": [ "ele-1" ],
"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).",
"base": {
"max": "1",
"min": 0,
"path": "Quantity.value"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.quantity.comparator",
"requirements": "Need a framework for handling measures where the value is <5ug/L or >400mg/L due to the limitations of measuring methodology.",
"min": 0,
"definition": "How the value should be understood and represented - whether the actual value is greater or less than the stated value due to measurement issues; e.g. if the comparator is \"<\" , then the real value is < stated value.",
"isModifier": true,
"short": "< | <= | >= | > - how to understand the value",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "SN.1 / CQ.1",
"identity": "v2"
}, {
"map": "IVL properties",
"identity": "rim"
} ],
"type": [ {
"code": "code"
} ],
"meaningWhenMissing": "If there is no comparator, then there is no modification of the value",
"binding": {
"strength": "required",
"extension": [ {
"url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
"valueString": "QuantityComparator"
} ],
"description": "How the Quantity should be understood and represented.",
"valueSetReference": {
"reference": "http://hl7.org/fhir/ValueSet/quantity-comparator"
}
},
"max": "1",
"id": "ChargeItem.quantity.comparator",
"condition": [ "ele-1" ],
"comment": "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.",
"base": {
"max": "1",
"min": 0,
"path": "Quantity.comparator"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.quantity.unit",
"requirements": "There are many representations for units of measure and in many contexts, particular representations are fixed and required. I.e. mcg for micrograms.",
"min": 0,
"definition": "A human-readable form of the unit.",
"short": "Unit representation",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "(see OBX.6 etc.) / CQ.2",
"identity": "v2"
}, {
"map": "PQ.unit",
"identity": "rim"
} ],
"type": [ {
"code": "string"
} ],
"extension": [ {
"url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-translatable",
"valueBoolean": true
} ],
"max": "1",
"id": "ChargeItem.quantity.unit",
"condition": [ "ele-1" ],
"comment": "Note that FHIR strings may not exceed 1MB in size",
"base": {
"max": "1",
"min": 0,
"path": "Quantity.unit"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.quantity.system",
"requirements": "Need to know the system that defines the coded form of the unit.",
"min": 0,
"definition": "The identification of the system that provides the coded form of the unit.",
"short": "System that defines coded unit form",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "(see OBX.6 etc.) / CQ.2",
"identity": "v2"
}, {
"map": "CO.codeSystem, PQ.translation.codeSystem",
"identity": "rim"
} ],
"type": [ {
"code": "uri"
} ],
"max": "1",
"id": "ChargeItem.quantity.system",
"condition": [ "ele-1", "qty-3" ],
"comment": "see http://en.wikipedia.org/wiki/Uniform_resource_identifier",
"base": {
"max": "1",
"min": 0,
"path": "Quantity.system"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.quantity.code",
"requirements": "Need a computable form of the unit that is fixed across all forms. UCUM provides this for quantities, but SNOMED CT provides many units of interest.",
"min": 0,
"definition": "A computer processable form of the unit in some unit representation system.",
"short": "Coded form of the unit",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "(see OBX.6 etc.) / CQ.2",
"identity": "v2"
}, {
"map": "PQ.code, MO.currency, PQ.translation.code",
"identity": "rim"
} ],
"type": [ {
"code": "code"
} ],
"max": "1",
"id": "ChargeItem.quantity.code",
"condition": [ "ele-1" ],
"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.",
"base": {
"max": "1",
"min": 0,
"path": "Quantity.code"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.bodysite",
"min": 0,
"definition": "The anatomical location where the related service has been applied.",
"short": "Anatomical location, if relevant",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "CE/CNE/CWE",
"identity": "v2"
}, {
"map": "CD",
"identity": "rim"
}, {
"map": "fhir:CodeableConcept rdfs:subClassOf dt:CD",
"identity": "orim"
}, {
"map": ".targetBodySiteCode",
"identity": "rim"
} ],
"type": [ {
"code": "CodeableConcept"
} ],
"binding": {
"strength": "example",
"extension": [ {
"url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
"valueString": "BodySite"
} ],
"description": "Codes describing anatomical locations. May include laterality.",
"valueSetReference": {
"reference": "http://hl7.org/fhir/ValueSet/body-site"
}
},
"max": "*",
"id": "ChargeItem.bodysite",
"condition": [ "ele-1" ],
"comment": "Only used if not implicit in code found in Condition.code. If the use case requires attributes from the BodySite resource (e.g. to identify and track separately) then use the standard extension [body-site-instance](extension-body-site-instance.html). May be a summary code, or a reference to a very precise definition of the location, or both.",
"base": {
"max": "*",
"min": 0,
"path": "ChargeItem.bodysite"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.factorOverride",
"min": 0,
"definition": "Factor overriding the factor determined by the rules associated with the code.",
"short": "Factor overriding the associated rules",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "FT1.26",
"identity": "v2"
} ],
"type": [ {
"code": "decimal"
} ],
"max": "1",
"id": "ChargeItem.factorOverride",
"condition": [ "ele-1" ],
"comment": "There is no reason to carry the factor in the instance of a ChargeItem unless special circumstances require a manual override. The factors are usually defined by a set of rules in a back catalogue of the billing codes (see ChargeItem.definition). Derived profiles may require a ChargeItem.overrideReason to be provided if either factor or price are manually overriden.",
"base": {
"max": "1",
"min": 0,
"path": "ChargeItem.factorOverride"
},
"isSummary": false
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
}, {
"key": "qty-3",
"human": "If a code for the unit is present, the system SHALL also be present",
"xpath": "not(exists(f:code)) or exists(f:system)",
"severity": "error",
"expression": "code.empty() or system.exists()"
}, {
"key": "mny-1",
"human": "There SHALL be a code if there is a value and it SHALL be an expression of currency. If system is present, it SHALL be ISO 4217 (system = \"urn:iso:std:iso:4217\" - currency).",
"xpath": "(f:code or not(f:value)) and (not(exists(f:system)) or f:system/@value='urn:iso:std:iso:4217')",
"severity": "error",
"expression": "(code or value.empty()) and (system.empty() or system = 'urn:iso:std:iso:4217')"
} ],
"path": "ChargeItem.priceOverride",
"min": 0,
"definition": "Total price of the charge overriding the list price associated with the code.",
"short": "Price overriding the associated rules",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "SN (see also Range) or CQ",
"identity": "v2"
}, {
"map": "PQ, IVL, MO, CO, depending on the values",
"identity": "rim"
}, {
"map": "MO",
"identity": "rim"
}, {
"map": "FT1.22",
"identity": "v2"
} ],
"type": [ {
"code": "Money"
} ],
"max": "1",
"id": "ChargeItem.priceOverride",
"condition": [ "ele-1" ],
"comment": "There is no reason to carry the price in the instance of a ChargeItem unless circumstances require a manual override. The list prices or are usually defined in a back catalogue of the billing codes (see ChargeItem.definition). Derived profiles may require a ChargeItem.overrideReason to be provided if either factor or price are manually overriden.",
"base": {
"max": "1",
"min": 0,
"path": "ChargeItem.priceOverride"
},
"isSummary": false
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.overrideReason",
"min": 0,
"definition": "If the list price or the rule based factor associated with the code is overridden, this attribute can capture a text to indicate the reason for this action.",
"short": "Reason for overriding the list price/factor",
"mapping": [ {
"map": "n/a",
"identity": "rim"
} ],
"type": [ {
"code": "string"
} ],
"max": "1",
"id": "ChargeItem.overrideReason",
"condition": [ "ele-1" ],
"comment": "Derived Profiles may chose to add invariants requiring this field to be populated if either priceOverride or factorOverride have been filled.",
"base": {
"max": "1",
"min": 0,
"path": "ChargeItem.overrideReason"
},
"isSummary": false
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
}, {
"key": "ref-1",
"human": "SHALL have a contained resource if a local reference is provided",
"xpath": "not(starts-with(f:reference/@value, '#')) or exists(ancestor::*[self::f:entry or self::f:parameter]/f:resource/f:*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')]|/*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')])",
"severity": "error",
"expression": "reference.startsWith('#').not() or (reference.substring(1).trace('url') in %resource.contained.id.trace('ids'))"
} ],
"path": "ChargeItem.enterer",
"min": 0,
"definition": "The device, practitioner, etc. who entered the charge item.",
"short": "Individual who was entering",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "The target of a resource reference is a RIM entry point (Act, Role, or Entity)",
"identity": "rim"
}, {
"map": "EVN.5 or by domain",
"identity": "v2"
}, {
"map": ".player",
"identity": "rim"
}, {
"map": "who.actor",
"identity": "w5"
} ],
"type": [ {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/Practitioner"
}, {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/Organization"
}, {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/Patient"
}, {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/Device"
}, {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/RelatedPerson"
} ],
"max": "1",
"id": "ChargeItem.enterer",
"condition": [ "ele-1" ],
"comment": "The enterer is also te person considered responsible for factor/priceOverrides if applicable.",
"base": {
"max": "1",
"min": 0,
"path": "ChargeItem.enterer"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.enteredDate",
"min": 0,
"definition": "Date the charge item was entered.",
"short": "Date the charge item was entered",
"mapping": [ {
"map": "n/a",
"identity": "rim"
} ],
"type": [ {
"code": "dateTime"
} ],
"max": "1",
"id": "ChargeItem.enteredDate",
"condition": [ "ele-1" ],
"comment": "The actual date when the service associated with the charge has been rendered is captured in occurrence[x].",
"base": {
"max": "1",
"min": 0,
"path": "ChargeItem.enteredDate"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.reason",
"min": 0,
"definition": "Describes why the event occurred in coded or textual form.",
"short": "Why was the charged service rendered?",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "CE/CNE/CWE",
"identity": "v2"
}, {
"map": "CD",
"identity": "rim"
}, {
"map": "fhir:CodeableConcept rdfs:subClassOf dt:CD",
"identity": "orim"
}, {
"map": "Event.reasonCodeableConcept",
"identity": "workflow"
}, {
"map": "EVN.4 or by domain",
"identity": "v2"
}, {
"map": ".reasonCode",
"identity": "rim"
}, {
"map": "why",
"identity": "w5"
} ],
"type": [ {
"code": "CodeableConcept"
} ],
"binding": {
"strength": "example",
"extension": [ {
"url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
"valueString": "ChargeItemReason"
} ],
"description": "Example binding for reason",
"valueSetReference": {
"reference": "http://hl7.org/fhir/ValueSet/icd-10"
}
},
"max": "*",
"id": "ChargeItem.reason",
"condition": [ "ele-1" ],
"comment": "If the application of the charge item requires a reason to be given, it can be captured here. Textual reasons can be captured using reasonCode.text.",
"base": {
"max": "*",
"min": 0,
"path": "ChargeItem.reason"
},
"isSummary": false
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
}, {
"key": "ref-1",
"human": "SHALL have a contained resource if a local reference is provided",
"xpath": "not(starts-with(f:reference/@value, '#')) or exists(ancestor::*[self::f:entry or self::f:parameter]/f:resource/f:*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')]|/*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')])",
"severity": "error",
"expression": "reference.startsWith('#').not() or (reference.substring(1).trace('url') in %resource.contained.id.trace('ids'))"
} ],
"path": "ChargeItem.service",
"min": 0,
"definition": "Indicated the rendered service that caused this charge.",
"short": "Which rendered service is being charged?",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "The target of a resource reference is a RIM entry point (Act, Role, or Entity)",
"identity": "rim"
}, {
"map": "Event.reasonReference",
"identity": "workflow"
}, {
"map": "EVN.4 or by domain",
"identity": "v2"
}, {
"map": ".outboundRelationship[typeCode=RSON].target",
"identity": "rim"
}, {
"map": "why",
"identity": "w5"
} ],
"type": [ {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/DiagnosticReport"
}, {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/ImagingStudy"
}, {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/Immunization"
}, {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/MedicationAdministration"
}, {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/MedicationDispense"
}, {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/Observation"
}, {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/Procedure"
}, {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/SupplyDelivery"
} ],
"max": "*",
"id": "ChargeItem.service",
"condition": [ "ele-1" ],
"comment": "References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository.",
"base": {
"max": "*",
"min": 0,
"path": "ChargeItem.service"
},
"isSummary": false
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
}, {
"key": "ref-1",
"human": "SHALL have a contained resource if a local reference is provided",
"xpath": "not(starts-with(f:reference/@value, '#')) or exists(ancestor::*[self::f:entry or self::f:parameter]/f:resource/f:*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')]|/*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')])",
"severity": "error",
"expression": "reference.startsWith('#').not() or (reference.substring(1).trace('url') in %resource.contained.id.trace('ids'))"
} ],
"path": "ChargeItem.account",
"min": 0,
"definition": "Account into which this ChargeItems belongs.",
"short": "Account to place this charge",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "The target of a resource reference is a RIM entry point (Act, Role, or Entity)",
"identity": "rim"
} ],
"type": [ {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/Account"
} ],
"max": "*",
"id": "ChargeItem.account",
"condition": [ "ele-1" ],
"comment": "Systems posting the ChargeItems may not always be able to determine, which accounts the Items need to be places into. It is up to the potprocessing Financial System to apply internal rules to decide based on the Encounter/EpisodeOfCare/Patient/Coverage context and the type of ChargeItem, which Account is appropriate.",
"base": {
"max": "*",
"min": 0,
"path": "ChargeItem.account"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "ChargeItem.note",
"min": 0,
"definition": "Comments made about the event by the performer, subject or other participants.",
"short": "Comments made about the ChargeItem",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "N/A",
"identity": "v2"
}, {
"map": "Act",
"identity": "rim"
}, {
"map": "Event.note",
"identity": "workflow"
}, {
"map": "NTE",
"identity": "v2"
}, {
"map": ".inboundRelationship(typeCode=SUBJ].source[classCode=ANNGEN, moodCode=EVN].value[xsi:type=ST]",
"identity": "rim"
} ],
"type": [ {
"code": "Annotation"
} ],
"max": "*",
"id": "ChargeItem.note",
"condition": [ "ele-1" ],
"comment": "For systems that do not have structured annotations, they can simply communicate a single annotation with no author or time. This element may need to be included in narrative because of the potential for modifying information. *Annotations SHOULD NOT* be used to communicate \"modifying\" information that could be computable. (This is a SHOULD because enforcing user behavior is nearly impossible).",
"base": {
"max": "*",
"min": 0,
"path": "ChargeItem.note"
},
"isSummary": false
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
}, {
"key": "ref-1",
"human": "SHALL have a contained resource if a local reference is provided",
"xpath": "not(starts-with(f:reference/@value, '#')) or exists(ancestor::*[self::f:entry or self::f:parameter]/f:resource/f:*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')]|/*/f:contained/f:*[f:id/@value=substring-after(current()/f:reference/@value, '#')])",
"severity": "error",
"expression": "reference.startsWith('#').not() or (reference.substring(1).trace('url') in %resource.contained.id.trace('ids'))"
} ],
"path": "ChargeItem.supportingInformation",
"min": 0,
"definition": "Further information supporting the this charge.",
"short": "Further information supporting the this charge",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "The target of a resource reference is a RIM entry point (Act, Role, or Entity)",
"identity": "rim"
} ],
"type": [ {
"code": "Reference",
"targetProfile": "http://hl7.org/fhir/StructureDefinition/Resource"
} ],
"max": "*",
"id": "ChargeItem.supportingInformation",
"condition": [ "ele-1" ],
"comment": "References SHALL be a reference to an actual FHIR resource, and SHALL be resolveable (allowing for access control, temporary unavailability, etc). Resolution can be either by retrieval from the URL, or, where applicable by resource type, by treating an absolute reference as a canonical URL and looking it up in a local registry/repository.",
"base": {
"max": "*",
"min": 0,
"path": "ChargeItem.supportingInformation"
},
"isSummary": false
} ]
},
"status": "draft",
"id": "0884956a-98ce-484c-ac6b-2030e3e14d23",
"kind": "resource",
"url": "http://fhir.de/StructureDefinition/chargeitem-ebm/0.2",
"version": "0.2",
"differential": {
"element": [ {
"id": "ChargeItem.status",
"path": "ChargeItem.status",
"mustSupport": true
}, {
"id": "ChargeItem.code",
"path": "ChargeItem.code",
"mustSupport": true
}, {
"id": "ChargeItem.code.coding",
"path": "ChargeItem.code.coding",
"binding": {
"strength": "required",
"valueSetUri": "http://fhir.de/ValueSet/kbv/ebm"
}
}, {
"id": "ChargeItem.code.coding.code",
"path": "ChargeItem.code.coding.code",
"constraint": [ {
"key": "ebm-1",
"human": "Der Code muss dem Schema [0-9]{5}[A-Z]{0,1} entsprechen",
"severity": "warning",
"expression": "matches('[0-9]{5}[A-Z]{0,1}')"
} ]
}, {
"id": "ChargeItem.subject",
"path": "ChargeItem.subject",
"mustSupport": true
}, {
"id": "ChargeItem.occurrence[x]:occurrenceDateTime",
"min": 1,
"path": "ChargeItem.occurrenceDateTime",
"type": [ {
"code": "dateTime"
} ],
"sliceName": "occurrenceDateTime",
"mustSupport": true
}, {
"id": "ChargeItem.quantity",
"min": 1,
"path": "ChargeItem.quantity",
"mustSupport": true
}, {
"id": "ChargeItem.quantity.value",
"min": 1,
"path": "ChargeItem.quantity.value"
} ]
},
"baseDefinition": "http://hl7.org/fhir/StructureDefinition/ChargeItem"
}