xml学习
来源:互联网 发布:js正则表达式匹配括号 编辑:程序博客网 时间:2024/06/01 10:35
用途:
xml用来传输和存储数据,html用来显示数据
简介:
xml是可扩展标记语言(extensible markup language)
xml标签没有预定义,需要自行定义标签。
xml被设计成自我描述。
xml是w3c的推荐标准。
xml不是要取代html,而是对html的补充。
xml不做任何事情,xml被用来结构化储存和传输数据。
xml将数据从html中分离出来,html着重显示。
xml以纯文本来保存数据,有利于数据的共享和传输。
xml是许多新internet技术的基础,比如wsdl-用来描述web sevice
soap-用来传递消息;xhtml-新的html版本;rss-用于rss feed的语言;
smil-用于描述针对web的多媒体;
xml结构
xml包括一个根元素,从根元素出发构成一个树状的结构
<?xml version="1.0" encoding="utf-8"?><!DOCTYPE bookstore SYSTEM "bookstore.dtd"><bookstore><book category="cooking"> <title lang="en">Everyday Italia</title> <author>Giada De Laurentiis</author> <year>2005</year> <price>30.0</price></book><book category="children"> <title lang="en">Harry Potter</title> <author>J K.Roeling</author> <year>2001</year> <price>31</price></book></bookstore>
在上面的例子中book中的”category“是属性,通过属性可以标识元素,类似于html中的name标签
dtd是文档类型语法规则。我们知道xml是一种严格的类型定义语言,为了规范语法有语法规则定义,语法规则用doctype来定义
examle:
<!DOCTYPE bookstore [ <!ELEMENT bookstore(book)> <!ELEMENT book (title,author,year,price)> <!ELEMENT title (#PCDATA)> <!ELEMENT author (#PCDATA)> <!ELEMENT year (#PCDATA)> <!ELEMENT price (#PCDATA)>]>
除了dtd,在xml中还可以用xml schema来描述语法规则
example:
<xs:emement name="bookstore"><xs:complexType> <xs:sequence> <xs:element name="book"> <xs:complextype> <xs:sequence> <xs:element name="title" type="xs:string"/> <xs:element name="author" type="xs:string"/> <xs:element name="year" type="xs:string"/> <xs:element name="price" type="xs:string"/> </xs:sequence> </xs:complextype> </xs:sequence></xs:complexType></xs:emement>
xml不能直接显示,除非用了css或xslt
例子:
<?xml version="1.0" encoding="utf-8"> <?xml-stylesheet type="text/css" href="bookstore.css"> .... <?xml verision="1.0" encoding="urf-8"> <?xml-stylesheet type="text/xsl" href="bootstore.xsl"> ....
xml与javascript
xmlhttprequest:
使用xmlhttpresquest可以
1)在不加载页面的情况下更新网页;
2)页面加载后从服务器获得数据;
3) 页面加载后向服务器请求数据;
4) 向服务器发送数据。
例子:
<html><head><script type="text/javascript">var xmlhttp;function loadxmldoc(url){ xmlhttp=null; if(window.XMLHttpRequest){ xmlhttp=new XMLHttpRequest(); } else if(window.ActiveXObject){ xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } if(xmlhttp!=null){ xmlhttp.onreadystatechange=state_Change; xmlhttp.open("GET",url,true); xmlhttp.send(null); } else{ alert("you browser does not support XMLHTTP"); }} function state_Change(){ if(xmlhttp.readyState==4){ if(xmlhttp.status==200){ //200 is ok document.getElementById('t1').innerHTML=xmlhttp.responseText; } else{ alert(Problen retrieving xml data); } } } </script> </head> <body onload="loadXMLDoc('/test.txt')"> <div id='t1'> </div><br/> <button="loadxmldoc('/text2.txt')">click</button> </body> </html>
xmldoc
xmldoc用来装载和解释xml
var xmldoc=new ActiveXObject("microsoft.xmldom")//windows用法orvar xmldoc=document.implementation.createDocument("","",null)//其他浏览器用法然后:xmldoc.async="false"xmldoc.load("test.xml");//load a filexmldoc.loadXML(txt);//load a string buff
0 0
- XML学习
- XML学习
- XML学习
- XML学习
- XML学习
- XML学习
- xml学习
- 学习xml
- xml 学习
- XML学习
- XML 学习
- 学习XML
- XML学习
- xml学习
- xml学习
- XML学习
- XML学习
- XML学习
- 配置管理篇(2)_SaltStack grains
- 用flask开发个人博客(2)—— Flask中的请求对象request
- saltstack api部署,使用.
- cocoapods的安装笔记
- MyEclipse——主题设置
- xml学习
- 915
- JSP学习
- 【从C到C++学习笔记】bool类型/const限定符/#define//结构体对齐
- java 8 函数式接口
- Cuckoo安装指南(一)
- Xcode8 解决console大量subsystem: com.apple.xx 等冗余Log信息问题
- SeetaFace开源人脸识别引擎介绍
- kali 无法远程ssh一些错误解决办法