2012-03-26 2 views
0

노드의 값이 있으면 XLST로 값을 선택할 수 있는지 알고 싶습니다. XSLT에 대한 경험이 없지만 Microsoft BizTalk의 프로세스에이 기능이 필요합니다. 노드의 값이있는 경우 XSLT 값 선택

그래서 내가하고 싶은 것이의 예 : 값 <AD_7_OtherGeographicDesignation>OtherGeographicDesignation 2</AD_7_OtherGeographicDesignation>이 존재

<STF_11_OfficeHomeAddress> 
    <AD_0_StreetAddress>Street 1</AD_0_StreetAddress> 
    <AD_1_OtherDesignation>AD_1_OtherDesignation_0</AD_1_OtherDesignation> 
    <AD_2_City>City 1</AD_2_City> 
    <AD_3_StateOrProvince>Provence 1</AD_3_StateOrProvince> 
    <AD_4_ZipOrPostalCode>ZIP 1</AD_4_ZipOrPostalCode> 
    <AD_5_Country>Country 1</AD_5_Country> 
    <AD_6_AddressType>TYPE 1</AD_6_AddressType> 
    <AD_7_OtherGeographicDesignation>OtherGeographicDesignation 1</AD_7_OtherGeographicDesignation> 
</STF_11_OfficeHomeAddress> 
<STF_11_OfficeHomeAddress> 
    <AD_0_StreetAddress>Street 2</AD_0_StreetAddress> 
    <AD_1_OtherDesignation>OtherDesignation 2</AD_1_OtherDesignation> 
    <AD_2_City>City 2</AD_2_City> 
    <AD_3_StateOrProvince>Province 2</AD_3_StateOrProvince> 
    <AD_4_ZipOrPostalCode>Zip 2</AD_4_ZipOrPostalCode> 
    <AD_5_Country>Country 2</AD_5_Country> 
    <AD_6_AddressType>AddressType 2</AD_6_AddressType> 
    <AD_7_OtherGeographicDesignation>OtherGeographicDesignation 2</AD_7_OtherGeographicDesignation> 
</STF_11_OfficeHomeAddress> 

경우, <AD_0_StreetAddress>Street 2</AD_0_StreetAddress>을 선택합니다. 유일한 문제는 시퀀스가 ​​항상 동일하지 않으며 노드 <STF_11_OfficeHomeAddress>이 동일한 파일에서 11 번 발생할 수 있다는 것입니다.

누군가 나를 도와 줄 수 있습니까?

답변

2
//STF_11_OfficeHomeAddress[ 
    AD_7_OtherGeographicDesignation = 'OtherGeographicDesignation 2' 
]/AD_0_StreetAddress 

읽고 어떤 사무실/집 주소

  • (//STF_11_OfficeHomeAddress)
  • ... 그 특정 값에 해당 다른 지역 지정을 가지고 같은 ... ([AD_7_OtherGeographicDesignation = 'OtherGeographicDesignation 2'])
  • ... 번지을 선택하십시오. (/AD_0_StreetAddress) Jeni Tennison's XSLT tutorial pages 최초의 최소한의 기본 섹션을 통해
+0

감사합니다. 팁에 대한 – user1292411

1

이동, 당신은 그 (대신 풀 모드) 푸시 모드를하고 같은 당신의 일치 규칙과 술어를 사용하여이 직접 할 수 있습니다 :

<xsl:template match="AD_0_StreetAddress[../AD_7_OtherGeographicDesignation]"> 
    <xsl:value-of select="."/> 
+0

+1, OP와 일치하는 표현식이 여전히 약간 다르긴하지만. – Tomalak

+0

튜토리얼 페이지를 가져 주셔서 감사합니다. – user1292411