我的Xml未针对XSD进行正确验证。 我希望浏览器在打开xml文件时至少可以通过某种通用错误消息
我的Xml文件如下 note.Xml
<?xml version="1.0"?>
<note
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:SchemaLocation="note.xsd">
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
我的Xsd文件如下 note.xsd
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.w3schools.com"
xmlns="http://www.w3schools.com"
elementFormDefault="qualified"><xs:element name="note">
<xs:complexType>
<xs:sequence>
<xs:element name="from" type="xs:string"/>
<xs:element name="heading" type="xs:string"/>
<xs:element name="body" type="xs:string"/>
</xs:sequence>
<xs:attribute name="to" type="xs:string" use="required"/>
</xs:complexType>
</xs:element></xs:schema>
note.xml和note.xsd文件都在同一个文件夹中。 有人可以指导我为什么没有收到任何错误?那么任何人都可以帮我如何使用xsd验证我的xml文件?谢谢,
答案 0 :(得分:1)
三个问题:
xsi:schemaLocation
属性值
应该是一个白色空间分开
命名空间URI和模式的序列
文档URI,如xsi:schemaLocation="http://www.w3schools.com note.xsd"
您写道:
我希望浏览器能够通过 至少某种一般性错误
目前尚不清楚你究竟是谁 使用一些验证工具。没有 浏览器在何时验证XML Schema 你打开一个XML文档。
http://www.w3schools.com
命名空间
URI,但您的文档为null
(或空)名称空间URI。这将
最终导致验证错误,即使
你用的是
xsi:noNamespaceSchemaLocation
而不是xsi:schemaLocation
属性。也许你想添加一个
默认名称空间声明
你的输入源就像
xmlns="http://www.w3schools.com"
...