← Back to team overview

mlhim-specs-dev team mailing list archive

[Branch ~mlhim-specs-dev/mlhim-specs/main] Rev 265: Added documentation from the XMind template notes.

 

------------------------------------------------------------
revno: 265
committer: Timothy W. Cook <timothywayne.cook@xxxxxxxxx>
branch nick: mlhim-specs
timestamp: Mon 2012-06-04 17:01:50 -0300
message:
  Added documentation from the XMind template notes.
modified:
  schemas/common.xsd
  schemas/content.xsd
  schemas/structures.xsd


--
lp:mlhim-specs
https://code.launchpad.net/~mlhim-specs-dev/mlhim-specs/main

Your team MLHIM Specifications Developers is subscribed to branch lp:mlhim-specs.
To unsubscribe from this branch go to https://code.launchpad.net/~mlhim-specs-dev/mlhim-specs/main/+edit-subscription
=== modified file 'schemas/common.xsd'
--- schemas/common.xsd	2012-06-03 16:06:09 +0000
+++ schemas/common.xsd	2012-06-04 20:01:50 +0000
@@ -3,33 +3,60 @@
   <xs:include schemaLocation="http://www.mlhim.org/xmls/mlhim2/2_3_0/structures.xsd"/>
   
   <xs:complexType name="FeederAudit">
-        <xs:sequence>
-          <xs:element maxOccurs="1" minOccurs="1" name="originating_system_audit" type="mlhim2:FeederAuditDetails"/>
-          <xs:element maxOccurs="unbounded" minOccurs="1" name="originating_system_ids" type="mlhim2:DvIdentifier"/>
-          <xs:element name="feeder_system_audit" type="mlhim2:FeederAuditDetails"/>
-          <xs:element maxOccurs="unbounded" minOccurs="1" name="feeder_system_ids" type="mlhim2:DvIdentifier"/>
-          <xs:element maxOccurs="1" minOccurs="1" name="original_content" type="mlhim2:DvParsable"/>
-        </xs:sequence> 
+    <xs:annotation>
+      <xs:documentation>
+        Audit and other meta-data for software applications and systems in the feeder chain. This information is not typically used by modellers but by the applications themselves to "tag" entries when performing an extract. 
+      </xs:documentation>
+    </xs:annotation>
+    <xs:sequence>
+      <xs:element maxOccurs="1" minOccurs="1" name="originating_system_audit" type="mlhim2:FeederAuditDetails"/>
+      <xs:element maxOccurs="unbounded" minOccurs="1" name="originating_system_ids" type="mlhim2:DvIdentifier"/>
+      <xs:element name="feeder_system_audit" type="mlhim2:FeederAuditDetails"/>
+      <xs:element maxOccurs="unbounded" minOccurs="1" name="feeder_system_ids" type="mlhim2:DvIdentifier"/>
+      <xs:element maxOccurs="1" minOccurs="1" name="original_content" type="mlhim2:DvParsable"/>
+    </xs:sequence> 
   </xs:complexType>
   
   <xs:complexType name="FeederAuditDetails">
-        <xs:sequence>
-          <xs:element name="system_id" type="mlhim2:DvIdentifier"/>
-          <xs:element name="provider" type="mlhim2:PartyIdentified"/>
-          <xs:element name="location" type="mlhim2:Slot"/>
-          <xs:element name="time" type="mlhim2:DvDateTime"/>
-          <xs:element name="subject" type="mlhim2:PartyProxy"/>
-          <xs:element name="version_id" type="xs:string"/>
-        </xs:sequence> 
+    <xs:annotation>
+      <xs:documentation>
+        Audit details for any system in a feeder system chain. Audit details here means
+        the general notion of who/where/when the information item to which the audit is
+        attached was created. None of the attributes are defined as mandatory, however, in
+        different scenarios, various combinations of attributes will usually be mandatory.
+        This can be controlled by specifying feeder audit details in CCDs used when conjunction with non-MLHIM systems as interface definitions.
+        
+      </xs:documentation>
+    </xs:annotation>
+    <xs:sequence>
+      <xs:element name="system_id" type="mlhim2:DvIdentifier"/>
+      <xs:element name="provider" type="mlhim2:PartyIdentified"/>
+      <xs:element name="location" type="mlhim2:Slot"/>
+      <xs:element name="time" type="mlhim2:DvDateTime"/>
+      <xs:element name="subject" type="mlhim2:PartyProxy"/>
+      <xs:element name="version_id" type="xs:string"/>
+    </xs:sequence> 
   </xs:complexType>
   
   <xs:complexType abstract="true" name="Locatable">
-        <xs:sequence>
-          <xs:element name="feeder_audit" type="mlhim2:FeederAudit"/>
-        </xs:sequence> 
+    <xs:annotation>
+      <xs:documentation>
+        Root class of all structural information model classes that can be expressed in a constraint model.
+        
+      </xs:documentation>
+    </xs:annotation>
+    <xs:sequence>
+      <xs:element name="feeder_audit" type="mlhim2:FeederAudit"/>
+    </xs:sequence> 
   </xs:complexType>
   
   <xs:complexType name="Attestation">
