XML基础教程
概念
XML名为可扩展标记语言 ,础教程与HTML结构类似。础教程
用途
用于结构化存储、础教程传输数据。础教程
语法
例子 :
<?础教程xml version="1.0" encoding="UTF-8"?>n<!DOCTYPE resource PUBLIC "namespace" "namespace.dtd">n<resource xmlns="https://www.serendipity.com">n <table id="001">n <td>apple</td>n <td>pear</td>n </table>n</resource>n
- 需要xml声明
<?xml version="1.0" encoding="UTF-8"?>n
- 标签需要对应,有开始标签 ,础教程也需要有结束标签
- 标签大小写敏感
- 必须要有根元素
- 特殊字符
< == <n> == >n& == &n' == &pos;n" == "n
属性
属性用来描述元素的础教程额外信息 ,而不同于描述数据信息,础教程数据信息建议使用标签描述。础教程
DTD、础教程Schema
XML DTD和 XML Schema是础教程用于验证、约束XML的础教程 ,XML Schema是础教程XML DTD的替代方案。
<!DOCTYPE resourcen[n<!ELEMENT resource (table)>n<!ELEMENT table (td)>n<!ELEMENT td (#PCDATA)>n]>n
XSLT样式表
XSLT用于替换XML数据并转化为另一种格式的础教程XML或者HTML 。Linux和Mac上可以使用xsltproc工具执行转化,础教程windows可以使用XMLSpy软件。
-bash-3.2$ xsltproc namespace.xsl namespace.xmln<html><body>n n applen pearn n</body></html>n
XML Javascript
用于提取服务器端的XML文件并解析成XML DOM对象 ,如下示例:
<!DOCTYPE html>n<html>n<body>n<h1>namespace</h1>n<div id="main">n</div>n n<script>nxmlhttp=new XMLHttpRequest();nxmlhttp.open("GET","namespace.xml",false);nxmlhttp.send();nxmlDoc=xmlhttp.responseXML;n ndocument.getElementById("main").innerHTML=nxmlDoc.getElementsByTagName("td")[0].childNodes[0].nodeValue;n</script>n n</body>n</html>n
namespace
用来避免元素命名冲突,当相同元素有不同的结构时,可以区分开来 ,。比如示例table元素:
<?xml version="1.0" encoding="UTF-8"?>n<!DOCTYPE resource PUBLIC "namespace" "namespace.dtd">n<resource xmlns="https://www.serendipity.com" xmlns:d="https://www.serendipity01.com">n <table id="001">n <td>apple</td>n <td>pear</td>n </table>n <d:table>n <d:name>desk</d:name>n <d:width>150cm</d:width>n <d:height>80cm</d:height>n </d:table>n</resource>n
XSLT提取原XML文件到新的XML文件时,需要指定原XML的命令空间 ,否则XSLT将提取不到节点的数据。
CDATA
使用CDATA包含的数据不被XML解析器解析。
相关技术
- XSLT
- XPath
- XML DTD
- XML Schema
- SOAP
- XQuery
- RSS
- SVG
- XML DOM
@真知新坐标