This wiki has undergone a migration to Confluence found Here
<meta name="googlebot" content="noindex">

Value Set MIF 2.2 Definition

From HL7Wiki
Revision as of 13:58, 1 August 2016 by TedKlein (talk | contribs) (Created page with "=MIF 2.2 Excerpt of Value Set Definition Syntax (HL7 VSD)= This is an excerpt of the HL7 MIF 2.2 schema which can be used for reference when reading the Value Set Definition ...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

MIF 2.2 Excerpt of Value Set Definition Syntax (HL7 VSD)

This is an excerpt of the HL7 MIF 2.2 schema which can be used for reference when reading the Value Set Definition STU document.


Schema Excerpt

<xs:complexType name="ValueSet">
   <xs:annotation>
     <xs:documentation>Information about a value set that drawn from one or more code systems.</xs:documentation>
     <xs:documentation>UML: A stereotype on Package</xs:documentation>
   </xs:annotation>
   <xs:complexContent>
     <xs:extension base="ModelElement">
       <xs:sequence>
         <xs:group ref="BusinessName"/>
         <xs:element name="annotations" type="ValueSetAnnotations" minOccurs="0">
           <xs:annotation>
             <xs:documentation>Descriptive information about this value set.</xs:documentation>
             <xs:documentation>UML: A collector for the comments and constraints associated with a Value Set.  (Consider rendering the definition or description annotation into ModelElement.documentation)</xs:documentation>
           </xs:annotation>
         </xs:element>
         <xs:element name="statusInfo" type="VocabularyItemStatus" minOccurs="0" maxOccurs="unbounded">
           <xs:annotation>
             <xs:documentation>Identifies status information for this value set over time</xs:documentation>
             <xs:documentation>UML: A tag on ConceptDomain stereotype</xs:documentation>
           </xs:annotation>
         </xs:element>
         <xs:element name="version" type="ValueSetVersion" maxOccurs="unbounded">
           <xs:annotation>
             <xs:documentation>Identifies a specific version of the value set</xs:documentation>
             <xs:documentation>UML: A contained package within the ValueSet stereotype</xs:documentation>
           </xs:annotation>
         </xs:element>
       </xs:sequence>
       <xs:attribute name="id" type="Oid" use="required">
         <xs:annotation>
           <xs:documentation>A unique identifier for the value-set.</xs:documentation>
           <xs:documentation>UML: Corresponds to Package.name</xs:documentation>
         </xs:annotation>
       </xs:attribute>
       <xs:attribute name="isImmutable" type="xs:boolean" use="optional" default="false">
         <xs:annotation>
           <xs:documentation>If true, indicates that the value set cannot be revised</xs:documentation>
           <xs:documentation>UML: Tag on ValueSet stereotype</xs:documentation>
         </xs:annotation>
       </xs:attribute>
       <xs:attribute name="isPostCoordinationProhibited" type="xs:boolean" use="optional" default="false">
         <xs:annotation>
           <xs:documentation>If true, indicates that post-coordinated expressions are excluded as members of the value set.  This acts as a final filter on the results of the value set expansion.  I.e. Peform expansion of the value set as usual.  Then, if this flag is true, remove all post-coordinated expressions from the expansion to arrive at the "final" expansion.</xs:documentation>
           <xs:documentation>UML: Tag on ValueSet stereotype</xs:documentation>
           <xs:documentation>Alpha</xs:documentation>
         </xs:annotation>
       </xs:attribute>
       <xs:attribute name="name" type="LongDescriptiveName" use="optional">
         <xs:annotation>
           <xs:documentation>A unique descriptive name for the value set</xs:documentation>
           <xs:documentation>UML: Tag on ValueSet stereotype</xs:documentation>
         </xs:annotation>
       </xs:attribute>
       <xs:attribute name="use" type="ValueSetUseKinds" default="exchange">
         <xs:annotation>
           <xs:documentation>Identifies the expected purpose(s) of this value set.  Also determines what useKinds will be included when an expressional value set is enumerated.</xs:documentation>
           <xs:documentation>UML: Tag on complex stereotype</xs:documentation>
           <xs:documentation>Beta</xs:documentation>
         </xs:annotation>
       </xs:attribute>
       <xs:attributeGroup ref="SortKeyOptional"/>
     </xs:extension>
   </xs:complexContent>
 </xs:complexType>
 <xs:simpleType name="ValueSetUseKinds">
   <xs:annotation>
     <xs:documentation>Allows a value set to have multiple uses.</xs:documentation>
     <xs:documentation>UML: Enumerated tag with upper cardinality greater than 1</xs:documentation>
     <xs:documentation>Beta</xs:documentation>
   </xs:annotation>
   <xs:list itemType="ValueSetUseKind"/>
 </xs:simpleType>
 <xs:complexType name="ValueSetAnnotations">
   <xs:annotation>
     <xs:documentation>Descriptive information about the containing ValueSet.</xs:documentation>
     <xs:documentation>UML: A collector for the comments and constraints associated with a ValueSet.  (Consider rendering the definition or description annotation into ModelElement.documentation)</xs:documentation>
   </xs:annotation>
   <xs:complexContent>
     <xs:restriction base="Annotations">
       <xs:sequence>
         <xs:element name="documentation" type="ValueSetDocumentation" minOccurs="0">
           <xs:annotation>
             <xs:documentation>Documentation related to the ValueSet</xs:documentation>
             <xs:documentation>UML: Component of the Annotation object</xs:documentation>
           </xs:annotation>
         </xs:element>
         <xs:element name="appInfo" type="ValueSetAppInfo" minOccurs="0">
           <xs:annotation>
             <xs:documentation>Supporting programmatic information related to the ValueSet which has descriptive componenents</xs:documentation>
             <xs:documentation>UML: Component of the Annotation object</xs:documentation>
           </xs:annotation>
         </xs:element>
       </xs:sequence>
     </xs:restriction>
   </xs:complexContent>
 </xs:complexType>
 <xs:complexType name="ValueSetDocumentation">
   <xs:annotation>
     <xs:documentation>Contains 'plain' comments relating to a ValueSet.  (Plain comments are those with no additional XML elements, except possibly one which identifies the 'type' of comment.)</xs:documentation>
     <xs:documentation>UML: A collector for 'plain' commments associated with a ValueSet.  (Consider rendering the definition or description annotation into ModelElement.documentation)</xs:documentation>
   </xs:annotation>
   <xs:complexContent>
     <xs:restriction base="Documentation">
       <xs:sequence>
         <xs:choice minOccurs="0">
           <xs:group ref="Description"/>
         </xs:choice>
         <xs:group ref="UsageConstraint" minOccurs="0"/>
         <xs:group ref="UsageNotes" minOccurs="0"/>
         <xs:group ref="Rationale" minOccurs="0"/>
         <xs:group ref="Requirements" minOccurs="0" maxOccurs="unbounded">
           <xs:annotation>
             <xs:documentation>Beta</xs:documentation>
           </xs:annotation>
         </xs:group>
         <xs:group ref="DesignComment" minOccurs="0"/>
         <xs:group ref="StabilityRemarks" minOccurs="0">
           <xs:annotation>
             <xs:documentation>Beta</xs:documentation>
           </xs:annotation>
         </xs:group>
         <xs:group ref="OtherAnnotation" minOccurs="0"/>
       </xs:sequence>
     </xs:restriction>
   </xs:complexContent>
 </xs:complexType>
 <xs:complexType name="ValueSetAppInfo">
   <xs:annotation>
     <xs:documentation>Contains complex comments relating to a ValueSet.  (Complex comments are those with additional XML elements, above and beyond the 'type' of comment.)</xs:documentation>
     <xs:documentation>UML: A collector for 'complex' commments associated with a ValueSet.</xs:documentation>
   </xs:annotation>
   <xs:complexContent>
     <xs:restriction base="AppInfo">
       <xs:sequence>
         <xs:group ref="OpenIssue" minOccurs="0"/>
         <xs:group ref="BallotComment" minOccurs="0">
           <xs:annotation>
             <xs:documentation>Alpha</xs:documentation>
           </xs:annotation>
         </xs:group>
         <xs:group ref="ChangeRequest" minOccurs="0">
           <xs:annotation>
             <xs:documentation>Alpha</xs:documentation>
           </xs:annotation>
         </xs:group>
         <xs:group ref="DeprecationInfo" minOccurs="0"/>
       </xs:sequence>
     </xs:restriction>
   </xs:complexContent>
 </xs:complexType>
 <xs:complexType name="ValueSetVersion">
   <xs:annotation>
     <xs:documentation>Identifes a specific version of a given value set</xs:documentation>
     <xs:documentation>UML: Stereotype on Package</xs:documentation>
   </xs:annotation>
   <xs:complexContent>
     <xs:extension base="ModelElement">
       <xs:sequence>
         <xs:element name="usesCodeSystemSupplement" type="Oid" minOccurs="0" maxOccurs="unbounded">
           <xs:annotation>
             <xs:documentation>Lists code system extensions used by this value-set</xs:documentation>
             <xs:documentation>UML: packages that have elements imported into this package</xs:documentation>
             <xs:documentation>Beta</xs:documentation>
           </xs:annotation>
         </xs:element>
         <xs:element name="usesCodeSystem" type="SupportedCodeSystem" minOccurs="0" maxOccurs="unbounded">
           <xs:annotation>
             <xs:documentation>Lists code systems used by this value-set</xs:documentation>
             <xs:documentation>UML: packages that have elements imported into this package</xs:documentation>
             <xs:documentation>Derived: Extract the list of code systems referenced by content</xs:documentation>
           </xs:annotation>
         </xs:element>
         <xs:element name="supportedLanguage" type="SupportedLanguage" minOccurs="0" maxOccurs="unbounded">
           <xs:annotation>
             <xs:documentation>Lists languages fully supported (print names for all concepts exist in the language) used by this value-set</xs:documentation>
             <xs:documentation>UML: Tag on stereotype</xs:documentation>
             <xs:documentation>Derived: Extract the list of languages that have print names for all concepts</xs:documentation>
           </xs:annotation>
         </xs:element>
         <xs:element name="associatedConceptProperty" type="SimpleConceptProperty" minOccurs="0" maxOccurs="unbounded">
           <xs:annotation>
             <xs:documentation>Concept Properties that are associated with this Value Set Version because the property is DECLARED as value-set associatable by the Code System from which this value set draws its enumerated content.</xs:documentation>
             <xs:documentation>UML: Tag on stereotype</xs:documentation>
           </xs:annotation>
         </xs:element>
         <xs:element name="content" type="ContentDefinition">
           <xs:annotation>
             <xs:documentation>Defines the codes from a given code system allowed as part of the value set version</xs:documentation>
             <xs:documentation>UML: Identifies what EnumerationItems should be imported into this Package</xs:documentation>
           </xs:annotation>
         </xs:element>
         <xs:element name="nonSelectableContent" type="ContentDefinition" minOccurs="0">
           <xs:annotation>
             <xs:documentation>If present, overrides the default "selectable" characteristic of the codes defined by 'content' such that all codes are selectable with the exception of those found within this value-set.</xs:documentation>
             <xs:documentation>UML: Tag on stereotype</xs:documentation>
           </xs:annotation>
         </xs:element>
         <xs:element name="enumeratedContent" type="VocabularyCodeRefs" minOccurs="0">
           <xs:annotation>
             <xs:documentation>Provides an explicit enumeration of the codes from a given code system associated with the value set version based on its definition</xs:documentation>
             <xs:documentation>UML: Identifies what EnumerationItems have been imported into this Package</xs:documentation>
             <xs:documentation>Derive: Todo - explicit enumeration of all codes in this value set version based on the expressions within 'content'</xs:documentation>
           </xs:annotation>
         </xs:element>
         <xs:element name="exampleContent" type="VocabularyCodeRefs" minOccurs="0">
           <xs:annotation>
             <xs:documentation>A subset of the content of the value-set for publication purposes to provide an example of the codes available in the value-set</xs:documentation>
             <xs:documentation>UML: Tag on complex stereotype</xs:documentation>
           </xs:annotation>
         </xs:element>
       </xs:sequence>
       <xs:attribute name="versionDate" type="xs:date" use="required">
         <xs:annotation>
           <xs:documentation>The date on which this particular value set version came into being</xs:documentation>
           <xs:documentation>UML: Corresponds to Package.name</xs:documentation>
         </xs:annotation>
       </xs:attribute>
       <xs:attribute name="versionTime" type="xs:time" default="00:00:00">
         <xs:annotation>
           <xs:documentation>The time on which this particular value set version came into being.  Only needed when multiple versions of a value-set are created on a given day.</xs:documentation>
           <xs:documentation>UML: Corresponds to Package.name</xs:documentation>
         </xs:annotation>
       </xs:attribute>
     </xs:extension>
   </xs:complexContent>
 </xs:complexType>