內容簡介
XML是一種數據表示和交換標準,可以利用層次結構來表示複雜的業務數據,被認為是21世紀裡程碑式的IT技術,廣泛地套用於數據表示與集成、數據交換、數據存儲等各個領域。在本書中,從底層規範到與各種平台的接口,從相關技術到各類XML的實際套用,通過系統而深入地介紹該領域中的各種技術、規範和程式開發方法,讓讀者從理論上和實踐上對XML和相關套用技術及發展趨勢有較完整的認識和了解,並能夠在計算機網路、電子商務等實際套用環境中套用XML技術,以實現複雜數據的交換、處理和存儲。
本書不僅可以作為大學相關課程的教材,而且對從事軟體開發及其相關領域研究的技術人員和開發人員也具有重要的學習和參考價值。
目錄
第1章 XML基礎知識
1.1 XML及其相關技術概述
1.1.1 XML的發展史
1.1.2 XML的特點
1.1.3 XML的實際套用
1.1.4 XML相關技術
1.2 XML規範及XML文檔分類
1.2.1 XML文檔中的XML聲明
1.2.2 XML文檔中的處理指令和注釋
1.2.3 XML文檔中的元素和屬性
1.2.4 XML文檔中的文本內容和CDATA段
1.2.5 XML文檔的良構性規則
1.2.6 XML文檔的分類
1.3 命名空間
1.3.1 命名空間的概念
1.3.2 XML中命名空間的聲明和使用
1.4 XML文檔的數據模型規範
1.5 UNICODE簡介
1.5.1 Unicode的出現
1.5.2 Unicode的編碼和實現
1.5.3 XML和Unicode及其他字元集
1.6 XML中的BASE64編碼
1.7 XML集成開發環境xmlspy的基本使用
第2章文檔類型定義DTD
2.1 數據模式與DTD
2.1.1 數據模式的用途
2.1.2 文檔類型定義DTD
2.2 DTD基本語法
2.2.1 為XML文檔指定DTD規則
2.2.2 元素及其內容模型的聲明
2.2.3 元素屬性的聲明
2.2.4 實體的分類和聲明
2.2.5 組合使用內部和外部DTD
2.2.6 條件DTD
2.3 在XMLSPY中編寫和使用DTD
第3章 XML模式語言XML Schema
3.1 XML模式語言
3.1.1 XML Schema和DTD之間的比較
3.1.2 XML Schema的一個簡單示例
3.2 XML Schema中的數據類型
3.2.1 XML Schema的內置數據類型
3.2.2 XML Schema中的派生簡單數據類型
3.2.3 XML Schema中的派生複雜數據類型
3.2.4 有關類型聲明的完整語法
3.3 XML Schema申元素和屬性的聲明
3.3.1 元素的聲明
3.3.2 屬性、屬性組和任意屬性的聲明
3.4 有關XML Schema的一些關鍵內容
3.4.1 XML Schema的PSVI數據模型
3.4.2 XML Schema文檔的目標命名空間和引用
3.4.3 導入另一個XML Schema文檔
3.5 在XMLSPY中編輯和操作XML Schema
3.5.1 創建和編輯XML Schema文檔
3.5.2 自動生成以及轉換XML Schema文檔
第4章 XPath
4.1 XPath中的數據模型
4.1.1 序列
4.1.2 XPath文檔樹模型
4.2 XPath的語法
4.2.1 一個XPath的簡單示例
4.2.2 XPath的完整語法形式
4.2.3 XPath的執行語義
4.2.4 關於XPath查詢計畫執行效率的思考
4.2.5 XMLSPY中的XPath執行環境
4.3 XPath的類型系統
4.3.1 數據類型
4.3.2 序列類型
4.3.3 類型之間的隱式類型轉換
4.3.4 類型之間的顯式類型轉換以及其他類型操作
4.4 XPath中各種函式的介紹
4.4.1 XPath中的各種運算符
4.4.2 存取函式
4.4.3 數值計算的函式
4.4.4 有關字元串的函式
4.4.5 針對anylJRI的函式
4.4.6 關於布爾值的函式
4.4.7 有關持續時間、日期和時間的函式
4.4.8 與QNames相關的函式
4.4.9 關於節點的函式
4.4.10 有關序列的函式
4.4.11聚集函式
4.4.12 生成序列的函式
4.4.13 上下文函式
第5章 XSLT
5.1 XSLT(Extensible Stylesheet Language Tansformations)
5.1.1 XSLT的工作原理
5.1.2 XSLT的一個簡單示例
5.2 XSLT中模板的創建以及內置模板的使用
5.2.1 XSLT中模板的聲明和調用
5.2.2 XSLT中的內置模板
5.3 XSLT模板中各種轉換功能的實現
5.3.1 使用xsl:value-of和xsl:text提取或生成所需的文本內容
5.3.2 使用xsl:for-each和xsl:sort進行循環和排序
5.3.3 使用xsl:if進行條件判斷
5.3.4 使用xsl:choose、xsl:when和xsl:otherwise進行條件分支選擇
5.3.5 在輸出結果中創建XML節點
5.3.6 XSLT中變數的聲明和使用
5.3.7 一個綜合示例
5.4 XSLT中提供的其他編程機制
5.4.1 創建和引用模組化的XSLT文檔
5.4.2 同時處理多個XML源文檔
5.4.3 通過動態索引提高處理的效率
5.5 在XMLSPY中進行XSLT的開發
5.5.1 創建和編輯XSLT文檔
5.5.2 執行和調試XSLT文檔
第6章 XQuery
6.1 XML數據查詢語言
6.1.1 從結構化數據查詢語言SQL到半結構化查詢語言XQuery
6.1.2 XQuery的誕生
6.1.3 XML格式的XQuery查詢語言
6.2 XQuery基本語法和相關概念
6.2.1 XQuery基本語法
6.2.2 XQuery中的for和lct語句
6.2.3 XQuery中的where和order by語句
6.2.4 XQuery中的return語句以及輸出內容構造方法的使用
6.2.5 XQuery中FLOWR表達式之外的其他表達式
6.2.6 在XMLSPY中編寫XQuery查詢
6.3 靈活地使用XQuery
6.3.1 XQuery 1.0的類型系統及類型操作
6.3.2 在XQuery中編寫自定義的函式及模組
6.3.3 在XQuery中聲明命名空間、以及導入外部XMLSchema
6.4 XQuery用例分析
6.4.1 用例“XMP”(常用的XQuery示例)
6.4.2 用例“TREE”(保持原始層次結構的查詢)
6.4.3 用例“SEQ”(針對序列進行查詢)
6.4.4 用例“R”(關係型數據查詢)
6.4.5 用例“STRONG”(在查詢中利用Schema的類型信息)
第7章 XML與資料庫
7.1 XML與關係資料庫之間的關係
7.1.1 XML數據的存儲和管理方式
7.1.2 XML數據存儲管理的要求
7.2 SQL Server 2005申的XML支持
7.2.1 SQL Server 2005中XML數據存儲的支持
7.2.2 SQL Server 2005中的xml數據類型
7.2.3 SQL Server 2005中的SQL/XML
7.3 DB2 V9中的pureXML
7.3.1 DB2 V9中XML數據存儲的支持
7.3.2 DB2 V9中的xml數據類型
7.3.3 DB2 V9中的SQL/XML
7.3.4 DB2中提供的XML數據分解機制
7.3.5 DB2 V9中XML物理存儲的性能最佳化
7.3.6 XMLSPY提供的DB2支持
7.4 Native XML資料庫
7.4.1NATIVEXML資料庫的特點
7.4.2 XML資料庫tamino
第8章 使用Java語言對XML數據進行解析
8.1 XML數據解析的概念及JAXP簡介
8.1.1 XML解析器
8.1.2 DOM和SAX解析模型簡介
8.1.3 JAXP簡介
8.2 在JAXP中使用DOM解析器處理XML文檔
8.2.1 DOM解析器的創建
8.2.2 DOM解析器編程接口
8.2.3 使用DOM模型解析XML文檔的示例程式
8.3 在JAXP中使用SAX解析器處理XML數據
8.3.1 JAXP中SAX模型的使用
8.3.2 SAX模型中回調函式的重寫
8.3.3 使用SAX模型解析XML文檔的示例程式
8.4 DOM和SAX之間的性能分析和比較
8.4.1 創建示例:XML文檔
8.4.2 使用兩種模型載入/讀取示例XML文檔
8.4.3 使用兩種模型計算示例文檔中指定名稱的元素的數目
8.4.4 使用兩種模型查找示例文檔中指定的某個元素
8.4.5 有關DOM和SAX解析模型的說明
8.5 JAXP中的其他XML數據處理API
8.5.1 執行XPath查詢
8.5.2 使用Trax API執行數據轉換操作
8.5.3 執行XQuery查詢
第9章 使用JAXB處理XML數據
9.1 數據綁定
9.1.1 數據綁定的一般概念和XML數據綁定
9.1.2 XML數據綁定API
9.2 JAXB API及其基本使用
9.2.1 JAXB概述
9.2.2 JDK 1.6中提供的JAXB API
9.2.3 使用JAXB從Schema文檔自動生成相應的Java類
9.2.4 使用JAXB自動生成的Java類對XML文檔進行解組操作
9.3 JAXB API的高級套用
9.3.1 使用JAXB對XML數據進行有效性驗證
9.3.2 使用JAXB進行更靈活的XML數據解組
9.3.3 使用JAXB創建XML數據
9.3.4 從Java類生成XML Schema文檔
9.3.5 定製Java類的創建
參考文獻
線上試讀部分章節
第1章 XML基礎知識
隨著網際網路的調整發展和普及,人們可以通過計算機(使用瀏覽器或者客戶端應用程式)與網際網路連線,接收和傳送大量的、最新的實時業務信息;但在信息交換的過程中,存在著一個突出的問題,即多種多樣的數據格式給信息的有效使用帶來了障礙。