<!DOCTYPE note SYSTEM "Note.dtd">DOCTYPE 聲明是對外部 DTD 文件的引用。爲了幫助您檢查 XML 文件的語法,咱們建立了這個工具,以便您對任何 XML 文件進行語法檢查。W3C 的 XML 規範聲明:若是 XML 文檔存在錯誤,那麼程序就不該當繼續處理這個文檔。理由是,XML 軟件應當輕巧,快速,具備良好的兼容性。若是使用 HTML,建立包含大量錯誤的文檔是有可能的(好比你忘記告終束標籤)。其中一個主要的緣由是 HTML 瀏覽器至關臃腫,兼容性也不好,而且它們有本身的方式來肯定當發現錯誤時文檔應該顯示爲何樣子。XSLT 是首選的 XML 樣式表語言。XSLT (eXtensible Stylesheet Language Transformations) 遠比 CSS 更加完善。使用 XSLT 的方法之一是在瀏覽器顯示 XML 文件以前,先把它轉換爲 HTML,正如如下的這些例子演示的那樣 在上例中,XSLT 轉換是由瀏覽器完成的,瀏覽器讀取的是 XML 文件。在使用 XSLT 來轉換 XML 時,不一樣的瀏覽器可能會產生不一樣結果。爲了減小這種問題,能夠在服務器上進行 XSLT 轉換。XMLHttpRequest 對象用於在後臺與服務器交換數據。 全部現代瀏覽器都內建了供讀取和操做 XML 的 XML 解析器。解析器把 XML 轉換爲 XML DOM 對象 - 可經過 JavaScript 操做的對象。解析器把 XML 載入內存,而後把它轉換爲可經過 JavaScript 訪問的 XML DOM 對象。微軟的 XML 解析器與其餘瀏覽器中的解析器之間,存在一些差別。微軟的解析器支持 XML 文件和 XML 字符串(文本)的加載,而其餘瀏覽器使用單獨的解析器。不過,全部的解析器都包含遍歷 XML 樹、訪問插入及刪除節點(元素)及其屬性的函數。XML DOM (XML Document Object Model) 定義了訪問和操做 XML 文檔的標準方法。DOM 把 XML 文檔做爲樹結構來查看。可以經過 DOM 樹來訪問全部元素。能夠修改或刪除它們的內容,並建立新的元素。元素,它們的文本,以及它們的屬性,都被認爲是節點。在 XML 中,元素名稱是由開發者定義的,當兩個不一樣的文檔使用相同的元素名時,就會發生命名衝突.命名衝突不存在了,這是因爲兩個文檔都使用了不一樣的名稱來命名它們的 <table> 元素 (<h:table> 和 <f:table>)。
經過使用前綴,咱們建立了兩種不一樣類型的 <table> 元素。與僅僅使用前綴不一樣,咱們爲 <table> 標籤添加了一個 xmlns 屬性,這樣就爲前綴賦予了一個與某個命名空間相關聯的限定名稱。XML 命名空間屬性被放置於元素的開始標籤之中,並使用如下的語法:當命名空間被定義在元素的開始標籤中時,全部帶有相同前綴的子元素都會與同一個命名空間相關聯。註釋:用於標示命名空間的地址不會被解析器用於查找信息。其唯一的做用是賦予命名空間一個唯一的名稱。不過,不少公司經常會做爲指針來使用命名空間指向實際存在的網頁,這個網頁包含關於命名空間的信息。統一資源標識符是一串能夠標識因特網資源的字符。最經常使用的 URI 是用來標示因特網域名地址的統一資源定位器(URL)。另外一個不那麼經常使用的 URI 是統一資源命名(URN)。在咱們的例子中,咱們僅使用 URL。當開始使用 XSL 時,您不久就會看到實際使用中的命名空間。XSL 樣式表用於將 XML 文檔轉換爲其餘格式,好比 HTML。術語 CDATA 指的是不該由 XML 解析器進行解析的文本數據(Unparsed Character Data) 解析器會忽略 CDATA 部分中的全部內容。XML 文件在 Internet 服務器上進行存儲的方式與 HTML 文件徹底相同。XML 可在不安裝任何 XML 軟件的狀況下在服務器端生成。XML DOM (Document Object Model) 定義了訪問和操做 XML 文檔的標準方法。它是什麼?XML 數據島(XML Data Islands)是嵌入 HTML 頁面中的 XML 數據。爲何要避免使用它?XML 數據島只在 Internet Explorer 瀏覽器中有效。用什麼代替它?您應當在 HTML 中使用 JavaScript 和 XML DOM 來解析並顯示 XML。把 XML 文檔綁定到 HTML 文檔中的一個 <xml> 標籤。id 屬性定義數據島的標識符,而 src 屬性指向 XML 文件:一般,咱們在數據庫中存儲數據。不過,若是但願數據的可移植性更強,咱們能夠把數據存儲 XML 文件中 若是數據要被傳送到非 Windows 平臺上的應用程序,那麼把數據保存在 XML 文件中是有好處的。請記住,XML 有很強的跨平臺可移植性,而且數據無需轉換! web