国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

XML入門問答

瀏覽:141日期:2022-06-03 13:00:05
什么是置標語言?
----------------------

  我們日常書寫的語言,被稱為書面自然語言。如果在書面自然語言中為了標識某些信息,而加入一些標記,這種書面自然語言就可被稱為置標語言(英語為:Markup Language)。比如在一段書面語言中,為了說明某一句話的重要,在這句話下面畫上底劃線。但是,我們在這里解釋的置標語言,實際上是一種為了計算機處理而設計的置標語言,其中所用到的標記,往往使用代表一定含義的文字或數字表示。通常的做法是,根據需要,先定義一套助意的標記,然后將這套標記添加到書面語言中去,使書面語言變成置標語言。

  例如,我們為了讓計算機了解,一段書面語言中,那一部分是標題,那一部分是作者名,那一部分是正文,我們定義如下一套標記:

  <標題>、</標題>;<作者>、</作者>;<正文>、</正文> 那么,我們就可以將上面這段書面語言改寫成置標語言:

<標題>什么是置標語言?</標題>

<作者>xml.net.cn</作者>

<正文>我們日常書寫的語言,被稱為書面自然語言。… …</正文>

  置標語言,不同于一般的控制流程序設計語言,基本上可以被視為是一種數據流的文檔結構描述語言。在計算機處理過程中,置標語言的標記既可以作為數據,也可以作為控制語句來使用。

  在計算機程序語言中,一般把一種語言的定義整體稱為某某程序設計語言,而把用這種語言編寫的文字段落,稱為某某語言程序。套用這個習慣,我們把置標語言的定義整體稱為某某置標語言,而把用這種置標語言編寫的文字段落,稱為某某語言文檔。如果我們把上面定義的那套標記叫做"文章置標語言"的話,那么下面那段置標語言,就可稱為"文章置標語言文檔"。


----------------------

什么是SGML?

----------------------

  從字面上看,SGML(Standard Generalized Markup Language--標準的通用置標語言)是一種置標語言,實際上它是一種通用的文檔結構描述置標語言,主要用來定義文獻模型的邏輯和物理類結構。SGML是ISO組織于1986年發布的ISO 8879國際標準。

  一個SGML語言程序,要由三部分組成,即語法定義、文件類型定義(簡稱DTD--Definition Type Document)和文件實例。語法定義,定義了文件類型定義和文件實例的語法結構;文件類型定義,定義了文件實例的結構和組成結構的元素類型。文件實例是SGML語言程序的主體部分。

  SGML的實際使用中,每一個特定的DTD都定義了一類文件。例如,所有的新聞稿件都可以使用同一個DTD。因此,人們習慣上把具有某一特定DTD的SGML語言,稱為某某置標語言。例如用于國際互聯網的HTML語言。這樣SGML就成為那些派生語言的元語言。


----------------------

什么是XML?

----------------------
  XML是eXtensible Markup Language(可擴展的置標語言)的縮寫,是W3C組織于1998年2月發布的標準。W3C組織制定XML標準的初衷是,定義一種互聯網上交換數據的標準。W3C采取了簡化SGML的策略,在SGML基礎上,去掉語法定義部分,適當簡化DTD部分,并增加了部分互聯網的特殊成分。因此,XML也是一種置標語言,基本上是SGML的一個子集。因為XML也有DTD,所以XML也可以作為派生其它置標語言的元語言。
----------------------

什么是HTML?

----------------------
 HTML是Hypertext Markup Language(超文本置標語言)的縮寫,是SGML的一個實例,是W3C組織發布的標準,是專門為在互聯網上發布信息而設計的置標語言。
----------------------

XML、SGML、HTML之間是什么關系?

----------------------
  HTML是SGML的一個實例,它的DTD作為標準被固定下來,因此,HTML不能作為定義其它置標語言的元語言。XML是SGML的一個子集,嚴格地講,XML也還是SGML。與HTML不同的是,XML有DTD,因而也可以象SGML那樣,作為元語言,來定義其它文件系統,或稱其它置標語言。如果把置標語言分為元置標語言和實例置標語言的話,SGML和XML都是元置標語言,而HTML和由XML派生的XHTML都是實例置標語言。
