我尝试过:
1. 使用HTML Tidy将HTML转换为XHTML / XML 2. 在XSLT中使用document(filename)读取特定的XHTML / XML文件 3. ...使用标准的nodeset命令访问“html / body / *”等
但这不起作用,因为:
1. XSLT(尝试过:libXSLT / xsltproc ...和Saxon)似乎无法处理XHTML文档作为外部文件(它看到xhtml DOCTYPE并拒绝将其解析为节点)。
好吧(我想)... XHTML只是XML,我只需要通过HTML Tidy处理它,然后说:
"output-xml yes ... output-html no ... output-xhtml no"
但如果你尝试这样做,HTML Tidy会忽略你,并强制使用html。它似乎硬编码为仅在输入最初为XML时才输出XML文件。
有没有办法:
1. 强制HTML Tidy遵守命令行参数并设置我要求的doctype 2. 强制XSLTproc将xhtml DOCTYPE解析为xml 3. ...其他聪明的方法?
注意:这必须在OS X上工作-它是iOS应用程序构建过程的一部分。这不应该是一个大问题,但例如任何仅限于Windows的工具不可用。我想使用标准的开源跨平台工具(如tidy、libxslt等)来实现这一目标。
DOMDocument
加载,同样的方法用于XSLT样式表,并使用PHP类直接处理转换,而不是通过xsltproc。 - user268396