source: ccr2ccd-xslt/trunk/make/ccd-problems.xsl@ 995

Last change on this file since 995 was 995, checked in by George Lilly, 14 years ago

updates

File size: 7.4 KB
Line 
1 <xsl:if test="a:ContinuityOfCareRecord/a:Body/a:Problems">
2 <component>
3 <section>
4 <templateId root="2.16.840.1.113883.3.88.11.83.103" assigningAuthorityName="HITSP/C83"/>
5 <templateId root="1.3.6.1.4.1.19376.1.5.3.1.3.6" assigningAuthorityName="IHE PCC"/>
6 <templateId root="2.16.840.1.113883.10.20.1.11" assigningAuthorityName="HL7 CCD"/>
7 <code code="11450-4" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC" displayName="Problem list"/>
8 <title>Problems</title>
9 <text>
10 <table>
11 <tbody>
12 <tr>
13 <th>Type</th>
14 <th>Date</th>
15 <th>Code</th>
16 <th>Description</th>
17 <th>Status</th>
18 <th>Source</th>
19 </tr>
20 <xsl:for-each select="/a:ContinuityOfCareRecord/a:Body/a:Problems/a:Problem">
21 <tr>
22 <td>
23 <xsl:value-of select="a:Type/a:Text"/>
24 </td>
25 <td>
26 <table>
27 <tbody>
28 <xsl:apply-templates select="a:DateTime"/>
29 </tbody>
30 </table>
31 </td>
32 <td>
33 <xsl:apply-templates select="a:Description/a:Code"/>
34 </td>
35 <td>
36 <xsl:attribute name="ID">
37 <xsl:value-of select="a:CCRDataObjectID"></xsl:value-of>
38 </xsl:attribute>
39 <xsl:value-of select="a:Description/a:Text"/>
40 </td>
41 <td>
42 <xsl:value-of select="a:Status/a:Text"/>
43 </td>
44 <td>
45 <xsl:call-template name="actorName">
46 <xsl:with-param name="objID" select="a:Source/a:Actor/a:ActorID"/>
47 </xsl:call-template>
48 </td>
49 </tr>
50 </xsl:for-each>
51 </tbody>
52 </table>
53 </text>
54 <xsl:for-each select="/a:ContinuityOfCareRecord/a:Body/a:Problems/a:Problem">
55 <entry typeCode="DRIV">
56 <act classCode="ACT" moodCode="EVN">
57 <templateId root="2.16.840.1.113883.10.20.1.27"/>
58 <!-- Problem act template -->
59
60 <!-- <id> -->
61 <xsl:call-template name="ccdID">
62 <xsl:with-param name="ccrObjectID" select="a:CCRDataObjectID"/>
63 </xsl:call-template>
64
65 <code nullFlavor="NA"/>
66
67 <xsl:call-template name="ccdPerformer">
68 <xsl:with-param name="ccrActorReference" select="a:Source/a:Actor"/>
69 </xsl:call-template>
70
71 <entryRelationship typeCode="SUBJ">
72 <observation classCode="OBS" moodCode="EVN">
73 <templateId root="2.16.840.1.113883.10.20.1.28" assigningAuthorityName="CCD"/>
74 <!--Problem observation template-->
75
76 <!-- <id> -->
77 <xsl:call-template name="ccdID">
78 <xsl:with-param name="ccrObjectID" select="a:CCRDataObjectID"/>
79 <xsl:with-param name="suffix"></xsl:with-param>
80 </xsl:call-template>
81
82 <code code="55607006" displayName="Problem" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED-CT"/>
83 <statusCode code="completed"/>
84 <text>
85 <reference>
86 <xsl:attribute name="value">
87 <xsl:text>#</xsl:text>
88 <xsl:value-of select="a:CCRDataObjectID"/>
89 </xsl:attribute>
90 </reference>
91 </text>
92
93 <xsl:call-template name="ccdDateTime">
94 <xsl:with-param name="dt" select="a:DateTime"/>
95 </xsl:call-template>
96
97 <xsl:call-template name="ccdCodedValue">
98 <xsl:with-param name="ccrCodedDescription" select="a:Description"/>
99 </xsl:call-template>
100
101 <xsl:call-template name="ccdStatus">
102 <xsl:with-param name="ccrStatus" select="a:Status"/>
103 </xsl:call-template>
104 </observation>
105 </entryRelationship>
106
107 </act>
108 </entry>
109 </xsl:for-each>
110 </section>
111 </component>
112 </xsl:if>
Note: See TracBrowser for help on using the repository browser.