Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xml xsltproc处理通过tidy管道传输的HTML非常慢_Xml_Tidy_Xslt - Fatal编程技术网

Xml xsltproc处理通过tidy管道传输的HTML非常慢

Xml xsltproc处理通过tidy管道传输的HTML非常慢,xml,tidy,xslt,Xml,Tidy,Xslt,我正在使用xsltproc修复HTML文件,这些文件已使用tidy转换为格式良好的XML,但运行时糟糕得令人难以置信,每个文件的运行时间长达一分钟。我想知道tidy的XML输出是个问题,还是我的xsl很愚蠢,尽管它非常简单: <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:h="http://www.w3.org/1999/xhtml"> <xs

我正在使用xsltproc修复HTML文件,这些文件已使用tidy转换为格式良好的XML,但运行时糟糕得令人难以置信,每个文件的运行时间长达一分钟。我想知道tidy的XML输出是个问题,还是我的xsl很愚蠢,尽管它非常简单:

<xsl:stylesheet version="1.0"
 xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
 xmlns:h="http://www.w3.org/1999/xhtml">
    <xsl:output method="html" indent="yes" omit-xml-declaration="yes"/>
    <xsl:template match="@*|node()">
        <xsl:copy>
            <xsl:apply-templates select="@*|node()"/>
        </xsl:copy>
    </xsl:template>
    <xsl:template match="processing-instruction('php')"></xsl:template>
</xsl:stylesheet>


@user477399:这些输入文档是否具有正确的DOCTYPE声明?xml解析器是否正在尝试检索外部DTD,甚至执行验证?这本身不是XSLT问题,可能只是xml解析问题。验证!这似乎解决了我关闭验证时的问题。但是,请注意,几乎肯定不是验证本身花费了时间:W3C非常缓慢地提供DTD和模式的副本,以此鼓励人们为DTD和模式等很少更改的材料安装本地缓存,而不是每次都访问W3C服务器。有关更多信息,请参阅。