1

xml メッセージをより読みやすい形式に変換する必要があるため、XSL を追加してみました。思い通りにすべてをリストするのに苦労しています。

私はXSLにかなり慣れていないので、いくつかの助けが必要です。

これは XML ファイルの一部です。

<biotronik-ieee11073-export format-version="3.0" creator="BioProgrammerConverter" creator-version="3.1">
<dataset>
    <section name="MDC">
        <section name="ATTR">
            <section name="PT">
                <value name="SEX" type="String">0</value>
            </section>
        </section>
        <section name="IDC">
            <section name="PG">
                <value name="TYPE" type="MDC_IDC_ENUM_PG_TYPE">IPG</value>
                <value name="MODEL" type="String">Evia DR-T</value>
                <value name="SERIAL" type="String">xxxxxxxx</value>
                <value name="MFG" type="MDC_IDC_ENUM_MFG">BIO</value>
                <value name="IMPLANT_DT" type="DateTime">20091126</value>
            </section>
            <section name="LEAD">
                <value name="MODEL" type="String">4524</value>
                <value name="MFG" type="MDC_IDC_ENUM_MFG">MDT</value>
                <value name="POLARITY_TYPE" type="MDC_IDC_ENUM_LEAD_POLARITY_TYPE">BI</value>
                <value name="LOCATION" type="MDC_IDC_ENUM_LEAD_LOCATION_CHAMBER">RA</value>
                <value name="CONNECTION_STATUS" type="MDC_IDC_ENUM_LEAD_STATUS">Connected</value>
            </section>
            <section name="LEAD">
                <value name="MODEL" type="String">T 44 F</value>
                <value name="MFG" type="MDC_IDC_ENUM_MFG">ELA</value>
                <value name="POLARITY_TYPE" type="MDC_IDC_ENUM_LEAD_POLARITY_TYPE">BI</value>
                <value name="LOCATION" type="MDC_IDC_ENUM_LEAD_LOCATION_CHAMBER">RV</value>
                <value name="CONNECTION_STATUS" type="MDC_IDC_ENUM_LEAD_STATUS">Connected</value>
            </section>

何らかの方法で、ノードの下にあるすべてのタグを表示したい = IDC

私は次のXSLで試しました:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<h2>Biotronics Results</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th>Test</th>
<th>Value</th>
</tr>
<xsl:for-each select="/biotronik-ieee11073-export/dataset/section[@name='MDC']/section[@name='IDC']">
<xsl:for-each select="section">
<xsl:for-each select="value">
<tr>
<td><xsl:value-of select="value"/></td>
</tr>
</xsl:for-each>
</xsl:for-each>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>

助けていただければ幸いです。ありがとう

4

1 に答える 1

0

あなたがしたい

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

 <xsl:template match="/">
     <xsl:copy-of select="//section[@name='IDC']//value"/>
 </xsl:template>
</xsl:stylesheet>

この変換が提供された XML ドキュメントに適用されると、次のようになります。

<biotronik-ieee11073-export format-version="3.0" creator="BioProgrammerConverter" creator-version="3.1">
    <dataset>
        <section name="MDC">
            <section name="ATTR">
                <section name="PT">
                    <value name="SEX" type="String">0</value>
                </section>
            </section>
            <section name="IDC">
                <section name="PG">
                    <value name="TYPE" type="MDC_IDC_ENUM_PG_TYPE">IPG</value>
                    <value name="MODEL" type="String">Evia DR-T</value>
                    <value name="SERIAL" type="String">xxxxxxxx</value>
                    <value name="MFG" type="MDC_IDC_ENUM_MFG">BIO</value>
                    <value name="IMPLANT_DT" type="DateTime">20091126</value>
                </section>
                <section name="LEAD">
                    <value name="MODEL" type="String">4524</value>
                    <value name="MFG" type="MDC_IDC_ENUM_MFG">MDT</value>
                    <value name="POLARITY_TYPE" type="MDC_IDC_ENUM_LEAD_POLARITY_TYPE">BI</value>
                    <value name="LOCATION" type="MDC_IDC_ENUM_LEAD_LOCATION_CHAMBER">RA</value>
                    <value name="CONNECTION_STATUS" type="MDC_IDC_ENUM_LEAD_STATUS">Connected</value>
                </section>
                <section name="LEAD">
                    <value name="MODEL" type="String">T 44 F</value>
                    <value name="MFG" type="MDC_IDC_ENUM_MFG">ELA</value>
                    <value name="POLARITY_TYPE" type="MDC_IDC_ENUM_LEAD_POLARITY_TYPE">BI</value>
                    <value name="LOCATION" type="MDC_IDC_ENUM_LEAD_LOCATION_CHAMBER">RV</value>
                    <value name="CONNECTION_STATUS" type="MDC_IDC_ENUM_LEAD_STATUS">Connected</value>
                </section>
            </section>
        </section>
    </dataset>
</biotronik-ieee11073-export>

必要な正しい結果が生成されます。

<value name="TYPE" type="MDC_IDC_ENUM_PG_TYPE">IPG</value>
<value name="MODEL" type="String">Evia DR-T</value>
<value name="SERIAL" type="String">xxxxxxxx</value>
<value name="MFG" type="MDC_IDC_ENUM_MFG">BIO</value>
<value name="IMPLANT_DT" type="DateTime">20091126</value>
<value name="MODEL" type="String">4524</value>
<value name="MFG" type="MDC_IDC_ENUM_MFG">MDT</value>
<value name="POLARITY_TYPE" type="MDC_IDC_ENUM_LEAD_POLARITY_TYPE">BI</value>
<value name="LOCATION" type="MDC_IDC_ENUM_LEAD_LOCATION_CHAMBER">RA</value>
<value name="CONNECTION_STATUS" type="MDC_IDC_ENUM_LEAD_STATUS">Connected</value>
<value name="MODEL" type="String">T 44 F</value>
<value name="MFG" type="MDC_IDC_ENUM_MFG">ELA</value>
<value name="POLARITY_TYPE" type="MDC_IDC_ENUM_LEAD_POLARITY_TYPE">BI</value>
<value name="LOCATION" type="MDC_IDC_ENUM_LEAD_LOCATION_CHAMBER">RV</value>
<value name="CONNECTION_STATUS" type="MDC_IDC_ENUM_LEAD_STATUS">Connected</value>
于 2012-11-09T13:46:21.083 に答える