2014-05-20 1 views
-1

아래는 xml이며, "RetailExitDt"의 경우 최대 날짜를 찾고 "RetailExitDt"의 경우 최소 날짜를 찾아야합니다. xslt 1.0으로 정확히 어떻게 얻을 수 있는지 제안 해주십시오.xSL 파일의 최대 및 최소 날짜를 찾기위한 XSLT

<note RetailExitDt="2014-07-30" RetailIntroDt = "2014-04-19"> 
    </note> 
    <note RetailExitDt="2014-07-20" RetailIntroDt = "2014-04-09"> 
    </note> 
    <note RetailExitDt="2014-07-10" RetailIntroDt = "2014-04-29"> 
    </note> 

나는 아래의 코드 조각에 대한려고하지만 RetailExitDt가 속성이 아닌 요소를 제외하고는, 당신은 매우 거의 다 왔어

<xsl:variable name="latest"> 
      <xsl:for-each select="note"> 
      <xsl:sort select="RetailExitDt" order="descending" /> 
      <xsl:if test="position() = 1"> 
       <xsl:value-of select="RetailExitDt"/> 
      </xsl:if> 
      </xsl:for-each> 
     </xsl:variable> 
     <xsl:value-of select="$latest"/> 

답변

1

을 실패합니다.

<xsl:sort select="@RetailExitDt" order="descending" /> 
<xsl:if test="position() = 1"> 
    <xsl:value-of select="@RetailExitDt"/> 
</xsl:if> 
+0

불행히도 언급 된 변경 사항을 적용한 후에도 동일한 XML을로드 할 수 없습니다. xslt 전체를 여기에 복사하여 가 선택한 user3656432

+0

@ user3656432 서식을 유지하지 않으므로 주석에 코드를 게시하지 말고 원본 질문을 추가 정보 dd. 이 특별한 경우에 (a)' '를''바로 밑에 넣을 수는 없으며, 템플릿 안에 있어야하고 (b) 실제 XML은 아마도 루트 엘리먼트를'note' 엘리먼트 주위에 배치합니다 (그렇지 않으면 잘 형성되지 않을 것입니다). 그래서 for-each'select' 표현에서 이것을 고려할 필요가 있습니다. –

관련 문제