gpt4 book ai didi

xml - 将 HL7 段转换为 XML

转载 作者:数据小太阳 更新时间:2023-10-29 02:26:58 28 4
gpt4 key购买 nike

我有一个 XML,我们能够使用 HAPI 库生成它并使用 XSL 更改 XML 的格式。我正在使用以下模板。当前模板查看 OBX.5 段的数字值,然后解释 OBX6(度量单位)。但是,当 OBX6 来自其中一个客户时,我也试图将它们解释为与插入符 ^ 重复的样式(例如:%^%mL^mL)。我当前的模板忽略了这一点,但我希望能够在 ^ 之前或之后获取段子字符串的值。

<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>

结果应该产生

            <result>38.0</result>
<units>%</units>

来自

                <OBX.5>38.0</OBX.5>
<OBX.6>
<CE.1>%^%</CE.1>
</OBX.6>

提前致谢!

最佳答案

使用:

tokenize(hl7:CE.1, '\^')[1]

这是一个简单的基于 XSLT 2.0 的验证:

<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xsl:output omit-xml-declaration="yes" indent="yes"/>

<xsl:template match="OBX.6">
<xsl:sequence select="tokenize(CE.1, '\^')[1]"/>
</xsl:template>

<xsl:template match="text()"/>
</xsl:stylesheet>

当此转换应用于以下 XML 文档时(派生自提供的 XML 片段并格式正确):

<t>
<OBX.5>38.0</OBX.5>
<OBX.6>
<CE.1>%^%</CE.1>
</OBX.6>
</t>

产生了想要的、正确的结果:

%

关于xml - 将 HL7 段转换为 XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15843230/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com