XML 学习

XML --- 传输和存储数据          HTML--- 显示数据

XML 指可扩展标记语言,很类似HTML,设计宗旨是传输数据,而非显示数据。没有预定义,需要自行定义标签,具有自我描述性。

没有任何行为的XML,XML是不作为的。XML被设计用来结构化、存储及传输信息。

XML 仅仅是纯文本,有能力处理纯文本的软件都可以处理XML

XML不是HTML的替代,他是对HTML的补充,XML是独立于软件和硬件的信息传输工具

XML文档结构是一种树结构,他从“根部”开始,然后扩展到“树枝”

XML的语法规则很简单,且很有逻辑。这些规则很容易学习,也很容易使用:

所有XML元素都必须有关闭标签、XML标签对大小写敏感、XML必须正确的嵌套、XML文档必须有根元素、XML的属性值必须加引号

实体引号

&lt;<小于
&gt;>大于
&amp;&和号
&apos;‘’单引号
&quot;"引号
在XML中,空格会被保留,在XML中,文档中的空格不会被删除

<bookstore> <!--元素内容(因为含有元素)-->
    <book category="CHILDREN"> <!--元素内容(因为含有元素)-->
        <title>Harry Potter</title>
        <author>J K. Rowling</author> <!--文本内容,因为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>
<!--
    仅有<book>元素拥有属性(category="CHILDREN");
    命名规则:名称可以含有字母、数字及其他字符;
            名称不能以数字或者标点符号开始;
            名称不能以字符“xml”(或者XML、Xml)开始
            名称不能包括空格
    可以使用任何名称,没有保留字
    最佳命名习惯,使用下划线,比如:简短的<book_title>,而不是复杂的:<the_title_of_the_book>.
                避免“-”字符、“·”字符、“:”字符;
                实用经验:使用数据库命名鬼则来命名XML文档的元素。XML文档经常会有一个对应的数据库,其中的字段会对应XML文档中的元素;
-->
<!--XML元素是可扩展的-->
<note >
    <to>George</to>
    <form>John</form>
    <body>Don't forget the meeting!</body>
</note>
<!--再像XML文档添加一些额外的信息-->
<note>
    <date>2017-01-10</date>
    <to>George</to>
    <form>John</form>
    <heading>Reminder</heading>
    <body>Don't forget the meeting!</body>
</note>
<!--应用程序即使加了新的<date><heading>内容,仍然可以找到XML文档中的<to>、<from>以及<body>,并产生相同的输出,而不会中断或奔溃-->
<!--XML的优势之一,就是可以经常在不中断的情况进行扩展-->
XML元素可以在开始标签中包含属性,类似HTML。属性(Attribute)提供关于元素的额外(附加)信息

<!--XML属性(属性提供有关元素的额外信息)-->
<!--XML属性必须加引号-->
<person sex="female"></person>
<person sex='female'></person>
<gangster name='George "Shotgun" Ziegler'></gangster>
<gangster name="George "e;Shotgun" Ziegler"></gangster>

<!--XML元素 vs.属性-->
<person sex="female"><!--sex是一个属性-->
    <firstname>Anna</firstname>
    <lastname>Smith</lastname>
</person>

<person>
    <sex>female</sex><!--sex是一个子元素-->
    <firstname>Anna</firstname>
    <lastname>Smith</lastname>
</person>
<!--在HTML中,属性用起来很便利,但是XML中,应尽量避免使用属性-->

<!--三种XML文档包含相同的信息-->
<!--第一个例子-->
<note date="08/08/2008">
    <to>George</to>
    <form>John</form>
    <heading>Reminder</heading>
    <body>Don't forget the meeting!</body>
</note>

<!--第二个例子-->
<note>
    <date>08/08/2008</date>
    <to>George</to>
    <form>John</form>
    <heading>Reminder</heading>
    <body>Don't forget the meeting</body>
</note>

<!--第三个例子-->
<note>
    <date>
        <day>08</day>
        <month>08</month>
        <year>2008</year>
    </date>
    <form>John</form>
    <heading>Reminder</heading>
    <body>Don't forget the meeting</body>
</note>

<!--避免使用属性-->
<!--属性无法包含多重的值(元素可以)、属性无法描述树结构(元素可以)、属性不易扩展(为未来的变化)、属性难以阅读和维护-->
<!--尽量使用元素来描述数据。而仅仅使用属性来提供与数据无关的信息-->
拥有正确语法的XML被称为“形式良好”的XML。通过DTD验证的XML是“合法”的XML

合法的XML文档是“形式良好”的XML文档,同样遵守文档定义(DTD)的语法规则:

<?xml version="1.0" encoding="" ?>
<!DOCTYPE note SYSTEM "Note.dtd">
<note>
    <to>George</to>
    <form>John</form>
    <heading>Reminder</heading>
    <body>Don't forget the meeting!</body>
</note>
XML DTD
<!DOCTYPE note [
  <!ELEMENT note (to,from,heading,body)>
  <!ELEMENT to      (#PCDATA)>
  <!ELEMENT from    (#PCDATA)>
  <!ELEMENT heading (#PCDATA)>
  <!ELEMENT body    (#PCDATA)>
]> 
XMLHttpRequest对象用于在后台与服务器交换数据
优势:在不重新加载页面的情况下更新网页、在页面已加载后从服务器请求数据、在页面已加载后从服务器接收数据、在后台向服务器发送数据






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值