2014-09-01 55 views
0

當與方案驗證XML DOM文檔:元 '富':不預期此元素」預期是({URL} FOO,{URL}巴)之一

$結果= $文獻 - > schemaValidate( '../../ DTE /文件/ scheme.xsd');

我得到像一個警告消息:

警告:DOM文檔:: schemaValidate():元素「富':該元素不是預期的,預期是({url} foo,{url} bar)之一。

'foo'和'{url} foo'之間的區別以及如何解決此警告?

+0

字面意思是'{url}',或者你只是使用了一個錯誤的(默認)名稱空間而實際上有一個uri嗎? – Wrikken 2014-09-01 17:02:04

+0

沒有一個,它實際上代表了一個正確的命名空間 – mikl 2014-09-01 17:04:47

+1

如果是命名空間,我仍然會說你的'foo'節點的命名空間與所需的命名空間不匹配。小心小錯別字! – Wrikken 2014-09-01 17:08:02

回答

5

符號{url}foo用於指名稱空間部分爲url且其本地名稱部分爲foo的擴展名稱。對於詹姆斯克拉克來說,它有時被稱爲「克拉克符號」,並對其進行了推廣。當使用這種符號時,非限定名稱有時會使用符號{}foo引用,有時(如在錯誤消息中)使用符號foo引用。

錯誤消息告訴你,它已經發現了不合格的名稱foo的元素,在一個位置,它期待在命名空間url命名要麼foobar一個命名空間元素的Qualfied。可能的原因:XML實例缺少必需的名稱空間聲明。

相關問題