Xml Xalan XSD转换花费的时间太长
我试图使用GML XSLT子集工具来转换GML XSD模式。平台是32位的Windows7 它被第一个命令卡住(到目前为止,在我的桌面上至少有10个小时): 是否有一个选项可以加速模式感知转换 已经尝试过的替代工具:萨克森HE、Altova XMLSpy。GML架构上的内存都已用完 编辑:还有一些事实:Xml Xalan XSD转换花费的时间太长,xml,xslt,xsd,xalan,gml,Xml,Xslt,Xsd,Xalan,Gml,我试图使用GML XSLT子集工具来转换GML XSD模式。平台是32位的Windows7 它被第一个命令卡住(到目前为止,在我的桌面上至少有10个小时): 是否有一个选项可以加速模式感知转换 已经尝试过的替代工具:萨克森HE、Altova XMLSpy。GML架构上的内存都已用完 编辑:还有一些事实: GML版本是3.2.1 GML XSLT子集工具来自规范中的附录G XSLT工具使用XSLT版本1.0 解决性能问题需要细节,而您没有给出任何细节。首先,源文档(即GML模式)有多大,分配了多少
解决性能问题需要细节,而您没有给出任何细节。首先,源文档(即GML模式)有多大,分配了多少内存 考虑到您正试图处理XSD文件作为输入,而这通常是一项复杂的任务,我认为主要的问题是样式表的算法复杂性。这种问题通常可以通过明智地使用钥匙来解决
如果GML模式的大小超过几兆字节,我会感到惊讶,因此内存问题不太可能仅仅是源文档的大小;它更可能是在样式表本身中创建的临时数据结构。但是如果没有代码,就无法解决这个问题 Xalan是XSLT 1.0处理器,Saxon是XSLT 2.0处理器,但不支持模式,那么为什么要问“一个可以加速支持模式转换的选项”?简单地将XSD模式作为输入进行处理不是模式感知处理。至于内存问题,对于Java应用程序,可以使用命令行选项来增加内存,请参阅。输入文档有多大,运行Saxon时您授予Java应用程序的内存是多少?嗨,Michael,我很荣幸有Saxon的创建者回答我的问题!非常感谢。GML模式在磁盘上确实只有约400kb,但我怀疑它包括在线模式。如上所述,XSLT子集工具位于3.2.1规范的附录G中,但为了便于参考,我在此处包含了所有GML xsd文件和XSLT文件:。我在SaxOne中使用的命令是>Transform-o:gml.dep gml.xsd,这取决于具体情况。xsltI今天不打算讨论这个问题,我也没有办法标记SO帖子以供将来关注,因此请将此作为对的支持请求提出来。
>xalan -o gml.dep gml.xsd depends.xslt