나는 HAPI 라이브러리를 사용하여 생성 할 수있는 XML을 가지고 있으며 XSL을 사용하여 XML 형식을 변경할 수 있습니다. 다음 템플릿을 사용하고 있습니다. 현재 템플릿은 OBX.5 세그먼트에서 디지털 값을 확인한 다음 OBX6 (측정 단위)을 해석합니다. 그러나 그들은 또한 사이에 caret ^
(예 : %^%
또는 mL^mL
)와 중복 스타일로 클라이언트 중 하나에서 오는 OBX6 해석하려고합니다. 내 현재 템플릿을 무시하지만 ^
전후에 세그먼트 문자열의 값을 가져올 수 있기를 바랍니다.XML 로의 변환 및 HL7 세그먼트
<xsl:template match="hl7:OBX.6[matches(./../hl7:OBX.5, '^\d+(\.\d+)?$') and index-of($percentList, .) or index-of($mgdlList, .) or index-of($mlList, .) or index-of($mmList, .) or index-of($mgList, .))]">
<result><xsl:value-of select="./../hl7:OBX.5" /></result>
<xsl:when test="index-of($percentList, .)">
<units>%</units>
</xsl:when>
...
<xsl:when test="index-of($mlList, .)">
<units>ml</units>
</xsl:when>
<xsl:otherwise>
<units><xsl:value-of select="./hl7:CE.1" /></units>
</xsl:otherwise>
...
</xsl:template>
결과는 사전에
<OBX.5>38.0</OBX.5>
<OBX.6>
<CE.1>%^%</CE.1>
</OBX.6>
에서
<result>38.0</result>
<units>%</units>
감사를 생산한다!
당신이 사방에 굵은 텍스트를 사용을 중지 것이다? 모든 자본으로 읽는 것은 거의 고통 스럽습니다. – Borodin
@ 보 로딘, 도처에? –