我從xsd驗證中獲得了某種精神分裂行爲。此link顯示了聯機模式驗證程序中的xml和xsd +錯誤。當我與xmllintxsd驗證抱怨同時丟失屬性和錯誤屬性
xmllint --noout --nonet --schema devhelp2.xsd tester.devhelp2
運行這個本地我得到了類似的警告:
tester.devhelp2:5: element sub: Schemas validity error : Element '{urn:devhelp}sub', attribute 'name': The attribute 'name' is not allowed.
tester.devhelp2:5: element sub: Schemas validity error : Element '{urn:devhelp}sub', attribute 'link': The attribute 'link' is not allowed.
tester.devhelp2:5: element sub: Schemas validity error : Element '{urn:devhelp}sub': The attribute '{urn:devhelp}name' is required but missing.
tester.devhelp2:5: element sub: Schemas validity error : Element '{urn:devhelp}sub': The attribute '{urn:devhelp}link' is required but missing.
但是這有一個暗示,有一些錯誤的命名空間。
PS:
我可以使它通過完全丟棄的xmlns(從zvon.org截取)驗證。見here for the new online validator example - 我仍然想了解它,是不是有一個解決方案保留xmlns?
我也嘗試添加attributeFormDefault =「合格」我的XSD,因爲誤差約爲屬性,但它不會改變任何東西。 – ensonic
您的意圖是將屬性放在'urn:devhelp'命名空間中嗎? – kjhughes
是的。我想'urn:devhelp'是文檔中的默認命名空間。 – ensonic