Xml學習筆記(一)基礎篇

2021-04-28 15:02:03 字數 1577 閱讀 3669

extensible markup language 可擴充套件標記語言。它具有如下的優點和特徵:

xml並不神秘,它的作用就是承載資料,這和純文字(plaintext)檔案是一樣的。但正是由於它的其它特點:標記語言、自描述、可自定義標籤和標準。使得它有超凡的地位。xml檔案是以.xml為字尾的檔案。一般用來儲存使用xml語言編寫的資料。

由於以上介紹的xml特性,目前xml被應用於以下的方面。但至於具體如何應用。那可要下回分解了。

目前一些使用xml標準建立的新語言包括:

首先看乙個xml檔案:

<?xml version="1.0" encoding="iso-8859-1"?>

everyday italian

giada de laurentiis

2005

30.00

harry potter

j k. rowling

2005

29.99

learning xml

erik t. ray

2003

39.95

第一行是一句定義宣告說明這是乙個xml檔案。每個xml檔案以樹結構進行組織。每個標記稱為乙個元素(element)。而第乙個元素又稱為根(root),它是所有其它元素的祖先。每個元素都可以有多個子元素(child)。

針對以上的xml檔案用下圖來說明xml樹的組織。

關於xml檔案的編寫要遵循以下的語法規則:

什麼是元素?xml元素是從開始標記到結束標記之間的所有東西。(包括標記本身)乙個元素包括其它的元素,或者文字內容,或者屬性。

元素命名規則 可以包含字母、數字和其它符號 不能以數字或標點符號開頭 不能以xml或xml、xml等等的單詞開頭 名稱不能包含有空格。

元素是可擴充套件的 可以擴充套件元素以攜帶更多的資訊。

了解element後,我們再用attribute和element比較,加深認識attribute(屬性):

屬性通常用來提供非資料的資訊。注意一定要用雙引號括住屬性的內容。如果內容包含有雙引號那麼應該用"來代替。<,>代替「<」和「>」。

元素和屬性的使用 並沒有規定什麼資料應該放在屬性中,什麼資料放在元素中。但是以下是一些比較。 屬性不能包含多值,但元素可以。 屬性不能包含樹結構,但元素可以。 屬性很難被擴充套件。 id一類的資料比較適合使用屬性來儲存。

我們把遵循語法規則的xml稱為「格式良好的xml」(wellformantxml) 而能通過結構校驗的xml稱為「有效的xml」(validxml)。首先有效的xml肯定是格式良好的xml,同時要遵循xml結構定義規則。目前定義乙個xml檔案的結構規則的方法有兩種:使用dtd檔案或schema。

如果你熟悉css,那麼可以使用css對每個標記編寫樣式。然後再xml檔案中新增如下的宣告<? xml-stylesheet type="text/css" href="cd_catolog.css" ?> 但是w3c的標準是使用xslt。

xslt是標準的xml樣式語言。儲存在xsl為字尾的檔案中。使用xslt可以將xml轉換成和html一樣的可以展示的文件。同樣是在xml中增加如下宣告 <? xml-stylesheet type="text/xsl" href="******.xsl" ?>

Xml學習筆記(一)基礎篇

preface 本文是w3schools上 xml指南 基礎篇的學習筆記。其中大部分內容是對指南的翻譯總結。由於原文的例子更詳盡生動,如果各位想閱讀原文可以到這個 同時,w3schools提供了測試,大家可以測測自己對xml的理解程度。extensible markup language 可擴充套件...

XML學習 一 XML基礎

最近接了個活要解構xml和json,武哥說讓了解下xml schema,所以興致勃勃的開啟了w3c來學習一下,結果勒 好吧,因為之前只是用了一下xml,知道大概結構,依據一貫的學習風格 知其然,知其所以然。所以決定成體系的速成一下,html和xhtml並不是關注的重點,所以這裡只是簡單介紹一下,如果...

GO 學習筆記 一基礎篇

go程式是由包組成的。程式的入口是包 main 匯入包使用 import 語句 類似於c語言的 include 匯入乙個包後,用匯出的名稱來呼叫 匯出的名稱首字母為大寫 go中的函式用func申明,函式中的引數可以沒有引數或接受多個引數。型別申明在引數名和函式定義之後。go的返回值可以被命名後像變數...