Validation 为什么赢了';这个简单的代码不能验证吗?

Validation 为什么赢了';这个简单的代码不能验证吗?,validation,xhtml,mobile,Validation,Xhtml,Mobile,下面我有一些非常简单的代码,我无法验证,错误对我来说没有什么意义。我在这里被难住了。有人能看到/理解这个问题吗 代码: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.2//EN" "http://www.openmobilealliance.org/tech/DTD/

下面我有一些非常简单的代码,我无法验证,错误对我来说没有什么意义。我在这里被难住了。有人能看到/理解这个问题吗

代码:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.2//EN" "http://www.openmobilealliance.org/tech/DTD/xhtml-mobile12.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
        <title>Test Mobile Site</title> 
        <link href="/css/site.css" rel="stylesheet" type="text/css" media="handheld" /> 
    </head> 
    <body> 
        <div id="test">Why won't you validate for me? :(</div>
    </body> 
</html>

测试移动站点
你为什么不帮我确认一下(
错误:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.2//EN" "http://www.openmobilealliance.org/tech/DTD/xhtml-mobile12.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
        <title>Test Mobile Site</title> 
        <link href="/css/site.css" rel="stylesheet" type="text/css" media="handheld" /> 
    </head> 
    <body> 
        <div id="test">Why won't you validate for me? :(</div>
    </body> 
</html>
错误:第18行第46列:输入不正确UTF-8,表示编码!字节:0x92 0x53 0x20 0x52

错误:第69行第17列:需要条件节包含或忽略关键字

错误:第73行第39列:xmlParseElementDecl:“空”、“任何”或“(”应为空)

错误:第73行第39列:外部子集中的内容错误


这是我第二次试图弄明白这一点,在做了足够的挖掘之后,我看到2008年7月W3C推出了xHTML Basic 1.1,它现在取代了开放移动联盟的xHTML Mobile Profile 1.2

这个故事的寓意是:您可以在web上的移动示例中找到使用MP 1.2 DTD的负载,但您需要使用:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.1//EN" "http://www.w3.org/TR/xhtml-basic/xhtml-basic11.dtd">

如果你想正确验证。希望这能帮助其他人不要浪费我的时间

参考资料:

是的,XHTML移动配置文件DTD是假的。您永远不会使用它验证任何文档

问题在于,这是XHTML表单模块的一个版本,OMA将其更改为添加一个属性,
inputmode
。他们通过将MS Word中的智能引用粘贴到模块中,成功地解决了这一问题:

NO REPRESENTATIONS OR WARRANTIES (WHETHER EXPRESS OR IMPLIED) ARE
MADE BY THE OPEN MOBILE ALLIANCE OR ANY OPEN MOBILE ALLIANCE MEMBER
OR ITS AFFILIATES REGARDING ANY OF THE IPR’S REPRESENTED ON THE OMA
并将其保存为cp1252,而不是XML实体的默认编码UTF-8。这将导致关于无效UTF-8序列的准确错误,这似乎会混淆验证程序,导致无法正确解析以下实体声明


(令人倍感滑稽的是,这种编码错误本身是由一个基本的语法错误——杂货商的撇号——触发的。但是,既然OMA是导致WAP惨败的小丑,那么这种程度的无能或许是意料之中的。)

您发布的代码中没有73行……是的,我也捕捉到了。但是您自己尝试一下,应该会得到相同的错误。W3C验证程序错误?错误在DTD包含的外部实体中。