Hi Mattias,
I would have to agree with Andrew's approach to serializing the AOM to XML.
The existence of an XML element representing the AOM type would be
inconsistent with the openEHR RM XML schema and would not work well with
common development framework XML serializers.  Ocean has also implemented an
XML archetype serializer but I currently don't have the details on its
output.  I am sure Sam will make comment when he grounds himself from
travel.

I think we need to have a more formal approach to gaining consensus on these
kinds of technical artefacts before they are released for community
consumption.  Having said that, we don't want this to turn into an endless
process, which when agreeing on an XML representation can easily turn into.

Regards
 
Heath
 
Heath Frankel
Product Development Manager
Ocean Informatics

Ground Floor, 64 Hindmarsh Square
Adelaide, SA, 5000
Australia
 
ph: +61 (0)8 8223 3075
fax:+61 (0)8 8223 2570
mb: +61 (0)412 030 741 
email: heath.frankel at oceaninformatics.biz 



> -----Original Message-----
> From: openehr-technical-bounces at openehr.org 
> [mailto:openehr-technical-bounces at openehr.org] On Behalf Of 
> Andrew Patterson
> Sent: Thursday, 16 November 2006 9:45 PM
> To: For openEHR technical discussions
> Subject: Re: XML serializer (retry due to too large message)
> 
> Hi Mattias, I've attached my attempt at a serialized adl 
> instance - perhaps we can converge on a consensus as to what 
> they should look like!
> 
> Mine is incomplete - especially around the ontology section - 
> but I have done the attributes and children nodes 
> differently, using xsi:type to indicate the sub-type. This is 
> similar to the way Sam did the reference model serializations 
> I saw, so I thought similar techniques would be applied here.
> 
> Anyhow, I'm off on another project for a few weeks, but I 
> thought I'd send you this instance as food for thought.
> 
> Andrew
> 
> 
> <at:archetype xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
> xmlns:at="openEHR/v1/Archetype">
>   
> <archetype_id>openEHR-EHR-OBSERVATION.blood_pressure.v1</archetype_id>
>   <concept_code>at0000</concept_code>
>   <original_language>
>     <code_string>en</code_string>
>     <terminology_id>iso</terminology_id>
>   </original_language>
>   <description>
>     <original_author>
>       <item>
>         <key>name</key>
>         <value>Sam Heard</value>
>       </item>
>       <item>
>         <key>organisation</key>
>         <value>Ocean Informatics</value>
>       </item>
>       <item>
>         <key>date</key>
>         <value>22/03/2006</value>
>       </item>
>       <item>
>         <key>email</key>
>         <value>sam.heard at oceaninformatics.biz</value>
>       </item>
>     </original_author>
>     <other_contributors />
>     <lifecycle_state>AuthorDraft</lifecycle_state>
>     <details>
>       <language>
>         <code_string>en</code_string>
>         <terminology_id>iso639-1</terminology_id>
>       </language>
>       <purpose>To record the systemic blood pressure of a 
> person. The measurement records the systolic and the 
> diastolic pressure by some means suitable for the result to 
> be seen as a surrogate for the general and systemic blood 
> pressure.</purpose>
>       <keywords>
>         <item>observations</item>
>         <item>blood pressure</item>
>         <item>measurement</item>
>       </keywords>
>       <use>All blood pressure measurements are recorded using 
> this archetype. There is a rich state model for use with 
> exercise ECGs and Tilt Table measurements.</use>
>       <misuse>Not to be used for intravascular pressure.</misuse>
>     </details>
>     <resource_package_uri>http://www.wow.com</resource_package_uri>
>   </description>
>   <definition>
>     <rm_type_name>OBSERVATION</rm_type_name>
>     <node_id>at0000</node_id>
>     <attributes xsi:type="at:C_SINGLE_ATTRIBUTE" 
> minOccurs="0" maxOccurs="0">
>       <rm_attribute_name>guideline_id</rm_attribute_name>
>     </attributes>
>     <attributes xsi:type="at:C_SINGLE_ATTRIBUTE" 
> minOccurs="1" maxOccurs="1">
>       <rm_attribute_name>data</rm_attribute_name>
>       <children xsi:type="at:C_COMPLEX_OBJECT">
>         <rm_type_name>HISTORY</rm_type_name>
>         <node_id>at0001</node_id>
>         <attributes xsi:type="at:C_MULTIPLE_ATTRIBUTE" minOccurs="1"
> maxOccurs="1">
>           <rm_attribute_name>events</rm_attribute_name>
>           <children xsi:type="at:C_COMPLEX_OBJECT">
>             <rm_type_name>EVENT</rm_type_name>
>             <node_id>at0006</node_id>
>             <attributes xsi:type="at:C_SINGLE_ATTRIBUTE" minOccurs="1"
> maxOccurs="1">
>               <rm_attribute_name>data</rm_attribute_name>
>               <children xsi:type="at:C_COMPLEX_OBJECT">
>                 <rm_type_name>ITEM_LIST</rm_type_name>
>                 <node_id>at0003</node_id>
>                 <attributes xsi:type="at:C_MULTIPLE_ATTRIBUTE"
> minOccurs="1" maxOccurs="1">
>                   <rm_attribute_name>items</rm_attribute_name>
>                   <children xsi:type="at:C_COMPLEX_OBJECT">
>                     <rm_type_name>ELEMENT</rm_type_name>
>                     <occurrences>
>                       <includes_maximum>true</includes_maximum>
>                       <includes_minimum>true</includes_minimum>
>                       <maximum>1</maximum>
>                       <minimum>0</minimum>
>                     </occurrences>
>                     <node_id>at0004</node_id>
>                     <attributes xsi:type="at:C_SINGLE_ATTRIBUTE"
> minOccurs="1" maxOccurs="1">
>                       <rm_attribute_name>value</rm_attribute_name>
>                       <children xsi:type="at:C_QUANTITY">
>                         <property>
>                           <code_string>125</code_string>
>                           <terminology_id>openehr</terminology_id>
>                         </property>
>                         <list>
>                           <magnitude>
>                             <maximum>1000</maximum>
>                             <minimum>0</minimum>
>                           </magnitude>
>                           <units>mm[Hg]</units>
>                         </list>
>                       </children>
>                     </attributes>
>                   </children>
>                   <children xsi:type="at:C_COMPLEX_OBJECT">
>                     <rm_type_name>ELEMENT</rm_type_name>
>                     <occurrences>
>                       <maximum>1</maximum>
>                       <minimum>0</minimum>
>                     </occurrences>
>                     <node_id>at0005</node_id>
>                     <attributes xsi:type="at:C_SINGLE_ATTRIBUTE"
> minOccurs="1" maxOccurs="1">
>                       <rm_attribute_name>value</rm_attribute_name>
>                       <children xsi:type="at:C_QUANTITY">
>                         <property>
>                           <code_string>125</code_string>
>                           <terminology_id>openehr</terminology_id>
>                         </property>
>                         <list>
>                           <magnitude>
>                             <maximum>1000</maximum>
>                             <minimum>0</minimum>
>                           </magnitude>
>                           <units>mm[Hg]</units>
>                         </list>
>                       </children>
>                     </attributes>
>                   </children>
>                   <cardinality>
>                     <is_ordered>true</is_ordered>
>                     <is_unique>false</is_unique>
>                     <interval>
>                       <maximum>0</maximum>
>                       <minimum>0</minimum>
>                     </interval>
>                   </cardinality>
>                 </attributes>
>               </children>
>             </attributes>
>             <attributes xsi:type="at:C_SINGLE_ATTRIBUTE" minOccurs="1"
> maxOccurs="1">
>               <rm_attribute_name>state</rm_attribute_name>
>               <children xsi:type="at:C_COMPLEX_OBJECT">
>                 <rm_type_name>ITEM_LIST</rm_type_name>
>                 <node_id>at0007</node_id>
>                 <attributes xsi:type="at:C_MULTIPLE_ATTRIBUTE"
> minOccurs="1" maxOccurs="1">
>                   <rm_attribute_name>items</rm_attribute_name>
>                   <cardinality>
>                     <is_ordered>true</is_ordered>
>                     <is_unique>false</is_unique>
>                     <interval>
>                       <maximum>0</maximum>
>                       <minimum>0</minimum>
>                     </interval>
>                   </cardinality>
>                 </attributes>
>               </children>
>             </attributes>
>           </children>
>           <cardinality>
>             <is_ordered>false</is_ordered>
>             <is_unique>true</is_unique>
>             <interval>
>               <maximum>0</maximum>
>               <minimum>1</minimum>
>             </interval>
>           </cardinality>
>         </attributes>
>       </children>
>     </attributes>
>   </definition>
>   <ontology>
>     <term_defintions>
>       <language>en</language>
>       <terms>
>         <code>at0000</code>
>         <items>
>           <item>
>             <key>description</key>
>             <value>the measurement of system arterial blood 
> pressure which is deemed to represent the actual systemic 
> blood pressure</value>
>           </item>
>           <item>
>             <key>text</key>
>             <value>Blood pressure measurement</value>
>           </item>
>         </items>
>       </terms>
>       <terms>
>         <code>at0001</code>
>         <items>
>           <item>
>             <key>description</key>
>             <value>history structural node</value>
>           </item>
>           <item>
>             <key>text</key>
>             <value>history</value>
>           </item>
>         </items>
>       </terms>
>       <terms>
>         <code>at0002</code>
>         <items>
>           <item>
>             <key>description</key>
>             <value>baseline event in event history</value>
>           </item>
>           <item>
>             <key>text</key>
>             <value>baseline reading</value>
>           </item>
>         </items>
>       </terms>
>       <terms>
>         <code>at0003</code>
>         <items>
>           <item>
>             <key>description</key>
>             <value>systemic arterial blood pressure</value>
>           </item>
>           <item>
>             <key>text</key>
>             <value>blood pressure</value>
>           </item>
>         </items>
>       </terms>
>     </term_defintions>
>   </ontology>
> </at:archetype>
> _______________________________________________
> openEHR-technical mailing list
> openEHR-technical at openehr.org
> http://www.chime.ucl.ac.uk/mailman/listinfo/openehr-technical
> 

_______________________________________________
openEHR-technical mailing list
openEHR-technical at openehr.org
http://www.chime.ucl.ac.uk/mailman/listinfo/openehr-technical



Reply via email to