网站 W3C 验证器显示“DOCTYPE 声明中的公共标识符和系统标识符不匹配”,该怎么办?

Website W3C validator shows "Mismatch between Public and System identifiers in the DOCTYPE declaration", what to do?

提问人:Jan Horčík 提问时间:10/15/2014 最后编辑:unorJan Horčík 更新时间:10/15/2014 访问量:563

问:

我正在尝试在 W3C 验证器中验证我的网站 Hybrid.cz。不幸的是,由于“DOCTYPE 声明中的公共标识符和系统标识符不匹配”,它不断显示相同的错误。它说:

本文档使用不一致的 DOCTYPE 声明。系统 标识符 w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd 声明 XHTML 1.0 过渡文档类型,但关联的 Public 标识符 -//W3C//DTD XHTML+RDFa 1.0 Transitional//EN 不匹配 此文档类型。

建议的公共标识符 w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd 是 -//W3C//DTD XHTML 1.0 过渡//EN。

我的DOCTYPE是:

<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML+RDFa 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>

我在 DOCTYPES 方面没有真正的经验。但我希望能够在站点内使用 RDFa 属性。我该怎么办?

xhtml 文档类型 w3c-验证 rdfa

评论

0赞 unor 10/15/2014
请注意,您也可以切换到 XHTML5,它默认允许 RDFa

答:

1赞 Quentin 10/15/2014 #1

你找到一个DTD,它支持你想使用的XML语言的混合,然后你为它查找正确的Doctype。

搜索会找到 XHTML+RDFa 1.1 - Second Edition 规范。

这将 Doctype 显示为:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.1//EN"
                         "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-2.dtd">