----------------------

XML的用途是什么?

----------------------
  在國際互聯網上,服務器與服務器之間、服務器與瀏覽器之間有大量的數據需要交換,特別是在電子商務中。這些被交換的數據,都被要求對數據的內容和表現方式有所說明,用置標語言擔當這個重任是再合適不過了。應該說SGML完全可以扮演這個國際互聯網上數據交換標準語言的角色,然而由于SGML對互聯網應用來講太復雜了,因而需要一種即能象SGML那樣作為元語言使用,又能比較簡單地進行處理的置標語言,來擔此重任。在這種背景下XML就應運而生了。因此在互聯網世界XML的用途主要有兩個,一是作為元置標語言,定義各種實例置標語言標準;二是作為標準交換語言,擔負起描述交換數據的作用。
----------------------

HTML已經這樣流行了,為什么還要發展XML?

----------------------

  簡單地講,HTML不能完成,我們希望XML所要完成的任務。原因很簡單,XML所要完成的任務,必須由元置標語言來完成,而HTML只是一個實例置標語言。 在XML發布之前,國際互聯網的發展受到HTML如下幾個問題的束縛:

1) HTML無法描述數據內容,而這一點恰恰是數據檢索、電子商務所必須的。

2) HTML對數據表現的描述能力是十分不夠的,如HTML還不能描述矢量圖形、   科學符號等對象,目前只能通過圖象來表現這些對象。

3) HTML實例置標語言的地位,完全不能適應對新標記需求的發展需要。   

  XML的出現,使上述問題都得到很好的解決。


----------------------

XML怎樣簡化SGML?

----------------------
  為簡單化SGML,XML重新定義了一些SGML的內部值和參數,并刪去了大量繁雜的、不常用的、使編程復雜的特征(見http://www.w3.org/TR/NOTE-sgml-xml-971215)。
----------------------

用XML你能定義自己的文件類型(DTD)嗎?

----------------------
  回答是肯定的。這也是XML與HTML區別最大的地方。
----------------------

誰對XML負責?

----------------------
  XML是W3C組織的一個項目,XML規格說明書是W3C組織的XML工作組制定的,這個工作組由各領域、公司的專家和協作者組成,并通過E_mail方式交換信息,進行修改和完善。XML是集體智慧的結晶,不是某個公司的專利。 1.0版規格說明書由W3C認可,并在1998年2月10日正式推薦使用。
----------------------

為什么XML如此重要?

----------------------
  試想在互聯網世界,如果大家都講方言,互相交換信息時都要進行翻譯,那將是一個多么難以溝通和交流的世界。在互聯網世界,XML之所以重要,恰恰是由于它扮演了"國際語言"角色的緣故。此外,XML更為互聯網世界提供了定義各行各業的"專業術語"的工具。

----------------------

什么是文檔類型定義(DTD)?

----------------------
  文檔類型定義 (DTD) 是一套關于標記符的語法規則。 它告訴你可以在文檔中使用哪些標記符, 它們應該按什么次序出現, 哪些標記符可以出現于其它標記符中, 哪些標記符有屬性, 等等. DTD原來是為使用SGML開發的, 它可以是XML文檔的一部分, 但是它通常是一份單獨的文檔或者一系列文檔 。XML本身并沒有一個通用的DTD,想使用XML進行數據交換的行業或組織可以定義它們自己的DTD。
----------------------

如何在瀏覽器中閱讀XML?

----------------------
  閱讀XML文檔的工具一般稱為XML解析器, 也稱為XML處理器。 XML處理器將數據傳送到應用軟件, 以便處理, 出版, 查詢, 或顯示。XML不給應用軟件提供 應用程序接口 (API), 它只是把數據傳給應用軟件. XML處理器不解析非構造良好的數據。 Netscape 和 Microsoft 都已經將XML解析器包含在其瀏覽器中。 XML開發者團體提供免費的XML閱讀器和解析器, 以便在應用軟件或XML制作軟件中進行應用。
----------------------

使用問題
如何得到XML瀏覽器?

----------------------

  XML標準已經發布規格說明書新出臺不久,所以現在很多都是在試驗階段的軟件。而處理HTML的瀏覽器有許多。但是將來會涌現大量不同領域的XML應用程序,所以不要指望會有一個瀏覽器能100%的處理好所有的程序。

  XML的工具(如解釋器(parsing),樹結構管理(tree management),搜索(searching),格式化工具(formatting)等等)都被加在瀏覽器的庫(libraries)里或工具包(toolkit)中,幫助開發人員更容易編寫XML程序。這種應用程序可以通過增加相應的語義來修改,使之適用于 另一個特殊領域,或使用Java等語言為瀏覽器開發plugins等嵌入程序,在Web上傳輸某一模塊。

  Microsoft公司的IE4和5瀏覽器可以處理一些Microsoft-oriented的XML程序,但顯示時要轉換為HTML文件。 詳情見development work at Microsoft和how to enable it。 Arbortext的XML Stylesheet program頁中介紹怎樣使用XML+XSL。你也需要ActiveX controls和XSL codebase。 Microsoft建議你可以在HTML文件中加入XML段,因為現在的只支持HTML的瀏覽器會忽略不認識的標識元素。

  可以下載的Netscape(Mozilla)瀏覽器已經通過一個XML+RDF測試,其中使用James Clark的expatXML解釋器(parser)。

  請看面向程序設計人員和軟件和工具開發商中軟件部分的注意說明(notes),更詳細的資料列在 http://www.oasis-pen.org/cover/xml.html。


----------------------

為什么要使用XML而不是HTML?

----------------------

  比較重要的原因有以下六條:

  1)作者和供應商能使用XML設計自己的文檔類型,不必被HTML所約束。

  2)由于XML的超文本鏈接能力比HTML強得多,XML提供的信息內容比      HTML更豐富,也更易于使用。

  3)XML能提供更多更好的機制方便瀏覽器的信息表現和優化性能。

  4)XML舍棄了SGML的復雜性,因此編寫處理XML的應用程序會很容易。

  5)信息易于存儲,可重復使用。

  6)XML文件在SGML環境中也可使用,不一定要局限于在WEB中使用。


