2014-03-03 2 views
0

내 XML번호가 매겨진 목록 XSL을 만드는 방법

<section> 
    <orderedlist> 
     <listitem> 
     <para>Lorem ipsum dolor sit amet, consectetur adipisicing elit, 
     sed do eiusmod tempor incididunt ut labore et dolore magna 
     aliqua.</para> 
     </listitem> 

     <listitem> 
     <para>Ut enim ad minim veniam, quis nostrud exercitation ullamco 
     laboris nisi ut aliquip ex ea commodo consequat.</para> 
     </listitem> 

     <listitem> 
     <para>Duis aute irure dolor in reprehenderit in voluptate velit 
     esse cillum dolore eu fugiat nulla pariatur.</para> 
     </listitem> 

     <listitem> 
     <para>Excepteur sint occaecat cupidatat non proident, sunt in 
     culpa qui officia deserunt mollit anim id est laborum.</para> 
     </listitem> 
</orderedlist> 
</section> 

내 XLS

<xsl:stylesheet version = '1.0' 
xmlns:xsl='http://www.w3.org/1999/XSL/Transform'> 

<xsl:template match="listitem/para"> 
<ol> 
    <xsl:for-each select="//para"> 
    <li> 
    <xsl:value-of select="."/> 
    </li> 
</ol> 
</xsl:template> 
</xsl:stylesheet> 

출력 1 4 개 사본을 얻을 수 있지만, 1 단 하나를 원한다. 무엇이 잘못인가? 이러한 노동과 비만

  1. 가 lorem ipsum의 당근, 강화 된 리베이트,하지만 그들은 occaecat 시간과 활력을 수행합니다. 운동을 nostrud 수년에 와서 이상
  2. 는 학군 그것에서 aliquip 이점을 작동하지 않을 수 있습니다.
  3. 숙제 cupidatat는 소비자가 어떤 결과 비행 축구를 생산하지 쾌락 cillum 통증을 발견하고자하는 경우.
  4. Excepteur는 cupidatat 흑인 부드러운 마음이 노력을 포기하는 것입니다 이러한 서비스에 대한 책임이 있습니다 excepteur 없습니다. 템플릿을 일치합니다
+0

당신의 예상 출력 XML은 무엇입니까? 당신이 그것을 게시 할 수 있을까? lennon310 @ –

+0

은 - 당신은가 lorem ipsum의 언급하고 있는가? 즉 기본적으로 더미 텍스트입니다. http://www.lipsum.com/ –

+0

@DanielHaley 내 나쁜 죄송합니다. 1은 코멘트를 삭제하고 투표를 철회. 감사합니다 – lennon310

답변

0

1, 당신이 원하는 생각합니다. orderedlist 수준에서 ol을 만들고 각 para에서 li을 만들 수 있습니다.

예를

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> 
    <xsl:output indent="yes"/> 
    <xsl:strip-space elements="*"/> 

    <xsl:template match="orderedlist"> 
     <ol> 
      <xsl:apply-templates/> 
     </ol> 
    </xsl:template> 

    <xsl:template match="listitem/para"> 
     <li><xsl:apply-templates/></li> 
    </xsl:template> 

</xsl:stylesheet> 
1

템플릿 태그는 4 개 태그가로 4 회를 가지고 있으며,이 문서 전체에서 보이는 그 //para 4 태그 후 반환합니다. 당신은 문서의 모든 listitem/para에 대해 별도의 ol를 만드는

<xsl:template match="listitem"> 
<ol> 
    <xsl:for-each select="para"> 
    <li> 
    <xsl:value-of select="."/> 
    </li> 
    </ol> 
    </xsl:template> 
</xsl:stylesheet> 
+1

하지만 다음 목록은 제대로 1 ... 1 번호가되지 ... – user3376375

관련 문제