{
"description": "Ratio data type, constrained to use UCUM as a codesystem.",
"_filename": "StructureDefinition-Ratio-uv-ips.json",
"package_name": "hl7.fhir.uv.ips",
"date": "2018-03-21T09:49:16-04:00",
"derivation": "constraint",
"publisher": null,
"fhirVersion": "4.0.0",
"jurisdiction": [ {
"coding": [ {
"code": "001",
"system": "http://unstats.un.org/unsd/methods/m49/m49.htm",
"display": "World"
} ]
} ],
"purpose": "allow only UCUM as a codesystem.",
"name": "RatioUvIps",
"mapping": [ {
"uri": "http://hl7.org/v2",
"name": "HL7 v2 Mapping",
"identity": "v2"
}, {
"uri": "http://hl7.org/v3",
"name": "RIM Mapping",
"identity": "rim"
} ],
"abstract": false,
"type": "Ratio",
"experimental": null,
"resourceType": "StructureDefinition",
"title": "Ratio",
"package_version": "0.3.0",
"snapshot": {
"element": [ {
"constraint": [ {
"key": "ele-1",
"human": "All FHIR elements must have a @value or children",
"xpath": "@value|f:*|h:div",
"source": "Element",
"severity": "error",
"expression": "hasValue() or (children().count() > id.count())"
}, {
"key": "rat-1",
"human": "Numerator and denominator SHALL both be present, or both are absent. If both are absent, there SHALL be some extension present",
"xpath": "(count(f:numerator) = count(f:denominator)) and ((count(f:numerator) > 0) or (count(f:extension) > 0))",
"source": "Ratio",
"severity": "error",
"expression": "(numerator.empty() xor denominator.exists()) and (numerator.exists() or extension.exists())"
} ],
"path": "Ratio",
"min": 0,
"definition": "A relationship of two Quantity values - expressed as a numerator and a denominator.",
"isModifier": false,
"short": "A ratio of two Quantity values - a numerator and a denominator",
"mapping": [ {
"map": "n/a",
"identity": "rim"
}, {
"map": "N/A",
"identity": "v2"
}, {
"map": "RTO",
"identity": "rim"
} ],
"mustSupport": true,
"max": "*",
"id": "Ratio",
"condition": [ "ele-1" ],
"comment": "The Ratio datatype should only be used to express a relationship of two numbers if the relationship cannot be suitably expressed using a Quantity and a common unit. Where the denominator value is known to be fixed to \"1\", Quantity should be used instead of Ratio.",
"base": {
"max": "*",
"min": 0,
"path": "Ratio"
}
}, {
"path": "Ratio.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": "string"
} ],
"representation": [ "xmlAttr" ],
"max": "1",
"id": "Ratio.id",
"base": {
"max": "1",
"min": 0,
"path": "Element.id"
},
"isSummary": false
}, {
"path": "Ratio.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": "Ratio.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": "Ratio.numerator",
"min": 0,
"definition": "The value of the numerator.",
"isModifier": false,
"short": "Numerator value",
"mapping": [ {
"map": ".numerator",
"identity": "rim"
} ],
"type": [ {
"code": "Quantity"
} ],
"mustSupport": true,
"max": "1",
"id": "Ratio.numerator",
"base": {
"max": "1",
"min": 0,
"path": "Ratio.numerator"
},
"isSummary": true
}, {
"path": "Ratio.numerator.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": "string"
} ],
"representation": [ "xmlAttr" ],
"max": "1",
"id": "Ratio.numerator.id",
"base": {
"max": "1",
"min": 0,
"path": "Element.id"
},
"isSummary": false
}, {
"path": "Ratio.numerator.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": "Ratio.numerator.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": "Ratio.numerator.value",
"requirements": "Precision is handled implicitly in almost all cases of measurement.",
"min": 0,
"definition": "The value of the measured amount. The value includes an implicit precision in the presentation of the value.",
"isModifier": false,
"short": "Numerical value (with implicit precision)",
"mapping": [ {
"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": "Ratio.numerator.value",
"comment": "The implicit precision in the value should always be honored. Monetary values have their own rules for handling precision (refer to standard accounting text books).",
"base": {
"max": "1",
"min": 0,
"path": "Quantity.value"
},
"isSummary": true
}, {
"path": "Ratio.numerator.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": "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",
"valueSet": "http://hl7.org/fhir/ValueSet/quantity-comparator|4.0.0",
"extension": [ {
"url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
"valueString": "QuantityComparator"
} ],
"description": "How the Quantity should be understood and represented."
},
"max": "1",
"id": "Ratio.numerator.comparator",
"base": {
"max": "1",
"min": 0,
"path": "Quantity.comparator"
},
"isModifierReason": "This is labeled as \"Is Modifier\" because the comparator modifies the interpretation of the value significantly. If there is no comparator, then there is no modification of the value",
"isSummary": true
}, {
"path": "Ratio.numerator.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.",
"isModifier": false,
"short": "Unit representation",
"mapping": [ {
"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": "Ratio.numerator.unit",
"base": {
"max": "1",
"min": 0,
"path": "Quantity.unit"
},
"isSummary": true
}, {
"path": "Ratio.numerator.system",
"requirements": "Need to know the system that defines the coded form of the unit.",
"min": 1,
"definition": "The identification of the system that provides the coded form of the unit.",
"isModifier": false,
"short": "System that defines coded unit form",
"fixedUri": "http://unitsofmeasure.org",
"mapping": [ {
"map": "(see OBX.6 etc.) / CQ.2",
"identity": "v2"
}, {
"map": "CO.codeSystem, PQ.translation.codeSystem",
"identity": "rim"
} ],
"type": [ {
"code": "uri"
} ],
"mustSupport": true,
"max": "1",
"id": "Ratio.numerator.system",
"condition": [ "qty-3" ],
"base": {
"max": "1",
"min": 0,
"path": "Quantity.system"
},
"isSummary": true
}, {
"path": "Ratio.numerator.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": 1,
"definition": "A computer processable form of the unit in some unit representation system.",
"isModifier": false,
"short": "Coded form of the unit",
"mapping": [ {
"map": "(see OBX.6 etc.) / CQ.2",
"identity": "v2"
}, {
"map": "PQ.code, MO.currency, PQ.translation.code",
"identity": "rim"
} ],
"type": [ {
"code": "code"
} ],
"mustSupport": true,
"max": "1",
"id": "Ratio.numerator.code",
"comment": "The preferred system is UCUM, but SNOMED CT can also be used (for customary units) or ISO 4217 for currency. The context of use may additionally require a code from a particular system.",
"base": {
"max": "1",
"min": 0,
"path": "Quantity.code"
},
"isSummary": true
}, {
"path": "Ratio.denominator",
"min": 0,
"definition": "The value of the denominator.",
"isModifier": false,
"short": "Denominator value",
"mapping": [ {
"map": ".denominator",
"identity": "rim"
} ],
"type": [ {
"code": "Quantity"
} ],
"mustSupport": true,
"max": "1",
"id": "Ratio.denominator",
"base": {
"max": "1",
"min": 0,
"path": "Ratio.denominator"
},
"isSummary": true
}, {
"path": "Ratio.denominator.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": "string"
} ],
"representation": [ "xmlAttr" ],
"max": "1",
"id": "Ratio.denominator.id",
"base": {
"max": "1",
"min": 0,
"path": "Element.id"
},
"isSummary": false
}, {
"path": "Ratio.denominator.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": "Ratio.denominator.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": "Ratio.denominator.value",
"requirements": "Precision is handled implicitly in almost all cases of measurement.",
"min": 0,
"definition": "The value of the measured amount. The value includes an implicit precision in the presentation of the value.",
"isModifier": false,
"short": "Numerical value (with implicit precision)",
"mapping": [ {
"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": "Ratio.denominator.value",
"comment": "The implicit precision in the value should always be honored. Monetary values have their own rules for handling precision (refer to standard accounting text books).",
"base": {
"max": "1",
"min": 0,
"path": "Quantity.value"
},
"isSummary": true
}, {
"path": "Ratio.denominator.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": "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",
"valueSet": "http://hl7.org/fhir/ValueSet/quantity-comparator|4.0.0",
"extension": [ {
"url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
"valueString": "QuantityComparator"
} ],
"description": "How the Quantity should be understood and represented."
},
"max": "1",
"id": "Ratio.denominator.comparator",
"base": {
"max": "1",
"min": 0,
"path": "Quantity.comparator"
},
"isModifierReason": "This is labeled as \"Is Modifier\" because the comparator modifies the interpretation of the value significantly. If there is no comparator, then there is no modification of the value",
"isSummary": true
}, {
"path": "Ratio.denominator.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.",
"isModifier": false,
"short": "Unit representation",
"mapping": [ {
"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": "Ratio.denominator.unit",
"base": {
"max": "1",
"min": 0,
"path": "Quantity.unit"
},
"isSummary": true
}, {
"path": "Ratio.denominator.system",
"requirements": "Need to know the system that defines the coded form of the unit.",
"min": 1,
"definition": "The identification of the system that provides the coded form of the unit.",
"isModifier": false,
"short": "System that defines coded unit form",
"fixedUri": "http://unitsofmeasure.org",
"mapping": [ {
"map": "(see OBX.6 etc.) / CQ.2",
"identity": "v2"
}, {
"map": "CO.codeSystem, PQ.translation.codeSystem",
"identity": "rim"
} ],
"type": [ {
"code": "uri"
} ],
"mustSupport": true,
"max": "1",
"id": "Ratio.denominator.system",
"condition": [ "qty-3" ],
"base": {
"max": "1",
"min": 0,
"path": "Quantity.system"
},
"isSummary": true
}, {
"path": "Ratio.denominator.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": 1,
"definition": "A computer processable form of the unit in some unit representation system.",
"isModifier": false,
"short": "Coded form of the unit",
"mapping": [ {
"map": "(see OBX.6 etc.) / CQ.2",
"identity": "v2"
}, {
"map": "PQ.code, MO.currency, PQ.translation.code",
"identity": "rim"
} ],
"type": [ {
"code": "code"
} ],
"mustSupport": true,
"max": "1",
"id": "Ratio.denominator.code",
"comment": "The preferred system is UCUM, but SNOMED CT can also be used (for customary units) or ISO 4217 for currency. The context of use may additionally require a code from a particular system.",
"base": {
"max": "1",
"min": 0,
"path": "Quantity.code"
},
"isSummary": true
} ]
},
"status": "draft",
"id": "29edaf30-3526-4f32-b454-1bab10fd34db",
"kind": "complex-type",
"url": "http://hl7.org/fhir/uv/ips/StructureDefinition/Ratio-uv-ips",
"version": "0.3.0",
"differential": {
"element": [ {
"id": "Ratio",
"path": "Ratio",
"mustSupport": true
}, {
"id": "Ratio.numerator",
"path": "Ratio.numerator",
"mustSupport": true
}, {
"id": "Ratio.numerator.system",
"min": 1,
"path": "Ratio.numerator.system",
"fixedUri": "http://unitsofmeasure.org",
"mustSupport": true
}, {
"id": "Ratio.numerator.code",
"min": 1,
"path": "Ratio.numerator.code",
"mustSupport": true
}, {
"id": "Ratio.denominator",
"path": "Ratio.denominator",
"mustSupport": true
}, {
"id": "Ratio.denominator.system",
"min": 1,
"path": "Ratio.denominator.system",
"fixedUri": "http://unitsofmeasure.org",
"mustSupport": true
}, {
"id": "Ratio.denominator.code",
"min": 1,
"path": "Ratio.denominator.code",
"mustSupport": true
} ]
},
"baseDefinition": "http://hl7.org/fhir/StructureDefinition/Ratio"
}