元素类型“ xsl:stylesheet”必须由匹配的结束标记“ </xsl:stylesheet>”终止

时间:2019-08-12 13:02:58

标签: xslt-1.0

标题显示时出现错误,其他人也提出了同样的问题,但没有任何代码或太多信息。

输入XML:

a1  b2
a1  b4
a1  b5
a2  b2
a2  b4
a2  b5
...

我确保我的属性带有引号,并且my标签正确结束,并且我也具有结束标签。

<?xml version="1.0" encoding="UTF-8"?>
<csv-xml>
   <record line="1">
      <csv-field-1>1</csv-field-1>
      <csv-field-2>12345</csv-field-2>
      <csv-field-3>7654321</csv-field-3>
      <csv-field-4>1</csv-field-4>
      <csv-field-5>08/08/19</csv-field-5>
      <csv-field-6>08/08/19</csv-field-6>
   </record>
   <record line="2">
      <csv-field-1>2</csv-field-1>
      <csv-field-2>12345</csv-field-2>
      <csv-field-3>12345678</csv-field-3>
      <csv-field-4>3</csv-field-4>
   </record>
   <record line="3">
      <csv-field-1>2</csv-field-1>
      <csv-field-2>12345</csv-field-2>
      <csv-field-3>22345679</csv-field-3>
      <csv-field-4>7</csv-field-4>
   </record>
   <record line="4">
      <csv-field-1>2</csv-field-1>
      <csv-field-2>12345</csv-field-2>
      <csv-field-3>32345680</csv-field-3>
      <csv-field-4>6</csv-field-4>
   </record>
   <record line="5">
      <csv-field-1>2</csv-field-1>
      <csv-field-2>12345</csv-field-2>
      <csv-field-3>42345681</csv-field-3>
      <csv-field-4>2</csv-field-4>
   </record>
   <record line="6">
      <csv-field-1>3</csv-field-1>
      <csv-field-2>12345</csv-field-2>
      <csv-field-3></csv-field-3>
   </record>
</csv-xml>

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xsl:output method="xml"/>

    <xsl:template match="/">
        <name>
            <xsl:copy-of select="csv-xml/[record line='1']/csv-field-4"/>
        </name>
    </xsl:template>

  </xsl:stylesheet>

1 个答案:

答案 0 :(得分:0)

要从记录1获取字段4的值,请使用:

<xsl:value-of select="csv-xml/record[@line='1']/csv-field-4"/>

演示https://xsltfiddle.liberty-development.net/ncdD7nr