----------------------

必須從SGML或HTML轉向XML嗎?

----------------------
  沒有必要。現有的SGML和HTML應用軟件將會繼續和現有文件一起工作。但是如果你想查看或下載使用XML文件,你就需要使用能夠理解、處理XML的程序。
----------------------

可以用Java創建和管理XML文件嗎?

----------------------
  是的,任何程序設計語言都能被用來從XML形式的源文檔中輸出數據。已經出現了許多的前端和后臺工具使得程序設計和數據管理更加方便。下面兩個網址有更加詳細的說明: http://developerlife.com >http://www.markwatson.com/XMLdb_0_1.htm http://developerlife.com
----------------------

開發問題
XML的規格說明書在哪里?

----------------------

  從http://www.w3.org/TR/REC-xml中就可以找到。


----------------------

“DTDless”、“valid”和“well-formed”等術語的含意是什么?

----------------------
  在標準SGML文檔中,所有用到的標記、元素、元素的屬性都必須由文件類型定義(DTD)來說明。但是這種限制在XML的應用中并不是總是需要的,所以XML文檔被設計成既可以帶有DTD,也可以沒有DTD文件。DTDless的意思是沒有DTD的XML文件,你可以創建自己的標識和元素,但不用在DTD中正式定義。DTDless文件通過創建元素時對它們直接進行定義。但是當XML應用程序,如一個瀏覽器遇到DTDless文件時,因為沒有DTD文件告訴瀏覽器關于這個文件的結構信息,所以創建DTDless文檔時,仍需要一些規則來進行規范。這樣“well_formed”XML文檔的概念就相應產生了,它明確規定了書寫XML文檔的語法規范。所有符合這個規范的XML文檔就被稱為是“well_formed”的XML文檔。如果一個“well_formed”的XML文檔,包含了DTD說明,那么這個文檔就被稱為是一個“valid”的XML文檔了。
----------------------

為什么XML文件的分析結果出現亂碼?

