🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# XSD - &lt;schema&gt; 元素 &lt;schema&gt; 元素是每一个 XML Schema 的根元素。 ## &lt;schema&gt; 元素 &lt;schema&gt; 元素是每一个 XML Schema 的根元素: ``` <?xml version="1.0"?> <xs:schema> ... ... </xs:schema> ``` &lt;schema&gt; 元素可包含属性。一个 schema 声明往往看上去类似这样: ``` <?xml version="1.0"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.w3cschool.cc" xmlns="http://www.w3cschool.cc" elementFormDefault="qualified"> ... ... </xs:schema> ``` 以下代码片段: ``` xmlns:xs="http://www.w3.org/2001/XMLSchema" ``` 显示 schema 中用到的元素和数据类型来自命名空间 "http://www.w3.org/2001/XMLSchema"。同时它还规定了来自命名空间 "http://www.w3.org/2001/XMLSchema" 的元素和数据类型应该使用前缀 xs: 这个片断: ``` targetNamespace="http://www.w3cschool.cc" ``` 显示被此 schema 定义的元素 (note, to, from, heading, body) 来自命名空间: "http://www.w3cschool.cc"。 这个片断: ``` xmlns="http://www.w3cschool.cc" ``` 指出默认的命名空间是 "http://www.w3cschool.cc"。 这个片断: ``` elementFormDefault="qualified" ``` 指出任何 XML 实例文档所使用的且在此 schema 中声明过的元素必须被命名空间限定。 ## 在 XML 文档中引用 Schema 此 XML 文档含有对 XML Schema 的引用: ``` <?xml version="1.0"?> <note xmlns="http://www.w3cschool.cc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.w3cschool.cc note.xsd"> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend!</body> </note> ``` 下面的代码片断: ``` xmlns="http://www.w3cschool.cc" ``` 规定了默认命名空间的声明。此声明会告知 schema 验证器,在此 XML 文档中使用的所有元素都被声明于 "http://www.w3cschool.cc" 这个命名空间。 一旦您拥有了可用的 XML Schema 实例命名空间: ``` xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ``` 您就可以使用 schemaLocation 属性了。此属性有两个值。第一个值是需要使用的命名空间。第二个值是供命名空间使用的 XML schema 的位置: ``` xsi:schemaLocation="http://www.w3cschool.cc note.xsd" ```