我在玩XML模式並嘗試生成一個使用它的簡單有效文檔。無法編譯W3C提供的XSD架構;無法解析「ID」?
模式XSD由W3C提供,所以我無法想象任何事情實際上都是錯誤的。但xmllint
命令行以及任何數量的贈品在線驗證器上抱怨實際XSD(不是我的測試文檔)有:
The QName value '{http://www.w3.org/XML/1998/namespace}id' does not resolve to a(n) attribute declaration.
注意,它無法解決id
類型/名稱,它是基於XML的東西。我不是一個XML大師,所以我可能會在這裏錯過一些關於名稱空間/鏈接的明顯內容。這對我的測試文檔不是問題,因爲即使是一個簡單的測試文檔在XSD編譯位中也失敗了。
Here's the XSD file。下面是一個簡單的測試文檔:
<?xml version="1.0" encoding="UTF-8"?>
<ink xmlns="http://www.w3.org/2003/InkML"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.w3.org/TR/2011/REC-InkML-20110920/inkml.xsd">
</ink>
但是儘量爲我可能,我不能讓xmllint
或網上驗證,甚至讓過去的XSD解析/編譯階段,因爲XML ID類型是有點靠不住。
我對XML的理解是否不正確?我在SO(與另一個站點)上詢問,因爲最終這是爲了理解XML規範和依賴關係來編寫和驗證文檔。我會歡迎代碼片段做正確的事情,無論正確的事情是什麼。
想法?謝謝。
釘住它;說得通。非常感謝Petru。 – 2013-03-13 18:00:37