{
"description": "FUME Mapping expression",
"_filename": "StructureDefinition-mapping-expression.json",
"package_name": "il.laniado.fhir.r4",
"date": null,
"derivation": "constraint",
"publisher": "Outburn Ltd.",
"fhirVersion": "4.0.1",
"name": "MappingExpression",
"mapping": [ {
"uri": "http://hl7.org/v3",
"name": "RIM Mapping",
"identity": "rim"
} ],
"abstract": false,
"type": "Extension",
"experimental": null,
"resourceType": "StructureDefinition",
"title": "FUME Mapping Expression",
"package_version": "0.2.6",
"snapshot": {
"element": [ {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element",
"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": "Extension",
"min": 0,
"definition": "FUME Mapping expression",
"isModifier": false,
"short": "FUME Mapping Expression",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "N/A",
"identity": "rim"
} ],
"max": "*",
"id": "Extension",
"condition": [ "ele-1" ],
"base": {
"max": "*",
"min": 0,
"path": "Extension"
}
}, {
"path": "Extension.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.",
"isModifier": false,
"short": "Unique id for inter-element referencing",
"mapping": [ {
"map": "n/a",
"identity": "rim"
} ],
"type": [ {
"code": "http://hl7.org/fhirpath/System.String",
"extension": [ {
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type",
"valueUrl": "string"
} ]
} ],
"representation": [ "xmlAttr" ],
"max": "1",
"id": "Extension.id",
"base": {
"max": "1",
"min": 0,
"path": "Element.id"
},
"isSummary": false
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element",
"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\")])",
"source": "http://hl7.org/fhir/StructureDefinition/Extension",
"severity": "error",
"expression": "extension.exists() != value.exists()"
} ],
"path": "Extension.extension",
"min": 0,
"definition": "May be used to represent additional information that is not part of the basic definition of the element. 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 can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.",
"isModifier": false,
"short": "Additional content defined by implementations",
"mapping": [ {
"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": "0",
"id": "Extension.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.",
"base": {
"max": "*",
"min": 0,
"path": "Element.extension"
},
"isSummary": false
}, {
"path": "Extension.url",
"min": 1,
"definition": "Source of the definition for the extension code - a logical name or a URL.",
"isModifier": false,
"short": "identifies the meaning of the extension",
"fixedUri": "http://fhir.fume.health/StructureDefinition/mapping-expression",
"mapping": [ {
"map": "N/A",
"identity": "rim"
} ],
"type": [ {
"code": "http://hl7.org/fhirpath/System.String",
"extension": [ {
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type",
"valueUrl": "uri"
} ]
} ],
"representation": [ "xmlAttr" ],
"max": "1",
"id": "Extension.url",
"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.",
"base": {
"max": "1",
"min": 1,
"path": "Extension.url"
},
"isSummary": false
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "Extension.value[x]",
"min": 0,
"definition": "Value of extension - must be one of a constrained set of the data types (see [Extensibility](extensibility.html) for a list).",
"isModifier": false,
"short": "Value of extension",
"mapping": [ {
"map": "N/A",
"identity": "rim"
} ],
"type": [ {
"code": "Expression"
} ],
"max": "1",
"id": "Extension.value[x]",
"base": {
"max": "1",
"min": 0,
"path": "Extension.value[x]"
},
"isSummary": false
}, {
"path": "Extension.value[x].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.",
"isModifier": false,
"short": "Unique id for inter-element referencing",
"mapping": [ {
"map": "n/a",
"identity": "rim"
} ],
"type": [ {
"code": "http://hl7.org/fhirpath/System.String",
"extension": [ {
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type",
"valueUrl": "string"
} ]
} ],
"representation": [ "xmlAttr" ],
"max": "1",
"id": "Extension.value[x].id",
"base": {
"max": "1",
"min": 0,
"path": "Element.id"
},
"isSummary": false
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element",
"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\")])",
"source": "http://hl7.org/fhir/StructureDefinition/Extension",
"severity": "error",
"expression": "extension.exists() != value.exists()"
} ],
"path": "Extension.value[x].extension",
"min": 0,
"definition": "May be used to represent additional information that is not part of the basic definition of the element. 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 can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.",
"isModifier": false,
"short": "Additional content defined by implementations",
"mapping": [ {
"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": "Extension.value[x].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.",
"base": {
"max": "*",
"min": 0,
"path": "Element.extension"
},
"isSummary": false
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "Extension.value[x].description",
"min": 0,
"definition": "A brief, natural language description of the condition that effectively communicates the intended semantics.",
"isModifier": false,
"short": "Natural language description of the condition",
"type": [ {
"code": "string"
} ],
"max": "1",
"id": "Extension.value[x].description",
"base": {
"max": "1",
"min": 0,
"path": "Expression.description"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "Extension.value[x].name",
"min": 0,
"definition": "A short name assigned to the expression to allow for multiple reuse of the expression in the context where it is defined.",
"isModifier": false,
"short": "Short name assigned to expression for reuse",
"type": [ {
"code": "id"
} ],
"max": "1",
"id": "Extension.value[x].name",
"base": {
"max": "1",
"min": 0,
"path": "Expression.name"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "Extension.value[x].language",
"fixedCode": "application/vnd.outburn.fume",
"min": 1,
"definition": "The media type of the language for the expression.",
"isModifier": false,
"short": "text/cql | text/fhirpath | application/x-fhir-query | etc.",
"type": [ {
"code": "code"
} ],
"binding": {
"strength": "extensible",
"valueSet": "http://hl7.org/fhir/ValueSet/expression-language",
"extension": [ {
"url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-maxValueSet",
"valueCanonical": "http://www.rfc-editor.org/bcp/bcp13.txt"
}, {
"url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
"valueString": "ExpressionLanguage"
} ],
"description": "The media type of the expression language."
},
"max": "1",
"id": "Extension.value[x].language",
"base": {
"max": "1",
"min": 1,
"path": "Expression.language"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "Extension.value[x].expression",
"min": 1,
"definition": "An expression in the specified language that returns a value.",
"isModifier": false,
"short": "Expression in specified language",
"type": [ {
"code": "string"
} ],
"max": "1",
"id": "Extension.value[x].expression",
"base": {
"max": "1",
"min": 0,
"path": "Expression.expression"
},
"isSummary": true
}, {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"source": "http://hl7.org/fhir/StructureDefinition/Element",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
} ],
"path": "Extension.value[x].reference",
"min": 0,
"definition": "A URI that defines where the expression is found.",
"isModifier": false,
"short": "Where the expression is found",
"type": [ {
"code": "uri"
} ],
"max": "1",
"id": "Extension.value[x].reference",
"comment": "If both a reference and an expression is found, the reference SHALL point to the same expression.",
"base": {
"max": "1",
"min": 0,
"path": "Expression.reference"
},
"isSummary": true
} ]
},
"status": "draft",
"id": "8e8073fc-a227-4d64-8e5a-53d1a922f01e",
"kind": "complex-type",
"url": "http://fhir.fume.health/StructureDefinition/mapping-expression",
"context": [ {
"type": "element",
"expression": "StructureMap.group.rule"
} ],
"version": null,
"differential": {
"element": [ {
"id": "Extension",
"path": "Extension",
"short": "FUME Mapping Expression",
"definition": "FUME Mapping expression"
}, {
"id": "Extension.extension",
"max": "0",
"path": "Extension.extension"
}, {
"id": "Extension.url",
"path": "Extension.url",
"fixedUri": "http://fhir.fume.health/StructureDefinition/mapping-expression"
}, {
"id": "Extension.value[x]",
"path": "Extension.value[x]",
"type": [ {
"code": "Expression"
} ]
}, {
"id": "Extension.value[x].language",
"path": "Extension.value[x].language",
"fixedCode": "application/vnd.outburn.fume"
}, {
"id": "Extension.value[x].expression",
"min": 1,
"path": "Extension.value[x].expression"
} ]
},
"baseDefinition": "http://hl7.org/fhir/StructureDefinition/Extension"
}