目录

XSD-的 <schema> 元素


<schema> 元素是每个 XML 模式的根元素。


<schema> 元素

<schema> 元素是每个 XML 模式的根元素:

<?xml version="1.0"?>

<xs:schema>
...
...
</xs:schema>

<schema> 元素可能包含一些属性。模式声明通常如下所示:

<?xml version="1.0"?>

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="https://www.91xjr.com"
xmlns="https://www.91xjr.com"
elementFormDefault="qualified">
...
...
</xs:schema>

以下片段:

xmlns:xs="http://www.w3.org/2001/XMLSchema"

指示架构中使用的元素和数据类型来自"http://www.w3.org/2001/XMLSchema" 命名空间。它还指定来自 "http://www.w3.org/2001/XMLSchema" 命名空间的元素和数据类型应以前缀xs:

这个片段:

targetNamespace="https://www.91xjr.com"

表示此架构定义的元素(note、to、from、heading、body)来自"https://www.91xjr.com" 命名空间。

这个片段:

xmlns="https://www.91xjr.com"

表示默认命名空间是"https://www.91xjr.com"。

这个片段:

elementFormDefault="qualified"

指示在此模式中声明的 XML 实例文档使用的任何元素都必须是命名空间限定的。



引用 XML 文档中的架构

此 XML 文档引用了 XML 架构:

<?xml version="1.0"?>

<note xmlns="https://www.91xjr.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="https://www.91xjr.com note.xsd">

<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>

以下片段:

xmlns="https://www.91xjr.com"

指定默认名称空间声明。此声明告诉模式验证器此 XML 文档中使用的所有元素均在 "https://www.91xjr.com" 命名空间中声明。

一旦 XML 模式实例命名空间可用:

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

您可以使用 schemaLocation 属性。该属性有两个值,用空格分隔。第一个值是要使用的名称空间。第二个值是用于该命名空间的 XML 模式的位置:

xsi:schemaLocation="https://www.91xjr.com note.xsd"