YADL » 履歴 » バージョン 3
KOBAYASHI Shinji, 2011/04/11 13:45
1 | 1 | KOBAYASHI Shinji | h1. YADL |
---|---|---|---|
2 | |||
3 | h2. Background |
||
4 | |||
5 | ADL is one of the openEHR official formalism to express archetype, defined as "ADL 1.4"http://www.openehr.org/svn/specification/TRUNK/publishing/architecture/am/adl1.4.pdf |
||
6 | 2 | KOBAYASHI Shinji | Many archetypes are registered on "Clinical Knowledge Manager":http://www.openehr.org/knowledge/ shown such as bellow: |
7 | 1 | KOBAYASHI Shinji | <pre> |
8 | 2 | KOBAYASHI Shinji | archetype (adl_version=1.4) |
9 | 3 | KOBAYASHI Shinji | openEHR-EHR-OBSERVATION.sample.v1 |
10 | 2 | KOBAYASHI Shinji | |
11 | 1 | KOBAYASHI Shinji | concept |
12 | 3 | KOBAYASHI Shinji | [at0000] -- sample archetype |
13 | 1 | KOBAYASHI Shinji | language |
14 | 3 | KOBAYASHI Shinji | original_language = <[ISO_639-1::ja]> |
15 | 1 | KOBAYASHI Shinji | description |
16 | original_author = < |
||
17 | 3 | KOBAYASHI Shinji | ["name"] = <""> |
18 | 1 | KOBAYASHI Shinji | > |
19 | details = < |
||
20 | 3 | KOBAYASHI Shinji | ["ja"] = < |
21 | language = <[ISO_639-1::ja]> |
||
22 | purpose = <""> |
||
23 | use = <""> |
||
24 | misuse = <""> |
||
25 | 1 | KOBAYASHI Shinji | > |
26 | 3 | KOBAYASHI Shinji | > |
27 | lifecycle_state = <"0"> |
||
28 | other_contributors = <> |
||
29 | other_details = < |
||
30 | ["references"] = <""> |
||
31 | ["MD5-CAM-1.0.1"] = <"F5DEA5434726E79CFB3CEA0A7796E501"> |
||
32 | > |
||
33 | 1 | KOBAYASHI Shinji | |
34 | 3 | KOBAYASHI Shinji | definition |
35 | OBSERVATION[at0000] matches { -- sample archetype |
||
36 | data matches { |
||
37 | HISTORY[at0001] matches { -- Event Series |
||
38 | events cardinality matches {1..*; unordered} matches { |
||
39 | EVENT[at0002] occurrences matches {0..1} matches { -- Any event |
||
40 | data matches { |
||
41 | ITEM_TREE[at0003] matches { -- Tree |
||
42 | items cardinality matches {0..*; unordered} matches { |
||
43 | ELEMENT[at0004] occurrences matches {0..1} matches { -- Description |
||
44 | value matches { |
||
45 | DV_TEXT matches {*} |
||
46 | } |
||
47 | } |
||
48 | } |
||
49 | } |
||
50 | } |
||
51 | } |
||
52 | } |
||
53 | } |
||
54 | } |
||
55 | } |
||
56 | 1 | KOBAYASHI Shinji | |
57 | 3 | KOBAYASHI Shinji | ontology |
58 | term_definitions = < |
||
59 | ["ja"] = < |
||
60 | items = < |
||
61 | ["at0000"] = < |
||
62 | text = <"sample archetype"> |
||
63 | description = <"sample archetype to discuss its formalism."> |
||
64 | > |
||
65 | ["at0001"] = < |
||
66 | text = <"Event Series"> |
||
67 | description = <"@ internal @"> |
||
68 | > |
||
69 | ["at0002"] = < |
||
70 | text = <"Any event"> |
||
71 | description = <"*"> |
||
72 | > |
||
73 | ["at0003"] = < |
||
74 | text = <"Tree"> |
||
75 | description = <"@ internal @"> |
||
76 | > |
||
77 | ["at0004"] = < |
||
78 | text = <"Description"> |
||
79 | description = <"*"> |
||
80 | > |
||
81 | > |
||
82 | > |
||
83 | > |
||
84 | 1 | KOBAYASHI Shinji | </pre> |
85 | |||
86 | Otherwise, ADL is not so common formalism such as XML or OWL. |
||
87 | XML serialisation is considered more popular alternative to express archetype. |
||
88 | XML form of archetype is shown bellow |
||
89 | <pre> |
||
90 | <?xml version="1.0"?> |
||
91 | <archetype xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.openehr.org/v1"> |
||
92 | <original_language> |
||
93 | <terminology_id> |
||
94 | <value>ISO_639-1</value> |
||
95 | </terminology_id> |
||
96 | 3 | KOBAYASHI Shinji | <code_string>ja</code_string> |
97 | 2 | KOBAYASHI Shinji | </original_language> |
98 | <description> |
||
99 | 3 | KOBAYASHI Shinji | <original_author id="name" /> |
100 | <lifecycle_state>0</lifecycle_state> |
||
101 | <other_details id="MD5-CAM-1.0.1">F5DEA5434726E79CFB3CEA0A7796E501</other_details> |
||
102 | 2 | KOBAYASHI Shinji | <details> |
103 | <language> |
||
104 | <terminology_id> |
||
105 | <value>ISO_639-1</value> |
||
106 | </terminology_id> |
||
107 | 3 | KOBAYASHI Shinji | <code_string>ja</code_string> |
108 | </language> |
||
109 | <purpose /> |
||
110 | <use /> |
||
111 | <misuse /> |
||
112 | </details> |
||
113 | </description> |
||
114 | <archetype_id> |
||
115 | <value>openEHR-EHR-OBSERVATION.sample.v1</value> |
||
116 | </archetype_id> |
||
117 | <adl_version>1.4</adl_version> |
||
118 | <concept>at0000</concept> |
||
119 | <definition> |
||
120 | <rm_type_name>OBSERVATION</rm_type_name> |
||
121 | <occurrences> |
||
122 | <lower_included>true</lower_included> |
||
123 | <upper_included>true</upper_included> |
||
124 | <lower_unbounded>false</lower_unbounded> |
||
125 | <upper_unbounded>false</upper_unbounded> |
||
126 | <lower>1</lower> |
||
127 | <upper>1</upper> |
||
128 | </occurrences> |
||
129 | <node_id>at0000</node_id> |
||
130 | <attributes xsi:type="C_SINGLE_ATTRIBUTE"> |
||
131 | <rm_attribute_name>data</rm_attribute_name> |
||
132 | <existence> |
||
133 | <lower_included>true</lower_included> |
||
134 | <upper_included>true</upper_included> |
||
135 | <lower_unbounded>false</lower_unbounded> |
||
136 | <upper_unbounded>false</upper_unbounded> |
||
137 | <lower>1</lower> |
||
138 | <upper>1</upper> |
||
139 | </existence> |
||
140 | ... snips ... |
||
141 | <items code="at0004"> |
||
142 | <items id="text">Description</items> |
||
143 | <items id="description">*</items> |
||
144 | 2 | KOBAYASHI Shinji | </items> |
145 | </term_definitions> |
||
146 | </ontology> |
||
147 | </pre> |
||
148 | 3 | KOBAYASHI Shinji | |
149 | XML form is exploding by tags and lacks simplicity of ADL formalism. |
||
150 | YAML form is remarked as easy and simple formalism, which is recognised te be an alternative for XML. |
||
151 | Sample YAML form is considered as bellow: |
||
152 | <pre> |
||
153 | arhetype: |
||
154 | archetype_id: openEHR-EHR-OBSERVATION.sample.v1 |
||
155 | concept: |
||
156 | at0000: sample archetype |
||
157 | language: |
||
158 | original_language: [ISO_639-1::ja] |
||
159 | description: |
||
160 | ..snips.. |
||
161 | </pre> |
||
162 | YAML format is more similar to ADL than XML and seems very comprehensive form. So our project will challenge to implement YADL(Yet another ADL) as alternative formalism for archetype and our Ruby implementation. |
||
163 | |||
164 | h2. Methods |
||
165 | |||
166 | We should implement YAML scheme to express archetype as cADL and YAML instance to express dADL. |
||
167 | |||
168 | h2. Result |
||
169 | |||
170 | on going. |