什么是XML?如何学习XML?

来源:互联网 发布:介绍湖北黄冈知乎 编辑:程序博客网 时间:2024/06/10 11:27

1.什么是XML?
XML是一种类似于HTML的标记语言

  XML是用来描述数据的

  XML的标记不是在XML中预定义的,你必须定义自己的标记

  XML使用文档类型定义(DTD)或者模式(Schema)来描述数据

  XML使用DTD或者Schema后就是自描述的语言

附:XML和HTML的主要区别是什么?

  XML是用来存放数据的

  XML不是HTML的替代品,XML和HTML是两种不同用途的语言。

  XML是被设计用来描述数据的,重点是:什么是数据,如何存放数据。

  HTML是被设计用来显示数据的,重点是:显示数据以及如何显示数据更好上面。

2.如何学习XML?

一.XML学习路线语法规范内部解析(DTD , XSL<XSLT,XPath,XSL-FO>, XQuery,  XLink-XPointer, SVG)外界关联(DOM,JavaScript,HTML)二.语法规范1.》声明一个xml文件<?xml version="1.0" encoding="utf-8"?>2.》文档节点部分<节点名></节点名>节点/元素/标签一个意思标签属性,区分大小写,默认全小写或者作为单标签,自闭和<br />3.》整个文档只能有一个根节点如<root><a></a></root><root></root><a></a>错4.》标签可以嵌套,但不可以互嵌套<root><a></root></a>5.》属性写法属性必有值,推荐小写,必须双引号括住html中<input type="text" disabled><select><option></option><option selected></option><option></option></select>----<option selected="selected"></option>--6.》注释的写法<!---这是注释---->7.特殊字符要用实体来表示(转义)'->&apos;"->&quot>->&gt;&->&lt;7.》如果文章中有大量'"<>定界符CDATA来放大段文本时不考虑<![CDATA[内容]]>8.》一切皆节点,包括,空格,换行,注释三.DTD - XML 构建模块(定义合法的XML文档构建模块)DTD 可被成行地声明于 XML 文档中,也可作为一个外部引用。构建模块最主要的与元素是 XML 和 HTML文档。Elements(元素)Attributes(属性)Entities(实体)PCDATA(进行解析的文本数据)CDATA(不进行解析的文本数据)CDATA  -指的是不应由 XML 解析器进行解析的文本数据(Unparsed Character Data)PCDATA -指的是被解析的字符数据(Parsed Character Data)。实体   -是用于定义引用普通文本或特殊字符的快捷方式的变量。DTD 例子:<!ENTITY writer "Bill Gates"><!ENTITY copyright "Copyright W3School.com.cn">XML 例子:<author>&writer;&copyright;</author>注释: 一个实体由三部分构成: 一个和号 (&), 一个实体名称, 以及一个分号 (;)。<?xml version="1.0"?><!DOCTYPE note [<!ELEMENT note (to,from,heading,body)><!ELEMENT to (#PCDATA)><!ELEMENT from (#PCDATA)><!ELEMENT heading (#PCDATA)><!ELEMENT body (#PCDATA)>]><note><to>Tove</to><from>Jani</from><heading>Reminder</heading><body>only you know me</body></note>四.XSL 指扩展样式表语言(EXtensible Stylesheet Language), 它是一个 XML 文档的样式表语言。XSL = XML 样式表 类似于 CSS = HTML 样式表XSL - 不仅仅是样式表语言XSL 包括三部分:*XSLT(EXtensible Stylesheet Language Transformations) - 一种用于转换 XML 文档的语言。*XPath - 一种用于在 XML 文档中导航的语言。*XSL-FO - 一种用于格式化 XML 文档的语言。五.XQuery 之于 XML 作用就类似于 SQL 之于数据库的作用。XQuery 被设计用来查询 XML 数据。六.XLink 定义在 XML 文档中创建超级链接的标准方法。XPointer 允许这些超级链接指向 XML 文档中的更多具体部分(片断)。<?xml version="1.0" encoding="ISO-8859-1"?><bookstore xmlns:xlink="http://www.w3.org/1999/xlink"><book title="Harry Potter">  <description  xlink:type="simple"  xlink:href="http://book.com/images/HPotter.gif"  xlink:show="new">  I am so happy to see you again.  </description></book><book title="XQuery Kick Start">  <description  xlink:type="simple"  xlink:href="http://book.com/images/XQuery.gif"  xlink:show="new">  You are my best friends.  </description></book></bookstore><?xml version="1.0" encoding="ISO-8859-1"?><dogbreeds><dog breed="Rottweiler" id="Rottweiler">  <picture url="http://dog.com/rottweiler.gif" />  <history>The Rottweiler's ancestors were probably Roman  drover dogs.....</history>  <temperament>never give up!</temperament></dog><dog breed="FCRetriever" id="FCRetriever">  <picture url="http://dog.com/fcretriever.gif" />  <history>One of the earliest uses of retrieving dogs was to  help fishermen retrieve fish from the water....</history>  <temperament>  I have nothing but a hot heart.  </temperament></dog></dogbreeds>七.SVG 使用 XML 格式定义图像。八.XML DOM(动态调用)那么什么是XML DOM呢?XML DOM 是:1.用于 XML 的标准对象模型2.用于 XML 的标准编程接口3.中立于平台和语言4.W3C 的标准XML DOM 定义了所有XML 元素的对象和属性,以及访问它们的方法(接口)。定义访问和操作XML文档的标准方法。DOM 将 XML 文档作为一个树形结构,而树叶被定义为节点。---------得到整个文档$dom=new Domdocumnet('1.0','utf-8');$dom->load('xxx.xml');---------得到串$dom->getElementsByTagName('节点名');---------得到点$nodelist->item(0/1/2...);九.JavaScript操作XML是通过XML DOM来完成的。十.HTML与XML可以互相转换为了更好地适应客户端浏览器的浏览,可以在服务器端进行XML-HTML的转换,但普通静态空间不支持这种转换,可以选择支持XMLDOM的ASP或PHP服务器进行。
0 0