【 XML 之總結篇】
前言:
從ASP.NET的學習到XML的學習,感覺到達了一個新的環境,它帶我走進一個靈活的世界,今天小編來帶大家一起總結一下XML的相關知識點,來使得我們更加了解XML。
核心:
一、定義
XML,(Extensible Markup Language)可擴充套件性標記語言,首先先來了解標記語言:主要不同於C#,C++……一樣的程式語言,本身並無任何動作和行為,可擴充套件,正說明了了XML的靈活性,XML將資料邏輯和顯示邏輯相分離,只負責提供邏輯資料,不關心如何顯示的問題。
二、特點
1.具有良好的格式:成雙成對
2.具有驗證機制
DTD:
一個專門的檔案,用來定義和檢驗XML文件中的標記
XML.Schema
用XML語法描述。多個Schema可以複合使用XML名稱空間,可以詳細定義元素的內容及屬性值的資料型別。
3.靈活的Web應用
資料和顯示是分開設計的,XML資料檔案就是純資料檔案,可以作為資料來源。(HTML描述資料的外觀,而XML描述資料本身,是文字化的小型資料庫表達語言)
4.豐富的顯示樣式
方法:
XML資料定義列印、顯示排版資訊主要有3種:
用CSS定義列印和顯示排版資訊
用XSLT轉換到HTML進行顯示和列印
用XSLT轉換成XSL的FO進行顯示和列印
註明:XSLT:eXtensibe Stylesheet Language
FO:Formatter Object
5.是電子資料交換(EDI)的格式
是為網際網路的資料交換而設計的,
6.便捷的資料處理
XML是以文字形式描述的,適合於各種平臺環境的資料交換,使計算機能夠簡易的儲存和讀取資料,並確保資料結構精確。
7.物件導向的特性:
XML的檔案是樹狀結構的,同時也有屬性,而且體現出物件方式的儲存。
8.選擇更新
區域性小範圍更新,也允許新增新的資料和更改原有的資料,加入的資訊能夠流入存在的頁面,不需要瀏覽器發一個新的頁面。
三:語法
- 只能包含一個根元素
- 必須包含結束標記
- 開始標記和結束標記的名稱必須相同
- 元素不能重疊
- 所有屬性值都必須使用引號。單引號或多引號
- 不能使用<>&三個字元,特殊含義的特殊字元,使用預定義的字元或實體引用
四、結構
XML主要由七部分組成:
序言碼、處理指令、根元素、元素、屬性、CDATA位元組、註釋
1、序言碼
XML文件的第一部分。包含XML宣告(表明該文件是XML文件)、處理指令(提供XML分析程式用於確定如何處理文件的資訊)和架構宣告(確定用於驗證文件是否有效的XML架構)
<?xml version="1.0" encoding="gb2312"?>
2、處理指令
提供XML分析程式用於確定如何處理文件的資訊
如;<?處理指令名 處理指令資訊?>
<?xml-stylesheet type="text/xsl" href="book.xsl"?>
3、根元素
是XML文件的主要部分。根元素包含文件的資料以及描述資料結構的資訊。
<boks xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> … </books>
4.元素
XML文件的基本構成單元,用於表示XML文件結構和XML文件中包含的資料。包含文字、其他元素、字元引用或字元資料部分。沒有內容的元素為空元素,空元素的開始標記和結束標記可以併為一個標記。<sale/>
5.屬性
屬性是使用與特定元素關聯的對應“名稱-值”的XML構造。
<books> <book id="018" bookcategory="計算機" amount=“560” remain=“200” discount=“8.2”> </book> </books>
6.CDATA位元組
在標記CDATA下,所有的標識、實體引用都被忽略,而被XML處理程式一視同仁地作為字元資料看待。
不能出現字串“]]>”,不能巢狀。<![CDATA[文字內容]]>
7.註釋
以“<!--”開始 以“-->”結束
五、環境
編輯工具
EditPlus、UltraEdit:簡單編輯
XMLSpy:支援多種字符集,支援對XML的驗證。
Stylus Studio:編輯、調式XML。
驗證工具:
Micorosoft XML Validator:檢查文件是否“格式良好的”以及其有效性,並對錯誤發出警告。
Micorosoft XSL Debugger:幫助使用者調式樣式單檔案,把複雜枯燥的調式過程用視覺化介面顯示出來。
瀏覽器:
MicosoftXML Tree Viewer 典型的XML瀏覽器
Internet Explorer
大型開發工具.net體系,PowerBuilder、JBuilder等都支援XML,具有XML的編輯、驗證、解析和瀏覽功能
總結:
XML裡面的知識點很多,DTD和XML.Schema兩種驗證機制也是很重要的!XML.Schema比DTD強大的多,更多的知識需要我們去探索!加油吧!
相關文章
- 人生總結之唧唧歪歪篇
- Java面試題總結之OOA/D,UML,和XMLJava面試題XML
- 【UML之總結篇—柳暗花明】
- MySQL 細緻總結之基礎篇MySql
- C#設計模式之總結篇C#設計模式
- Java進階篇 設計模式之十四 ----- 總結篇Java設計模式
- 【軟工文件總結之後五個文件總結(重點篇)】軟工
- 《設計模式》之總結篇(產品線)設計模式
- SAP專案總結之Global Template展示篇
- HTML總結篇HTML
- 長篇總結之JavaScript,鞏固前端基礎JavaScript前端
- 深入Java虛擬機器之 -- 總結面試篇Java虛擬機面試
- 造輪子之單層應用總結篇
- 位操作基礎篇之位操作全面總結
- 看得見的資料結構Android版之開篇前言+完篇總結資料結構Android
- MySQL索引——總結篇MySql索引
- redis 系列:總結篇Redis
- 【B/S總結篇】
- Java基礎知識回顧之七 —– 總結篇Java
- 前端知識總結之Ajax,axios,fetch篇前端iOS
- Java基礎知識回顧之七 ----- 總結篇Java
- 【資料結構導論之樹和二叉樹總結篇】資料結構二叉樹
- Linux效能優化實戰CPU篇之總結(四)Linux優化
- 【軟工文件總結之概括與圖形(簡要篇)】軟工
- XML資料庫開發手冊總結XML資料庫
- APC 篇——總結與提升
- 【我的總結——思想篇】
- RMAN 總結篇 1 - (轉)
- RMAN 總結篇 2 - (轉)
- RMAN 總結篇 3 - (轉)
- 【設計模式總結篇】設計模式
- SQL之結束篇SQL
- 2019年終總結之SAP專案實踐篇
- iOS之BLE藍芽SDK開發個人總結(進階篇)iOS藍芽
- iOS之BLE藍芽SDK開發個人總結(基礎篇)iOS藍芽
- 2018年終總結之SAP專案實踐篇
- go 奇葩語法總結篇Go
- mysql總結筆記 -- 索引篇MySql筆記索引