XML 筆記

tags: XML

介紹

1.主要在儲存和傳輸數據
2.實現自我描述
3.w3c標準
4.跟html之前差別,xml注重傳輸數據,html注重顯示數據

預定義的實體引用

&lt;	<	less than
&gt;	>	greater than
&amp;	&	ampersand 
&apos;	'	apostrophe
&quot;	"	quotation mark

CR(打字頭歸位)+ LF(紙張往下捲動一行)

XML元素

<bookstore>
  <book category="children">
    <title>Harry Potter</title>
    <author>J K. Rowling</author>
    <year>2005</year>
    <price>29.99</price>
  </book>
  <book category="web">
    <title>Learning XML</title>
    <author>Erik T. Ray</author>
    <year>2003</year>
    <price>39.95</price>
  </book>
</bookstore>
,<author>,<year>和<price>包含文本內容,因為它們包含文本(如29.99)。 </blockquote> <blockquote class="raw part" data-startline="40" data-endline="40"> <p data-position="652" data-size="0"><bookstore><span data-position="663" data-size="1">和</span><book><span data-position="670" data-size="16">具有元素內容,因為它們包含元素。</span></p> </blockquote> <blockquote class="raw part" data-startline="42" data-endline="42"> <p data-position="689" data-size="0"><book><span data-position="695" data-size="29">有一個屬性 (category =“children”)。</span></p> </blockquote> <h2 class="raw part" data-startline="44" data-endline="44"><span data-position="729" data-size="7">XML命名規則</span></h2> <blockquote class="raw part" data-startline="45" data-endline="49"> <p data-position="738" data-size="0"><span data-position="738" data-size="11">1.元素名稱區分大小寫</span><br> <span data-position="751" data-size="17">2.元素名稱必須以字母或下劃線開頭</span><br> <span data-position="770" data-size="27">3.元素名稱不能以字母xml(或XML或Xml等)開頭</span><br> <span data-position="799" data-size="26">4.元素名稱可以包含字母,數字,連字符,下劃線和句點</span><br> <span data-position="827" data-size="12">5.元素名稱不能包含空格</span></p> </blockquote> <h2 class="raw part" data-startline="51" data-endline="51"><span data-position="844" data-size="8">XML 命名空間</span></h2> <p class="part" data-startline="52" data-endline="52" data-position="853" data-size="0"><span data-position="853" data-size="11">可使用前綴解決名稱衝突</span></p> <h2 class="raw part" data-startline="54" data-endline="54"><span data-position="869" data-size="15">XML命名空間-xmlns屬性</span></h2> <p class="part" data-startline="55" data-endline="57" data-position="885" data-size="0"><span data-position="885" data-size="23">在XML中使用前綴時,必須定義前綴的命名空間。</span><br> <span data-position="909" data-size="26">命名空間可以由元素的開始標記中的xmlns屬性定義。</span><br> <span data-position="936" data-size="33">名稱空間聲明具有以下語法。xmlns:prefix =“URI”。</span></p> <h2 class="raw part" data-startline="59" data-endline="59"><span data-position="974" data-size="14">XMLHttpRequest</span></h2> <p class="part" data-startline="60" data-endline="63" data-position="989" data-size="0"><span data-position="989" data-size="12">更新網頁而不重新加載頁面</span><br> <span data-position="1002" data-size="14">在頁面加載後從服務器請求數據</span><br> <span data-position="1017" data-size="14">在頁面加載後從服務器接收數據</span><br> <span data-position="1032" data-size="15">將數據發送到服務器 - 在後台</span></p> <div class="part code-block-wrapper" data-startline="65" data-endline="69" data-infoprefix-length="0" data-position="1049"> <pre><code>var xhttp = new XMLHttpRequest();//建立HttpRequest物件 xhttp.responseXML //返回響應作為XML DOM xhttp.responseText //返回響應作為一個字符串 </code></pre> </div> <h2 class="raw part" data-startline="71" data-endline="71"><span data-position="1208" data-size="15">XML Parser(解析器)</span></h2> <p class="part" data-startline="72" data-endline="72" data-position="1224" data-size="0"><span data-position="1224" data-size="18">可以將文本轉換為XML DOM對象。</span></p> <div class="part code-block-wrapper" data-startline="73" data-endline="76" data-infoprefix-length="0" data-position="1243"> <pre><code>parser = new DOMParser(); //建立DOMParser物件 xmlDoc = parser.parseFromString(text,"text/xml");//將文檔解析成XML DOM對象 </code></pre> </div> <h2 class="raw part" data-startline="77" data-endline="77"><span data-position="1386" data-size="4">xslt</span></h2> <div class="part code-block-wrapper" data-startline="78" data-endline="111" data-infoprefix-length="0" data-position="1392"> <pre><code>template 元素用於構建模板 xsl:template match="導入xml資料" value-of 元素用於提取所選節點的值 <xsl:value-of select="xml值名稱"/> for-each 用於選擇指定節點集的每個XML元素 <xsl:for-each select="xml分層路徑"> sort 對輸出進行排序 <xsl:sort select="xml值名稱"/> if 條件判斷 <xsl:if test="expression"> ...some output if the expression is true... </xsl:if> choose 表示多個條件判斷,相較與id else <xsl:choose> <xsl:when test="expression"> ... some output ... </xsl:when> <xsl:otherwise> ... some output .... </xsl:otherwise> </xsl:choose> </code></pre> </div>