合并XML和XSD然后应用XSL

时间:2011-03-07 07:54:39

标签: xml xslt xsd

我有一个xml文件,该文件应该只包含数据和xsd文件,用于验证和构建页面。换句话说,我将xsl应用于xsd,但同时我从xml获取字段的值(至少这是我想要的)。

将xsl应用于xsd不是问题。但它只有在我从浏览器中调用“sample.xsd”文件时才有效,这不是我想要的。我想调用“sample.xml”。它创建了一个html输出,它根据xsd文件和xml中的值构建。

更多解释:

认为我有一个XML文件。并在其中定义了XSLT和XSD文件。当我从浏览器调用这个XML文件时,我想应用样式 - 让我说创建html输出(如:根据此XSD文件中的预定义节点创建输入字段) - 到XSD文件然后从XML文件中将值放到这些字段中。最后它涉及到:我想将XSLT应用于XML(读取数据)和XSD(创建输出)。有可能吗?

1 个答案:

答案 0 :(得分:0)

无论我找到什么东西来解决它。

使用适当的命名空间,您可以在XSLT文件中使用document()函数并应用xpath -or,无论它是什么,例如:

<xsl:for-each select="document('sample.xsd')/xs:schema/xs:complexType[@name='fieldtype']/xs:choice/child::*">
        <xsl:value-of select="@name"/>
</xsl:for-each>

仍然可以在其他情况下使用xml文件。我希望这有助于某人