iso21090-nullFlavor.xml
  1 <?xml version="1.0" encoding="utf-8"?>
  2 <StructureDefinition xmlns="http://hl7.org/fhir">
  3   <id value="iso21090-nullFlavor" />
  4   <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-wg">
  5     <valueCode value="fhir" />
  6   </extension>
  7   <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm">
  8     <valueInteger value="1" />
  9   </extension>
 10   <url value="http://hl7.org/fhir/StructureDefinition/iso21090-nullFlavor" />
 11   <version value="4.0.1" />
 12   <name value="nullFlavor" />
 13   <status value="draft" />
 14   <date value="2012-06-24" />
 15   <publisher value="Health Level Seven International (Modeling and Methodology)" />
 16   <contact>
 17     <telecom>
 18       <system value="url" />
 19       <value value="http://www.hl7.org/Special/committees/mnm" />
 20     </telecom>
 21   </contact>
 22   <description value="If the value is not a proper value, indicates the reason." />
 23   <fhirVersion value="4.0.1" />
 24   <mapping>
 25     <identity value="v2" />
 26     <uri value="http://hl7.org/v2" />
 27     <name value="HL7 v2 Mapping" />
 28   </mapping>
 29   <mapping>
 30     <identity value="rim" />
 31     <uri value="http://hl7.org/v3" />
 32     <name value="RIM Mapping" />
 33   </mapping>
 34   <kind value="complex-type" />
 35   <abstract value="false" />
 36   <context>
 37     <type value="element" />
 38     <expression value="Element" />
 39   </context>
 40   <type value="Extension" />
 41   <baseDefinition value="http://hl7.org/fhir/StructureDefinition/Extension" />
 42   <derivation value="constraint" />
 43   <snapshot>
 44     <element id="Extension">
 45       <path value="Extension" />
 46       <short value="NI | OTH | NINF | PINF | UNK | ASKU | NAV | NASK | TRC | MSK | NA | QS" />
 47       <definition value="If the value is not a proper value, indicates the reason." />
 48       <comment value="Considerable care must be used when using nullFlavor in this context of FHIR - more than any other concept, this is tied to the way v3 works, and FHIR is quite different. For instance, there is no notion of a "proper value" as opposed to any other value in FHIR. a NullFlavor should be understood to mean, "why information is missing", and the nulFlavors OTH, NINF, PINF, and TRC should not be used." />
 49       <min value="0" />
 50       <max value="1" />
 51       <base>
 52         <path value="Extension" />
 53         <min value="0" />
 54         <max value="*" />
 55       </base>
 56       <condition value="ele-1" />
 57       <constraint>
 58         <key value="ele-1" />
 59         <severity value="error" />
 60         <human value="All FHIR elements must have a @value or children" />
 61         <expression value="hasValue() or (children().count() > id.count())" />
 62         <xpath value="@value|f:*|h:div" />
 63         <source value="http://hl7.org/fhir/StructureDefinition/Element" />
 64       </constraint>
 65       <constraint>
 66         <key value="ext-1" />
 67         <severity value="error" />
 68         <human value="Must have either extensions or value[x], not both" />
 69         <expression value="extension.exists() != value.exists()" />
 70         <xpath value="exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')])" />
 71         <source value="http://hl7.org/fhir/StructureDefinition/Extension" />
 72       </constraint>
 73       <isModifier value="false" />
 74       <mapping>
 75         <identity value="v2" />
 76         <map value="n/a" />
 77       </mapping>
 78       <mapping>
 79         <identity value="rim" />
 80         <map value="ANY.nullFlavor" />
 81       </mapping>
 82     </element>
 83     <element id="Extension.id">
 84       <path value="Extension.id" />
 85       <representation value="xmlAttr" />
 86       <short value="Unique id for inter-element referencing" />
 87       <definition value="Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces." />
 88       <min value="0" />
 89       <max value="1" />
 90       <base>
 91         <path value="Element.id" />
 92         <min value="0" />
 93         <max value="1" />
 94       </base>
 95       <type>
 96         <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type">
 97           <valueUrl value="string" />
 98         </extension>
 99         <code value="http://hl7.org/fhirpath/System.String" />
