这个
project
我处理的是随机的HTML文件,尽可能地将它们转换为XHTML,并用一些XML元数据包装它们。由于生成的XML文件不是XHTML文档,因此doctype被删除。但是,当从XML文件检索打包的XHTML时,应该重新插入doctype。
因为这些是随机的HTML文件,所以它们可以包含任何内容,但我不希望存储或确定原始的DTD。我认为应该使用框架集DTD,因为它只是过渡DTD的超集,对所有内容都有效。但是,当使用
W3C XHTML Validator
对于同一文档,使用过渡DTD传递,但使用框架集DTD失败。
我已经将文档精简到了最低限度,这样我就可以复制问题了。以下是框架集版本:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:html="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Make The Move</title>
</head>
<body style="background: none;">
<h3 id="why">Why should I move to Linux?</h3>
</body>
</html>
这里是过渡版本:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:html="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Make The Move</title>
</head>
<body style="background: none;">
<h3 id="why">Why should I move to Linux?</h3>
</body>
</html>
请解释为什么会发生这种情况,以及我应该如何进行。