Changeset 787


Ignore:
Timestamp:
Jun 3, 2010, 4:38:50 PM (14 years ago)
Author:
Ken Miller
Message:

Support for encounters and alerts

Changed entity template handling from a single template covering a variety of CCD entity types to individualized templates for each CCD type. Added additional support templates to minimize repetition.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • ccr2ccd-xslt/trunk/ccr_ccd.xsl

    r769 r787  
    6060                <xsl:attribute name="value">
    6161                    <xsl:call-template name="date:format-date">
    62                         <xsl:with-param name="date-time">
    63                             <xsl:value-of select="/a:ContinuityOfCareRecord/a:DateTime/a:ExactDateTime"/>
    64                         </xsl:with-param>
     62                        <xsl:with-param name="date-time" select="/a:ContinuityOfCareRecord/a:DateTime/a:ExactDateTime"/>
    6563                        <xsl:with-param name="pattern">yyyyMMddhhmmss+0000</xsl:with-param>
    6664                    </xsl:call-template>
     
    6967            <confidentialityCode code="N" codeSystem="2.16.840.1.113883.5.25"/>
    7068            <languageCode code="en-US"/>
    71             <xsl:variable name="patientID" select="/a:ContinuityOfCareRecord/a:Patient[1]/a:ActorID"/>
     69
    7270            <recordTarget>
    73                 <xsl:for-each select="/a:ContinuityOfCareRecord/a:Actors/a:Actor[a:ActorObjectID=$patientID]">
    74                     <patientRole>
    75                         <xsl:call-template name="ccdEntity">
    76                             <xsl:with-param name="ccrActorObjectID" select="/a:ContinuityOfCareRecord/a:Patient[1]/a:ActorID"></xsl:with-param>
    77                             <xsl:with-param name="personNodeName">patient</xsl:with-param>
     71                <xsl:call-template name="ccdPatientRole">
     72                    <xsl:with-param name="ccrActorObjectID" select="/a:ContinuityOfCareRecord/a:Patient[1]/a:ActorID"/>
     73                </xsl:call-template>
     74            </recordTarget>
     75
     76            <xsl:variable name="fromID" select="/a:ContinuityOfCareRecord/a:From/a:ActorLink[1]/a:ActorID"/>
     77
     78            <author>
     79                <time>
     80                    <xsl:attribute name="value">
     81                        <xsl:call-template name="date:format-date">
     82                            <xsl:with-param name="date-time" select="/a:ContinuityOfCareRecord/a:DateTime/a:ExactDateTime"/>
     83                            <xsl:with-param name="pattern">yyyyMMddhhmmss</xsl:with-param>
    7884                        </xsl:call-template>
    79                     </patientRole>
    80                 </xsl:for-each>
    81             </recordTarget>
    82 
    83             <xsl:variable name="fromID" select="/a:ContinuityOfCareRecord/a:From/a:ActorLink[1]/a:ActorID"/>
    84             <author>
    85                 <xsl:for-each select="/a:ContinuityOfCareRecord/a:Actors/a:Actor[a:ActorObjectID=$fromID]">
    86                     <time>
    87                         <xsl:attribute name="value">
    88                             <xsl:call-template name="date:format-date">
    89                                 <xsl:with-param name="date-time">
    90                                     <xsl:value-of select="/a:ContinuityOfCareRecord/a:DateTime/a:ExactDateTime"/>
    91                                 </xsl:with-param>
    92                                 <xsl:with-param name="pattern">yyyyMMddhhmmss</xsl:with-param>
    93                             </xsl:call-template>
    94                         </xsl:attribute>
    95                     </time>
    96                     <xsl:call-template name="ccdEntity">
    97                         <xsl:with-param name="ccrActorObjectID" select="/a:ContinuityOfCareRecord/a:From/a:ActorLink[1]/a:ActorID"></xsl:with-param>
    98                     </xsl:call-template>
    99                 </xsl:for-each>
     85                    </xsl:attribute>
     86                </time>
     87                <xsl:call-template name="ccdAssignedAuthor">
     88                    <xsl:with-param name="ccrActorObjectID" select="$fromID"/>
     89                </xsl:call-template>
    10090            </author>
    10191
     
    10393                <custodian>
    10494                    <assignedCustodian>
    105                         <representedCustodianOrganization>
    106                             <xsl:call-template name="ccdEntity">
    107                                 <xsl:with-param name="ccrActorObjectID" select="/a:ContinuityOfCareRecord/a:Actors/a:Actor[a:ActorObjectID=$fromID]/a:InternalCCRLink[a:LinkRelationship='representedOrganization']/a:LinkID"></xsl:with-param>
    108                             </xsl:call-template>
    109                         </representedCustodianOrganization>
     95                        <xsl:call-template name="ccdOrganization">
     96                            <xsl:with-param name="ccrActorObjectID" select="/a:ContinuityOfCareRecord/a:Actors/a:Actor[a:ActorObjectID=$fromID]/a:InternalCCRLink[a:LinkRelationship='representedOrganization']/a:LinkID"/>
     97                            <xsl:with-param name="organizationNodeName" select="'representedCustodianOrganization'"/>
     98                        </xsl:call-template>
    11099                    </assignedCustodian>
    111100                </custodian>
     
    149138
    150139                <xsl:for-each select="/a:ContinuityOfCareRecord/a:Body/a:HealthCareProviders/a:Provider">
    151                     <assignedEntity>
    152                         <xsl:call-template name="ccdEntity">
    153                             <xsl:with-param name="a:ccrActorObjectID" select="a:ActorID"/>
    154                         </xsl:call-template>
    155                     </assignedEntity>
     140                    <xsl:call-template name="ccdAssignedEntity">
     141                        <xsl:with-param name="ccrActorObjectID" select="a:ActorID"/>
     142                    </xsl:call-template>
    156143                </xsl:for-each>
    157144
     
    189176                                            <xsl:for-each select="/a:ContinuityOfCareRecord/a:Body/a:Alerts/a:Alert">
    190177                                                <tr>
     178                                                    <xsl:attribute name="id">
     179                                                        <xsl:value-of select="a:CCRDataObjectID"/>
     180                                                    </xsl:attribute>
     181
    191182                                                    <td>
    192183                                                        <xsl:value-of select="a:Type/a:Text"/>
     
    194185                                                    <td>
    195186                                                        <xsl:call-template name="date:format-date">
    196                                                             <xsl:with-param name="date-time">
    197                                                                 <xsl:value-of select="a:DateTime/a:ExactDateTime"/>
    198                                                             </xsl:with-param>
     187                                                            <xsl:with-param name="date-time" select="a:DateTime/a:ExactDateTime"/>
    199188                                                        </xsl:call-template>
    200189                                                    </td>
     
    221210                                    </table>
    222211                                </text>
     212                                <xsl:for-each select="/a:ContinuityOfCareRecord/a:Body/a:Alerts/a:Alert">
     213                                    <entry typeCode="DRIV">
     214                                        <act classCode="ACT" moodCode="EVN">
     215                                            <templateId root="2.16.840.1.113883.10.20.1.27"/>
     216                                            <!--Allergy act template -->
     217
     218                                            <!-- <id> -->
     219                                            <xsl:call-template name="ccdID">
     220                                                <xsl:with-param name="ccrObjectID" select="a:CCRDataObjectID"/>
     221                                            </xsl:call-template>
     222
     223                                            <code nullFlavor="NA"/>
     224                                            <entryRelationship typeCode="SUBJ">
     225                                                <observation classCode="OBS" moodCode="EVN">
     226                                                    <templateId root="2.16.840.1.113883.10.20.1.18"/>
     227
     228                                                    <!-- <id> -->
     229                                                    <xsl:call-template name="ccdID">
     230                                                        <xsl:with-param name="ccrObjectID" select="a:CCRDataObjectID"/>
     231                                                        <xsl:with-param name="suffix">.1</xsl:with-param>
     232                                                    </xsl:call-template>
     233
     234                                                    <code code="416098002" codeSystem="2.16.840.1.113883.6.96" displayName="drug allergy" codeSystemName="SNOMED CT"/>
     235
     236                                                    <text>
     237                                                        <reference>
     238                                                            <xsl:attribute name="value">
     239                                                                <xsl:text>#</xsl:text>
     240                                                                <xsl:value-of select="a:CCRDataObjectID"/>
     241                                                            </xsl:attribute>
     242                                                        </reference>
     243                                                    </text>
     244
     245                                                    <statusCode code="completed"/>
     246
     247                                                    <participant typeCode="CSM">
     248                                                        <xsl:choose>
     249                                                            <xsl:when test="a:Product/a:Description">
     250                                                                <xsl:call-template name="ccdParticipantRoleCodedDescription">
     251                                                                    <xsl:with-param name="ccrCodedDescription" select="a:Product/a:Description"/>
     252                                                                </xsl:call-template>
     253                                                            </xsl:when>
     254                                                            <xsl:otherwise>
     255                                                                <xsl:call-template name="ccdParticipantRoleCodedDescription">
     256                                                                    <xsl:with-param name="ccrCodedDescription" select="a:Description"/>
     257                                                                </xsl:call-template>
     258                                                            </xsl:otherwise>
     259                                                        </xsl:choose>
     260                                                    </participant>
     261
     262                                                    <xsl:if test="a:Reaction">
     263                                                        <entryRelationship typeCode="MFST" inversionInd="true">
     264                                                            <observation classCode="OBS" moodCode="EVN">
     265                                                                <templateId root="2.16.840.1.113883.10.20.1.54"/>
     266                                                                <!--Reaction observation template -->
     267                                                                <code code="ASSERTION" codeSystem="2.16.840.1.113883.5.4"/>
     268                                                                <statusCode code="completed"/>
     269                                                                <xsl:call-template name="ccdCodedValue">
     270                                                                    <xsl:with-param name="ccrCodedDescription" select="a:Reaction/a:Description"/>
     271                                                                </xsl:call-template>
     272                                                            </observation>
     273                                                        </entryRelationship>
     274                                                    </xsl:if>
     275
     276                                                    <xsl:call-template name="ccdStatus">
     277                                                        <xsl:with-param name="ccrStatus" select="a:Status"/>
     278                                                    </xsl:call-template>
     279
     280                                                </observation>
     281                                            </entryRelationship>
     282                                        </act>
     283                                    </entry>
     284                                </xsl:for-each>
    223285                            </section>
    224286                        </component>
     
    247309                                                    <td>
    248310                                                        <xsl:call-template name="date:format-date">
    249                                                             <xsl:with-param name="date-time">
    250                                                                 <xsl:value-of select="a:DateTime/a:ExactDateTime"/>
    251                                                             </xsl:with-param>
     311                                                            <xsl:with-param name="date-time" select="a:DateTime/a:ExactDateTime"/>
    252312                                                        </xsl:call-template>
    253313                                                    </td>
     
    295355                                                <td>
    296356                                                    <xsl:call-template name="date:format-date">
    297                                                         <xsl:with-param name="date-time">
    298                                                             <xsl:value-of select="a:DateTime/a:ExactDateTime"/>
    299                                                         </xsl:with-param>
     357                                                        <xsl:with-param name="date-time" select="a:DateTime/a:ExactDateTime"/>
    300358                                                    </xsl:call-template>
    301359                                                </td>
     
    343401                                                <tr>
    344402                                                    <xsl:attribute name="id">
    345                                                         <xsl:value-of select="a:CCRDataObjectID"></xsl:value-of>
     403                                                        <xsl:value-of select="a:CCRDataObjectID"/>
    346404                                                    </xsl:attribute>
    347 
    348405                                                    <td>
    349406                                                        <xsl:value-of select="a:Type/a:Text"/>
     
    383440                                            <!-- <id> -->
    384441                                            <xsl:call-template name="ccdID">
    385                                                 <xsl:with-param name="ccrObjectID">
    386                                                     <xsl:value-of select="a:CCRDataObjectID"></xsl:value-of>
    387                                                 </xsl:with-param>
     442                                                <xsl:with-param name="ccrObjectID" select="a:CCRDataObjectID"/>
    388443                                            </xsl:call-template>
    389444
    390445                                            <code nullFlavor="NA"/>
    391446
    392                                             <performer typeCode="PRF">
    393                                                 <assignedEntity>
    394                                                     <xsl:call-template name="ccdEntity">
    395                                                         <xsl:with-param name="ccrActorObjectID">
    396                                                             <xsl:value-of select="a:Source/a:Actor/a:ActorID"></xsl:value-of>
    397                                                         </xsl:with-param>
    398                                                     </xsl:call-template>
    399                                                 </assignedEntity>
    400                                             </performer>
     447                                            <xsl:call-template name="ccdPerformer">
     448                                                <xsl:with-param name="ccrActorReference" select="a:Source/a:Actor"/>
     449                                            </xsl:call-template>
    401450
    402451                                            <entryRelationship typeCode="SUBJ">
     
    407456                                                    <!-- <id> -->
    408457                                                    <xsl:call-template name="ccdID">
    409                                                         <xsl:with-param name="ccrObjectID">
    410                                                             <xsl:value-of select="a:CCRDataObjectID"></xsl:value-of>
    411                                                         </xsl:with-param>
     458                                                        <xsl:with-param name="ccrObjectID" select="a:CCRDataObjectID"/>
    412459                                                        <xsl:with-param name="suffix">.1</xsl:with-param>
    413460                                                    </xsl:call-template>
     
    471518                                                <tr>
    472519                                                    <xsl:attribute name="id">
    473                                                         <xsl:value-of select="a:CCRDataObjectID"></xsl:value-of>
     520                                                        <xsl:value-of select="a:CCRDataObjectID"/>
    474521                                                    </xsl:attribute>
    475522
     
    541588                                            <!-- <id> -->
    542589                                            <xsl:call-template name="ccdID">
    543                                                 <xsl:with-param name="ccrObjectID">
    544                                                     <xsl:value-of select="a:CCRDataObjectID"></xsl:value-of>
    545                                                 </xsl:with-param>
     590                                                <xsl:with-param name="ccrObjectID" select="a:CCRDataObjectID"/>
    546591                                            </xsl:call-template>
    547592
     
    562607
    563608                                            <xsl:call-template name="ccdStatusProcedure">
    564                                                 <xsl:with-param name="status" select="a:Status"></xsl:with-param>
     609                                                <xsl:with-param name="status" select="a:Status"/>
    565610                                            </xsl:call-template>
    566611
     
    584629
    585630                                            <xsl:if test="a:Practitioners/a:Practitioner">
    586                                                 <performer typeCode="PRF">
    587                                                     <assignedEntity>
    588                                                         <xsl:call-template name="ccdEntity">
    589                                                             <xsl:with-param name="ccrActorObjectID" select="a:Practitioners/a:Practitioner[1]/a:ActorID"/>
    590                                                         </xsl:call-template>
    591                                                     </assignedEntity>
    592                                                 </performer>
     631                                                <xsl:call-template name="ccdPerformer">
     632                                                    <xsl:with-param name="ccrActorReference" select="a:Practitioners/a:Practitioner[1]"/>
     633                                                </xsl:call-template>
    593634                                            </xsl:if>
    594635                                        </procedure>
     
    630671                                                            <xsl:text xml:space="preserve"> </xsl:text>(<xsl:value-of select="a:Product/a:BrandName/a:Text"/>)
    631672                                                        </xsl:if>
    632 
    633673                                                    </td>
    634674                                                    <td>
    635675                                                        <xsl:call-template name="date:format-date">
    636                                                             <xsl:with-param name="date-time">
    637                                                                 <xsl:value-of select="a:DateTime/a:ExactDateTime"/>
    638                                                             </xsl:with-param>
     676                                                            <xsl:with-param name="date-time" select="a:DateTime/a:ExactDateTime"/>
    639677                                                        </xsl:call-template>
    640678                                                    </td>
     
    728766                                            <!-- <id> -->
    729767                                            <xsl:call-template name="ccdID">
    730                                                 <xsl:with-param name="ccrObjectID">
    731                                                     <xsl:value-of select="a:CCRDataObjectID"></xsl:value-of>
    732                                                 </xsl:with-param>
     768                                                <xsl:with-param name="ccrObjectID" select="a:CCRDataObjectID"/>
    733769                                            </xsl:call-template>
    734770
     
    827863                                                    <td>
    828864                                                        <xsl:call-template name="date:format-date">
    829                                                             <xsl:with-param name="date-time">
    830                                                                 <xsl:value-of select="a:DateTime/a:ExactDateTime"/>
    831                                                             </xsl:with-param>
     865                                                            <xsl:with-param name="date-time" select="a:DateTime/a:ExactDateTime"/>
    832866                                                        </xsl:call-template>
    833867                                                    </td>
     
    873907                                                    <td>
    874908                                                        <xsl:call-template name="date:format-date">
    875                                                             <xsl:with-param name="date-time">
    876                                                                 <xsl:value-of select="a:DateTime/a:ExactDateTime"/>
    877                                                             </xsl:with-param>
     909                                                            <xsl:with-param name="date-time" select="a:DateTime/a:ExactDateTime"/>
    878910                                                        </xsl:call-template>
    879911                                                    </td>
     
    906938                        <component>
    907939                            <section>
    908                                 <templateId root="2.16.840.1.113883.10.20.1.3"/>
    909                                 <code code="46240-8" codeSystem="2.16.840.1.113883.6.1"/>
     940                                <templateId root="2.16.840.1.113883.3.88.11.83.127" assigningAuthorityName="HITSP/C83"/>
     941                                <templateId root="1.3.6.1.4.1.19376.1.5.3.1.1.5.3.3" assigningAuthorityName="IHE PCC"/>
     942                                <templateId root="2.16.840.1.113883.10.20.1.3" assigningAuthorityName="HL7 CCD"/>
     943                                <!--Encounters section template-->
     944                                <code code="46240-8" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC" displayName="History of encounters"/>
    910945                                <title>Encounters</title>
    911946                                <text>
     
    924959                                            <xsl:for-each select="/a:ContinuityOfCareRecord/a:Body/a:Encounters/a:Encounter">
    925960                                                <tr>
     961                                                    <xsl:attribute name="id">
     962                                                        <xsl:value-of select="a:CCRDataObjectID"/>
     963                                                    </xsl:attribute>
     964
    926965                                                    <td>
    927966                                                        <xsl:value-of select="a:Type/a:Text"/>
     
    929968                                                    <td>
    930969                                                        <xsl:call-template name="date:format-date">
    931                                                             <xsl:with-param name="date-time">
    932                                                                 <xsl:value-of select="a:DateTime/a:ExactDateTime"/>
    933                                                             </xsl:with-param>
     970                                                            <xsl:with-param name="date-time" select="a:DateTime/a:ExactDateTime"/>
    934971                                                        </xsl:call-template>
    935972                                                    </td>
     
    9751012                                    </table>
    9761013                                </text>
     1014                                <xsl:for-each select="/a:ContinuityOfCareRecord/a:Body/a:Encounters/a:Encounter">
     1015                                    <entry typeCode="DRIV">
     1016                                        <encounter classCode="ENC" moodCode="EVN">
     1017                                            <templateId root="2.16.840.1.113883.3.88.11.83.16" assigningAuthorityName="HITSP C83"/>
     1018                                            <templateId root="2.16.840.1.113883.10.20.1.21" assigningAuthorityName="CCD"/>
     1019                                            <templateId root="1.3.6.1.4.1.19376.1.5.3.1.4.14" assigningAuthorityName="IHE PCC"/>
     1020
     1021                                            <!-- Encounter activity template -->
     1022
     1023                                            <!-- <id> -->
     1024                                            <xsl:call-template name="ccdID">
     1025                                                <xsl:with-param name="ccrObjectID" select="a:CCRDataObjectID"/>
     1026                                            </xsl:call-template>
     1027
     1028
     1029                                            <xsl:call-template name="ccdCodedValue">
     1030                                                <xsl:with-param name="ccrCodedDescription" select="a:Description"/>
     1031                                                <xsl:with-param name="nodeName" select="'code'"/>
     1032                                            </xsl:call-template>
     1033
     1034                                            <text>
     1035                                                <reference>
     1036                                                    <xsl:attribute name="value">
     1037                                                        <xsl:text>#</xsl:text>
     1038                                                        <xsl:value-of select="a:CCRDataObjectID"/>
     1039                                                    </xsl:attribute>
     1040                                                </reference>
     1041                                            </text>
     1042
     1043                                            <xsl:call-template name="ccdDateTime">
     1044                                                <xsl:with-param name="dt" select="a:DateTime"/>
     1045                                            </xsl:call-template>
     1046
     1047                                            <xsl:if test="a:Practitioners[1]/a:Practitioner">
     1048                                                <xsl:call-template name="ccdPerformer">
     1049                                                    <xsl:with-param name="ccrActorReference" select="a:Practitioners/a:Practitioner[1]"/>
     1050                                                </xsl:call-template>
     1051                                            </xsl:if>
     1052
     1053                                            <xsl:if test="a:Locations[1]/a:Location">
     1054                                                <participant typeCode="LOC">
     1055                                                    <templateId root="2.16.840.1.113883.10.20.1.45"/>
     1056                                                    <!-- Location participation template -->
     1057                                                    <xsl:choose>
     1058                                                        <xsl:when test="a:Locations[1]/a:Location/a:ActorID">
     1059                                                            <xsl:call-template name="ccdParticipantRoleActor">
     1060                                                                <xsl:with-param name="ccrActorObjectID" select="a:Locations[1]/a:Location/a:ActorID"/>
     1061                                                            </xsl:call-template>
     1062                                                        </xsl:when>
     1063                                                        <xsl:otherwise>
     1064                                                            <xsl:call-template name="ccdParticipantRoleCodedDescription">
     1065                                                                <xsl:with-param name="ccrCodedDescription" select="a:Locations[1]/a:Location/a:Description"/>
     1066                                                            </xsl:call-template>
     1067                                                        </xsl:otherwise>
     1068                                                    </xsl:choose>
     1069                                                </participant>
     1070                                            </xsl:if>
     1071                                        </encounter>
     1072                                    </entry>
     1073                                </xsl:for-each>
    9771074                            </section>
    9781075                        </component>
     
    10021099                                                    <td>
    10031100                                                        <xsl:call-template name="date:format-date">
    1004                                                             <xsl:with-param name="date-time">
    1005                                                                 <xsl:value-of select="a:DateTime/a:ExactDateTime"/>
    1006                                                             </xsl:with-param>
     1101                                                            <xsl:with-param name="date-time" select="a:DateTime/a:ExactDateTime"/>
    10071102                                                        </xsl:call-template>
    10081103                                                    </td>
     
    10541149                                                    <td>
    10551150                                                        <xsl:call-template name="date:format-date">
    1056                                                             <xsl:with-param name="date-time">
    1057                                                                 <xsl:value-of select="a:DateTime/a:ExactDateTime"/>
    1058                                                             </xsl:with-param>
     1151                                                            <xsl:with-param name="date-time" select="a:DateTime/a:ExactDateTime"/>
    10591152                                                        </xsl:call-template>
    10601153                                                    </td>
     
    11051198                                                <tr>
    11061199                                                    <xsl:attribute name="id">
    1107                                                         <xsl:value-of select="a:CCRDataObjectID"></xsl:value-of>
     1200                                                        <xsl:value-of select="a:CCRDataObjectID"/>
    11081201                                                    </xsl:attribute>
    11091202                                                    <td>
     
    11121205                                                    <td>
    11131206                                                        <xsl:call-template name="date:format-date">
    1114                                                             <xsl:with-param name="date-time">
    1115                                                                 <xsl:value-of select="a:DateTime/a:ExactDateTime"/>
    1116                                                             </xsl:with-param>
     1207                                                            <xsl:with-param name="date-time" select="a:DateTime/a:ExactDateTime"/>
    11171208                                                        </xsl:call-template>
    11181209                                                    </td>
     
    11211212                                                            <div>
    11221213                                                                <xsl:attribute name="id">
    1123                                                                     <xsl:value-of select="a:CCRDataObjectID"></xsl:value-of>
     1214                                                                    <xsl:value-of select="a:CCRDataObjectID"/>
    11241215                                                                </xsl:attribute>
    11251216
     
    11371228                                                            <div>
    11381229                                                                <xsl:attribute name="id">
    1139                                                                     <xsl:value-of select="a:CCRDataObjectID"></xsl:value-of>
     1230                                                                    <xsl:value-of select="a:CCRDataObjectID"/>
    11401231                                                                </xsl:attribute>
    11411232
     
    11711262                                                    <!-- <id> -->
    11721263                                                    <xsl:call-template name="ccdID">
    1173                                                         <xsl:with-param name="ccrObjectID">
    1174                                                             <xsl:value-of select="a:CCRDataObjectID"></xsl:value-of>
    1175                                                         </xsl:with-param>
     1264                                                        <xsl:with-param name="ccrObjectID" select="a:CCRDataObjectID"/>
    11761265                                                    </xsl:call-template>
    11771266
     
    11891278                                                    </xsl:call-template>
    11901279
    1191                                                     <performer>
    1192                                                         <assignedEntity>
    1193                                                             <xsl:call-template name="ccdEntity">
    1194                                                                 <xsl:with-param name="ccrActorObjectID">
    1195                                                                     <xsl:value-of select="a:Source/a:Actor/a:ActorID"></xsl:value-of>
    1196                                                                 </xsl:with-param>
    1197                                                             </xsl:call-template>
    1198                                                         </assignedEntity>
    1199                                                     </performer>
     1280                                                    <xsl:call-template name="ccdPerformer">
     1281                                                        <xsl:with-param name="ccrActorReference" select="a:Source/a:Actor"/>
     1282                                                    </xsl:call-template>
    12001283
    12011284                                                    <xsl:for-each select="a:Test">
     
    12461329                                                    <td>
    12471330                                                        <xsl:call-template name="date:format-date">
    1248                                                             <xsl:with-param name="date-time">
    1249                                                                 <xsl:value-of select="a:DateTime/a:ExactDateTime"/>
    1250                                                             </xsl:with-param>
     1331                                                            <xsl:with-param name="date-time" select="a:DateTime/a:ExactDateTime"/>
    12511332                                                        </xsl:call-template>
    12521333                                                    </td>
     
    13551436                                                        <td>
    13561437                                                            <xsl:call-template name="date:format-date">
    1357                                                                 <xsl:with-param name="date-time">
    1358                                                                     <xsl:value-of select="a:OrderRequest/a:Procedures/a:Procedure/a:DateTime/a:ExactDateTime"/>
    1359                                                                 </xsl:with-param>
     1438                                                                <xsl:with-param name="date-time" select="a:OrderRequest/a:Procedures/a:Procedure/a:DateTime/a:ExactDateTime"/>
    13601439                                                            </xsl:call-template>
    13611440                                                        </td>
     
    14871566                                                    <td>
    14881567                                                        <xsl:call-template name="date:format-date">
    1489                                                             <xsl:with-param name="date-time">
    1490                                                                 <xsl:value-of select="a:DateTime/a:ExactDateTime"/>
    1491                                                             </xsl:with-param>
     1568                                                            <xsl:with-param name="date-time" select="a:DateTime/a:ExactDateTime"/>
    14921569                                                        </xsl:call-template>
    14931570                                                    </td>
     
    17431820    </xsl:template>
    17441821
    1745     <xsl:template name="ccdEntity">
     1822    <xsl:template name="ccdAssignedEntity">
    17461823        <xsl:param name="ccrActorObjectID"/>
     1824
     1825        <xsl:variable name="CCRActor" select="/a:ContinuityOfCareRecord/a:Actors/a:Actor[a:ActorObjectID=$ccrActorObjectID]"/>
     1826
     1827        <assignedEntity>
     1828            <xsl:call-template name="ccdEntityID">
     1829                <xsl:with-param name="CCRActor" select="$CCRActor"/>
     1830            </xsl:call-template>
     1831
     1832            <xsl:call-template name="ccdAddress">
     1833                <xsl:with-param name="CCRActorAddress" select="$CCRActor/a:Address"/>
     1834            </xsl:call-template>
     1835
     1836            <xsl:call-template name="ccdTelecom">
     1837                <xsl:with-param name="CCRActor" select="$CCRActor"/>
     1838            </xsl:call-template>
     1839
     1840            <xsl:if test="$CCRActor/a:Person">
     1841                <xsl:call-template name="ccdPerson">
     1842                    <xsl:with-param name="CCRActorPerson" select="$CCRActor/a:Person"/>
     1843                    <xsl:with-param name="personNodeName" select="'assignedPerson'"/>
     1844                </xsl:call-template>
     1845            </xsl:if>
     1846
     1847            <xsl:if test="$CCRActor/a:InternalCCRLink[a:LinkRelationship='Organization']">
     1848                <xsl:call-template name="ccdOrganization">
     1849                    <xsl:with-param name="ccrActorObjectID" select="$CCRActor/a:InternalCCRLink[a:LinkRelationship='Organization']/a:LinkID"/>
     1850                    <xsl:with-param name="organizationNodeName" select="'representedOrganization'"/>
     1851                </xsl:call-template>
     1852            </xsl:if>
     1853
     1854        </assignedEntity>
     1855    </xsl:template>
     1856
     1857    <xsl:template name="ccdPatient">
     1858        <xsl:param name="CCRActorPerson"/>
     1859        <patient>
     1860            <xsl:call-template name="ccdPersonName">
     1861                <xsl:with-param name="CCRActorName" select="$CCRActorPerson/a:Name"/>
     1862            </xsl:call-template>
     1863
     1864            <xsl:if test="$CCRActorPerson/a:Gender">
     1865                <xsl:call-template name="ccdCodedValue">
     1866                    <xsl:with-param name="ccrCodedDescription" select="$CCRActorPerson/a:Gender"/>
     1867                    <xsl:with-param name="domain" select="'AdministrativeGender'"/>
     1868                    <xsl:with-param name="nodeName" select="'administrativeGenderCode'"/>
     1869                </xsl:call-template>
     1870            </xsl:if>
     1871
     1872            <xsl:if test="$CCRActorPerson/a:DateOfBirth">
     1873                <birthTime>
     1874                    <xsl:attribute name="value">
     1875                        <xsl:call-template name="date:format-date">
     1876                            <xsl:with-param name="date-time" select="$CCRActorPerson/a:DateOfBirth/a:ExactDateTime"/>
     1877                            <xsl:with-param name="pattern">yyyyMMddhhmmss</xsl:with-param>
     1878                        </xsl:call-template>
     1879                    </xsl:attribute>
     1880                </birthTime>
     1881            </xsl:if>
     1882
     1883            <xsl:if test="/a:ContinuityOfCareRecord/a:Body/a:SocialHistory/a:SocialHistoryElement[a:Type/a:Text='Marital Status']">
     1884                <xsl:call-template name="ccdCodedValue">
     1885                    <xsl:with-param name="ccrCodedDescription" select="/a:ContinuityOfCareRecord/a:Body/a:SocialHistory/a:SocialHistoryElement[a:Type/a:Text='Marital Status']/a:Description"/>
     1886                    <xsl:with-param name="domain" select="'MaritalStatus'"/>
     1887                    <xsl:with-param name="nodeName" select="'maritalStatusCode'"/>
     1888                </xsl:call-template>
     1889            </xsl:if>
     1890
     1891            <xsl:if test="/a:ContinuityOfCareRecord/a:Body/a:SocialHistory/a:SocialHistoryElement[a:Type/a:Text='Language']">
     1892                <languageCommunication>
     1893                    <templateId root="2.16.840.1.113883.3.88.11.83.2" assigningAuthorityName="HITSP/C83"/>
     1894                    <templateId root="1.3.6.1.4.1.19376.1.5.3.1.2.1" assigningAuthorityName="IHE/PCC"/>
     1895                    <xsl:call-template name="ccdCodedValue">
     1896                        <xsl:with-param name="ccrCodedDescription" select="/a:ContinuityOfCareRecord/a:Body/a:SocialHistory/a:SocialHistoryElement[a:Type/a:Text='Language']/a:Description"></xsl:with-param>
     1897                        <xsl:with-param name="domain" select="'HumanLanguage'"/>
     1898                        <xsl:with-param name="nodeName" select="'languageCode'"/>
     1899                    </xsl:call-template>
     1900                </languageCommunication>
     1901            </xsl:if>
     1902        </patient>
     1903    </xsl:template>
     1904
     1905    <xsl:template name="ccdPerformer">
     1906        <xsl:param name="ccrActorReference"/>
     1907        <performer typeCode="PRF">
     1908            <xsl:if test="$ccrActorReference/a:ActorRole">
     1909                <xsl:call-template name="ccdCodedValue">
     1910                    <xsl:with-param name="ccrCodedDescription" select="$ccrActorReference/a:ActorRole"/>
     1911                    <xsl:with-param name="nodeName" select="'functionCode'"/>
     1912                </xsl:call-template>
     1913            </xsl:if>
     1914            <xsl:call-template name="ccdAssignedEntity">
     1915                <xsl:with-param name="ccrActorObjectID" select="$ccrActorReference/a:ActorID"/>
     1916            </xsl:call-template>
     1917        </performer>
     1918    </xsl:template>
     1919
     1920    <xsl:template name="ccdPerson">
     1921        <xsl:param name="CCRActorPerson"/>
    17471922        <xsl:param name="personNodeName">assignedPerson</xsl:param>
     1923        <xsl:element name="{$personNodeName}">
     1924            <xsl:call-template name="ccdPersonName">
     1925                <xsl:with-param name="CCRActorName" select="$CCRActorPerson/a:Name"/>
     1926            </xsl:call-template>
     1927        </xsl:element>
     1928    </xsl:template>
     1929
     1930    <xsl:template name="ccdPersonName">
     1931        <xsl:param name="CCRActorName"/>
     1932        <name>
     1933            <xsl:if test="$CCRActorName/a:CurrentName/a:Title">
     1934                <prefix>
     1935                    <xsl:value-of select="$CCRActorName/a:CurrentName/a:Title"/>
     1936                </prefix>
     1937            </xsl:if>
     1938            <xsl:if test="$CCRActorName/a:CurrentName/a:Given">
     1939                <given>
     1940                    <xsl:value-of select="$CCRActorName/a:CurrentName/a:Given"/>
     1941                </given>
     1942            </xsl:if>
     1943            <xsl:if test="$CCRActorName/a:CurrentName/a:Middle">
     1944                <given>
     1945                    <xsl:value-of select="$CCRActorName/a:CurrentName/a:Middle"/>
     1946                </given>
     1947            </xsl:if>
     1948            <xsl:if test="$CCRActorName/a:CurrentName/a:Family">
     1949                <family>
     1950                    <xsl:value-of select="$CCRActorName/a:CurrentName/a:Family"/>
     1951                </family>
     1952            </xsl:if>
     1953            <xsl:if test="$CCRActorName/a:CurrentName/a:Suffix">
     1954                <suffix>
     1955                    <xsl:value-of select="$CCRActorName/a:CurrentName/a:Suffix"/>
     1956                </suffix>
     1957            </xsl:if>
     1958        </name>
     1959    </xsl:template>
     1960
     1961    <xsl:template name="ccdOrganization">
     1962        <xsl:param name="ccrActorObjectID"/>
     1963        <xsl:param name="organizationNodeName"/>
    17481964
    17491965        <xsl:variable name="CCRActor" select="/a:ContinuityOfCareRecord/a:Actors/a:Actor[a:ActorObjectID=$ccrActorObjectID]"/>
    17501966
     1967        <xsl:element name="{$organizationNodeName}">
     1968            <xsl:call-template name="ccdEntityID">
     1969                <xsl:with-param name="CCRActor" select="$CCRActor"/>
     1970            </xsl:call-template>
     1971
     1972            <xsl:if test="$CCRActor/a:Organization">
     1973                <name>
     1974                    <xsl:value-of select="$CCRActor/a:Organization/a:Name"/>
     1975                </name>
     1976            </xsl:if>
     1977
     1978            <xsl:call-template name="ccdTelecom">
     1979                <xsl:with-param name="CCRActor" select="$CCRActor"/>
     1980            </xsl:call-template>
     1981
     1982            <xsl:call-template name="ccdAddress">
     1983                <xsl:with-param name="CCRActorAddress" select="$CCRActor/a:Address[1]"/>
     1984            </xsl:call-template>
     1985        </xsl:element>
     1986    </xsl:template>
     1987
     1988    <xsl:template name="ccdPatientRole">
     1989        <xsl:param name="ccrActorObjectID"/>
     1990
     1991        <xsl:variable name="CCRActor" select="/a:ContinuityOfCareRecord/a:Actors/a:Actor[a:ActorObjectID=$ccrActorObjectID]"/>
     1992
     1993        <xsl:call-template name="ccdEntityID">
     1994            <xsl:with-param name="CCRActor" select="$CCRActor"/>
     1995        </xsl:call-template>
     1996
     1997        <xsl:call-template name="ccdAddress">
     1998            <xsl:with-param name="CCRActorAddress" select="$CCRActor/a:Address[1]"/>
     1999        </xsl:call-template>
     2000
     2001        <xsl:call-template name="ccdTelecom">
     2002            <xsl:with-param name="CCRActor" select="$CCRActor"/>
     2003        </xsl:call-template>
     2004
     2005        <xsl:call-template name="ccdPatient">
     2006            <xsl:with-param name="CCRActorPerson" select="$CCRActor/a:Person"/>
     2007        </xsl:call-template>
     2008    </xsl:template>
     2009
     2010    <xsl:template name="ccdAssignedAuthor">
     2011        <xsl:param name="ccrActorObjectID"/>
     2012
     2013        <xsl:variable name="CCRActor" select="/a:ContinuityOfCareRecord/a:Actors/a:Actor[a:ActorObjectID=$ccrActorObjectID]"/>
     2014
     2015        <xsl:call-template name="ccdEntityID">
     2016            <xsl:with-param name="CCRActor" select="$CCRActor"/>
     2017        </xsl:call-template>
     2018
     2019        <xsl:call-template name="ccdAddress">
     2020            <xsl:with-param name="CCRActorAddress" select="$CCRActor/a:Address[1]"/>
     2021        </xsl:call-template>
     2022
     2023        <xsl:call-template name="ccdTelecom">
     2024            <xsl:with-param name="CCRActor" select="$CCRActor"/>
     2025        </xsl:call-template>
     2026
     2027        <xsl:call-template name="ccdPerson">
     2028            <xsl:with-param name="CCRActorPerson" select="$CCRActor/a:Person"/>
     2029        </xsl:call-template>
     2030
     2031        <xsl:if test="$CCRActor/a:InternalCCRLink[a:LinkRelationship='Organization']">
     2032            <representedOrganization>
     2033                <xsl:call-template name="ccdOrganization">
     2034                    <xsl:with-param name="ccrActorObjectID" select="$CCRActor/a:InternalCCRLink[a:LinkRelationship='Organization']/a:LinkID"/>
     2035                </xsl:call-template>
     2036            </representedOrganization>
     2037        </xsl:if>
     2038    </xsl:template>
     2039
     2040    <xsl:template name="ccdParticipantRoleActor">
     2041        <xsl:param name="ccrActorObjectID"/>
     2042
     2043        <xsl:variable name="CCRActor" select="/a:ContinuityOfCareRecord/a:Actors/a:Actor[a:ActorObjectID=$ccrActorObjectID]"/>
     2044
     2045        <xsl:call-template name="ccdEntityID">
     2046            <xsl:with-param name="CCRActor" select="$CCRActor"/>
     2047        </xsl:call-template>
     2048
     2049        <xsl:call-template name="ccdAddress">
     2050            <xsl:with-param name="CCRActorAddress" select="$CCRActor/a:Address[1]"/>
     2051        </xsl:call-template>
     2052
     2053        <xsl:call-template name="ccdTelecom">
     2054            <xsl:with-param name="CCRActor" select="$CCRActor"/>
     2055        </xsl:call-template>
     2056
     2057        <xsl:if test="$CCRActor/a:Organization/a:Name">
     2058            <playingEntity classCode="PLC">
     2059                <name>
     2060                    <xsl:value-of select="$CCRActor/a:Organization/a:Name"/>
     2061                </name>
     2062            </playingEntity>
     2063        </xsl:if>
     2064    </xsl:template>
     2065
     2066    <xsl:template name="ccdParticipantRoleCodedDescription">
     2067        <xsl:param name="ccrCodedDescription"/>
     2068
     2069        <addr/>
     2070        <telecom/>
     2071        <playingEntity classCode="PLC">
     2072            <xsl:if test="$ccrCodedDescription/a:Code">
     2073                <xsl:call-template name="ccdCodedValue">
     2074                    <xsl:with-param name="ccrCodedDescription" select="$ccrCodedDescription"/>
     2075                    <xsl:with-param name="nodeName" select="'code'"/>
     2076                </xsl:call-template>
     2077            </xsl:if>
     2078            <name>
     2079                <xsl:value-of select="$ccrCodedDescription/a:Text"/>
     2080            </name>
     2081        </playingEntity>
     2082    </xsl:template>
     2083
     2084    <xsl:template name="ccdEntityID">
     2085        <xsl:param name="CCRActor"/>
    17512086        <id>
    17522087            <xsl:choose>
     
    17642099                    </xsl:attribute>
    17652100                    <xsl:attribute name="root">
    1766                         <xsl:text>CCR Actor ID</xsl:text>
     2101                        <xsl:text>CCR Actor Object ID</xsl:text>
    17672102                    </xsl:attribute>
    17682103                </xsl:otherwise>
    17692104            </xsl:choose>
    17702105        </id>
    1771 
    1772         <xsl:if test="$CCRActor/a:Organization">
    1773             <xsl:value-of select="$CCRActor/a:Organization/a:Name"></xsl:value-of>
    1774         </xsl:if>
    1775 
     2106    </xsl:template>
     2107
     2108    <xsl:template name="ccdAddress">
     2109        <xsl:param name="CCRActorAddress"/>
    17762110        <addr>
    17772111            <xsl:choose>
    1778                 <xsl:when test="$CCRActor/a:Address">
     2112                <xsl:when test="$CCRActorAddress">
    17792113                    <xsl:attribute name="use">
    17802114                        <xsl:call-template name="CDAVocabularyLookup">
    17812115                            <xsl:with-param name="domain" select="'telecommunicationsAddressUse'"/>
    1782                             <xsl:with-param name="ccrtext" select="$CCRActor/a:Address[1]/a:Type/a:Text"/>
     2116                            <xsl:with-param name="ccrtext" select="$CCRActorAddress/a:Type/a:Text"/>
    17832117                        </xsl:call-template>
    17842118                    </xsl:attribute>
    17852119                    <streetAddressLine>
    1786                         <xsl:value-of select="$CCRActor/a:Address[1]/a:Line1"/>
     2120                        <xsl:value-of select="$CCRActorAddress/a:Line1"/>
    17872121                    </streetAddressLine>
    17882122                    <city>
    1789                         <xsl:value-of select="$CCRActor/a:Address[1]/a:City"/>
     2123                        <xsl:value-of select="$CCRActorAddress/a:City"/>
    17902124                    </city>
    17912125                    <state>
    1792                         <xsl:value-of select="$CCRActor/a:Address[1]/a:State"/>
     2126                        <xsl:value-of select="$CCRActorAddress/a:State"/>
    17932127                    </state>
    17942128                    <postalcode>
    1795                         <xsl:value-of select="$CCRActor/a:Address[1]/a:PostalCode"/>
     2129                        <xsl:value-of select="$CCRActorAddress/a:PostalCode"/>
    17962130                    </postalcode>
    17972131                </xsl:when>
     
    18012135            </xsl:choose>
    18022136        </addr>
    1803 
     2137    </xsl:template>
     2138
     2139    <xsl:template name="ccdTelecom">
     2140        <xsl:param name="CCRActor"/>
    18042141        <telecom>
    18052142            <xsl:if test="$CCRActor/a:Telephone">
     
    18152152                </xsl:attribute>
    18162153            </xsl:if>
    1817 
    18182154        </telecom>
    18192155
     
    18392175            </telecom>
    18402176        </xsl:if>
    1841 
    1842         <xsl:if test="$CCRActor/a:Person">
    1843             <xsl:element name="{$personNodeName}">
    1844                 <name>
    1845                     <xsl:if test="$CCRActor/a:Person/a:Name/a:CurrentName/a:Title">
    1846                         <prefix>
    1847                             <xsl:value-of select="$CCRActor/a:Person/a:Name/a:CurrentName/a:Title"></xsl:value-of>
    1848                         </prefix>
    1849                     </xsl:if>
    1850                     <xsl:if test="$CCRActor/a:Person/a:Name/a:CurrentName/a:Given">
    1851                         <given>
    1852                             <xsl:value-of select="$CCRActor/a:Person/a:Name/a:CurrentName/a:Given"></xsl:value-of>
    1853                         </given>
    1854                     </xsl:if>
    1855                     <xsl:if test="$CCRActor/a:Person/a:Name/a:CurrentName/a:Middle">
    1856                         <given>
    1857                             <xsl:value-of select="$CCRActor/a:Person/a:Name/a:CurrentName/a:Middle"></xsl:value-of>
    1858                         </given>
    1859                     </xsl:if>
    1860                     <xsl:if test="$CCRActor/a:Person/a:Name/a:CurrentName/a:Family">
    1861                         <family>
    1862                             <xsl:value-of select="$CCRActor/a:Person/a:Name/a:CurrentName/a:Family"></xsl:value-of>
    1863                         </family>
    1864                     </xsl:if>
    1865                     <xsl:if test="$CCRActor/a:Person/a:Name/a:CurrentName/a:Suffix">
    1866                         <suffix>
    1867                             <xsl:value-of select="$CCRActor/a:Person/a:Name/a:CurrentName/a:Suffix"></xsl:value-of>
    1868                         </suffix>
    1869                     </xsl:if>
    1870                 </name>
    1871 
    1872                 <xsl:if test="$CCRActor/a:Person/a:Gender">
    1873 
    1874                     <xsl:call-template name="ccdCodedValue">
    1875                         <xsl:with-param name="ccrCodedDescription" select="$CCRActor/a:Person/a:Gender"/>
    1876                         <xsl:with-param name="domain" select="'AdministrativeGender'"/>
    1877                         <xsl:with-param name="nodeName" select="'administrativeGenderCode'"/>
    1878                     </xsl:call-template>
    1879                 </xsl:if>
    1880 
    1881                 <xsl:if test="$CCRActor/a:Person/a:DateOfBirth">
    1882                     <birthTime>
    1883                         <xsl:attribute name="value">
    1884                             <xsl:call-template name="date:format-date">
    1885                                 <xsl:with-param name="date-time">
    1886                                     <xsl:value-of select="$CCRActor/a:Person/a:DateOfBirth/a:ExactDateTime"/>
    1887                                 </xsl:with-param>
    1888                                 <xsl:with-param name="pattern">yyyyMMddhhmmss</xsl:with-param>
    1889                             </xsl:call-template>
    1890                         </xsl:attribute>
    1891                     </birthTime>
    1892                 </xsl:if>
    1893             </xsl:element>
    1894         </xsl:if>
    1895 
    1896         <xsl:if test="$ccrActorObjectID=/a:ContinuityOfCareRecord/a:Patient[1]/a:ActorID">
    1897             <xsl:if test="/a:ContinuityOfCareRecord/a:Body/a:SocialHistory/a:SocialHistoryElement[a:Type/a:Text='Marital Status']">
    1898 
    1899                 <xsl:call-template name="ccdCodedValue">
    1900                     <xsl:with-param name="ccrCodedDescription" select="/a:ContinuityOfCareRecord/a:Body/a:SocialHistory/a:SocialHistoryElement[a:Type/a:Text='Marital Status']/a:Description"></xsl:with-param>
    1901                     <xsl:with-param name="domain" select="'MaritalStatus'"/>
    1902                     <xsl:with-param name="nodeName" select="'maritalStatusCode'"/>
    1903                 </xsl:call-template>
    1904 
    1905             </xsl:if>
    1906 
    1907             <xsl:if test="/a:ContinuityOfCareRecord/a:Body/a:SocialHistory/a:SocialHistoryElement[a:Type/a:Text='Language']">
    1908                 <languageCommunication>
    1909                     <templateId root="2.16.840.1.113883.3.88.11.83.2" assigningAuthorityName="HITSP/C83"/>
    1910                     <templateId root="1.3.6.1.4.1.19376.1.5.3.1.2.1" assigningAuthorityName="IHE/PCC"/>
    1911 
    1912                     <xsl:call-template name="ccdCodedValue">
    1913                         <xsl:with-param name="ccrCodedDescription" select="/a:ContinuityOfCareRecord/a:Body/a:SocialHistory/a:SocialHistoryElement[a:Type/a:Text='Language']/a:Description"></xsl:with-param>
    1914                         <xsl:with-param name="domain" select="'HumanLanguage'"/>
    1915                         <xsl:with-param name="nodeName" select="'languageCode'"/>
    1916                     </xsl:call-template>
    1917 
    1918                 </languageCommunication>
    1919             </xsl:if>
    1920         </xsl:if>
    1921 
    1922         <xsl:if test="/a:ContinuityOfCareRecord/a:Actors/a:Actor[a:ActorObjectID=$ccrActorObjectID]/a:InternalCCRLink[a:LinkRelationship='Organization']">
    1923             <representedOrganization>
    1924                 <xsl:call-template name="ccdEntity">
    1925                     <xsl:with-param name="ccrActorObjectID" select="/a:ContinuityOfCareRecord/a:Actors/a:Actor[a:ActorObjectID=$ccrActorObjectID]/a:InternalCCRLink[a:LinkRelationship='Organization']/a:LinkID"></xsl:with-param>
    1926                 </xsl:call-template>
    1927             </representedOrganization>
    1928         </xsl:if>
    1929 
    19302177    </xsl:template>
    19312178
    19322179    <xsl:template name="ccdID">
    19332180        <xsl:param name="ccrObjectID"/>
    1934         <xsl:param name="suffix"></xsl:param>
    1935 
     2181        <xsl:param name="suffix"/>
    19362182        <id>
    1937             <xsl:attribute name="root">
     2183            <xsl:attribute name="extension">
    19382184                <xsl:value-of select="$ccrObjectID"></xsl:value-of>
    19392185                <xsl:value-of select="$suffix"></xsl:value-of>
    19402186            </xsl:attribute>
    1941             <xsl:attribute name="extension">CCR Object ID</xsl:attribute>
     2187            <xsl:attribute name="root">CCR Object ID</xsl:attribute>
    19422188        </id>
    19432189    </xsl:template>
     
    20062252            </xsl:choose>
    20072253        </xsl:element>
    2008 
    20092254    </xsl:template>
    20102255
     
    20232268                        <xsl:attribute name="value">
    20242269                            <xsl:call-template name="date:format-date">
    2025                                 <xsl:with-param name="date-time">
    2026                                     <xsl:value-of select="$dt[1]/a:ExactDateTime"/>
    2027                                 </xsl:with-param>
     2270                                <xsl:with-param name="date-time" select="$dt[1]/a:ExactDateTime"/>
    20282271                                <xsl:with-param name="pattern">yyyyMMdd</xsl:with-param>
    20292272                            </xsl:call-template>
     
    20382281                        <xsl:attribute name="value">
    20392282                            <xsl:call-template name="date:format-date">
    2040                                 <xsl:with-param name="date-time">
    2041                                     <xsl:value-of select="$dt[1]/a:DateTimeRange/a:BeginRange/a:ExactDateTime"/>
    2042                                 </xsl:with-param>
     2283                                <xsl:with-param name="date-time" select="$dt[1]/a:DateTimeRange/a:BeginRange/a:ExactDateTime"/>
    20432284                                <xsl:with-param name="pattern">yyyyMMdd</xsl:with-param>
    20442285                            </xsl:call-template>
     
    20482289                        <xsl:attribute name="value">
    20492290                            <xsl:call-template name="date:format-date">
    2050                                 <xsl:with-param name="date-time">
    2051                                     <xsl:value-of select="$dt[1]/a:DateTimeRange/a:EndRange/a:ExactDateTime"/>
    2052                                 </xsl:with-param>
     2291                                <xsl:with-param name="date-time" select="$dt[1]/a:DateTimeRange/a:EndRange/a:ExactDateTime"/>
    20532292                                <xsl:with-param name="pattern">yyyyMMdd</xsl:with-param>
    20542293                            </xsl:call-template>
     
    21362375            <xsl:when test="$statusText='Active'">
    21372376                <xsl:call-template name="ccdStatusElement">
    2138                     <xsl:with-param name="statusCode" select="'55561003'"></xsl:with-param>
    2139                     <xsl:with-param name="statusDisplayName" select="$statusText"></xsl:with-param>
     2377                    <xsl:with-param name="statusCode" select="'55561003'"/>
     2378                    <xsl:with-param name="statusDisplayName" select="$statusText"/>
    21402379                </xsl:call-template>
    21412380            </xsl:when>
    21422381            <xsl:when test="$statusText='Inactive'">
    21432382                <xsl:call-template name="ccdStatusElement">
    2144                     <xsl:with-param name="statusCode" select="'73425007'"></xsl:with-param>
    2145                     <xsl:with-param name="statusDisplayName" select="$statusText"></xsl:with-param>
     2383                    <xsl:with-param name="statusCode" select="'73425007'"/>
     2384                    <xsl:with-param name="statusDisplayName" select="$statusText"/>
    21462385                </xsl:call-template>
    21472386            </xsl:when>
    21482387            <xsl:when test="$statusText='Chronic'">
    21492388                <xsl:call-template name="ccdStatusElement">
    2150                     <xsl:with-param name="statusCode" select="'90734009'"></xsl:with-param>
    2151                     <xsl:with-param name="statusDisplayName" select="$statusText"></xsl:with-param>
     2389                    <xsl:with-param name="statusCode" select="'90734009'"/>
     2390                    <xsl:with-param name="statusDisplayName" select="$statusText"/>
    21522391                </xsl:call-template>
    21532392            </xsl:when>
     
    22082447
    22092448                <xsl:call-template name="ccdID">
    2210                     <xsl:with-param name="ccrObjectID">
    2211                         <xsl:value-of select="$ccrTestNode/a:CCRDataObjectID"></xsl:value-of>
    2212                     </xsl:with-param>
     2449                    <xsl:with-param name="ccrObjectID" select="$ccrTestNode/a:CCRDataObjectID"/>
    22132450                </xsl:call-template>
    22142451
Note: See TracChangeset for help on using the changeset viewer.