【问题标题】:Getting specific value from multi node xml with xslt 1.0使用 xslt 1.0 从多节点 xml 获取特定值
【发布时间】:2021-04-22 18:56:51
【问题描述】:

我得到了以下xml;

  <output>
    <EmployeeList>
      <Employee>
        <EmployeeInfo>
          <Id>253</Id>
          <CarrierType>Employee</CarrierType>
          <ArrivalDateTime>2021-04-20T15:10:20</ArrivalDateTime>
          <ReadOnly>false</ReadOnly>
          <Freefield>
            <DefinitionId>50012</DefinitionId>
            <Name>PersoonType</Name>
            <value>2</value>
          </Freefield>
          <Freefield>
            <DefinitionId>50014</DefinitionId>
            <Name>Roostercode</Name>
            <value>TST04</value>
          </Freefield>
          <Freefield>
            <DefinitionId>50006</DefinitionId>
            <Name>Kaart lay-out</Name>
            <value>02_Medewerker_MBO</value>
          </Freefield>
          <Freefield>
            <DefinitionId>50007</DefinitionId>
            <Name>LoXS Master</Name>
            <value>false</value>
          </Freefield>
          <LastName>Tester4</LastName>
          <FirstName>Test</FirstName>
          <Gender>Unknown</Gender>
          <Language>nl</Language>
          <Email>ttester4@work.nl</Email>
        </EmployeeInfo>
      </Employee>
    </EmployeeList>
  </output>

注意 Freefield 节点。 我需要一个特定的 Freefield 节点的值,其中 DefinitionId=50014 或 Name=Roostercode。从这个 Freefield 节点我需要这个值;在本例中为“TST04”。

我尝试了以下代码的几种变体来选择值并将其分配给变量(rcode)。到目前为止,这总是会导致某种错误。

<xsl:variable name="rcode" select="/output/EmployeeList/Employee/EmployeeInfo/Freefield/[@Name='Roostercode']/value/text()"/>

任何想法来获得这个特定的价值?

也许我不能直接得到这个值,所以欢迎使用其他方法!

解决方案需要在 xslt 1.0 中

【问题讨论】:

    标签: xml select xslt


    【解决方案1】:

    您的口头描述 DefinitionId=50014 or Name=Roostercode 几乎可以转换为 XPath://Freefield[DefinitionId=50014 or Name='Roostercode']/value

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多