2014-06-20 1 views
0

XML 코드 : 내 XSL 코드의 작은 조각이 아래에 붙여XML 배열의 특정 요소를 FO 객체에 배치하는 방법은 무엇입니까?

<EUseSummary> 
    <Name>EUSummary</Name> 
    <Title1 index="1">Proposed</Title1> 
    <Title1 index="2">Proposed</Title1> 
    <Title1 index="3">Proposed</Title1> 
    <Title1 index="4">Standard</Title1> 
    <Title1 index="5">Standard</Title1> 
    <Title1 index="6">Standard</Title1> 
    <Title1 index="7">Compliance</Title1> 
    <Title1 index="8">CAHP</Title1> 
    <Title2 index="1">Design</Title2> 
    <Title2 index="2">Design</Title2> 
    <Title2 index="3">Design</Title2> 
    <Title2 index="4">Design</Title2> 
    <Title2 index="5">Design</Title2> 
    <Title2 index="6">Design</Title2> 
    <Title2 index="7">Margin</Title2> 
    <Title2 index="8">Design</Title2> 
    <Title3 index="0">End Use</Title3> 
    <Title3 index="1">Site (kWh)</Title3> 
    <Title3 index="2">Site (therms)</Title3> 
    <Title3 index="3">(kTDV/ft²-yr)</Title3> 
    <Title3 index="4">Site (kWh)</Title3> 
    <Title3 index="5">Site (therms)</Title3> 
    <Title3 index="6">(kTDV/ft²-yr)</Title3> 
    <Title3 index="7">(kTDV/ft²-yr)</Title3> 
    <Title3 index="8">(kTDV/ft²-yr)</Title3> 
    <Enduse1 index="0">Space Heating</Enduse1> 
    <Enduse1 index="1">246</Enduse1> 
    <Enduse1 index="2">286.5</Enduse1> 
    <Enduse1 index="3">21.04</Enduse1> 
    <Enduse1 index="4">255</Enduse1> 
    <Enduse1 index="5">296.8</Enduse1> 
    <Enduse1 index="6">21.80</Enduse1> 
    <Enduse1 index="7">0.76</Enduse1> 
    <Enduse1 index="8">23.18</Enduse1> 
    </EUseSummary> 

. 이것은 테이블 내의 하나의 셀을 정의합니다. 궁극적으로 모든 Enduse 값을 위치 인덱스 = 8로 잡고 테이블의 나머지 셀에 배치하려고합니다.

<fo:table-row xsl:use-attribute-sets="Row"> 
     <fo:table-cell xsl:use-attribute-sets="dataCell"> 
     <fo:block> 
     <xsl:value-of select="/SDDXML/Model/Proj/EUseSummary/Enduse1/*[@index=8]"/>                                              
     </fo:block> 
</fo:table-cell> 

가 내가 돌아 기대하고있어 더 큰 테이블이 나는 천국 '에서 셀 값 (이다 : 지금, 난 그냥 XML의 대상에서 특정 값을 선택하는 방법에 관해서는 약간의 설명이 필요 t는의에 대한 코드) 제공 : 23.18

감사합니다,

현재 XPath는이 끝나는
+0

잡아에게 XSL에 좋은 책을 그것을 읽어

대신 사용해보십시오. Enduse1 [@ index = '8']에서 템플리트 매치를 수행하십시오 ... –

답변

1

...

Enduse1/*[@index=8] 

을하지만 /* 그것이 찾고 의미 자식 요소 아래 Enduse1 아무도 없다! 요소가 아닌 텍스트 노드 만 있습니다.

<xsl:value-of select="/SDDXML/Model/Proj/EUseSummary/Enduse1[@index=8]"/> 
관련 문제