2012-03-23 41 views
-2

代碼這是我的XML代碼:這樣我們就可以在XSLT

<define name="Procedure"> 
    <element name="Procedure" radlex:id="RID1559" radlex:match="Exact"> 
     <element name="View" radlex:id="RID10420" radlex:match="Exact"> 
      <optional> 
       <element name="Supine" radlex:id="RID10421" radlex:match="Exact" snomed:id="416733000"> 
        <empty/> 
       </element> 
      </optional> 
      <optional> 
       <element name="Upright" radlex:id="RID10455" radlex:match="Exact"> 
        <empty/> 
       </element> 
      </optional> 
      <text/> 
     </element> 
     <text/> 
    </element> 
</define> 

我寫這樣我的XSLT代碼。這是寫我的代碼的正確方法嗎? 這是在XSLT中使用if條件的正確方法嗎?

是否有可能像這樣的代碼:

是否可以讀取所有標籤(比如elementoptionalempty)通過使用for each循環?

而如果是可選的,那麼我想它來創建HTML中的複選框;我希望它能爲所有人做到這一點。

<xsl:template match="rng:define"> 
    <table> 

    <xsl:for-each select="rng:element[@name='Procedure']"> 
     <span style="color:blue;"> 
     <tr> 
      <td> 
     <xsl:text> Procedure </xsl:text> 
      </td> 
     </tr> 
     <xsl:if test="rng:element &gt; (rad:id='RID10420')"> 
      <tr> 
       <td> 
      <xsl:text> View </xsl:text> 
       </td> 
      </tr> 
      <tr> 
      <td> 
       <input type="text" name="View"></input> 
      </td> 
      </tr> 
     </xsl:if> 
     <xsl:if test="rng:element/rng:optional &gt; (rad:id='RID10421')"> 
      <tr> 
      <td> 
      <input text="Supine" name="cSupine" type="checkbox" class="checkbox" id="cSupine" value="checkbox"/> 
       <xsl:text> Supine </xsl:text> 
      </td> 
      </tr> 
     </xsl:if> 
     <xsl:if test="rng:element/rng:optional &gt; (rad:id='RID10455')"> 
      <tr> 
      <td> 
      <input text="Upright" name="cUpright" type="checkbox" class="checkbox" id="cUpright" value="checkbox"/> 
       <xsl:text> Upright </xsl:text> 
      </td> 
      </tr> 
     </xsl:if> 
     </span> 
    </xsl:for-each> 
    </table> 
    </xsl:template> 
+0

我不明白你是從我們:) – Lukasz 2012-03-23 08:30:19

+1

想什麼你可能會發現,我們理解你的問題更好,如果你在每個句子的開始和一個句號或問題以大寫字母其分解成句子在最後標記。 – 2012-03-23 08:38:36

+0

你有沒有考慮過只是測試你的代碼? – Marcin 2012-03-23 16:07:07

回答

2

一個很好的方法,以瞭解「我們可以在XSLT代碼」是閱讀上的XSLT一本好書,在這個標籤中讀出任何好的答案,練習一點點 ...

如果你想只是有可能的寫作風格的印象,確實也有看FXSL庫的代碼 - 你會得到一個特定的編碼風格的感覺,我相信這是不壞。

例如this code在純XSLT 2.0中實現了通用的表驅動的LR(1)解析器。

而且this code計算600851475143的最大質因數(純XSLT解決一個不錯的項目歐拉問題)。

您可能也有興趣成爲熟悉XPath,它是XSLT的最顯著的組成部分。

Here是一個純粹的XPath實現一個二叉搜索樹數據類型。

而且here是一個純粹的XPath實現一個的設置類型。

最後,here是流行的FizzBu​​zz問題的XPath解決方案。

+0

@ Dimitre Novatchev我想使用xslt將上面的xml代碼轉換成html代碼 – user1283110 2012-03-26 06:39:30

相關問題