+    <xs:annotation>
+      <xs:documentation>
+        Record an attestation by a party of item(s) of record content. The type of attestation is recorded by the reason attribute, which my be coded.
+        
+      </xs:documentation>
+    </xs:annotation>
     <xs:complexContent>
       <xs:extension base="mlhim2:Locatable">
         <xs:sequence>
@@ -45,17 +72,35 @@
   </xs:complexType>
   
   <xs:complexType name="Participation">
-        <xs:sequence>
-          <xs:element maxOccurs="1" minOccurs="1" name="performer" type="mlhim2:PartyProxy"/>
-          <xs:element maxOccurs="1" minOccurs="1" name="function" type="mlhim2:DvCodedString"/>
-          <xs:element maxOccurs="1" minOccurs="1" name="mode" type="mlhim2:DvCodedString"/>
-          <xs:element name="start_time" type="mlhim2:DvDateTime"/>
-          <xs:element name="end_time" type="mlhim2:DvDateTime"/>
-        </xs:sequence> 
+    <xs:annotation>
+      <xs:documentation>
+        Model of a participation of a Party (any Actor or Role) in an activity.
+        Used to represent any participation of a Party in some activity, which is not
+        explicitly in the model, e.g. assisting nurse. Can be used to record past or future
+        participations.
+        Should not be used in place of more permanent relationships between demographic entities.
+        
+      </xs:documentation>
+    </xs:annotation>
+    <xs:sequence>
+      <xs:element maxOccurs="1" minOccurs="1" name="performer" type="mlhim2:PartyProxy"/>
+      <xs:element maxOccurs="1" minOccurs="1" name="function" type="mlhim2:DvCodedString"/>
+      <xs:element maxOccurs="1" minOccurs="1" name="mode" type="mlhim2:DvCodedString"/>
+      <xs:element name="start_time" type="mlhim2:DvDateTime"/>
+      <xs:element name="end_time" type="mlhim2:DvDateTime"/>
+    </xs:sequence> 
   </xs:complexType>
   
   
   <xs:complexType abstract="true" name="PartyProxy">
+    <xs:annotation>
+      <xs:documentation>
+        Abstract concept of a proxy description of a party, including an optional link to
+        data for this party in a demographic or other identity management system. Sub-
+        typed into PartyIdentified and PartySelf.
+        
+      </xs:documentation>
+    </xs:annotation>
     <xs:complexContent>
       <xs:extension base="mlhim2:Locatable">
         <xs:sequence>
@@ -66,6 +111,18 @@
   </xs:complexType>
   
   <xs:complexType name="PartyIdentified">
+    <xs:annotation>
+      <xs:documentation>
+        Proxy data for an identified party other than the subject of the record, minimally
+        consisting of human-readable identifier(s), such as name, formal (and possibly
+        computable) identifiers such as NHS number, and an optional link to external
+        data. There must be at least one of name, identifier or external_ref present.Used to describe parties where only identifiers may be known, and there is no
+        entry at all in the demographic system (or even no demographic system). Typi-
+        cally for health care providers, e.g. name and provider number of an institution.
+        
+        Should not be used to include patient identifying information.
+      </xs:documentation>
+    </xs:annotation>
     <xs:complexContent>
       <xs:extension base="mlhim2:PartyProxy">
         <xs:sequence>
@@ -77,16 +134,26 @@
   </xs:complexType>
   
   <xs:complexType name="PartySelf">
+    <xs:annotation>
+      <xs:documentation>
+        Party proxy representing the subject of the record. May or may not have external_ref set. But external_ref usually points to a record persisted in a demographics service.
+      </xs:documentation>
+    </xs:annotation>
     <xs:complexContent>
       <xs:extension base="mlhim2:PartyProxy"/>
     </xs:complexContent>
   </xs:complexType>
   
   <xs:complexType abstract="true" name="ExceptionalValue">
-        <xs:sequence>
-          <xs:element fixed="Exceptional Value" name="ev_name" type="xs:string"/>
-          <xs:element fixed="The value is somehow outside the bounds of what was expected." name="ev_meaning" type="xs:string"/>
-        </xs:sequence> 
+    <xs:annotation>
+      <xs:documentation>
+        Subclasses are used to indicate why a value is missing (Null) or is outside a measurable range.
+      </xs:documentation>
+    </xs:annotation>
+    <xs:sequence>
+      <xs:element fixed="Exceptional Value" name="ev_name" type="xs:string"/>
+      <xs:element fixed="The value is somehow outside the bounds of what was expected." name="ev_meaning" type="xs:string"/>
+    </xs:sequence> 
   </xs:complexType>
   
   <xs:complexType name="NI">
