在<schema>元素是每個XML架構的根元素。
在<schema>元素
在<schema>元素是每個XML架構的根元素:
<?xml version="1.0"?>
<xs:schema>
...
...
</xs:schema>
在<schema>元素可以包含一些屬性。 一個schema聲明往往看起來是這樣的:
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.w3ii.com"
xmlns="http://www.w3ii.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="http://www.w3ii.com"
表明這個架構定義的元素(note, to, from, heading, body.)來自"http://www.w3ii.com"命名空間。
這個片段:
xmlns="http://www.w3ii.com"
表明默認命名空間是"http://www.w3ii.com"
這個片段:
elementFormDefault="qualified"
表明由這是該模式中聲明的XML實例文檔中使用的任何元素必須是名稱空間限定。
在XML文檔引用架構
該XML文檔到XML Schema的引用:
<?xml version="1.0"?>
<note xmlns="http://www.w3ii.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.w3ii.com note.xsd">
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
下面的代碼片段:
xmlns="http://www.w3ii.com"
指定默認的命名空間聲明。 這個聲明告訴這個XML文檔中使用的所有元素中聲明的架構驗證"http://www.w3ii.com"命名空間。
一旦你有可用的XML架構實例命名空間:
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
您可以使用schemaLocation屬性。 這個屬性有兩個值,用空格隔開。 第一值是使用命名空間。 第二個值是XML模式使用該命名空間的位置:
xsi:schemaLocation="http://www.w3ii.com note.xsd"