100       </type>
101       <isModifier value="false" />
102       <isSummary value="false" />
103       <mapping>
104         <identity value="rim" />
105         <map value="n/a" />
106       </mapping>
107     </element>
108     <element id="Extension.extension">
109       <path value="Extension.extension" />
110       <slicing>
111         <discriminator>
112           <type value="value" />
113           <path value="url" />
114         </discriminator>
115         <description value="Extensions are always sliced by (at least) url" />
116         <rules value="open" />
117       </slicing>
118       <short value="Extension" />
119       <definition value="An Extension" />
120       <min value="0" />
121       <max value="0" />
122       <base>
123         <path value="Element.extension" />
124         <min value="0" />
125         <max value="*" />
126       </base>
127       <type>
128         <code value="Extension" />
129       </type>
130       <constraint>
131         <key value="ele-1" />
132         <severity value="error" />
133         <human value="All FHIR elements must have a @value or children" />
134         <expression value="hasValue() or (children().count() > id.count())" />
135         <xpath value="@value|f:*|h:div" />
136         <source value="http://hl7.org/fhir/StructureDefinition/Element" />
137       </constraint>
138       <constraint>
139         <key value="ext-1" />
140         <severity value="error" />
141         <human value="Must have either extensions or value[x], not both" />
142         <expression value="extension.exists() != value.exists()" />
143         <xpath value="exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])" />
144         <source value="http://hl7.org/fhir/StructureDefinition/Extension" />
145       </constraint>
146       <isModifier value="false" />
147       <isSummary value="false" />
148     </element>
149     <element id="Extension.url">
150       <path value="Extension.url" />
151       <representation value="xmlAttr" />
152       <short value="identifies the meaning of the extension" />
153       <definition value="Source of the definition for the extension code - a logical name or a URL." />
154       <comment value="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." />
155       <min value="1" />
156       <max value="1" />
157       <base>
158         <path value="Extension.url" />
159         <min value="1" />
160         <max value="1" />
161       </base>
162       <type>
163         <extension url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type">
164           <valueUrl value="uri" />
165         </extension>
166         <code value="http://hl7.org/fhirpath/System.String" />
167       </type>
168       <fixedUri value="http://hl7.org/fhir/StructureDefinition/iso21090-nullFlavor" />
169       <isModifier value="false" />
170       <isSummary value="false" />
171       <mapping>
172         <identity value="rim" />
173         <map value="N/A" />
174       </mapping>
175     </element>
176     <element id="Extension.value[x]">
177       <path value="Extension.value[x]" />
178       <short value="Value of extension" />
179       <definition value="Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/extensibility.html) for a list)." />
180       <min value="1" />
181       <max value="1" />
182       <base>
183         <path value="Extension.value[x]" />
184         <min value="0" />
185         <max value="1" />
186       </base>
187       <type>
188         <code value="code" />
189       </type>
190       <constraint>
191         <key value="ele-1" />
192         <severity value="error" />
193         <human value="All FHIR elements must have a @value or children" />
194         <expression value="hasValue() or (children().count() > id.count())" />
195         <xpath value="@value|f:*|h:div" />
196         <source value="http://hl7.org/fhir/StructureDefinition/Element" />
197       </constraint>
198       <isModifier value="false" />
199       <isSummary value="false" />
200       <binding>
201         <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
202           <valueString value="NullFlavor" />
203         </extension>
204         <strength value="required" />
205         <description value="A collection of codes specifying why a valid value is not present." />
206         <valueSet value="http://terminology.hl7.org/ValueSet/v3-NullFlavor|4.0.1" />
207       </binding>
208       <mapping>
209         <identity value="rim" />
210         <map value="N/A" />
211       </mapping>
212     </element>
213   </snapshot>
214   <differential>
215     <element id="Extension">
216       <path value="Extension" />
217       <short value="NI | OTH | NINF | PINF | UNK | ASKU | NAV | NASK | TRC | MSK | NA | QS" />
218       <definition value="If the value is not a proper value, indicates the reason." />
219       <comment value="Considerable care must be used when using nullFlavor in this context of FHIR - more than any other concept, this is tied to the way v3 works, and FHIR is quite different. For instance, there is no notion of a "proper value" as opposed to any other value in FHIR. a NullFlavor should be understood to mean, "why information is missing", and the nulFlavors OTH, NINF, PINF, and TRC should not be used." />
220       <min value="0" />
221       <max value="1" />
222       <mapping>
223         <identity value="v2" />
224         <map value="n/a" />
225       </mapping>
226       <mapping>
227         <identity value="rim" />
228         <map value="ANY.nullFlavor" />
229       </mapping>
230     </element>
231     <element id="Extension.extension">
232       <path value="Extension.extension" />
233       <max value="0" />
234     </element>
235     <element id="Extension.url">
236       <path value="Extension.url" />
237       <fixedUri value="http://hl7.org/fhir/StructureDefinition/iso21090-nullFlavor" />
238     </element>
239     <element id="Extension.value[x]">
240       <path value="Extension.value[x]" />
241       <min value="1" />
242       <type>
243         <code value="code" />
244       </type>
245       <binding>
246         <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
247           <valueString value="NullFlavor" />
248         </extension>
249         <strength value="required" />
250         <description value="A collection of codes specifying why a valid value is not present." />
251         <valueSet value="http://terminology.hl7.org/ValueSet/v3-NullFlavor|4.0.1" />
252       </binding>
253     </element>
254   </differential>
255 </StructureDefinition>