12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093 |
- <?xml version="1.0" encoding="UTF-8"?>
- <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:n1="urn:hl7-org:v3" xmlns:in="urn:inline-variable-data">
- <xsl:output method="html" indent="yes" version="4.01" encoding="ISO-8859-1" doctype-system="http://www.w3.org/TR/html4/strict.dtd" doctype-public="-//W3C//DTD HTML 4.01//EN"/>
- <xsl:param name="limit-external-images" select="'yes'"/>
- <!-- ##################### variable ##################### -->
- <xsl:variable name="lc" select="'abcdefghijklmnopqrstuvwxyz'" />
- <xsl:variable name="uc" select="'ABCDEFGHIJKLMNOPQRSTUVWXYZ'" />
- <xsl:variable name="simple-sanitizer-match">
- <xsl:text> "':;?`{}“”„‚’</xsl:text>
- </xsl:variable>
- <xsl:variable name="simple-sanitizer-replace" select="'***************'"/>
- <xsl:variable name="javascript-injection-warning">WARNING: Javascript injection attempt detected in source CDA document. Terminating</xsl:variable>
- <xsl:variable name="malicious-content-warning">WARNING: Potentially malicious content found in CDA document.</xsl:variable>
- <!--section counting variable-->
- <xsl:variable name="totalCount" select="count(/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component[n1:section])"/>
- <xsl:variable name="medicationCount" select="count(/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component[n1:section/n1:code/@code='10160-0']/n1:section/n1:text/n1:table/n1:tbody/n1:tr)"/>
- <xsl:variable name="procedureCount" select="count(/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component[n1:section/n1:code/@code='47519-4']/n1:section/n1:text/n1:table/n1:tbody/n1:tr)"/>
- <xsl:variable name="specimenCount" select="count(/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component[n1:section/n1:code/@code='30954-2']/n1:section/n1:entry[n1:organizer/n1:id/@extension='Specimen'])"/>
- <xsl:variable name="pathologyCount" select="count(/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component[n1:section/n1:code/@code='30954-2']/n1:section/n1:entry[n1:organizer/n1:id/@extension='Pathology'])"/>
- <xsl:variable name="radiologyCount" select="count(/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component[n1:section/n1:code/@code='30954-2']/n1:section/n1:entry[n1:organizer/n1:id/@extension='Radiology'])"/>
- <xsl:variable name="functionalCount" select="count(/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component[n1:section/n1:code/@code='30954-2']/n1:section/n1:entry[n1:organizer/n1:id/@extension='Functional'])"/>
- <xsl:variable name="documentType" select="/n1:ClinicalDocument/n1:code/@code"/>
- <xsl:variable name="organizationOid" select="/n1:ClinicalDocument/n1:custodian/n1:assignedCustodian/n1:representedCustodianOrganization/n1:id/@root"/>
- <!--BPPC variable-->
- <xsl:variable name="consentSubjectRelationship">
- <xsl:call-template name="getGuardianRelationship">
- <xsl:with-param name="code" select="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:patient/n1:guardian/n1:code/@code"/>
- </xsl:call-template>
- </xsl:variable>
- <xsl:variable name="consentSubjectName">
- <xsl:choose>
- <xsl:when test="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:patient/n1:guardian/n1:guardianPerson/n1:name/n1:given != '' or /n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:patient/n1:guardian/n1:guardianPerson/n1:name/n1:family !=''">
- <xsl:call-template name="show-name-kr">
- <xsl:with-param name="name" select="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:patient/n1:guardian/n1:guardianPerson/n1:name"/>
- </xsl:call-template>
- </xsl:when>
- <xsl:when test="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:patient/n1:name/n1:given != '' or /n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:patient/n1:name/n1:family">
- <xsl:call-template name="show-name-kr">
- <xsl:with-param name="name" select="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:patient/n1:name"/>
- </xsl:call-template>
- </xsl:when>
- <xsl:otherwise></xsl:otherwise>
- </xsl:choose>
- </xsl:variable>
- <xsl:variable name="consentSubjectTelecom">
- <xsl:choose>
- <xsl:when test="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:patient/n1:guardian/n1:telecom/@value != ''">
- <xsl:call-template name="show-telecom-kr">
- <xsl:with-param name="telecom" select="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:patient/n1:guardian/n1:telecom"/>
- </xsl:call-template>
- </xsl:when>
- <xsl:when test="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:telecom/@value != ''">
- <xsl:call-template name="show-telecom-kr">
- <xsl:with-param name="telecom" select="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:telecom"/>
- </xsl:call-template>
- </xsl:when>
- <xsl:otherwise></xsl:otherwise>
- </xsl:choose>
- </xsl:variable>
- <xsl:variable name="isBppc">
- <xsl:choose>
- <xsl:when test="count(/n1:ClinicalDocument/n1:templateId[@root='1.2.410.100110.40.2.2.1.1'])>0">
- <xsl:value-of select="1"/>
- </xsl:when>
- <xsl:when test="count(/n1:ClinicalDocument/n1:templateId[@root='1.2.410.100110.40.2.2.1.2'])>0">
- <xsl:value-of select="2"/>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="0"/>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:variable>
- <!-- document title -->
- <xsl:variable name="title">
- <xsl:choose>
- <xsl:when test="string-length(/n1:ClinicalDocument/n1:title) >= 1">
- <xsl:value-of select="/n1:ClinicalDocument/n1:title"/>
- </xsl:when>
- <xsl:when test="/n1:ClinicalDocument/n1:code/@displayName">
- <xsl:value-of select="/n1:ClinicalDocument/n1:code/@displayName"/>
- </xsl:when>
- <xsl:otherwise>
- <xsl:text>Clinical Document</xsl:text>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:variable>
- <!-- /##################### variable ##################### -->
- <!-- Main -->
- <xsl:template match="/">
- <xsl:apply-templates select="n1:ClinicalDocument"/>
- </xsl:template>
- <xsl:template match="n1:ClinicalDocument">
- <html xml:lang="ko">
- <head>
- <meta http-equiv='X-UA-Compatible' content='IE=8'/>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <meta http-equiv="Content-Style-Type" content="text/css" />
- <title>
- <xsl:value-of select="$title"/>
- </title>
- <xsl:call-template name="chooseCSS"/>
- </head>
- <body>
- <xsl:call-template name="chooseBody"/>
- <script type="text/javascript">
- <xsl:comment>
- <![CDATA[
- function Expend(spn) {
- var img = spn.firstChild;
- var div = spn.parentNode.parentNode.lastChild;
- if (div.style.display == "none") {
- div.style.display = "";
-
- img.src = "data:image/gif;base64,R0lGODlhDQAIAIABAGZmZv///yH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpCQjRBQUMxQzM3NTUxMUU2OTcxNUQ5MkMyMDQwMjgxMSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpCQjRBQUMxRDM3NTUxMUU2OTcxNUQ5MkMyMDQwMjgxMSI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkJCNEFBQzFBMzc1NTExRTY5NzE1RDkyQzIwNDAyODExIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkJCNEFBQzFCMzc1NTExRTY5NzE1RDkyQzIwNDAyODExIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Af/+/fz7+vn49/b19PPy8fDv7u3s6+rp6Ofm5eTj4uHg397d3Nva2djX1tXU09LR0M/OzczLysnIx8bFxMPCwcC/vr28u7q5uLe2tbSzsrGwr66trKuqqainpqWko6KhoJ+enZybmpmYl5aVlJOSkZCPjo2Mi4qJiIeGhYSDgoGAf359fHt6eXh3dnV0c3JxcG9ubWxramloZ2ZlZGNiYWBfXl1cW1pZWFdWVVRTUlFQT05NTEtKSUhHRkVEQ0JBQD8+PTw7Ojk4NzY1NDMyMTAvLi0sKyopKCcmJSQjIiEgHx4dHBsaGRgXFhUUExIREA8ODQwLCgkIBwYFBAMCAQAAIfkEAQAAAQAsAAAAAA0ACAAAAhIEgpnGuhaakhEieiF+e1o3gQUAOw==";
- }
- else {
- div.style.display = "none";
- img.src = "data:image/gif;base64,R0lGODlhDQAIAIABAGZmZv///yH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpFNUM2NDM2QTM3NTUxMUU2QjQ5MUVBMkYxN0E2MzQ2OSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpFNUM2NDM2QjM3NTUxMUU2QjQ5MUVBMkYxN0E2MzQ2OSI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkU1QzY0MzY4Mzc1NTExRTZCNDkxRUEyRjE3QTYzNDY5IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkU1QzY0MzY5Mzc1NTExRTZCNDkxRUEyRjE3QTYzNDY5Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Af/+/fz7+vn49/b19PPy8fDv7u3s6+rp6Ofm5eTj4uHg397d3Nva2djX1tXU09LR0M/OzczLysnIx8bFxMPCwcC/vr28u7q5uLe2tbSzsrGwr66trKuqqainpqWko6KhoJ+enZybmpmYl5aVlJOSkZCPjo2Mi4qJiIeGhYSDgoGAf359fHt6eXh3dnV0c3JxcG9ubWxramloZ2ZlZGNiYWBfXl1cW1pZWFdWVVRTUlFQT05NTEtKSUhHRkVEQ0JBQD8+PTw7Ojk4NzY1NDMyMTAvLi0sKyopKCcmJSQjIiEgHx4dHBsaGRgXFhUUExIREA8ODQwLCgkIBwYFBAMCAQAAIfkEAQAAAQAsAAAAAA0ACAAAAhOMD6cKvdzci4HCZGyVyOnLTUABADs=";
- }
-
- }
- function popupView(page)
- {
- try{
- window.open(page, "", "width=1024px,height=768px,alwaysRaised=yes,resizable=yes,center=yes,status=no");
- }
- catch(exception){
- }
- }
-
- function popupViewNew(url, kosUid, oragnizationOid)
- {
- try{
- var page = url;
- var mapForm = document.createElement("form");
- var milliseconds = new Date().getTime();
- var windowName = page + milliseconds;
- var enc = "";
- mapForm.target = windowName;
- mapForm.method = "POST";
- mapForm.action = page;
-
- var mapInput = document.createElement("input");
- mapInput.type = "hidden";
- mapInput.name = "document_uid";
- mapInput.value = kosUid;
- mapForm.appendChild(mapInput);
- var mapInput2 = document.createElement("input");
- mapInput2.type = "hidden";
- mapInput2.name = "hospital_oid"
- mapInput2.value = oragnizationOid;
- mapForm.appendChild(mapInput2);
-
- var mapInput3 = document.createElement("input");
- mapInput3.type = "hidden";
- mapInput3.name = "mpi_id";
- mapInput3.value = null;
- mapForm.appendChild(mapInput3);
- document.body.appendChild(mapForm);
- mapForm.submit();
- }
- catch(exception)
- { }
- }
- ]]>
- </xsl:comment>
- </script>
- </body>
- </html>
- </xsl:template>
- <!-- CSS -->
- <!-- New-version CSS-->
- <xsl:template name="chooseCSS">
- <xsl:choose>
- <!--BPPC-->
- <xsl:when test="$documentType = '57016-8'">
- <xsl:call-template name="addBpccCSS"/>
- </xsl:when>
- <xsl:otherwise>
- <xsl:call-template name="addCSS"/>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template>
- <xsl:template name="addBpccCSS">
- <style type="text/css">
- <xsl:text>
- /* Reset */
- *{margin:0;padding:0}
- html, body {width:100%; height:100%; margin:0; padding:0; font-family:'맑은 고딕', '맑은고딕',Nanum Gothic, NanumGothic, '나눔고딕', '나눔 고딕', 'Nanum Gothic', 'NanumGothic', Dotum, '돋움', Gulim, '굴림',sans-serif;}
- body{font-size:12px; word-break:break-all;-ms-word-break:break-all;}
- a, address, blockquote, br, fieldset, legend, label, form, input, select, textarea, button, table, th, td caption, cite, code, dl, dt, dd, h1, h2, h3, h4, h5, h6, p, div, iframe, ul, ol, li, hr, form, img{margin:0; padding:0;}
- h1, h2, h3, h4, h5, h6 {font-size:12px; text-align:left;}
- ul, ol, li {list-style:none;}
- abbr,acronym {border:0;}
- img{vertical-align:middle; border:none;}
- img, fieldset{border:none;}
- iframe{border-style: none;
- border-color: inherit;
- border-width: 0;}
- em, address{font-style:normal;}
- textarea{overflow:auto;}
- table{border-collapse:collapse; border-spacing:0;}
- input, select, textarea{font-size:100%; vertical-align:middle; box-sizing:border-box;}
- /* Hyper Link */
- a,
- a:link,
- a:visited{text-decoration:none !important;}
- a:active,
- a:hover{text-decoration:none !important;}
- /* Hidden Content */
- .skip{font-size: 1px; height: 1px; line-height: 1px; overflow: hidden; position: absolute; text-indent: 4px; white-space: nowrap; width: 1px;}
- /* hr , legend , caption */
- hr, legend, caption{clear:both; display:none; list-style:none; position:absolute; top:0; left:0; width:0; height:0; margin:0; padding:0; border:0; background:none; font-size:0px; line-height:0; visibility:hidden;}
- /* Png IE6 */
- * html .png24{tmp:expression(setPng24(this));}
- /* fix */
- .fix{*zoom:1;}
- .fix:after{content:""; clear:both; display:block;}
- /* Lang Exchange */
- .en{ime-mode:disabled; }
- .kr{ime-mode:active; }
- /* Cursor */
- .hand{cursor:pointer;}
- /* float */
- .fl{float:left;}
- .fr{float:right;}
- .clear{clear:both;}
- /* margin */
- .mgt5{margin-top:5px !important;}
- .mgt10{margin-top:10px !important;}
- .mgt15{margin-top:15px !important;}
- .mgt20{margin-top:20px !important;}
- .mgt25{margin-top:25px !important;}
- .mgt30{margin-top:30px !important;}
- .mgt35{margin-top:35px !important;}
- .mgt40{margin-top:40px !important;}
- .mgt45{margin-top:45px !important;}
- .mgt50{margin-top:50px !important;}
- .mgt55{margin-top:55px !important;}
- .mgt60{margin-top:60px !important;}
- .mgt70{margin-top:70px !important;}
- .mgt90{margin-top:90px !important;}
- .mgb5{margin-bottom:5px !important;}
- .mgb7{margin-bottom:7px !important;}
- .mgb10{margin-bottom:10px !important;}
- .mgb14{margin-bottom:14px !important;}
- .mgb15{margin-bottom:15px !important;}
- .mgb17{margin-bottom:17px !important;}
- .mgb20{margin-bottom:20px !important;}
- .mgb25{margin-bottom:25px !important;}
- .mgb30{margin-bottom:30px !important;}
- .mgb35{margin-bottom:35px !important;}
- .mgb40{margin-bottom:40px !important;}
- .mgb45{margin-bottom:45px !important;}
- .mgb50{margin-bottom:50px !important;}
- .mgb55{margin-bottom:55px !important;}
- .mgb60{margin-bottom:60px !important;}
- .mgb65{margin-bottom:65px !important;}
- .mgb80{margin-bottom:80px !important;}
- .mgb90{margin-bottom:90px !important;}
- .mgl5{margin-left:5px !important;}
- .mgl10{margin-left:10px !important;}
- .mgl15{margin-left:15px !important;}
- .mgl20{margin-left:20px !important;}
- .mgl25{margin-left:25px !important;}
- .mgl30{margin-left:30px !important;}
- .mgl35{margin-left:35px !important;}
- .mgl40{margin-left:40px !important;}
- .mgl45{margin-left:45px !important;}
- .mgl50{margin-left:50px !important;}
- .mgl55{margin-left:55px !important;}
- .mgl60{margin-left:60px !important;}
- .mgr5{margin-right:5px !important;}
- .mgr10{margin-right:10px !important;}
- .mgr15{margin-right:15px !important;}
- .mgr20{margin-right:20px !important;}
- .mgr25{margin-right:25px !important;}
- .mgr30{margin-right:30px !important;}
- .mgr35{margin-right:35px !important;}
- .mgr40{margin-right:40px !important;}
- .mgr45{margin-right:45px !important;}
- .mgr50{margin-right:50px !important;}
- .mgr55{margin-right:55px !important;}
- .mgr60{margin-right:60px !important;}
- .center{text-align:center !important;}
- .left{text-align:left !important;}
- .right{text-align:right !important;}
- /*색상 바꾸기*/
- .color_bg{text-align:center; position:absolute; top:3px; right:20px; padding:0 !important; margin:0 !important;}
- .color_bg li{margin:3px; display:inline-block; width:15px; height:15px;}
- .color_bg li a{padding:0 !important; display:inline-block; width:15px; height:15px !important; border-radius:5px; border:1px solid #fff;}
- .color_bg .blue{background:#306BBB !important;}
- .color_bg .green{background:#189922 !important;}
- .color_bg .mint{background:#26cd99 !important;}
- .color_bg .orange{background:#ff9900 !important;}
- .color_bg .violet{background:#5b39b1 !important;}
- body,html{background:#F4F4F4;}
- .body_wrap{width:700px; margin:0 auto; }
- .wrap{width:690px; margin:17px auto 30px;}
- .header h1{border:1px solid #DBDBDB; background:#fff; font-size:24px; font-weight:600; padding:15px; text-align:center;}
- .contents{margin-top:17px; border:1px solid #DBDBDB; border-top:2px solid #215fb4; background:#fff; padding:17px 26px 20px 26px;}
- .contents h2{font-size:14px; font-weight:600; margin-bottom:16px; line-height:1.4;}
- .contents h2 strong{font-weight:600; color:#215fb4;}
- .contents .info_agree{ font-size:13px; width:100%;}
- .contents .info_agree th{border:1px solid #DBDBDB; font-size:13px; background:#f9f9f9; color:#000; padding:3px 0px; font-weight:600; padding:6px;}
- .contents .info_agree td{border:1px solid #DBDBDB; font-size:12px; color:#666; line-height:1.4; padding:6px;}
- .agreement{margin:17px 0;}
- .agreement div{border:1px solid #DBDBDB; border-left:2px solid #215fb4; background:#fff; margin:4px 0; padding:15px 25px; font-size:13px; font-weight:400; color:#666;}
- .agreement div strong{font-weight:500;}
- .agreement div p{float:right;}
- .agreement div p input{margin-right:5px;}
- .agreement div p label{margin-right:5px;}
- .contents1{border:1px solid #DBDBDB; border-left:2px solid #215fb4; background:#fff; }
- .chk_agree{font-size:13px; font-weight:600; float:left; margin:10px 15px;}
- .chk_agree td{padding:1px 10px;}
- .chk_agree td input{border:1px solid #cecece; height:25px;}
- .date_year{width:41.5px;}
- .date_mon{width:41.5px;}
- .date_day{width:41.5px;}
- .comm_input{width:210px;}
- .chk_input{width:200px; height:120px; margin-left:5px;}
- .sign{float:right; border-left:1px solid #DBDBDB; padding:16px 0 18px 25px; font-size:15px; font-weight:600; width:150px; height:95px;}
- </xsl:text>
- </style>
- </xsl:template>
- <!-- AS-IS CSS -->
- <xsl:template name="addCSS">
- <style type="text/css">
- <xsl:text>
- /* Reset */
- *{margin:0;padding:0}
- html, body {width:100%; height:100%; margin:0; padding:0; font-family:'맑은 고딕', '맑은고딕',Nanum Gothic, NanumGothic, '나눔고딕', '나눔 고딕', 'Nanum Gothic', 'NanumGothic', Dotum, '돋움', Gulim, '굴림',sans-serif;}
- body{font-size:12px; word-break:break-all;-ms-word-break:break-all;}
- a, address, blockquote, br, fieldset, legend, label, form, input, select, textarea, button, table, th, td caption, cite, code, dl, dt, dd, h1, h2, h3, h4, h5, h6, p, div, iframe, ul, ol, li, hr, form, img{margin:0; padding:0;}
- h1, h2, h3, h4, h5, h6 {font-size:12px; text-align:left;}
- ul, ol, li {list-style:none;}
- abbr,acronym {border:0;}
- img{vertical-align:middle; border:none;}
- img, fieldset{border:none;}
- iframe{border-style: none;
- border-color: inherit;
- border-width: 0;}
- em, address{font-style:normal;}
- textarea{overflow:auto;}
- table{border-collapse:collapse; border-spacing:0;}
- input, select, textarea{font-size:100%; vertical-align:middle; box-sizing:border-box;}
- /* Hyper Link */
- a,
- a:link,
- a:visited{text-decoration:none !important;}
- a:active,
- a:hover{text-decoration:none !important;}
- /* Hidden Content */
- .skip{font-size: 1px; height: 1px; line-height: 1px; overflow: hidden; position: absolute; text-indent: 4px; white-space: nowrap; width: 1px;}
- /* hr , legend , caption */
- hr, legend, caption{clear:both; display:none; list-style:none; position:absolute; top:0; left:0; width:0; height:0; margin:0; padding:0; border:0; background:none; font-size:0px; line-height:0; visibility:hidden;}
- /* Png IE6 */
- * html .png24{tmp:expression(setPng24(this));}
- /* fix */
- .fix{*zoom:1;}
- .fix:after{content:""; clear:both; display:block;}
- /* Lang Exchange */
- .en{ime-mode:disabled; }
- .kr{ime-mode:active; }
- /* Cursor */
- .hand{cursor:pointer;}
- /* float */
- .fl{float:left;}
- .fr{float:right;}
- .clear{clear:both;}
- /* margin */
- .mgt5{margin-top:5px !important;}
- .mgt10{margin-top:10px !important;}
- .mgt15{margin-top:15px !important;}
- .mgt20{margin-top:20px !important;}
- .mgt25{margin-top:25px !important;}
- .mgt30{margin-top:30px !important;}
- .mgt35{margin-top:35px !important;}
- .mgt40{margin-top:40px !important;}
- .mgt45{margin-top:45px !important;}
- .mgt50{margin-top:50px !important;}
- .mgt55{margin-top:55px !important;}
- .mgt60{margin-top:60px !important;}
- .mgt70{margin-top:70px !important;}
- .mgt90{margin-top:90px !important;}
- .mgb5{margin-bottom:5px !important;}
- .mgb7{margin-bottom:7px !important;}
- .mgb10{margin-bottom:10px !important;}
- .mgb14{margin-bottom:14px !important;}
- .mgb15{margin-bottom:15px !important;}
- .mgb17{margin-bottom:17px !important;}
- .mgb20{margin-bottom:20px !important;}
- .mgb25{margin-bottom:25px !important;}
- .mgb30{margin-bottom:30px !important;}
- .mgb35{margin-bottom:35px !important;}
- .mgb40{margin-bottom:40px !important;}
- .mgb45{margin-bottom:45px !important;}
- .mgb50{margin-bottom:50px !important;}
- .mgb55{margin-bottom:55px !important;}
- .mgb60{margin-bottom:60px !important;}
- .mgb65{margin-bottom:65px !important;}
- .mgb80{margin-bottom:80px !important;}
- .mgb90{margin-bottom:90px !important;}
- .mgl5{margin-left:5px !important;}
- .mgl10{margin-left:10px !important;}
- .mgl15{margin-left:15px !important;}
- .mgl20{margin-left:20px !important;}
- .mgl25{margin-left:25px !important;}
- .mgl30{margin-left:30px !important;}
- .mgl35{margin-left:35px !important;}
- .mgl40{margin-left:40px !important;}
- .mgl45{margin-left:45px !important;}
- .mgl50{margin-left:50px !important;}
- .mgl55{margin-left:55px !important;}
- .mgl60{margin-left:60px !important;}
- .mgr5{margin-right:5px !important;}
- .mgr10{margin-right:10px !important;}
- .mgr15{margin-right:15px !important;}
- .mgr20{margin-right:20px !important;}
- .mgr25{margin-right:25px !important;}
- .mgr30{margin-right:30px !important;}
- .mgr35{margin-right:35px !important;}
- .mgr40{margin-right:40px !important;}
- .mgr45{margin-right:45px !important;}
- .mgr50{margin-right:50px !important;}
- .mgr55{margin-right:55px !important;}
- .mgr60{margin-right:60px !important;}
- .center{text-align:center !important;}
- .left{text-align:left !important;}
- .right{text-align:right !important;}
- /*색상 바꾸기*/
- .color_bg{text-align:center; position:absolute; top:3px; right:20px; padding:0 !important; margin:0 !important;}
- .color_bg li{margin:3px; display:inline-block; width:15px; height:15px;}
- .color_bg li a{padding:0 !important; display:inline-block; width:15px; height:15px !important; border-radius:5px; border:1px solid #fff;}
- .color_bg .blue{background:#306BBB !important;}
- .color_bg .green{background:#189922 !important;}
- .color_bg .mint{background:#26cd99 !important;}
- .color_bg .orange{background:#ff9900 !important;}
- .color_bg .violet{background:#5b39b1 !important;}
- /* Lay out */
- body,html{background:#fff;}
- .body_wrap{width:690px; margin:15px auto 0;}
- .wrap{width:690px; margin:0 auto; margin-bottom:30px;}
- .header{padding:0px 14px; margin-bottom:15px; background:#4468b8; border-radius:6px 6px 0 0;}
- .header > div{height:39px; padding:0 27px 0 22px;}
- .header h1{font-size:18px; font-weight:700; float:left; font-style:italic; color:#fff; line-height:39px; }
- .header .date{float:right; margin-top:15px; font-size:13px; color:#fff; font-style:italic;}
- .header .date strong{font-size:13px; font-weight:400;}
- .container{}
- .cntInfo{border:1px solid #ccc; padding:15px 17px; margin-bottom:17px;
- background:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NEQ3NjNGRkI5MDVBMTFFNjlGMTBEMjIzNEI3QzM5MUQiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NEQ3NjNGRkM5MDVBMTFFNjlGMTBEMjIzNEI3QzM5MUQiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo0RDc2M0ZGOTkwNUExMUU2OUYxMEQyMjM0QjdDMzkxRCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo0RDc2M0ZGQTkwNUExMUU2OUYxMEQyMjM0QjdDMzkxRCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PjNS/L0AAABFSURBVHjaYvz//z8DJYCJgULAAmOEVl4HO2V1uyYjKWyKXcBItTAAOQnmLGLYVAtE+nqBJumA9l6geVKmjRfomhsBAgwA7ipWg1/hAMUAAAAASUVORK5CYII=') no-repeat 0 0;}
- .cntInfo .cnt{margin-bottom:13px; font-size:16px; font-weight:600; font-style:italic;}
- .cntInfo .cnt span{color:#666;}
- .main_content{background:#fff; border:1px solid #ccc; border-top:3px solid #4892d2; margin-bottom:17px; letter-spacing:-1px; border-radius:6px;}
- .main_content p{color:#333;}
- .main_content div { padding:15px 17px;}
- .main_content li
- { background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAADRJREFUeNpijI+PV2FgYJgJxGxAXMwCJLqA2IkBApYyAQlOBgRgBqmoBGJRIOYB4lyAAAMA1KgE45THCrwAAAAASUVORK5CYII=) no-repeat 0 5px;
- font-size:13px; padding-left:10px; margin: 5px; color:#222;}
- .main_content div div { font-size:12px; color:#666; white-space:pre-wrap; word-break:break-all;}
- .main_content h3{font-size:13px; font-weight:600; margin-bottom:5px; color:#333;}
- .main_content h2{padding:0 17px 0 32px; height:37px; line-height:37px; border-bottom:1px solid #ccc; margin-bottom:0;
- background:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAHCAYAAADEUlfTAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QzE5ODQ1QTk5MDY0MTFFNkIxNTJCQjM0ODkyRkQ4QzMiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QzE5ODQ1QUE5MDY0MTFFNkIxNTJCQjM0ODkyRkQ4QzMiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpDMTk4NDVBNzkwNjQxMUU2QjE1MkJCMzQ4OTJGRDhDMyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpDMTk4NDVBODkwNjQxMUU2QjE1MkJCMzQ4OTJGRDhDMyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PqL9Ap8AAAA1SURBVHjaYhQJWfufAQperw5ilKtigPOZGPAAvJKM////xy0pW4mQfdTGwCgauo4KdgIEGABVSQ6xMsdZ1AAAAABJRU5ErkJggg==') no-repeat 18px 50%;}
- .contents_table { width:100%;}
- .contents_table th{font-size:13px; color:#4892d2; font-weight:600; border:1px solid #e7eaec; background:#fcfcfc; padding:6px 10px; }
- .contents_table td{font-size:12px; color:#666; border:1px solid #e7eaec; padding:6px;}
- .contents_table1{width:100%; margin-top :5px; }
- .contents_table1 th{font-size:13px; color:#4892d2; font-weight:600; border:1px solid #e7eaec; border-bottom:2px solid #e7eaec; background:#fcfcfc; padding:6px 6px; }
- .contents_table1 td{font-size:12px; color:#666; border:1px solid #e7eaec;padding:6px 10px;}
- .expender{cursor:pointer;}
- .cnt{font-size:14px; font-weight:700; padding:0 2px 0 0; margin-bottom:6px;}
- .cnt img{float:right; margin-top:15px;}
- .listWrap{}
- .listWrap li{margin-top:5px; color:#666;}
- .listWrap li:fisrt-child{margin-top:0;}
- .patientInfo{text-align:center; margin-bottom:13px; background:#fcf8e3; height:60px; line-height:30px; border:1px solid #e2e7eb;}
- .patientInfo li{display:inline-block; zoom:1; *display:inline; margin-left:60px; font-size:13px; letter-spacing:0; color:#333;}
- .patientInfo li:first-child{margin-left:0;}
- .patientInfo li.name{font-weight:600;}
- .top{position:fixed; top:500px; left:500px;}
- .td_left{text-align:left !important;}
- <!-- 16.07.05 추가 -->
- <!-- PACS 버튼 생성관련 -->
- </xsl:text>
- </style>
- </xsl:template>
- <!-- ## Body ##-->
- <!-- Choose Body -->
- <xsl:template name="chooseBody">
- <xsl:choose>
- <xsl:when test="$isBppc='1'">
- <xsl:call-template name="BPPC"/>
- </xsl:when>
- <xsl:when test="$isBppc='2'">
- <xsl:call-template name="WITHDRAWAL"/>
- </xsl:when>
- <xsl:otherwise>
- <body>
- <xsl:call-template name="asisLayout"/>
- </body>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template>
- <!-- AS-IS Layout(기존레이아웃) -->
- <xsl:template name="asisLayout">
- <!-- body_wrap -->
- <div class="body_wrap">
- <!-- wrap -->
- <div class="wrap">
- <!-- title -->
- <xsl:call-template name="header-fix"/>
- <!-- /title -->
- <!-- container -->
- <!-- top content -->
- <div class="container fix">
- <div class="cntInfo">
- <!--수신자 정보-->
- <xsl:call-template name="informationRecipient_custom"/>
- <!--<xsl:call-template name="addComment"/>-->
- <!-- 환자 정보-->
- <xsl:call-template name="recordTarget_custom"/>
- <!-- 요양기관 정보 ( 생성기관 / 수신기관 ) -->
- <xsl:call-template name="organization_information"/>
- </div>
- <!-- /top content -->
- <!-- body -->
- <!-- content -->
- <div class="contents">
- <xsl:apply-templates select="n1:component/n1:structuredBody|n1:component/n1:nonXMLBody"/>
- </div>
- </div>
- <!-- /container -->
- </div>
- <!-- wrap -->
- </div>
- <!-- /body_wrap -->
- </xsl:template>
- <!-- ##################### AS-IS Header ##################### -->
- <!-- header - fix -->
- <xsl:template name="header-fix">
- <div class="header">
- <div class="fix">
- <h1>
- <xsl:value-of select="$title"/>
- </h1>
- <p class="date">
- 작성일
- <strong>
- <xsl:call-template name="getDate2">
- <xsl:with-param name="date" select="/n1:ClinicalDocument/n1:effectiveTime"/>
- </xsl:call-template>
- </strong>
- <br/>
- </p>
- </div>
- </div>
- </xsl:template>
- <!-- informantionRecipient-custom -->
- <xsl:template name="informationRecipient_custom">
- <xsl:if test="count(/n1:ClinicalDocument/n1:informationRecipient) > 0">
- <div>
- <h3 class="cnt">
- <xsl:value-of select="/n1:ClinicalDocument/n1:informationRecipient/n1:intendedRecipient/n1:receivedOrganization/n1:asOrganizationPartOf/n1:wholeOrganization/n1:name"/> 
- <span>
- <xsl:call-template name="show-name-kr">
- <xsl:with-param name="name" select="/n1:ClinicalDocument/n1:informationRecipient/n1:intendedRecipient/n1:informationRecipient/n1:name"/>
- </xsl:call-template> 선생님 귀하
- </span>
- <xsl:choose>
- <xsl:when test="/n1:ClinicalDocument/n1:code/@code = '57133-1'">
- <span style="float: right; font-size: 12px; font-style: normal;">
- 의뢰번호 : <xsl:value-of select="/n1:ClinicalDocument/n1:id/@extension"/>
- </span>
- </xsl:when>
- <xsl:when test="/n1:ClinicalDocument/n1:code/@code = '18761-7'">
- <span style="float: right; font-size: 12px; font-style: normal;">
- 회송번호 : <xsl:value-of select="/n1:ClinicalDocument/n1:id/@extension"/>
- </span>
- </xsl:when>
- <xsl:otherwise></xsl:otherwise>
- </xsl:choose>
- </h3>
- </div>
- </xsl:if>
- </xsl:template>
- <!-- recordTarget custom -->
- <xsl:template name="recordTarget_custom">
- <div>
- <ul class="patientInfo">
- <li class="name">
- <xsl:call-template name="show-name-kr">
- <xsl:with-param name="name" select="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:patient/n1:name"/>
- </xsl:call-template> / <xsl:call-template name="show-gender-kr">
- <xsl:with-param name="gender" select="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:patient/n1:administrativeGenderCode"/>
- </xsl:call-template>
- </li>
- <li class="birth">
- Birth. <xsl:call-template name="getDate">
- <xsl:with-param name="date" select="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:patient/n1:birthTime"/>
- </xsl:call-template>
- </li>
- <li class="tel">
- <!--Tel. <xsl:value-of select="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:telecom/@value"/>-->
- <xsl:call-template name="show-telecom-kr">
- <xsl:with-param name="telecom" select="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:telecom"/>
- </xsl:call-template>
- </li>
- <br></br>
- <li class="addr" style="margin-left: 0px;">
- Addr. 
- <xsl:call-template name="show-address-kr">
- <xsl:with-param name="address" select="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:addr"/>
- </xsl:call-template>
- </li>
- </ul>
- </div>
- </xsl:template>
- <!-- organization_information -->
- <xsl:template name="organization_information">
- <table class="contents_table">
- <colgroup>
- <col width="20%" />
- <col width="20%" />
- <col width="15%" />
- <col width="45%" />
- </colgroup>
- <tbody>
- <tr>
- <xsl:choose>
- <xsl:when test="/n1:ClinicalDocument/n1:code/@code = '57133-1'">
- <th>의뢰병원</th>
- </xsl:when>
- <xsl:when test="/n1:ClinicalDocument/n1:code/@code = '11488-4'">
- <th>회신병원</th>
- </xsl:when>
- <xsl:when test="/n1:ClinicalDocument/n1:code/@code = '18761-7'">
- <th>회송병원</th>
- </xsl:when>
- <xsl:otherwise>
- <th>요양기관</th>
- </xsl:otherwise>
- </xsl:choose>
- <td style="text-align:center">
- <xsl:value-of select="/n1:ClinicalDocument/n1:custodian/n1:assignedCustodian/n1:representedCustodianOrganization/n1:name"/>
- </td>
- <td style="text-align: center;">
- <xsl:call-template name="show-name-kr">
- <xsl:with-param name="name" select="/n1:ClinicalDocument/n1:author/n1:assignedAuthor/n1:assignedPerson/n1:name"/>
- </xsl:call-template>
- </td>
- <td>
- <xsl:call-template name="show-address-kr">
- <xsl:with-param name="address" select="/n1:ClinicalDocument/n1:custodian/n1:assignedCustodian/n1:representedCustodianOrganization/n1:addr"/>
- </xsl:call-template>
- </td>
- </tr>
- <xsl:if test="count(/n1:ClinicalDocument/n1:informationRecipient) > 0">
- <tr>
- <th>협진병원</th>
- <td style="text-align:center">
- <xsl:value-of select="/n1:ClinicalDocument/n1:informationRecipient/n1:intendedRecipient/n1:receivedOrganization/n1:asOrganizationPartOf/n1:wholeOrganization/n1:name"/>
- </td>
- <td style="text-align: center;">
- <xsl:call-template name="show-name-kr">
- <xsl:with-param name="name" select="/n1:ClinicalDocument/n1:informationRecipient/n1:intendedRecipient/n1:informationRecipient/n1:name"/>
- </xsl:call-template>
- </td>
- <td>
- <xsl:call-template name="show-address-kr">
- <xsl:with-param name="address" select="/n1:ClinicalDocument/n1:informationRecipient/n1:intendedRecipient/n1:receivedOrganization/n1:asOrganizationPartOf/n1:wholeOrganization/n1:addr"/>
- </xsl:call-template>
- </td>
- </tr>
- </xsl:if>
- </tbody>
- </table>
- </xsl:template>
- <!-- ##################### AS-IS Header ##################### -->
- <!-- ########################################################### -->
- <!-- ##################### Narrative Block ##################### -->
- <!-- ########################################################### -->
- <!-- show StructuredBody -->
- <xsl:template match="n1:component/n1:structuredBody">
- <xsl:for-each select="n1:component/n1:section">
- <xsl:call-template name="section"/>
- </xsl:for-each>
- </xsl:template>
- <!-- Section -->
- <xsl:template name="section">
- <div class="main_content">
- <h2 class="content_title1 cnt">
- <xsl:call-template name="section-title">
- <xsl:with-param name="title" select="n1:title"/>
- </xsl:call-template>
- <span class="expender" onclick="javascript: Expend(this);">
- <img src="data:image/gif;base64,R0lGODlhDQAIAIABAGZmZv///yH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4zLWMwMTEgNjYuMTQ1NjYxLCAyMDEyLzAyLzA2LTE0OjU2OjI3ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpCQjRBQUMxQzM3NTUxMUU2OTcxNUQ5MkMyMDQwMjgxMSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpCQjRBQUMxRDM3NTUxMUU2OTcxNUQ5MkMyMDQwMjgxMSI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkJCNEFBQzFBMzc1NTExRTY5NzE1RDkyQzIwNDAyODExIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkJCNEFBQzFCMzc1NTExRTY5NzE1RDkyQzIwNDAyODExIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Af/+/fz7+vn49/b19PPy8fDv7u3s6+rp6Ofm5eTj4uHg397d3Nva2djX1tXU09LR0M/OzczLysnIx8bFxMPCwcC/vr28u7q5uLe2tbSzsrGwr66trKuqqainpqWko6KhoJ+enZybmpmYl5aVlJOSkZCPjo2Mi4qJiIeGhYSDgoGAf359fHt6eXh3dnV0c3JxcG9ubWxramloZ2ZlZGNiYWBfXl1cW1pZWFdWVVRTUlFQT05NTEtKSUhHRkVEQ0JBQD8+PTw7Ojk4NzY1NDMyMTAvLi0sKyopKCcmJSQjIiEgHx4dHBsaGRgXFhUUExIREA8ODQwLCgkIBwYFBAMCAQAAIfkEAQAAAQAsAAAAAA0ACAAAAhIEgpnGuhaakhEieiF+e1o3gQUAOw==" alt="" />
- </span>
- </h2>
- <xsl:call-template name="section-text"/>
- <xsl:for-each select="n1:component/n1:section">
- <xsl:call-template name="nestedSection">
- <xsl:with-param name="margin" select="2"/>
- </xsl:call-template>
- </xsl:for-each>
- </div>
- </xsl:template>
- <!-- section title-->
- <xsl:template name="section-title">
- <xsl:param name="title"/>
- <xsl:value-of select="$title"/>
- </xsl:template>
- <!-- section title-link-->
- <xsl:template name="section-title-Link">
- <xsl:param name="title"/>
- <xsl:choose>
- <xsl:when test="count(/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component[n1:section]) > 1">
- <a name="{generate-id($title)}" href="#toc" style="color:#222;">
- <xsl:value-of select="$title"/>
- </a>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="$title"/>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template>
- <!-- section author -->
- <!-- top-level section Text -->
- <xsl:template name="section-text">
- <div>
- <xsl:apply-templates select="n1:text"/>
- </div>
- <!--<div class ="main_content">
- <div>
- <xsl:apply-templates select="n1:text"/>
- </div>
- </div>-->
- </xsl:template>
- <!-- nested component/section -->
- <xsl:template name="nestedSection">
- <xsl:param name="margin"/>
- <h4 style="margin-left : {$margin}em;">
- <xsl:value-of select="n1:title"/>
- </h4>
- <div style="margin-left : {$margin}em;">
- <xsl:apply-templates select="n1:text"/>
- </div>
- <xsl:for-each select="n1:component/n1:section">
- <xsl:call-template name="nestedSection">
- <xsl:with-param name="margin" select="2*$margin"/>
- </xsl:call-template>
- </xsl:for-each>
- </xsl:template>
- <!-- paragraph -->
- <xsl:template match="n1:paragraph">
- <p>
- <xsl:apply-templates/>
- </p>
- </xsl:template>
- <!-- pre format -->
- <xsl:template match="n1:pre">
- <pre>
- <xsl:apply-templates/>
- </pre>
- </xsl:template>
- <!-- Content w/ deleted text is hidden -->
- <xsl:template match="n1:content[@revised='delete']"/>
- <!-- content -->
- <xsl:template match="n1:content">
- <span>
- <xsl:apply-templates select="@styleCode"/>
- <xsl:apply-templates/>
- </span>
- </xsl:template>
- <!-- line break -->
- <xsl:template match="n1:br">
- <xsl:element name='br'>
- <xsl:apply-templates/>
- </xsl:element>
- </xsl:template>
- <!-- list -->
- <xsl:template match="n1:list">
- <xsl:if test="n1:caption">
- <p>
- <strong>
- <xsl:apply-templates select="n1:caption"/>
- </strong>
- </p>
- </xsl:if>
- <ul>
- <xsl:for-each select="n1:item">
- <li>
- <xsl:apply-templates/>
- </li>
- </xsl:for-each>
- </ul>
- </xsl:template>
- <xsl:template match="n1:list[@listType='ordered']">
- <xsl:if test="n1:caption">
- <span style="font-weight:bold; ">
- <xsl:apply-templates select="n1:caption"/>
- </span>
- </xsl:if>
- <ol>
- <xsl:for-each select="n1:item">
- <li>
- <xsl:apply-templates/>
- </li>
- </xsl:for-each>
- </ol>
- </xsl:template>
- <!-- caption -->
- <xsl:template match="n1:caption">
- <xsl:apply-templates/>
- <xsl:text>: </xsl:text>
- </xsl:template>
- <!-- Tables -->
- <xsl:variable name="table-elem-attrs">
- <in:tableElems>
- <in:elem name="table">
- <in:attr name="ID"/>
- <in:attr name="language"/>
- <in:attr name="styleCode"/>
- <in:attr name="summary"/>
- <in:attr name="width"/>
- <in:attr name="border"/>
- <in:attr name="frame"/>
- <in:attr name="rules"/>
- <in:attr name="cellspacing"/>
- <in:attr name="cellpadding"/>
- </in:elem>
- <in:elem name="thead">
- <in:attr name="ID"/>
- <in:attr name="language"/>
- <in:attr name="styleCode"/>
- <in:attr name="align"/>
- <in:attr name="char"/>
- <in:attr name="charoff"/>
- <in:attr name="valign"/>
- </in:elem>
- <in:elem name="tfoot">
- <in:attr name="ID"/>
- <in:attr name="language"/>
- <in:attr name="styleCode"/>
- <in:attr name="align"/>
- <in:attr name="char"/>
- <in:attr name="charoff"/>
- <in:attr name="valign"/>
- </in:elem>
- <in:elem name="tbody">
- <in:attr name="ID"/>
- <in:attr name="language"/>
- <in:attr name="styleCode"/>
- <in:attr name="align"/>
- <in:attr name="char"/>
- <in:attr name="charoff"/>
- <in:attr name="valign"/>
- </in:elem>
- <in:elem name="colgroup">
- <in:attr name="ID"/>
- <in:attr name="language"/>
- <in:attr name="styleCode"/>
- <in:attr name="span"/>
- <in:attr name="width"/>
- <in:attr name="align"/>
- <in:attr name="char"/>
- <in:attr name="charoff"/>
- <in:attr name="valign"/>
- </in:elem>
- <in:elem name="col">
- <in:attr name="ID"/>
- <in:attr name="language"/>
- <in:attr name="styleCode"/>
- <in:attr name="span"/>
- <in:attr name="width"/>
- <in:attr name="align"/>
- <in:attr name="char"/>
- <in:attr name="charoff"/>
- <in:attr name="valign"/>
- </in:elem>
- <in:elem name="tr">
- <in:attr name="ID"/>
- <in:attr name="language"/>
- <in:attr name="styleCode"/>
- <in:attr name="align"/>
- <in:attr name="char"/>
- <in:attr name="charoff"/>
- <in:attr name="valign"/>
- </in:elem>
- <in:elem name="th">
- <in:attr name="ID"/>
- <in:attr name="language"/>
- <in:attr name="styleCode"/>
- <in:attr name="abbr"/>
- <in:attr name="axis"/>
- <in:attr name="headers"/>
- <in:attr name="scope"/>
- <in:attr name="rowspan"/>
- <in:attr name="colspan"/>
- <in:attr name="align"/>
- <in:attr name="char"/>
- <in:attr name="charoff"/>
- <in:attr name="valign"/>
- </in:elem>
- <in:elem name="td">
- <in:attr name="ID"/>
- <in:attr name="language"/>
- <in:attr name="styleCode"/>
- <in:attr name="abbr"/>
- <in:attr name="axis"/>
- <in:attr name="headers"/>
- <in:attr name="scope"/>
- <in:attr name="rowspan"/>
- <in:attr name="colspan"/>
- <in:attr name="align"/>
- <in:attr name="char"/>
- <in:attr name="charoff"/>
- <in:attr name="valign"/>
- </in:elem>
- </in:tableElems>
- </xsl:variable>
- <xsl:template name="output-attrs">
- <xsl:variable name="elem-name" select="local-name(.)"/>
- <xsl:for-each select="@*">
- <xsl:variable name="attr-name" select="local-name(.)"/>
- <xsl:variable name="source" select="."/>
- <xsl:variable name="lcSource" select="translate($source, $uc, $lc)"/>
- <xsl:variable name="scrubbedSource" select="translate($source, $simple-sanitizer-match, $simple-sanitizer-replace)"/>
- <xsl:choose>
- <xsl:when test="contains($lcSource,'javascript')">
- <p>
- <xsl:value-of select="$javascript-injection-warning"/>
- </p>
- <xsl:message terminate="yes">
- <xsl:value-of select="$javascript-injection-warning"/>
- </xsl:message>
- </xsl:when>
- <xsl:when test="$attr-name='styleCode'">
- <xsl:apply-templates select="."/>
- </xsl:when>
- <!--<xsl:when test="not(document('')/xsl:stylesheet/xsl:variable[@name='table-elem-attrs']/in:tableElems/in:elem[@name=$elem-name]/in:attr[@name=$attr-name])">
- <xsl:message>
- <xsl:value-of select="$attr-name"/> is not legal in <xsl:value-of select="$elem-name"/>
- </xsl:message>
- </xsl:when>-->
- <xsl:when test="not($source = $scrubbedSource)">
- <p>
- <xsl:value-of select="$malicious-content-warning"/>
- </p>
- <xsl:message>
- <xsl:value-of select="$malicious-content-warning"/>
- </xsl:message>
- </xsl:when>
- <xsl:otherwise>
- <xsl:copy-of select="."/>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:for-each>
- </xsl:template>
- <!-- 16. 06 .22 추가-->
- <xsl:template match="n1:table">
- <xsl:element name="{local-name()}">
- <xsl:attribute name="class">contents_table1</xsl:attribute>
- <xsl:call-template name="output-attrs"/>
- <xsl:apply-templates/>
- </xsl:element>
- </xsl:template>
- <xsl:template match="n1:thead | n1:tfoot | n1:tbody | n1:colgroup | n1:col | n1:tr | n1:th | n1:td">
- <xsl:element name="{local-name()}">
- <xsl:call-template name="output-attrs"/>
- <xsl:apply-templates/>
- </xsl:element>
- </xsl:template>
- <xsl:template match="n1:table/n1:caption">
- <span style="font-weight:bold; ">
- <xsl:apply-templates/>
- </span>
- </xsl:template>
- <!-- RenderMultiMedia -->
- <!-- Stylecode -->
- <xsl:template match="//n1:*[@styleCode]">
- <xsl:if test="@styleCode='Bold'">
- <b>
- <xsl:apply-templates/>
- </b>
- </xsl:if>
- <xsl:if test="@styleCode='Italics'">
- <xsl:element name="i">
- <xsl:apply-templates/>
- </xsl:element>
- </xsl:if>
- <xsl:if test="@styleCode='Underline'">
- <xsl:element name="u">
- <xsl:apply-templates/>
- </xsl:element>
- </xsl:if>
- <xsl:if test="contains(@styleCode,'Bold') and contains(@styleCode,'Italics') and not (contains(@styleCode, 'Underline'))">
- <xsl:element name="b">
- <xsl:element name="i">
- <xsl:apply-templates/>
- </xsl:element>
- </xsl:element>
- </xsl:if>
- <xsl:if test="contains(@styleCode,'Bold') and contains(@styleCode,'Underline') and not (contains(@styleCode, 'Italics'))">
- <xsl:element name="b">
- <xsl:element name="u">
- <xsl:apply-templates/>
- </xsl:element>
- </xsl:element>
- </xsl:if>
- <xsl:if test="contains(@styleCode,'Italics') and contains(@styleCode,'Underline') and not (contains(@styleCode, 'Bold'))">
- <xsl:element name="i">
- <xsl:element name="u">
- <xsl:apply-templates/>
- </xsl:element>
- </xsl:element>
- </xsl:if>
- <xsl:if test="contains(@styleCode,'Italics') and contains(@styleCode,'Underline') and contains(@styleCode, 'Bold')">
- <xsl:element name="b">
- <xsl:element name="i">
- <xsl:element name="u">
- <xsl:apply-templates/>
- </xsl:element>
- </xsl:element>
- </xsl:element>
- </xsl:if>
- <xsl:if test="not (contains(@styleCode,'Italics') or contains(@styleCode,'Underline') or contains(@styleCode, 'Bold'))">
- <xsl:apply-templates/>
- </xsl:if>
- </xsl:template>
- <!-- Superscript or Subscript -->
- <xsl:template match="n1:sup">
- <xsl:element name="sup">
- <xsl:apply-templates/>
- </xsl:element>
- </xsl:template>
- <xsl:template match="n1:sub">
- <xsl:element name="sub">
- <xsl:apply-templates/>
- </xsl:element>
- </xsl:template>
- <!-- linkHtml -->
- <xsl:template match="n1:linkHtml">
- <xsl:choose>
- <!-- 06.28 PACS ICON 관련 부분 추가-->
- <xsl:when test="contains(./@ID, 'PACS')">
- <xsl:call-template name="addPacsIcon">
- <xsl:with-param name="href" select="./@href"/>
- </xsl:call-template>
- </xsl:when>
- <xsl:otherwise>
- <xsl:variable name="linkTargetContainsJavaScript">
- <xsl:call-template name="containsJavaScript">
- <xsl:with-param name="reference" select="./@href"></xsl:with-param>
- </xsl:call-template>
- </xsl:variable>
- <xsl:if test="$linkTargetContainsJavaScript != 'true'">
- <xsl:if test="string-length(./@href) > 0 or string-length(./text()) > 0">
- <xsl:variable name="linkText">
- <xsl:choose>
- <xsl:when test="string-length(./text()) > 0">
- <xsl:value-of select="./text()"/>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="concat('link:',./@href)"/>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:variable>
- <xsl:variable name="linkTarget">
- <xsl:choose>
- <xsl:when test="string-length(./@href) > 1 and starts-with(./@href, '#')">
- <xsl:variable name="referenceId" select="substring-after(./@href, '#')"/>
- <xsl:variable name="attachmentReference">
- <xsl:choose>
- <xsl:when test="//n1:observationMedia/@ID=$referenceId">true</xsl:when>
- <xsl:otherwise>false</xsl:otherwise>
- </xsl:choose>
- </xsl:variable>
- <xsl:choose>
- <xsl:when test="$attachmentReference='true'">
- <xsl:if test="//n1:observationMedia/@ID=$referenceId">
- <xsl:value-of select="//n1:observationMedia[@ID=$referenceId]/n1:value/n1:reference/@value"/>
- </xsl:if>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="concat('#', $referenceId)"/>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:when>
- <xsl:when test="not(starts-with(./@href, '#')) and string-length(./@href) > 0">
- <xsl:value-of select="./@href"/>
- </xsl:when>
- </xsl:choose>
- </xsl:variable>
- <xsl:choose>
- <xsl:when test="string-length($linkTarget)=0">
- <xsl:element name="a">
- <xsl:value-of select="$linkText"/>
- </xsl:element>
- </xsl:when>
- <xsl:otherwise>
- <xsl:element name="a">
- <xsl:attribute name="href">
- <xsl:value-of select="$linkTarget"/>
- </xsl:attribute>
- <xsl:value-of select="$linkText"/>
- </xsl:element>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:if>
- </xsl:if>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template>
- <xsl:template name="containsJavaScript">
- <xsl:param name="reference"/>
- <xsl:variable name="upperCaseReference">
- <xsl:call-template name="caseUp">
- <xsl:with-param name="data" select="$reference"/>
- </xsl:call-template>
- </xsl:variable>
- <xsl:choose>
- <xsl:when test="contains($upperCaseReference, 'JAVASCRIPT') or contains($upperCaseReference, 'JSCRIPT')">true</xsl:when>
- <xsl:otherwise>false</xsl:otherwise>
- </xsl:choose>
- </xsl:template>
- <!-- PACS ICON-->
- <xsl:template name="addPacsIcon">
- <xsl:param name="href"/>
- <xsl:element name="a">
- <xsl:attribute name="onclick">javascript: popupViewNew('<xsl:value-of select="./@href"/>', '<xsl:value-of select="./@rev"/>', '<xsl:value-of select="$organizationOid"/>'); return false;</xsl:attribute>
- <xsl:element name="img">
- <xsl:attribute name="width">50</xsl:attribute>
- <xsl:attribute name="height">20</xsl:attribute>
- <xsl:attribute name="class">main_section_button</xsl:attribute>
- <xsl:attribute name="src">data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADoAAAAUCAYAAADcHS5uAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAABGFJREFUeNrcV9srvGsUXjPGmd84bqfIhXM5JsSFK8QmaeeCKxHu9l/AlXLhVtnlQm7cUC6IKJKcDzkTyvkwjkVjnI39Pqver+H3zZ6pfTNZ9TXfe/zWs9aznvcdzefnJ6Wlpf3h6uo6bzabfegHmVarNb28vKSK1ysdOjQajaG0tFTr5ub2k3DS6+urvqen5+Tj4yNQJ7JZFBISYvTx8dHTDzMkLjw8/OXw8PBPZNTdyclJI1A7lJNbW1u0vr5OFxcXSp+npyfFxcWh1MjDw8OufQQ2LTAydVGnjgIUvqyurjKohoYGBibt7u6OhoeHaXp6mrKyssjd3d2u/WAK0Pf3d4cAenZ2RsHBwVRXV8d+7e/v0/39PQmxpLCwMCovL6eoqCjq7e2l1NRUm/sJgbUNtKCggJKTk5X23NwcjY+PK22MYU57eztH29pajPX19TENMzMzKTc3l/vR7u7upufnZ2Xd29sb1dbW0u3tLW1sbNDV1ZWSlb29PYqPj6ekpCQ6Pj7m9b6+vv8/o4jG2NgYzczMcJQrKys5wgcHBzweExPDIKKjo3mOtLKyMnagra2NxxF5IQrk7e3N4GV/YWEhBQYGKvvBUlJS+HdtbY0MBsMXf5BZ0NrZ2ZmD1dXVZZOJdgFFP8Bi7PT0lM7Pz9lZtIVS8zMyMkI5OTk0MTHBaxISEjgora2tyj4LCwv8CxHBHjc3N9zu7+//7ZuoSaGSdHl5qeqT0Wik7e1tZoafnx8zwB7qamUDC74/6IdI4T0iIoKBnZyccBsOgVqgM2Qc4+gPCgrifrX9dnd3eY+ioiLVcTwuLi6cOdDS2hzQWZyRXLfW5lhiUIDKjH5/MCk/P5+ampqoqqqKhoaGuDYwlp6ezjTC+/z8PGdSrpEs+P5cX19zpjGOPcEEtTleXl6cdbU9QGcosjwl1OZYPr9RV40CcGhgYIDr1NJQZ5D2mpoape/p6Ymp+PDwwNKvRkspNhAgjNfX1/P82dlZZfzo6IjFBplfXFzk+gdj4AsUWVzpOKgoJQTFXuraFCOZHUtLTEyk0dHRL2AaGxspIyODpqamGCiOh87OTnp8fKTs7OwvZx7WotbwXdDPcn8ACA0NpeLiYtxVOciSggBYUVHBwHGZQO2jD/PsEiM1MN/FSBpuJFDGlpaWL/2Tk5OsrjjQQU841NzczGOge0dHB79XV1dTSUkJv+/s7LCIWe4DNV5aWuJvoGwQJBw1oGtAQICiGcg6ggI9QNatgZUZ1Qjn/tLr9R2xsbG/HOkKiDqNjIwkf39/0ul07DBYADVGxkFt2ODgIG1ubjJYNRNnr0kE6m+HuxlZZnZlZYWpDSVGJlEGMAgSMo5jLC8vT1FYu85RR7vUSwM4CVCayWRioYIoIrOgOG5etoDei2yaHRXofwVgeXmZgYDm1vwX2DDwoMFEcSYaBA2CITTiT/iP+C8KXAiGoLlRvP+Sqpssivwf0ZEr6fwDzCySNiEw1aLxrwADAGsuee+PNkkCAAAAAElFTkSuQmCC</xsl:attribute>
- </xsl:element>
- </xsl:element>
- </xsl:template>
- <!-- BPPC Body-->
- <xsl:template name="BPPC">
- <body>
- <!-- body_wrap -->
- <div class="body_wrap">
- <!-- wrap -->
- <div class="wrap">
- <div class="header">
- <h1>
- <xsl:value-of select="/n1:ClinicalDocument/n1:title"/>
- </h1>
- </div>
- <div class="contents">
- <h2>
- 본인은 원활한 진료서비스 제공을 위하여 의료기관에서 작성한 본인의 개인정보 및 의무기록 등 진료정보를 타 의료기관 내원 진료 시 활용(이하 “진료정보교류서비스”라 한다)하고,
- 진료정보교류서비스 평가 및 분석 자료로 활용될 수 있다는 사실에 대해 충분한 설명을 듣고 이해하였으며, 이에 아래와 같이 동의합니다.<br/>
- ※ 동의서 보관방법 : 서면으로 제출한 본 동의서는 개별 의료기관에서 보관하지 않고, 전자적으로 변환하여 진료정보교류시스템(보건복지부)에서 보관합니다.
- </h2>
- <table class="info_agree" border="0" cellpadding="0" cellspacing="0">
- <colgroup>
- <col width="20%" />
- <col width="20%" />
- <col width="20%" />
- <col width="20%" />
- <col width="20%" />
- </colgroup>
- <tr>
- <th rowspan="3">동의주체</th>
- <th style="text-align: left;">성 명</th>
- <td>
- <xsl:call-template name="show-name-kr">
- <xsl:with-param name="name" select="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:patient/n1:name"/>
- </xsl:call-template>
- </td>
- <th style="text-align: left;">전화번호</th>
- <td>
- <xsl:call-template name="show-telecom-kr">
- <xsl:with-param name="telecom" select="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:telecom"/>
- </xsl:call-template>
- </td>
- </tr>
- <tr>
- <th style="text-align: left;">생년월일(주민등록번호)</th>
- <td colspan="4">
- <xsl:call-template name="getDate">
- <xsl:with-param name="date" select="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:patient/n1:birthTime"/>
- </xsl:call-template>
- </td>
- </tr>
- <tr>
- <th style="text-align: left;">주 소</th>
- <td colspan="4">
- <xsl:call-template name="show-address-kr">
- <xsl:with-param name="address" select="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:addr"/>
- </xsl:call-template>
- </td>
- </tr>
- </table>
- <table class="info_agree" border="0" cellpadding="0" cellspacing="0">
- <colgroup>
- <col width="20%" />
- <col width="20%" />
- <col width="60%" />
- </colgroup>
- <caption>개인정보 제공 동의서 양식</caption>
- <tr>
- <th rowspan="3" width="17%">제공하는 정보 항목</th>
- <th style="text-align: left;">[1] 개인정보</th>
- <td>성명, 연락처(법정대리인의 성명, 연락처),주소</td>
- </tr>
- <tr>
- <th style="text-align: left;">[2] 고유식별정보</th>
- <td>주민등록번호, 외국인등록번호 </td>
- </tr>
- <tr>
- <th style="text-align: left;">
- [3] 민감정보
- <br />(진료정보)
- </th>
- <td>
- ① 수진일별 처방 내용(약 처방, 검사 내역)<br />
- ② 진단내용<br />
- ③ 수술을 시행하는 경우 수술에 관한 내용(수술일, 수술명 등 진료기록지 등에 기재되는 일체의 수술정보)<br />
- ④ 외래접수 정보(진료과, 진료의·주치의)<br />
- ⑤ 입퇴원정보(입원일, 퇴원일 등 일체의 입퇴원 정보)<br />
- ⑥ 예약정보(일시, 내용 등 일체의 예약정보)<br />
- ⑦ 예방접종 내역 ⑧ 알레르기 및 부작용 정보<br />
- ⑨ 생체신호 정보 및 흡연, 음주상태<br />
- ⑩ 신고된 법정 전염성 감염병 정보<br />
- ⑪ 환자상태 및 회송사유<br/>
- </td>
- </tr>
- <tr>
- <th>제공·이용의 목적</th>
- <td colspan="2">
- ① 진료정보교류시스템을 활용한 의료인간 진료정보 전달로 진료서비스의 원활한 제공<br />
- ② 경제적·의학적 편익분석을 위하여 행해지는 진료정보교류서비스에 대한 평가·분석<br />
- </td>
- </tr>
- <tr>
- <th>제공받는 자</th>
- <td colspan="2">
- ① 본인이 내원하여 진료서비스를 제공받는 의료기관<br/>
- (다만, 진료정보교류시스템을 사용하는 의료기관에 한정)<br/>
- ② 보건복지부 (동의서관리, 진료정보교류서비스 평가자료로 한정)
- </td>
- </tr>
- <tr>
- <th>보유 및 이용기간</th>
- <td colspan="2">
- ① 본 동의서의 유효기간은 “진료정보교류에 관한 개인정보 제공동의(전체) 철회서” 제출 전까지입니다.<br />
- ② 본인(법정대리인)이 진료정보교류에 관한 개인정보 제공동의를 철회하는 경우 개인정보보호법제36조 및 제37조에 의하여 즉시 삭제 및 처리를 정지합니다.<br />
- ③ 다만 위 제①,②항에도 불구하고 법령에 의하여 의무적으로 보존이 필요한 기간 동안에는 해당 정보가 보유됩니다.<br />
- </td>
- </tr>
- <tr>
- <th>
- 동의 거부 권리 및<br/>동의 거부 따른 불이익 또는 제한사항
- </th>
- <td colspan="2">
- ① 귀하는 개인정보 제공 동의를 거부할 권리가 있습니다.<br />
- ② 동의를 거부할 경우 별도의 불이익은 없으며, 다만 진료정보교류시스템을 활용하지 못함으로써 진료를 의뢰하는 경우
- 진료접수 대기시간이 소요될 수 있으며 별도의 의무기록송부절차가 필요함을 알려드립니다.<br />
- </td>
- </tr>
- <tr></tr>
- <tr>
- <th>동의 제외사항</th>
- <th width="17%">진료과</th>
- <td>
- <xsl:for-each select="/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component/n1:section[n1:templateId/@root='2.16.840.1.113883.3.445.17']/n1:text/n1:table[2]/n1:tbody/n1:tr[7]/n1:td/n1:paragraph">
- <xsl:variable name="position" select="position()"/>
- <xsl:value-of select="/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component/n1:section[n1:templateId/@root='2.16.840.1.113883.3.445.17']/n1:text/n1:table[2]/n1:tbody/n1:tr[7]/n1:td/n1:paragraph[$position]"/>
- <xsl:text> </xsl:text>
- </xsl:for-each>
- </td>
- </tr>
- </table>
- </div>
- <div class="agreement">
- <div class="">
- <strong>본인(법정대리인)은 [1]개인정보의 제공·이용에 동의합니다. (필수)</strong>
- <p>
- <input type="radio" name="agree1" value="yes1" id="yes1" checked="checked"/>
- <label for="yes1">예</label>
- <input type="radio" name="agree1" value="no1" id="no1" style="pointer-events: none;"/>
- <label for="no1">아니오</label>
- </p>
- </div>
- <div class="">
- <strong>본인(법정대리인)은 [2]고유식별정보(주민등록번호)의 제공·이용에 동의합니다. (필수)</strong>
- <p>
- <input type="radio" name="agree2" value="yes2" id="yes2" checked="checked"/>
- <label for="yes2">예</label>
- <input type="radio" name="agree2" value="no2" id="no2" style="pointer-events: none;"/>
- <label for="no2">아니오</label>
- </p>
- </div>
- <div class="">
- <strong>본인(법정대리인)은 [3]민감(진료)정보의 제공·이용에 동의합니다. (필수)</strong>
- <p>
- <input type="radio" name="agree3" value="yes3" id="yes3" checked="checked"/>
- <label for="yes3">예</label>
- <input type="radio" name="agree3" value="no3" id="no3" style="pointer-events: none;"/>
- <label for="no3">아니오</label>
- </p>
- </div>
- </div>
- <div class="contents1 fix">
- <table class="chk_agree" border="0" cellpadding="0" cellspacing="0">
- <colgroup>
- <col width=""/>
- <col width=""/>
- </colgroup>
- <tr>
- <td>작성일자</td>
- <td>
- : 20
- <input type="text" class="date_year" value="{substring(/n1:ClinicalDocument/n1:effectiveTime/@value,3,2)}" readonly="readonly"/> 년
- <input type="text" class="date_mon" value="{substring(/n1:ClinicalDocument/n1:effectiveTime/@value,5,2)}" readonly="readonly"/> 월
- <input type="text" class="date_day" value="{substring(/n1:ClinicalDocument/n1:effectiveTime/@value,7,2)}" readonly="readonly"/> 일
- </td>
- </tr>
- <tr>
- <td>환자(대리인 또는 보호자) 이름</td>
- <td>
- : <input type="text" class="comm_input" value="{substring-after(/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component/n1:section[n1:templateId/@root='2.16.840.1.113883.3.445.17']/n1:text/n1:paragraph[@ID='personname'], ': ')}" readonly="readonly" />
- </td>
- <td></td>
- </tr>
- <tr>
- <td>환자와의관계</td>
- <td>
- : <input type="text" class="comm_input" value="{substring-after(/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component/n1:section[n1:templateId/@root='2.16.840.1.113883.3.445.17']/n1:text/n1:paragraph[@ID='relationship'], ': ')}" readonly="readonly"/>
- </td>
- <td></td>
- </tr>
- <tr>
- <td>신청인(법정대리인) 연락처</td>
- <td >
- : <input type="text" class="comm_input" value="{substring-after(/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component/n1:section[n1:templateId/@root='2.16.840.1.113883.3.445.17']/n1:text/n1:paragraph[@ID='persontelecom'], ': ')}" readonly="readonly"/>
- </td>
- <td></td>
- </tr>
- </table>
- <div class="sign">
- 서명 :
- <br/>
- <xsl:if test="/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component/n1:section/n1:entry/n1:observationMedia/n1:entryRelationship/n1:observation[n1:templateId/@root='2.16.840.1.113883.3.445.19']/n1:value !=''">
- <xsl:call-template name="show-signature">
- <xsl:with-param name="signature" select="/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component/n1:section/n1:entry/n1:observationMedia/n1:entryRelationship/n1:observation[n1:templateId/@root='2.16.840.1.113883.3.445.19']/n1:value"/>
- </xsl:call-template>
- </xsl:if>
- </div>
- </div>
- </div>
- <!-- /wrap -->
- </div>
- <!-- /body_wrap -->
- </body>
- </xsl:template>
- <!-- WITHDRAWAL Body-->
- <xsl:template name="WITHDRAWAL">
- <body>
- <!-- body_wrap -->
- <div class="body_wrap">
- <!-- wrap -->
- <div class="wrap">
- <div class="header">
- <h1>
- 진료정보교류 개인정보 제공 동의(
- <xsl:choose>
- <!--전체철회-->
- <xsl:when test="/n1:ClinicalDocument/n1:documentationOf/n1:serviceEvent/n1:code/@code = '1.2.410.100110.40.2.2.2.4'">
- <input id="chk001" type="checkbox" onclick="return false;" height="60 px;" />부분
- <input id="chk002" type="checkbox" checked="checked" onclick="return false;" />전체 ) 철회서
- </xsl:when>
- <!--부분철회-->
- <xsl:when test="/n1:ClinicalDocument/n1:documentationOf/n1:serviceEvent/n1:code/@code = '1.2.410.100110.40.2.2.2.5'">
- <input id="chk001" type="checkbox" checked="checked" onclick="return false;" height="60 px;" />부분
- <input id="chk002" type="checkbox" onclick="return false;" />전체 ) 철회서
- </xsl:when>
- <xsl:otherwise>
- <input id="chk001" type="checkbox" onclick="return false;" height="60 px;" />부분
- <input id="chk002" type="checkbox" onclick="return false;" />전체 ) 철회서
- </xsl:otherwise>
- </xsl:choose>
- </h1>
- </div>
- <div class="contents">
- <table class="info_agree" border="0" cellpadding="0" cellspacing="0">
- <caption>개인정보 제공 동의 철회서 양식</caption>
- <colgroup>
- <col width="15%" />
- <col width="15%" />
- <col width="15%" />
- <col width="30%" />
- <col width="25%" />
- </colgroup>
- <tr>
- <th style="text-align: center;">접수일</th>
- <td>
- <xsl:call-template name="getDate">
- <xsl:with-param name="date" select="/n1:ClinicalDocument/n1:effectiveTime"/>
- </xsl:call-template>
- </td>
- <th style="text-align: center;">접수기관</th>
- <td>
- <xsl:value-of select="/n1:ClinicalDocument/n1:custodian/n1:assignedCustodian/n1:representedCustodianOrganization/n1:name"/>
- </td>
- <th style="text-align: left;">
- 처리기간 10일 이내<br/>
- </th>
- </tr>
- </table>
- <table class="info_agree" border="0" cellpadding="0" cellspacing="0" style="margin-top: 10px;">
- <colgroup>
- <col width="20%" />
- <col width="20%" />
- <col width="20%" />
- <col width="20%" />
- <col width="20%" />
- </colgroup>
- <!--동의주체-->
- <tr>
- <th rowspan="3">동의주체</th>
- <th style="text-align: left;">성 명</th>
- <td>
- <xsl:call-template name="show-name-kr">
- <xsl:with-param name="name" select="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:patient/n1:name"/>
- </xsl:call-template>
- </td>
- <th style="text-align: left;">전화번호</th>
- <td>
- <xsl:call-template name="show-telecom-kr">
- <xsl:with-param name="telecom" select="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:telecom"/>
- </xsl:call-template>
- </td>
- </tr>
- <tr>
- <th style="text-align: left;">
- 생년월일<br/>(주민등록번호)
- </th>
- <td colspan="4">
- <xsl:call-template name="getDate">
- <xsl:with-param name="date" select="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:patient/n1:birthTime"/>
- </xsl:call-template>
- </td>
- </tr>
- <tr>
- <th style="text-align: left;">주 소</th>
- <td colspan="4">
- <xsl:call-template name="show-address-kr">
- <xsl:with-param name="address" select="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:addr"/>
- </xsl:call-template>
- </td>
- </tr>
- <tr>
- <td colspan="5"></td>
- </tr>
- <tr>
- <th rowspan="5">철회내용</th>
- <th rowspan="2">
- 부분<br/> 의료기관
- </th>
- <th>
- 의료기관명<br>(동의 철회 요구)</br>
- </th>
- <td colspan="2">
- <xsl:for-each select="/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component/n1:section[n1:templateId/@root='2.16.840.1.113883.3.445.17']/n1:text/n1:table[2]/n1:tbody/n1:tr[4]/n1:td[1]/n1:paragraph">
- <xsl:variable name="position" select="position()"/>
- <xsl:value-of select="/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component/n1:section[n1:templateId/@root='2.16.840.1.113883.3.445.17']/n1:text/n1:table[2]/n1:tbody/n1:tr[4]/n1:td/n1:paragraph[$position]"/> 
- </xsl:for-each>
- </td>
- </tr>
- <!--10-->
- <tr>
- <td colspan="3">
- <xsl:value-of select="/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component/n1:section[n1:templateId/@root='2.16.840.1.113883.3.445.17']/n1:text/n1:table[2]/n1:tbody/n1:tr[6]/n1:td[1]"/>
- </td>
- </tr>
- <!--11-->
- <tr>
- <th rowspan="2">
- 부분<br/> 진료과
- </th>
- <th>
- 진료과명<br/>(동의 철회 요구)
- </th>
- <td colspan="2">
- <xsl:for-each select="/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component/n1:section[n1:templateId/@root='2.16.840.1.113883.3.445.17']/n1:text/n1:table[2]/n1:tbody/n1:tr[7]/n1:td/n1:paragraph">
- <xsl:variable name="position" select="position()"/>
- <xsl:value-of select="/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component/n1:section[n1:templateId/@root='2.16.840.1.113883.3.445.17']/n1:text/n1:table[2]/n1:tbody/n1:tr[7]/n1:td/n1:paragraph[$position]"/>
- <xsl:text> </xsl:text>
- </xsl:for-each>
- </td>
- </tr>
- <!--12-->
- <tr>
- <td colspan="3">
- <xsl:value-of select="/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component/n1:section[n1:templateId/@root='2.16.840.1.113883.3.445.17']/n1:text/n1:table[2]/n1:tbody/n1:tr[9]/n1:td[1]"/>
- </td>
- </tr>
- <tr>
- <th>전체</th>
- <td colspan="3">
- <xsl:value-of select="/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component/n1:section[n1:templateId/@root='2.16.840.1.113883.3.445.17']/n1:text/n1:table[2]/n1:tbody/n1:tr[10]/n1:td[1]"/>
- </td>
- </tr>
- </table>
- <br/>
- <p>개인정보보호법 등에 따라 위와 같이 요구합니다.</p>
- </div>
- <div class="contents1 fix" style="margin-top: 10px;">
- <table class="chk_agree" border="0" cellpadding="0" cellspacing="0">
- <colgroup>
- <col width=""/>
- <col width=""/>
- </colgroup>
- <tr>
- <td>작성일자</td>
- <td>
- : 20
- <input type="text" class="date_year" value="{substring(/n1:ClinicalDocument/n1:effectiveTime/@value,3,2)}" readonly="readonly"/> 년
- <input type="text" class="date_mon" value="{substring(/n1:ClinicalDocument/n1:effectiveTime/@value,5,2)}" readonly="readonly"/> 월
- <input type="text" class="date_day" value="{substring(/n1:ClinicalDocument/n1:effectiveTime/@value,7,2)}" readonly="readonly"/> 일
- </td>
- </tr>
- <tr>
- <td>환자(대리인 또는 보호자) 이름</td>
- <td>
- : <input type="text" class="comm_input" value="{substring-after(/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component/n1:section[n1:templateId/@root='2.16.840.1.113883.3.445.17']/n1:text/n1:paragraph[@ID='personname'], ': ')}" readonly="readonly" />
- </td>
- <td></td>
- </tr>
- <tr>
- <td>연락처</td>
- <td >
- : <input type="text" class="comm_input" value="{substring-after(/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component/n1:section[n1:templateId/@root='2.16.840.1.113883.3.445.17']/n1:text/n1:paragraph[@ID='persontelecom'], ': ')}" readonly="readonly"/>
- </td>
- <td></td>
- </tr>
- <tr>
- <td>환자와의관계</td>
- <td>
- : <input type="text" class="comm_input" value="{substring-after(/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component/n1:section[n1:templateId/@root='2.16.840.1.113883.3.445.17']/n1:text/n1:paragraph[@ID='relationship'], ': ')}" readonly="readonly"/>
- </td>
- <td></td>
- </tr>
- </table>
- <div class="sign">
- 서명 :
- <br/>
- <xsl:if test="/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component/n1:section/n1:entry/n1:observationMedia/n1:entryRelationship/n1:observation[n1:templateId/@root='2.16.840.1.113883.3.445.19']/n1:value !=''">
- <xsl:call-template name="show-signature">
- <xsl:with-param name="signature" select="/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component/n1:section/n1:entry/n1:observationMedia/n1:entryRelationship/n1:observation[n1:templateId/@root='2.16.840.1.113883.3.445.19']/n1:value"/>
- </xsl:call-template>
- </xsl:if>
- </div>
- </div>
- <div class="contents" style="border: 1px solid #DBDBDB; border-left: 2px solid #215fb4;">
- <ol>
- <li>1. ‘법정대리인’란은 대리인이 요구인일 때에만 적습니다.</li>
- <li>2. 진료정보교류에 대해 일부 의료기관에 대해서만 동의를 철회하는 경우, ‘부분 의료기관’란에[ √ ]표시를 하고, 의료기관명에 철회하고자 하는 의료기관 명칭을 나열하여야 합니다. [ √ ]를 하지 않거나 의료기관명을 나열하지 않으면 동의를 철회하지 않은 것으로 처리됩니다.</li>
- <li>3. 진료정보교류에 대해 일부 진료과에 대해서만 동의를 철회하는 경우, ‘부분 진료과’란에[ √ ]표시를 하고, 진료과명에 철회하고자 하는 진료과명을 나열하여야 합니다. [ √ ]를 하지 않거나 진료과명을 나열하지 않으면 동의를 철회하지 않은 것으로 처리됩니다.</li>
- <li>4. 진료교류정보 전체에 대해 철회를 요구하는 경우 ‘전체’ 란에 [ √ ] 표시를 하고 그 사유를 적습니다.</li>
- </ol>
- </div>
- </div>
- <!-- /wrap -->
- </div>
- <!-- /body_wrap -->
- </body>
- </xsl:template>
- <!-- ## Body ##-->
- <!-- show nonXMLBody -->
- <xsl:template match='n1:component/n1:nonXMLBody'>
- <xsl:choose>
- <!-- if there is a reference, use that in an IFRAME -->
- <xsl:when test='n1:text/n1:reference'>
- <xsl:variable name="source" select="string(n1:text/n1:reference/@value)"/>
- <xsl:variable name="lcSource" select="translate($source, $uc, $lc)"/>
- <xsl:variable name="scrubbedSource" select="translate($source, $simple-sanitizer-match, $simple-sanitizer-replace)"/>
- <xsl:message>
- <xsl:value-of select="$source"/>, <xsl:value-of select="$lcSource"/>
- </xsl:message>
- <xsl:choose>
- <xsl:when test="contains($lcSource,'javascript')">
- <p>
- <xsl:value-of select="$javascript-injection-warning"/>
- </p>
- <xsl:message>
- <xsl:value-of select="$javascript-injection-warning"/>
- </xsl:message>
- </xsl:when>
- <xsl:when test="not($source = $scrubbedSource)">
- <p>
- <xsl:value-of select="$malicious-content-warning"/>
- </p>
- <xsl:message>
- <xsl:value-of select="$malicious-content-warning"/>
- </xsl:message>
- </xsl:when>
- <xsl:otherwise>
- <iframe name='nonXMLBody' id='nonXMLBody' WIDTH='80%' HEIGHT='600' src='{$source}' sandbox=""/>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:when>
- <xsl:when test='n1:text/@mediaType="text/plain"'>
- <pre>
- <xsl:value-of select='n1:text/text()'/>
- </pre>
- </xsl:when>
- <xsl:otherwise>
- <pre>Cannot display the text</pre>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template>
- <!-- ##################### Data format ##################### -->
- <!-- show-gender-kr -->
- <xsl:template name="show-gender-kr">
- <xsl:param name="gender"/>
- <xsl:choose>
- <xsl:when test="$gender/@code = 'M'">
- <xsl:text>남</xsl:text>
- </xsl:when>
- <xsl:when test="$gender/@code = 'F'">
- <xsl:text>여</xsl:text>
- </xsl:when>
- <xsl:when test="$gender/@code = 'U'">
- <xsl:text>식별불가</xsl:text>
- </xsl:when>
- </xsl:choose>
- </xsl:template>
- <!-- show signature -->
- <xsl:template name="show-signature">
- <xsl:param name="signature"/>
- <xsl:element name="img">
- <xsl:attribute name="width">140</xsl:attribute>
- <xsl:attribute name="height">85</xsl:attribute>
- <xsl:attribute name="src">data:image/png;base64,<xsl:value-of select="$signature"/></xsl:attribute>
- </xsl:element>
- </xsl:template>
- <!-- show date ( format : yyyy-MM-dd )-->
- <xsl:template name="getDate">
- <xsl:param name="date"/>
- <xsl:choose>
- <xsl:when test="$date/@value">
- <xsl:value-of select="concat(substring($date/@value,1,4),'-',substring($date/@value,5,2),'-',substring($date/@value,7,2))"/>
- <xsl:text> </xsl:text>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="$date"/>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template>
- <!-- show date ( format : yyyy.MM.dd )-->
- <xsl:template name="getDate2">
- <xsl:param name="date"/>
- <xsl:choose>
- <xsl:when test="$date/@value">
- <xsl:value-of select="concat(substring($date/@value,1,4),'.',substring($date/@value,5,2),'.',substring($date/@value,7,2),'.')"/>
- <xsl:text> </xsl:text>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="$date"/>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template>
- <!-- show date ( format : yyyy년 MM월 dd일 )-->
- <xsl:template name="getDate3">
- <xsl:param name="date"/>
- <xsl:choose>
- <xsl:when test="$date/@value">
- <xsl:value-of select="concat(substring($date/@value,1,4),'년 ',substring($date/@value,5,2),'월 ',substring($date/@value,7,2),'일')"/>
- <xsl:text> </xsl:text>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="$date"/>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template>
- <!-- show-name-kr -->
- <xsl:template name="show-name-kr">
- <xsl:param name="name"/>
- <xsl:choose>
- <xsl:when test="$name/n1:family">
- <xsl:if test="$name/n1:prefix">
- <xsl:value-of select="$name/n1:prefix"/>
- <xsl:text> </xsl:text>
- </xsl:if>
- <xsl:value-of select="$name/n1:family"/>
- <!--<xsl:text> </xsl:text>-->
- <xsl:value-of select="$name/n1:given"/>
- <xsl:if test="$name/n1:suffix">
- <xsl:text>, </xsl:text>
- <xsl:value-of select="$name/n1:suffix"/>
- </xsl:if>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="$name"/>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template>
- <!-- show-telecom-kr -->
- <xsl:template name="show-telecom-kr">
- <xsl:param name="telecom"/>
- <xsl:choose>
- <xsl:when test="$telecom">
- <xsl:variable name="type" select="substring-before($telecom/@value, ':')"/>
- <xsl:variable name="value" select="substring-after($telecom/@value, ':')"/>
- <xsl:if test="$type">
- <xsl:call-template name="translateTelecomCode">
- <xsl:with-param name="code" select="$type"/>
- </xsl:call-template>
- <xsl:if test="@use">
- <xsl:text> (</xsl:text>
- <xsl:call-template name="translateTelecomCode">
- <xsl:with-param name="code" select="@use"/>
- </xsl:call-template>
- <xsl:text>)</xsl:text>
- </xsl:if>
- <xsl:text>: </xsl:text>
- <xsl:text> </xsl:text>
- <xsl:value-of select="$value"/>
- </xsl:if>
- </xsl:when>
- <xsl:otherwise>
- <xsl:value-of select="$telecom/@value"/>
- </xsl:otherwise>
- </xsl:choose>
- <br/>
- </xsl:template>
- <!-- Convert Telecom URL to display text -->
- <xsl:template name="translateTelecomCode">
- <xsl:param name="code"/>
- <xsl:choose>
- <!-- lookup table Telecom URI -->
- <xsl:when test="$code='tel'">
- <xsl:text>Tel</xsl:text>
- </xsl:when>
- <xsl:when test="$code='fax'">
- <xsl:text>Fax</xsl:text>
- </xsl:when>
- <xsl:when test="$code='http'">
- <xsl:text>Web</xsl:text>
- </xsl:when>
- <xsl:when test="$code='mailto'">
- <xsl:text>Mail</xsl:text>
- </xsl:when>
- <xsl:when test="$code='H'">
- <xsl:text>Home</xsl:text>
- </xsl:when>
- <xsl:when test="$code='HV'">
- <xsl:text>Vacation Home</xsl:text>
- </xsl:when>
- <xsl:when test="$code='HP'">
- <xsl:text>Primary Home</xsl:text>
- </xsl:when>
- <xsl:when test="$code='WP'">
- <xsl:text>Work Place</xsl:text>
- </xsl:when>
- <xsl:when test="$code='PUB'">
- <xsl:text>Pub</xsl:text>
- </xsl:when>
- <xsl:otherwise>
- <xsl:text>{$code='</xsl:text>
- <xsl:value-of select="$code"/>
- <xsl:text>'?}</xsl:text>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template>
- <!-- show-address-kr-->
- <xsl:template name="show-address-kr">
- <xsl:param name="address"/>
- <xsl:choose>
- <xsl:when test="$address">
- <xsl:if test="$address/@use">
- <xsl:text> </xsl:text>
- <xsl:call-template name="translateTelecomCode">
- <xsl:with-param name="code" select="$address/@use"/>
- </xsl:call-template>
- <xsl:text>:</xsl:text>
- <br/>
- </xsl:if>
- <xsl:if test="string-length($address/n1:country)>0">
- <xsl:value-of select="$address/n1:country"/>
- <xsl:text> </xsl:text>
- </xsl:if>
- <xsl:if test="string-length($address/n1:state)>0">
- <xsl:value-of select="$address/n1:state"/>
- <xsl:text> </xsl:text>
- </xsl:if>
- <xsl:if test="string-length($address/n1:city)>0">
- <xsl:value-of select="$address/n1:city"/>
- <xsl:text> </xsl:text>
- </xsl:if>
- <xsl:if test="string-length($address/n1:additionalLocator)>0">
- <xsl:value-of select="$address/n1:additionalLocator"/>
- <xsl:text> </xsl:text>
- </xsl:if>
- <xsl:for-each select="$address/n1:streetAddressLine">
- <xsl:value-of select="."/>
- <xsl:text> </xsl:text>
- </xsl:for-each>
- <xsl:if test="$address/n1:streetName">
- <xsl:value-of select="$address/n1:streetName"/>
- <xsl:text> </xsl:text>
- <xsl:value-of select="$address/n1:houseNumber"/>
- </xsl:if>
- <xsl:if test="string-length($address/n1:postalCode)>0">
- <xsl:text> </xsl:text>
- <xsl:value-of select="$address/n1:postalCode"/>
- </xsl:if>
- </xsl:when>
- <xsl:otherwise>
- <xsl:text>유효하지 않은 주소정보</xsl:text>
- </xsl:otherwise>
- </xsl:choose>
- <br/>
- </xsl:template>
- <!--BPPC-->
- <xsl:template name="getGuardianRelationship">
- <xsl:param name="code"/>
- <xsl:choose>
- <xsl:when test="$code='FTH'">
- <xsl:text>부</xsl:text>
- </xsl:when>
- <xsl:when test="$code='MTH'">
- <xsl:text>모</xsl:text>
- </xsl:when>
- <xsl:when test="$code='GRMTH'">
- <xsl:text>조모</xsl:text>
- </xsl:when>
- <xsl:when test="$code='GRFTH'">
- <xsl:text>조부</xsl:text>
- </xsl:when>
- <xsl:when test="$code='WIFE'">
- <xsl:text>부인</xsl:text>
- </xsl:when>
- <xsl:when test="$code='HUSB'">
- <xsl:text>남편</xsl:text>
- </xsl:when>
- <xsl:when test="$code='FAMMEMB'">
- <xsl:text>가족</xsl:text>
- </xsl:when>
- <xsl:when test="$code='SONC'">
- <xsl:text>자</xsl:text>
- </xsl:when>
- <xsl:when test="$code='DAUC'">
- <xsl:text>딸</xsl:text>
- </xsl:when>
- <xsl:when test="$code='GRNDDAU'">
- <xsl:text>손녀</xsl:text>
- </xsl:when>
- <xsl:when test="$code='GRNDSON'">
- <xsl:text>손자</xsl:text>
- </xsl:when>
- <xsl:when test="$code='NBOR'">
- <xsl:text>이웃</xsl:text>
- </xsl:when>
- <xsl:when test="$code='ROOM'">
- <xsl:text>동거인</xsl:text>
- </xsl:when>
- <xsl:when test="$code='ONESELF'">
- <xsl:text>본인</xsl:text>
- </xsl:when>
- <xsl:otherwise>
- <xsl:text></xsl:text>
- </xsl:otherwise>
- </xsl:choose>
- </xsl:template>
- <!-- convert to lower case -->
- <xsl:template name="caseDown">
- <xsl:param name="data"/>
- <xsl:if test="$data">
- <xsl:value-of select="translate($data, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ','abcdefghijklmnopqrstuvwxyz')"/>
- </xsl:if>
- </xsl:template>
- <!-- convert to upper case -->
- <xsl:template name="caseUp">
- <xsl:param name="data"/>
- <xsl:if test="$data">
- <xsl:value-of select="translate($data,'abcdefghijklmnopqrstuvwxyz', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ')"/>
- </xsl:if>
- </xsl:template>
- <!-- convert first character to upper case -->
- <xsl:template name="firstCharCaseUp">
- <xsl:param name="data"/>
- <xsl:if test="$data">
- <xsl:call-template name="caseUp">
- <xsl:with-param name="data" select="substring($data,1,1)"/>
- </xsl:call-template>
- <xsl:value-of select="substring($data,2)"/>
- </xsl:if>
- </xsl:template>
- <!-- show-noneFlavor -->
- <xsl:template name="show-noneFlavor">
- <xsl:param name="nf"/>
- <xsl:choose>
- <xsl:when test=" $nf = 'NI' ">
- <xsl:text>no information</xsl:text>
- </xsl:when>
- <xsl:when test=" $nf = 'INV' ">
- <xsl:text>invalid</xsl:text>
- </xsl:when>
- <xsl:when test=" $nf = 'MSK' ">
- <xsl:text>masked</xsl:text>
- </xsl:when>
- <xsl:when test=" $nf = 'NA' ">
- <xsl:text>not applicable</xsl:text>
- </xsl:when>
- <xsl:when test=" $nf = 'UNK' ">
- <xsl:text>unknown</xsl:text>
- </xsl:when>
- <xsl:when test=" $nf = 'OTH' ">
- <xsl:text>other</xsl:text>
- </xsl:when>
- </xsl:choose>
- </xsl:template>
- <!-- /##################### Data format ##################### -->
- <!-- ##################### Comment ##################### -->
- <!-- 상단 문구-->
- <xsl:template name="addComment">
- <xsl:choose>
- <!-- 진료회신서 / 진료회송서 의 경우 해당문구 출력.-->
- <!-- 회송서 문구 : 회송 환자의 진료결과를 다음과 같이 알려드리오니 향후 진료에 참고하시기 바랍니다. -->
- <!-- 진료회송서 -->
- <xsl:when test="/n1:ClinicalDocument/n1:code/@code = '18761-7'">
- <h3>
- <xsl:value-of select="/n1:ClinicalDocument/n1:informationRecipient/n1:intendedRecipient/n1:receivedOrganization/n1:asOrganizationPartOf/n1:wholeOrganization/n1:name"/>
- <xsl:text> </xsl:text>
- <xsl:call-template name="show-name-kr">
- <xsl:with-param name="name" select="/n1:ClinicalDocument/n1:informationRecipient/n1:intendedRecipient/n1:informationRecipient/n1:name"/>
- </xsl:call-template>
- 선생님 귀하
- </h3>
- <p>회송 환자의 진료결과를 다음과 같이 알려드리오니 향후 진료에 참고하시기 바랍니다.</p>
- <p>귀원의 무궁한 발전을 기원합니다.</p>
- <br/>
- </xsl:when>
- <xsl:when test="/n1:ClinicalDocument/n1:code/@code = '11488-4'">
- <h3>
- <xsl:value-of select="/n1:ClinicalDocument/n1:informationRecipient/n1:intendedRecipient/n1:receivedOrganization/n1:asOrganizationPartOf/n1:wholeOrganization/n1:name"/>
- <xsl:text> </xsl:text>
- <xsl:call-template name="show-name-kr">
- <xsl:with-param name="name" select="/n1:ClinicalDocument/n1:informationRecipient/n1:intendedRecipient/n1:informationRecipient/n1:name"/>
- </xsl:call-template>
- 선생님 귀하
- </h3>
- <p>선생님께서 의뢰해주신 환자의 진료결과를 다음과 같이 알려드리오니 향후 진료에 참고하시기 바랍니다.</p>
- <p>귀원의 무궁한 발전을 기원합니다.</p>
- <br/>
- </xsl:when>
- <!-- 진료의뢰서 -->
- <xsl:when test="/n1:ClinicalDocument/n1:code/@code = '57133-1' ">
- <h3>
- <xsl:value-of select="/n1:ClinicalDocument/n1:informationRecipient/n1:intendedRecipient/n1:receivedOrganization/n1:asOrganizationPartOf/n1:wholeOrganization/n1:name"/>
- <xsl:text> </xsl:text>
- <xsl:call-template name="show-name-kr">
- <xsl:with-param name="name" select="/n1:ClinicalDocument/n1:informationRecipient/n1:intendedRecipient/n1:informationRecipient/n1:name"/>
- </xsl:call-template>
- 선생님 귀하
- </h3>
- <br/>
- </xsl:when>
- <xsl:otherwise></xsl:otherwise>
- </xsl:choose>
- </xsl:template>
- <!-- 하단 문구 -->
- <xsl:template name="addBottomComment">
- <!--회신서 / 회송서 문구-->
- <xsl:choose>
- <xsl:when test="/n1:ClinicalDocument/n1:code/@code = '18761-7' or /n1:ClinicalDocument/n1:code/@code ='11488-4'">
- <div class ="main_content">
- <h3 style="text-align : center;">
- 향후 귀병원에서 치료를 계속하실 계획이 있으시거나 더 궁금하신 사항은<br/>
- 전화(000-000-0000) 또는 팩스(000-000-0000) 로 연락주시면 곧 회답하여 드리겠습니다.
- </h3>
- <br/>
- <table border="0">
- <tbody>
- <tr>
- <td width="50%"></td>
- <td width="10%">
- <h6>진료과</h6>
- </td>
- <td width="20%">
- <xsl:value-of select="/n1:ClinicalDocument/n1:author/n1:assignedAuthor/n1:representedOrganization/n1:name"/>
- </td>
- <td width="10%">
- <h6>진료의</h6>
- </td>
- <td width="10%">
- <xsl:value-of select="/n1:ClinicalDocument/n1:author/n1:assignedAuthor/n1:assignedPerson/n1:name/n1:family"/>
- <xsl:value-of select="/n1:ClinicalDocument/n1:author/n1:assignedAuthor/n1:assignedPerson/n1:name/n1:given"/>
- </td>
- </tr>
- <tr>
- <td></td>
- <td colspan="2">
- <h6>A 병원 진료협력센터</h6>
- </td>
- <td>
- <h6>담당자</h6>
- </td>
- <td>
- <xsl:value-of select="/n1:ClinicalDocument/n1:participant[@typeCode='AUT']/n1:associatedEntity/n1:associatedPerson/n1:name/n1:family"/>
- <xsl:value-of select="/n1:ClinicalDocument/n1:participant[@typeCode='AUT']/n1:associatedEntity/n1:associatedPerson/n1:name/n1:given"/>
- </td>
- </tr>
- </tbody>
- </table>
- <br/>
- <h3 style="text-align : center;">
- 이 기록은 의무기록에 근거하여 작성되었습니다.
- </h3>
- <br/>
- <p style="text-align : right;">
- 문의전화 : 000-000-0000 (A병원 진료협력센터)
- </p>
- </div>
- </xsl:when>
- <xsl:otherwise></xsl:otherwise>
- </xsl:choose>
- </xsl:template>
- <!-- /##################### Comment ##################### -->
- </xsl:stylesheet>
|