@@ -276,4 +343,4 @@
     </xs:complexContent>
   </xs:complexType>
   
-</xs:schema>
+</xs:schema>
\ No newline at end of file

=== modified file 'schemas/content.xsd'
--- schemas/content.xsd	2012-05-29 20:52:18 +0000
+++ schemas/content.xsd	2012-06-04 20:01:50 +0000
@@ -4,6 +4,18 @@
   <xs:include schemaLocation="http://www.mlhim.org/xmls/mlhim2/2_3_0/structures.xsd"/>
   
   <xs:complexType abstract="true" name="Entry">
+    <xs:annotation>
+      <xs:documentation>
+        The abstract parent of all Entry subtypes. 
+        An Entry is the root of a logical set of data items.
+        
+        An Entry is also the minimal unit of information any query should return, since a whole Entry (including sub-parts) records spatial structure, timing information,
+        and contextual information, as well as the subject and generator of the information; required for complete semantic  interoperability.
+        
+        Each subtype has identical attribute information. The subtyping is used to allow persistence to separate the types of Entries; primarily import in healthcare for the de-identification of clinical information. 
+        
+      </xs:documentation>
+    </xs:annotation>
     <xs:complexContent>
       <xs:extension base="mlhim2:Locatable">
         <xs:sequence>
@@ -24,18 +36,41 @@
   </xs:complexType>
   
   <xs:complexType name="CareEntry">
+    <xs:annotation>
+      <xs:documentation>
+        CareEntry defines protocol and guideline attributes for all clinical entries.
+        
+      </xs:documentation>
+    </xs:annotation>
     <xs:complexContent>
       <xs:extension base="mlhim2:Entry"/>
     </xs:complexContent>
   </xs:complexType>
   
   <xs:complexType name="AdminEntry">
+    <xs:annotation>
+      <xs:documentation>
+        Entry subtype for administrative information, i.e. information about setting up the
+        clinical process, but not itself clinically relevant. Archetypes will define con-
+        tained information.
+        Used for admistrative details of admission, episode, ward location, discharge,
+        appointment (if not stored in a practice management or appointments system).
+        Not used for any clinically significant information.
+        
+      </xs:documentation>
+    </xs:annotation>
     <xs:complexContent>
       <xs:extension base="mlhim2:Entry"/>
     </xs:complexContent>
   </xs:complexType>
   
   <xs:complexType name="DemographicEntry">
+    <xs:annotation>
+      <xs:documentation>
+        Entry subtype for demographic information, i.e. name structures, roles, locations, etc. Modelled as a separate class from AdminEntry in order to facilitate the separation of clinical and non-clical information to support de-identification of clinical and administrative data.
+        
+      </xs:documentation>
+    </xs:annotation>
     <xs:complexContent>
       <xs:extension base="mlhim2:Entry"/>
     </xs:complexContent>

=== modified file 'schemas/structures.xsd'
--- schemas/structures.xsd	2012-06-03 16:06:09 +0000
+++ schemas/structures.xsd	2012-06-04 20:01:50 +0000
@@ -3,6 +3,11 @@
   <xs:include schemaLocation="http://www.mlhim.org/xmls/mlhim2/2_3_0/common.xsd"/>
   
   <xs:complexType abstract="true" name="Item">
+    <xs:annotation>
+      <xs:documentation>
+        The abstract parent of Event, Slot, Cluster and Element representation classes.
+      </xs:documentation>
+    </xs:annotation>
     <xs:complexContent>
       <xs:extension base="mlhim2:Locatable"/>
     </xs:complexContent>
@@ -10,6 +15,11 @@
   
   
   <xs:complexType name="Slot">
+    <xs:annotation>
+      <xs:documentation>
+        A structure allowing the inclusion of one CCD inside a CCD.  The possible CCDs allowed is restricted to those CCDs in the allowed_ccds attribute.
+      </xs:documentation>
+    </xs:annotation>
     <xs:complexContent>
       <xs:extension base="mlhim2:Item">
         <xs:sequence>
@@ -21,6 +31,11 @@
     
   </xs:complexType>
   <xs:complexType name="Cluster">
+    <xs:annotation>
+      <xs:documentation>
+        The grouping variant of Item, which may contain further instances of Item, in an ordered list. This provides the root Item for potentially very complex structures.
+      </xs:documentation>
+    </xs:annotation>
     <xs:complexContent>
       <xs:extension base="mlhim2:Item">
         <xs:sequence>
@@ -31,6 +46,11 @@
   </xs:complexType>
   
   <xs:complexType name="Element">
+    <xs:annotation>
+      <xs:documentation>
+        The leaf variant of Item, to which any DvAny subtype instance is attached.
+      </xs:documentation>
+    </xs:annotation>
     <xs:complexContent>
       <xs:extension base="mlhim2:Item">
         <xs:sequence>