天天看點

XML(3)_XML 限制_概述

XML

XML限制概述

一個 xml 文檔一旦有了限制,那麼這個 XML 文檔就隻能使用限制中建立的元素及屬性。如果限制沒有建立 <a> 元素,那麼 XML 文檔就不能使用 <a> 元素!!!

1、什麼是 XML 限制

(1)因為 xml 文檔是可以自定義元素的,這會讓使用 xml 文檔的應用程式無法知道 xml 文檔的真實結構。通常應用程式都會要求xml 檔案的結構是固定的,以滿足自己的需求,這就說明,不同的應用程式要求自己的 xml 文檔必須符合一定的要求。例如,當使用 xml 文檔作為某個 Java swing 應用程式的配置檔案時,要求 xml 文檔結構如下:

<frame title="test xml" layout="java.awt.BorderLayout">
  <bgcolor>
    <red>200</red>
    <green>0</green>
    <blue>0</blue>
  </bgcolor>
  <size>
    <width>300</width>
    <heigth>200</heigth>
  </size>
  <content>
    <label>
      <text>hello xml</text>
    <label>
  </content>
</frame>
           

(2)當某個學生管理系統程式需要使用 xml 文檔作為資料庫時,要求 xml 文檔結構如下:

<?xml version="1.0" encoding="utf-8" standalone="no"?>
<students>
	<student number="1001">
		<name>zhangSan</name>
		<age>23</age>
		<sex>male</sex>
	</student>
	<student number="1002">
		<name>liSi</name>
		<age>32</age>
		<sex>female</sex>
	</student>
	<student number="1003">
		<name>wangWu</name>
		<age>55</age>
		<sex>male</sex>
	</student>
</students>
           

(3)xml 文檔限制是用另一個檔案來限制 xml 文檔的結構,例如要求 xml 文檔的根元素必須是<students> ,在 <students> 元素下可以包含 0~n 個 <students> 元素,每個 <students> 元素必須有一個 number 屬性,而且還要有三個子元素,分别為 <name>、<age>、<sex>,這三個子元素的内容必須為文本内容,而不能是子元素。

2、XML 文檔限制的類型

  • dtd:dtd 是平面式文檔,dtd 檔案不是 xml 文檔,通常擴充名為 “.dtd”,它是最早的 xml 限制;
  • schema:schema 本身也是 xml 文檔,它比 dtd 要更加強大,通常擴充名為 “.xsd”。它是新的 xml 文檔限制,用來替代 dtd。