2017-01-31 2 views
1

Я хочу, чтобы выбрать данные из «БВ: EFW2_Year_End_Submitter_Data» узел из следующего XML:XSLT, чтобы выбрать необходимые данные

<?xml version='1.0' encoding='UTF-8'?> 
 
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"> 
 
    <env:Body> 
 
     <wd:Get_EFW2_Year_End_Employer_Filing_Data_Response 
 
      xmlns:wd="urn:com.workday/bsvc" 
 
      wd:version="v27.2"> 
 
      <wd:Request_Criteria> 
 
       <wd:Company_Reference> 
 
        <wd:ID wd:type="WID">74b0eaa34f93109eb7ee051fc8a981b2</wd:ID> 
 
       </wd:Company_Reference> 
 
       <wd:Calendar_Year_Reference> 
 
        <wd:ID wd:type="WID">f9adeb241f021000180055333a6b00be</wd:ID> 
 
        <wd:ID wd:type="Calendar_Year_ID">2016</wd:ID> 
 
       </wd:Calendar_Year_Reference> 
 
       <wd:Exclude_Opt_Out_Workers>1</wd:Exclude_Opt_Out_Workers> 
 
      </wd:Request_Criteria> 
 
      <wd:Response_Data> 
 
       <wd:EFW2_Year_End_Employer_Filing> 
 
        <wd:Company_Reference> 
 
         <wd:ID wd:type="WID">74b0eaa34f93109eb7ee051fc8a981b2</wd:ID> 
 
        </wd:Company_Reference> 
 
        <wd:EFW2_Year_End_Employer_Filing_Data> 
 
         <wd:Calendar_Year_Reference> 
 
          <wd:ID wd:type="WID">f9adeb241f021000180055333a6b00be</wd:ID> 
 
          <wd:ID wd:type="Calendar_Year_ID">2016</wd:ID> 
 
         </wd:Calendar_Year_Reference> 
 
         <wd:EIN>746000203</wd:EIN> 
 
         <wd:Kind_of_Employer_Reference> 
 
          <wd:ID wd:type="WID">82014e83bea2415fb8ce52a8459c6c4b</wd:ID> 
 
          <wd:ID wd:type="Kind_of_Employer_ID">None apply</wd:ID> 
 
         </wd:Kind_of_Employer_Reference> 
 
         <wd:Third_Party_Sick_Pay_Indicator>1</wd:Third_Party_Sick_Pay_Indicator> 
 
         <wd:EFW2_Year_End_Submitter_Data> 
 
          <wd:EIN>746000203</wd:EIN> 
 
         </wd:EFW2_Year_End_Submitter_Data> 
 
         <wd:EFW2_Year_End_Employer_Box_Data> 
 
          <wd:Box_Description>Dependent care benefits</wd:Box_Description> 
 
          <wd:Amount>2229162.52</wd:Amount> 
 
         </wd:EFW2_Year_End_Employer_Box_Data> 
 
         <wd:EFW2_Year_End_Employer_Box_Data> 
 
          <wd:Box_Description>Federal income tax withheld</wd:Box_Description> 
 
          <wd:Amount>134782324.03</wd:Amount> 
 
         </wd:EFW2_Year_End_Employer_Box_Data> 
 
         <wd:EFW2_Year_End_Employer_Box_Data> 
 
          <wd:Box_Description>Medicare tax withheld</wd:Box_Description> 
 
          <wd:Amount>13689167.58</wd:Amount> 
 
         </wd:EFW2_Year_End_Employer_Box_Data> 
 
        </wd:EFW2_Year_End_Employer_Filing_Data> 
 
       </wd:EFW2_Year_End_Employer_Filing> 
 
      </wd:Response_Data> 
 
     </wd:Get_EFW2_Year_End_Employer_Filing_Data_Response> 
 
    </env:Body> 
 
</env:Envelope>

Может ли один помочь мне в предоставлении XPath что я должен упомянуть в XSLT. Я использую следующий XSLT для получения данных из «wd: EFW2_Year_End_Submitter_Data», однако я не могу получить требуемые данные.

<?xml version="1.0" encoding="UTF-8"?> 
 
<xsl:stylesheet 
 
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
 
    xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" 
 
    xmlns:wd="urn:com.workday/bsvc" 
 
    xmlns:xs="http://www.w3.org/2001/XMLSchema" exclude-result-prefixes="xs" 
 
    xmlns:xtt="urn:com.workday/xtt" 
 
    xmlns:etv="urn.com.workday/etv" 
 
    version="2.0" 
 
    xmlns:this="urn:I00179.xsl"> 
 
    <xsl:output omit-xml-declaration="yes"/> 
 
    <xsl:strip-space elements="*"/> 
 
    
 
    
 
    <xsl:output method="text"/> 
 
    <xsl:variable name="NEWLINE" select="'&#xD;&#xA;'"/> 
 
    <xsl:variable name="SINGLESPACE"> 
 
     <xsl:text> </xsl:text> 
 
    </xsl:variable>  
 
    
 
    <xsl:variable name="Direction_Left"><xsl:text>LEFT</xsl:text></xsl:variable> 
 
    <xsl:variable name="Direction_Right"><xsl:text>RIGHT</xsl:text></xsl:variable> 
 
    <xsl:variable name="Record_Identifier"><xsl:text>RA</xsl:text></xsl:variable> 
 
    
 
    
 
    <xsl:template match="wd:Get_EFW2_Year_End_Employer_Filing_Data_Response/wd:Response_Data/wd:EFW2_Year_End_Employer_Filing/wd:EFW2_Year_End_Employer_Filing_Data"> 
 
    
 
     <xsl:value-of select="$Record_Identifier"/> 
 
     
 
     <xsl:value-of select="wd:EFW2_Year_End_Submitter_Data/wd:EIN"/> 
 
     
 
      
 
     <xsl:value-of select="$NEWLINE"/> 
 
      
 
     
 
     
 
    </xsl:template> 
 
</xsl:stylesheet>

Спасибо!

+0

_Для следующего XPATH все данные выбираются_ - Вы уверены? То, что вы, вероятно, видите, является результатом встроенных шаблонов XSLT, но нельзя сказать точно, так как вы не предоставили нам достаточно информации для воспроизведения проблемы. (См. Http://stackoverflow.com/help/mcve) –

+1

Ваш шаблон ничего не соответствует, потому что 'wd: Get_EFW2_Year_End_Employer_Filing_Data_Response' не является корневым элементом. Обратите внимание, что существует разница между * matching * и * выбором *. Не совсем ясно, о чём вы говорите. Каков результат, который вы ожидаете получить в данном примере? –

+0

модифицировано вопрос. Можете ли вы взглянуть на него. Благодарю. – Krish

ответ

0

Как насчет //wd:City? Дайте более подробную информацию, если вам нужен лучший ответ.

+0

модифицировано вопрос. Можете ли вы взглянуть на него. Благодарю. – Krish

Смежные вопросы