2017-05-28 12 views
0

私はここにいるので、私はいくつかの間違いを犯すと私にあまり怒らないようにしてください。oiはxmlの小さなコードスニペットとxslファイルを作ります私のXMLファイルから小さなテーブル。私は各ループのための私の中に複数の条件があり、さらに2つの条件は、階層の上位レベルにあるノードまたは "親"の同じレベルの一部ではありませんあなたはそれで私を助けてくれますか?ここでは、XMLのコードは次のとおりです。xslファイルの各ループに複数の条件が含まれています

<?xml version="1.0"?> 
<?xml-stylesheet type="text/xsl" href="DZ07.xsl"?> 
<students> 
     <student> 
       <name> John </name> 
       <surname> Piterson </surname> 
       <age> 21 </age> 
       <exam> 
         <subject> 
            <grade> 5 </grade> 
            <code> IT210 </code> 
         </subject> 
         <subject> 
            <grade> 7 </grade> 
            <code> IT101 </code> 
         </subject> 
       </exam> 
     </student> 
     <student> 
       <name> Peter </name> 
       <surname> Max </surname> 
       <age> 26 </age> 
       <exam> 
         <subject> 
           <grade> 9 </grade> 
           <code> IT210 </code> 
         </subject> 
         <subject> 
           <grade> 10 </grade> 
           <code> IT101 </code> 
         </subject> 
       </exam> 
    </student> 
</students> 

とXSLコード:

<?xml version="1.0" encoding="ISO-8859-1"?> 
<xsl:stylesheet version="1.0" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
<xsl:template match="/"> 
<html> 
<head> 
</head> 
<body> 
<h2>Students that passed the exam:</h2> 
<table border="1"> 
<tr bgcolor="red"> 
    <th align="left">Name</th> 
    <th align="left">Surname</th> 
    <th align="left">Age</th> 
    <th align="left">Grade</th> 
    <th align="left">Code</th> 
</tr> 
<xsl:for-each select="students/student[age>=22 or 
students/student/exam/subject[grade>=6 and code=' IT210 ']]"> 
<tr bgcolor="yellow"> 
<td><xsl:value-of select="name"/></td> 
<td><xsl:value-of select="surname"/></td> 
<td><xsl:value-of select="age"/></td> 
<td><xsl:value-of select="grade"/></td> 
<td><xsl:value-of select="code"/></td> 
</tr> 
</xsl:for-each> 
</table> 
</body> 
</html> 
</xsl:template> 
</xsl:stylesheet> 
+0

を動作するはずまさにあなたは私たちが手助けしたい正確にどのように指定してください?文法、論理などに苦しんでいますか?質問でそれを言及する。 – Ray

+0

構文でこれは私が各ループのために書いたことは明らかにxmlをfirefoxで起動すると誰も私を助けないでしょう:) – Pera

答えて

0

これは

<xsl:for-each select="students/student[age>=22 or exam/subject[grade>=7 and code=' IT210 ']]"> 
<tr bgcolor="yellow"> 
<td><xsl:value-of select="name"/></td> 
<td><xsl:value-of select="surname"/></td> 
<td><xsl:value-of select="age"/></td> 
<td><xsl:value-of select="exam/subject/grade"/></td> 
<td><xsl:value-of select="exam/subject/code"/></td> 
</tr> 
</xsl:for-each> 
+0

まだ動作しませんが、助けてくれてありがとうございます – Pera

+0

ああ私の間違い:)私は1文字を忘れてしまった:)感謝の男。あなたの答えを受け入れる – Pera

関連する問題