2012-03-23 51 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

相关问题