XML文檔結構


XML文檔結構

一,XML文檔結構
 XML文檔是由一組使用唯一名稱標識的實體組成。也是由數據和描述數據的標記組成。
 文檔的組成部分包括:聲明,元素,註釋,字符引用和處理命令。
 
二,創建XML文檔
 XML聲明始終是任何XML文檔的第一行。
 
 1,陳述XML聲明:爲XML文檔匹配合適的解析器。
  
  XML聲明語法:
  <? xml version = "XML版本號"  standalone = “no或yes” encoding = “UTF-8或UTF-16或GB2321或GBK”?>
   
   <?和?>:表處理指令的開始和結束;
   version :XML版本,默認1.0;
   standalone:是否使用外部聲明;
   encoding:字符編碼;
  
 2,創建根元素:有且只有一個,用於描述文檔的功能。
  語法:
  <? xml version = "1.0" ?>
  <根元素名>
   根元素內容
  </根元素名>
    
 3,創建XML代碼:創建自定義元素(elements)和屬性(attributes)。
  1,元素是XML內容的基本單元,包含標籤(tags)和內容。
  2,所有的XML元素必須合理包含嵌套。
  3,XML標記都是大小寫敏感的。
  4,標記可以指定3種含義:結構的,語義的或樣式的。
    結構指定文檔中不同元素之間關係;
    語義將單個元素與文檔之外的現實世界聯繫;
    樣式指定如何現實一個元素;
  5,屬性值必須使用引號""
   
   語法:
    <標籤名 屬性名 = “屬性值”>
     數據
    </標籤名>
    
三,XML中的註釋  
 語法:
 <!-- 這是一個註釋 -->
  
 1,註釋文本不應包含“-”。
 2,不能在標籤內使用,可用於標籤集。
 3,不能放在實體聲明中,也不能放在XML聲明之前。
  
四,處理指命
 爲使用該XML文檔的應用提供一則信息。
 
 格式:
 <? xml:應用名 指令信息 ?>
 
 位置在在XML聲明和根元素之間
 在將一個樣式表附加到XML文檔中時,需要提供一個處理指令:
   <?xml version ="1.0" endcoding="GB2321"?>
   <?xml : stylesheet type = "text/xsl" href = "top.css"?>
   <根元素>數據</根元素>

五,標籤之間的字符數據分類
 1,PCDATA
  表示已解析的字符數據。
 2,CDATA
  表示不通過解析器parsing進行解析的文本。便於包含特殊字符。
  格式:
  <根元素>
   <![CDATA[
    <標記1>
     <子標記1>#$%特殊字符</子標記1> 
     <子標記2>$%^特殊字符</子標記2> 
      .....
    </標記1> 
   ]]>
   <標記2>
    ....
   </標記2>
  </根元素>
  
  注意:不可寫爲<![Cdata[ 或 <![Cdata[
  
六,XML 對空白和換行的處理
 1,空白部分不會被解析器自動刪除。
 2,新行總是被標識爲 LF(Line Feed,換行)。
   在Windows應用程序中,文本中的新行通常標識爲 CR, LF (carriage return, line feed,回車,換行)。
   在Unix應用程序中,新行通常標識爲 LF。還有一些應用程序只使用CR來表示一個新行。

七,實體
 1,實體是XML的存儲單元,是用於定義常見文本的快捷方式的變量,代替字符數據。
 2,內部實體:僅存於聲明的文檔中;
    外部實體:使用標識符指向文檔外的存儲單元;
        系統(SYSTEM)外部實體:引用本地計算機或網絡;
        公共(PUBLIC)外部實體:引用公共計算機或網絡;
 3,實體按在文檔出現位置分爲:
  ①,一般實體:任何位置
    內部實體:
     <! ENTITY 實體名 "替換內容">
    外部實體:
     <!ENTITY 實體名  SYSTEM  "test.txt(替換文件名)">
     <!ENTITY 實體名  PUBLIC  "test.txt(替換文件名)">
  ②,參數實體:DTD中
    不能在文檔中使用,只能在DTD中使用。
    <! ENTITY   %  實體名 "替換內容">
 4,實體的聲明
  實體必須在文檔DOCTYPE聲明中聲明
  語法:
   <?xml version = "1.0" endcoding = "gb2321"?>
   <!DOCTYPE   DOCTYPE名[
    實體聲明
    ....
   ]>
   <根元素>
   </根元素>
   
 5,實體的引用:
  ①,一般實體:
   引用前必須聲明該實體,可以在屬性中引用內部實體。
    語法:
     &實體名;
    
    例子:
     ...
    <! ENTITY name "張三">
     ...
    <MSG>
     &name;
     <BODY>
      你好!
     </BODY>
     <FIRST>
      &name;
     </FIRST>
    </MSG>
    
  ②,參數實體:
   語法:
     %實體名;
 
八,XML文檔規範

 1,所有XML文檔至少有一個元素。
 2,XML標籤區分大小寫。
 3,所有的XML文檔標籤必須有一個結束標記
 4,正確嵌套標籤。
 5,標籤命名規則:字符 下劃線 冒號開頭,由字符,數字,句號,冒號,下劃線,連接符(-)組合,不能有空格,不以保留字開頭。
 6,屬性不能重複,值用引號分開。名字規則和標籤相同。
 7,應驗證文檔。
 等

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章