----------------------

  這是由編碼問題引起的。XML標準規定,XML分析器必須支持“UTF-8”和“UTF-16”編碼,而且必須能夠自動區分這兩種編碼的文件,對于其他編碼(包括常用的中文編碼“GB2312”或“BIG5”)并不要求支持。如果XML文件中包含編碼聲明,分析器則按照聲明的編碼進行處理,否則就按照識別結果進行處理(識別的結果總是“UTF-8”和“UTF-16”中的一種)。因此,如果XML文件的編碼在這兩種之外,你必須在XML文件前加上編碼聲明,如:<?xml version="1.0" encoding="gb2312"?>就表示XML文件的編碼是“gb2312”。

  現有的XML分析器大多不支持中文編碼“GB2312”或“BIG5”,因此無法讀取包含中文的XML文件。你可以使用支持中文編碼的分析器,如MSXML,IBMJAVA4C,IBMJAVA4J等進行XML分析。你也可以用內碼轉換工具,將編碼轉換為“UTF-8”或“UTF-16”后進行解析,然后將解析結果轉換回原來的編碼。本站的軟件園地中的ccnv(Code Converter)就是這樣的工具。當然,你也可以自己寫一個內碼轉換程序。

  關于“UTF-8”和“UTF-16”編碼的詳細信息,請查看本站標準薈萃中的UTF-16和UTF-8標準。


----------------------

XML如何與數據庫連接?

----------------------

  XML是一種文件格式,它沒有規定與數據庫的連接方法,你需要用傳統的方法連接數據庫,進行數據庫查詢,然后將查詢結果轉化為XML格式。現在有一些工具提供了XML與數據庫的連接過程大都遵循這樣的步驟。下面是一個利用ASP直接生成XML文件的例子,你可以訪問http://www.xml.net.cn/Asps/test/roster1.asp查看執行效果。

復制代碼 代碼如下:<%@ language="VBScript" %>
<?xml version="1.0" encoding="gb2312"?>
<?xml:stylesheet type="text/xsl" href="../image/roster.xsl"?> 
<roster>
<% 
set cConn = Server.CreateObject("ADODB.Connection")
call cConn.Open("DSN","USER", "PWD")
set rs = cConn.Execute("SELECT DISTINCT * FROM roster")
Do While Not rs.EOF %>
<Record>
<Name><%=trim(rs("name"))%></Name>
<NativePlace><%=trim(rs("NativePlace"))%></NativePlace>
<Age><%=trim(rs("Age"))%></Age>
<Telephone><%=trim(rs("Telephone"))%></Telephone>
</Record>
<% rs.MoveNext 
Loop
rs.Close
set rs=nothing
set cConn=nothing
%>
</roster>  

標簽: XML/RSS
相關文章:
主站蜘蛛池模板: 中国内地毛片免费高清 | 香蕉久久高清国产精品免费 | 喷潮白浆直流在线播放 | 欧美aaa| 国产二区自拍 | 久久国产精品免费 | 日本一区三区二区三区四区 | 国产伦子伦视频免费 | 亚洲女视频 | 国产在线不卡免费播放 | 中文字幕色站 | zztt40.su黑料不打烊官网 | 亚洲视频在线一区二区 | 国产精品美女免费视频大全 | 久久国产中文字幕 | 国产精品久久久久久一级毛片 | 欧美成人精品一级高清片 | 国产一区国产二区国产三区 | 欧美一级毛级毛片 | 国产毛片一级 | 亚洲 欧美 日韩在线 | 免费观看一级特黄三大片视频 | 中文字幕亚洲 综合久久 | 拍真实国产伦偷精品 | 黄色三级网址 | 欧美成人xxx | 精品国产香蕉在线播出 | 久久久久综合 | 久久九九国产精品怡红院 | 色吧久久| 久草高清视频 | 看日本真人一一级特黄毛片 | 国产一级二级三级毛片 | 一级女人毛片 | 酒色影院 | 丝袜一级片 | 国产欧美日韩精品a在线观看 | 久久精品中文字幕有码日本 | 欧美a大片欧美片 | 亚洲一区二区三区四区在线观看 | 99精品国产成人一区二区在线 |