2017-11-04 4 views
-2

안녕하세요, xsl 아카이브를 통해 XML 아카이브를 변환하려고합니다. XML의 내용을 표시하는 테이블을 만드는 것이지만 값을 표시 할 수 없습니다. 사람은 "복잡성"와 "subjet"라는 두 개의 컬럼, 내 XML 코드는 이것이다 :xsl을 통해 XML 콘텐츠에 액세스하는 방법

<?xml version="1.0"?> 
<?xml-stylesheet type="text/xsl" href="../xsl/showQue``stions.xsl"?> 
<assessmentItems> 
<assessmentItem complexity="3" subject="mikologia"> 
    <itemBody> 
     <p>Zein Amanita da jangarria?</p> 
    </itemBody> 
    <correctResponse> 
     <value>Caesarea</value> 
    </correctResponse> 
    <incorrectResponses> 
     <value>Phalloides</value> 
     <value>Muscaria</value> 
     <value>Virosa</value> 
    </incorrectResponses> 
</assessmentItem> 
<assessmentItem complexity="3" subject="mikologia"> 
    <itemBody> 
     <p>Tripakiek zer dute kapela azpian?</p> 
    </itemBody> 
    <correctResponse> 
     <value>Eztenak</value> 
    </correctResponse> 
    <incorrectResponses> 
     <value>Filamenduak</value> 
     <value>Himenioa</value> 
     <value>Hodiak</value> 
    </incorrectResponses> 
</assessmentItem> 
<assessmentItem complexity="5" subject="mikologia"> 
    <itemBody> 
     <p>Eranztuna du</p> 
    </itemBody> 
    <correctResponse> 
     <value>Galanpernak</value> 
    </correctResponse> 
    <incorrectResponses> 
     <value>Gibel urdinak</value> 
     <value>Esnegorriak</value> 
     <value>Errotariak</value> 
    </incorrectResponses> 
    </assessmentItem> 
</assessmentItems> 

을이 내 XSL입니다 : 표에서

<?xml version="1.0"?> 
    <xsl:stylesheet version="1.0" 
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
    <xsl:template match="/"> 
    <HTML> 
     <BODY> 
      <h2>Galderak</h2> 
      <TABLE border="1"> 
       <TR> 
        <TH>Testua</TH> 
        <TH>Erantzun zuzena</TH> 
        <TH>Erantzun okerrak</TH> 
        <TH>Zailtasuna</TH> 
        <TH>Arloa</TH> 
       </TR> 
       <xsl:for-each select="/assessmentItems/assessmentItem" > 
        <TR> 
         <TD><FONT SIZE="2" COLOR="red" FACE="Verdana"> 
          <xsl:value-of select="itemBody/p"/> <BR/> 
          </FONT> 
         </TD> 
         <TD><FONT SIZE="2" COLOR="orange" FACE="Verdana"> 
          <xsl:value-of select="correctResponse"/> <BR/> 
          </FONT> 
         </TD> 
         <TD> 
          <FONT SIZE="2" COLOR="pink" FACE="Verdana"> 
          <xsl:value-of select="incorrectResponses/value[1]"/><BR/> 
          <xsl:value-of select="incorrectResponses/value[2]"/> <BR/> 
          <xsl:value-of select="incorrectResponses/value[3]"/> <BR/> 
          </FONT> 
         </TD> 
         <TD><FONT SIZE="2" COLOR="green" FACE="Verdana"> 
          <xsl:value-of select="complexity"/> <BR/> 
          </FONT> 
         </TD> 
          <TD><FONT SIZE="2" COLOR="blue" FACE="Verdana"> 
          <xsl:atribute select="subject"/> <BR/> 
          </FONT> 
         </TD> 
        </TR> 
       </xsl:for-each> 
      </TABLE> 
     </BODY> 
    </HTML></xsl:template> 
    </xsl:stylesheet> 

이 두 가지를 제외한 모든 컨텐츠를 표시됩니다 colums. - 기호

<xsl:value-of select="path/to/element/@attribute1" /> 

참고 '@'당신의 예에서 당신에게

+1

영어로 질문을 번역하시기 바랍니다. – panther

답변

0

감사 복잡성과 주제는 예를 들어, 참조 할 다른 조금의 XPath 구문을 필요 XML 속성입니다.

은 따라서, 특정 컬럼은 정의 될 필요가있다 :

<TD> 
    <FONT SIZE="2" COLOR="green" FACE="Verdana"> 
     <xsl:value-of select="@complexity"/> 
     <BR/> 
    </FONT> 
</TD> 
<TD> 
    <FONT SIZE="2" COLOR="blue" FACE="Verdana"> 
     <xsl:value-of select="@subject"/> 
     <BR/> 
    </FONT> 
</TD> 
+0

고맙습니다. 나는 ive가 그것을 시도했다라고 생각했다. 그러나 내가 didnt하는 것처럼 보인다 지금 그렇게 youuu에게 감사한다 작동한다! –