在XML-Schema而不是XML文档上执行XSLT

时间:2015-04-02 08:16:56

标签: xslt xsd

我知道XSLT处理器的输入是一个源XML文档,它将被转换为目标XML文档。

就我而言,我没有源XML文档,但我有源XML-SCHEMA,我想通过XSLT文档了解源XML-SCHEMA与目标源之间的映射。

因此,我想知道执行或者解析源XML-SCHEMA 上的XSLT 以获取此信息。

我对执行和解析XSLT文档之间的区别感到困惑 我认为,为了执行XSLT文档,XSLT处理器首先解析它以将其转换为另一个内部表示。
这个内部表示是什么?

我真的需要你的帮助

1 个答案:

答案 0 :(得分:0)

  

我真的很困惑执行和解析之间的区别   XSLT文档。

解析 ,语言(包括XML)就是将其分析为部分。

执行 ,语言(包括XSLT)将执行该语言指定的说明。

谈论执行XML是没有意义的,因为XML本身没有指定任何指令。

根据XSD提供的语法讨论 验证 XML是有意义的。

  

我认为首先执行XSLT文档,一个XSLT处理器   解析它以将其转换为另一个内部表示。什么是   这个内部表示??

需要知道XSLT处理器的内部表示,因为这是一个实现细节。

需要知道XSLT处理器解析输入XML文档,执行XSLT转换并生成输出。(它还解析代表XSLT,但这不是重点。)

输入XML文档通常不是XSD。您可能需要考虑与输入XML文档关联的XSD,以预测允许的输入变化。在罕见的情况下,您可能希望以某种方式转换XSD本身,并且您可以这样做,因为XSD以XML表示。在其他罕见的情况下,您可能希望以某种方式转换XSLT本身,并且您可以这样做,因为XSLT也以XML表示。但是,通常,XSLT转换的输入是一个普通的XML文档实例,而不是XSD,而不是其他XSLT。