Stream: IG creation
Topic: Is this a validation bug?
Brian Reinhold (Feb 24 2019 at 14:48):
I get the following error using the IG framework:
None of the codes provided are in the value set http://hl7.org/fhir/uv/phd/ValueSet/ASN1attribute (http://hl7.org/fhir/uv/phd/ValueSet/ASN1attribute, and a code from this value set is required) (codes = http://hl7.org/fhir/uv/phd/CodeSystem/ASN1ToHL7#532354.0)
From what I see everything is in place so why is this error happening?
The referenced Device resource has the following property entry:
{
"type": {
"coding": [
{
"system": "http://hl7.org/fhir/uv/phd/CodeSystem/ASN1ToHL7",
"code": "532354.0"
}
],
"text": "regulation-status"
},
"valueCode": [
{
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v2-0136",
"code": "N"
}
],
"text": "Device is Regulated"
}
]
},
The structure definition for this property entry is
<element id="Device.property:Asn">
<path value="Device.property" />
<sliceName value="Asn" />
<short value="Properties using ASN1toHL7 codes mapped from ASN.1 BITS fields" />
<definition value="This set of properties reports time capabilities and regulation status." />
</element>
<!-- The bitProperties type: It will contain at least one coding element using the ASN1 system with one of
the ASN1 codes. Currently the MdsTimeInfo capabilities and RegCertDataList regulation status are reported as BITS -->
<element id="Device.property:Asn.type">
<path value="Device.property.type" />
<short value="Tells what the BITs item is" />
<definition value="One of the capabilities reported in the Mds-Time-Info.mds-time-caps-state or Reg-Cert-Data-List.regulation-status field." />
<comment value="Only set 'event' types need be reported. Both set and cleared 'state' types need to be reported. The regulation status is as state type. All time capabilities are event types" />
<binding>
<strength value="required"/>
<valueSet value="http://hl7.org/fhir/uv/phd/ValueSet/ASN1attribute"/>
</binding>
</element>
<element id="Device.property:Asn.type.text">
<path value="Device.property.type.text" />
<definition value="It is recommended to display at least the ASN1 name for the given bit meaning" />
</element>
<!-- This is an ASN1 BITS code, tied to value. Use only one coding system -->
<element id="Device.property:Asn.type.coding">
<path value="Device.property.type.coding" />
<short value="Required ASN1 code system entry" />
<min value="1" />
<max value="1" />
</element>
<!-- The system value is fixed -->
<element id="Device.property:Asn.type.coding.system">
<path value="Device.property.type.coding.system" />
<min value="1" />
<fixedUri value="http://hl7.org/fhir/uv/phd/CodeSystem/ASN1ToHL7" />
</element>
<element id="Device.property:Asn.type.coding.code">
<path value="Device.property.type.coding.code" />
<short value="These codes are time capabilities 68219.x where x=0 to 15 and regulation status 532354.0" />
<definition value="The ASN1 code made from the code and the Mder bit position" />
<comment value="The MDC code for the mds-time-caps-state field is 68219. Thus the ASN1 code for the case 'device supports a relative time clock', Mder bit 2, would be 68219.2. For the regulation status field the MDC code is 532354, and only bit 0 is defined. However, the regulated status is when the bit is cleared and the unregulated status is when the bit is set. That choice can be confusing." />
<min value="1" />
</element>
<!-- No quantity entry when the value is a code! -->
<element id="Device.property:Asn.valueQuantity">
<path value="Device.property.valueQuantity" />
<max value="0" />
</element>
<element id="Device.property:Asn.valueCode">
<path value="Device.property.valueCode" />
<min value="1" />
<max value="1" />
</element>
<element id="Device.property:Asn.valueCode.coding">
<path value="Device.property.valueCode.coding" />
<slicing>
<discriminator>
<type value="value" />
<path value="system" />
</discriminator>
<rules value="open" />
</slicing>
<min value="1" />
</element>
<element id="Device.property:Asn.valueCode.coding:V2Binary">
<path value="Device.property.valueCode.coding" />
<sliceName value="V2Binary" />
<short value="Required V2 Binary code system entry" />
<min value="1" />
<max value="1" />
</element>
<element id="Device.property:Asn.valueCode.coding:V2Binary.system">
<path value="Device.property.valueCode.coding.system" />
<min value="1" />
<fixedUri value="http://terminology.hl7.org/CodeSystem/v2-0203" />
</element>
<element id="Device.property:Asn.valueCode.coding:V2Binary.code">
<path value="Device.property.valueCode.coding.code" />
<definition value="If bit is set, code contains Y if cleared, N" />
<min value="1" />
</element>
and the value set is pretty small and contains only this entry:
<compose>
<include>
<system value="http://hl7.org/fhir/uv/phd/CodeSystem/ASN1ToHL7"/>
<filter>
<property value="source"/>
<op value="="/>
<value value="attribute"/>
</filter>
</include>
</compose>
and the entry in the code system exists
<concept>
<code value="532354.0"/>
<display value="If bit is cleared device is regulated"/>
<definition value="Indicates whether the device is regulated"/>
<property>
<code value="type" />
<valueString value="state" />
</property>
<property>
<code value="source" />
<valueString value="attribute" />
</property>
</concept>
Eric Haas (Feb 25 2019 at 01:46):
The term server is not finding the codes. I usually chalks these up to a termserver issue after double checking the definitions and valueset.
Last updated: Apr 12 2022 at 19:14 UTC