xml学习笔记 1. XML

来源:互联网 发布:com域名和cn域名 编辑:程序博客网 时间:2024/05/16 08:04

XML    eXtensible Markup Language   可扩展标记语言,是一种标记语言,用来表示包含结构信息的数据。

XML是一种树形的结构,通常用于储存数据,数据库是一种表的结构,也用来储存数据,树可以表示表,但是表不能表示树。

标记语言的历史, 一开始有个SGML的语言,为通用的文档结构描述符号化语言,然后有了HTML,超文本链接语言,是sgml的一种应用,但是只能编写网页,最后有了XML。


xml有四个特点

可扩展性 Extensible   XML允许使用者创建和使用自己的标记。

灵活性    Flexibility       XML提供了结构化的数据表示方式,使用户界面分离与结构化数据。

自描述性 Self-descibling     XML表示数据的方式独立于应用系统,且数据能够重用

简洁性     Simplicity       XML比SGML简单 ,更易实现


XML的编写:

第一行通常为声明部分

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
包含   版本声明 version    编码声明encoding   独立性声明 standalone.
版本声明必须有,且为声明中的第一个属性。 独立性声明说明当前文件是否需要与其他文件配套使用。


处理指令:

<?xml-stylesheet href=“style.xsl” type=“text/xsl”?>
处理指令 使  XML用于特殊的应用程序时执行特定的操作。上面代码即使xsl执行引擎执行到这里时,根据style.xsl对XML文档进行相应的转换。但是XML解析器并不理解这些指令,也不进行操作。


注释

<!-- ........  -->
注释中不能出现两个连续的--      。 注释不能处于元素的标签内,也不能嵌套。


元素Element

属性Attribute

文本内容,为元素中的文本,一下几个字符使用预定义的实体替换:

<           "   &lt    "

>           "   &gt   "

&           "   &amp"

'             "    &apos"

"             "    &quot"

也可以直接使用CDATA进行输出,在其中写带有非法符号的文本

<![CDATA[......]]
XML出现的空白字符为空格,回车,换行,制表四种,在缺省状态下,对于连续出现的空白字符,解析器为将其缩减为一个空格字符。


XML良构性,Well-formed 指其结构能够符合要求,使程序能进行正确解析。略


命名空间  namespace

xmlns:prefix-name="URI" 
xmlns:xml namespace  之后跟命名空间的名字


之后是几个直接用xmlspy画出来的xml用例

这里的三个用例都由下一篇文章中的 dtd文件规格  以及下下篇文章中的  xsd文件。 

<?xml version="1.0" encoding="UTF-8"?><!-- 被2012 () 使用XMLSpy v编辑的 (http://www.altova.com) by --><info xsi:noNamespaceSchemaLocation="SpyBase1.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><aliasTable><row aID="1"><spyREF>A001</spyREF><alias>Spy Grrrl</alias></row><row aID="2"><spyREF>A001</spyREF><alias>La Femme Nikki</alias></row><row aID="3"><spyREF>A006</spyREF><alias>LL</alias></row><row aID="4"><spyREF>A006</spyREF><alias>Fred</alias></row><row aID="5"><spyREF>A003</spyREF><alias>Big Ears</alias></row><row aID="6"><spyREF>A004</spyREF><alias>Inspector Gadget</alias></row><row aID="7"><spyREF>A004</spyREF><alias>Don Adams</alias></row></aliasTable><missionTable><row mID="M101"><spyREF>A001</spyREF><date>2005-4-15</date><description>Crack the code</description><status>Mission Accomplished</status></row><row mID="M102"><spyREF>A001</spyREF><date>2006-2-15</date><description>Get the source</description><status>Mission Accomplished</status></row><row mID="M103"><spyREF>A001</spyREF><date>2006-5-4</date><description>Hit the target</description><status>In Progress</status></row><row mID="M104"><spyREF>A006</spyREF><date>2006-6-15</date><description>Shoot the rapid</description><status>In Progress</status></row><row mID="M105"><spyREF>A003</spyREF><date>2005-11-4</date><description>Get the big cheese</description><status>In Progress</status></row><row mID="M106"><spyREF>A003</spyREF><date>2006-4-4</date><description>Map the area</description><status>In Progress</status></row><row mID="M107"><spyREF>A099</spyREF><date>2006-5-2</date><description>Get Smart</description><status>In Progress</status></row><row mID="M108"><spyREF>A004</spyREF><date>1967-2-15</date><description>Protect Chief</description><status>In Progress</status></row><row mID="M109"><spyREF>A004</spyREF><date>2006-6-15</date><description>Get some style</description><status>Mission Accomplished</status></row></missionTable><spyTable><row spyID="A001"><firstName>Nikki</firstName><lastName>Devgood</lastName></row><row spyID="A006"><firstName>Link</firstName><lastName>Lister</lastName></row><row spyID="A003"><firstName>Danger</firstName><lastName>Mause</lastName></row><row spyID="A099"><firstName>Barbara</firstName><lastName>Feldon</lastName></row><row spyID="A004"><firstName>Maxwell</firstName><lastName>Smart</lastName></row></spyTable></info>


<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE info SYSTEM "SpyBase2.dtd"><info><row spyID="A001"><firstName>Nikki</firstName><lastName>Devgood</lastName><alias>Spy Grrrl</alias><alias>La Femme Nikki</alias><mission><date>2005-4-15</date><description>Crack the code</description><status>Mission Accomplished</status></mission><mission><date>2006-2-15</date><description>Get the source</description><status>Mission Accomplished</status></mission><mission><date>2006-5-4</date><description>Hit the target</description><status>In Progress</status></mission></row><row spyID="A006"><firstName>Link</firstName><lastName>Lister</lastName><alias>LL</alias><alias>Fred</alias><mission><date>2006-6-15</date><description>Shoot the rapid</description><status>In Progress</status></mission></row><row spyID="A003"><firstName>Danger</firstName><lastName>Mause</lastName><alias>Big Ears</alias><mission><date>2005-11-4</date><description>Get the big cheese</description><status>In Progress</status></mission><mission><date>2006-4-4</date><description>Map the area</description><status>In Progress</status></mission></row><row spyID="A099"><firstName>Barbara</firstName><lastName>Feldon</lastName><mission><date>2006-5-2</date><description>Get Smart</description><status>In Progress</status></mission></row><row spyID="A004"><firstName>Maxwell</firstName><lastName>Smart</lastName><alias>Inspector Gadget</alias><alias>Don Adams</alias><mission><date>1967-2-15</date><description>Protect Chief</description><status>In Progress</status></mission><mission><date>2006-6-15</date><description>Get some style</description><status>Mission Accomplished</status></mission></row></info>


<?xml version="1.0" encoding="UTF-8"?><!--用XMLSpy v2012产生的 XML文件(http://www.altova.com)--><book xsi:noNamespaceSchemaLocation="book.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><title xsi:type="bookTitleType">Data On the Web</title><author>text</author><author>text</author><author>text</author><section id="text" difficulty="text"><title xsi:type="sectionTitleType">1.xxxx</title><p>text</p></section><section id="text" difficulty="text"><title xsi:type="sectionTitleType">1-1.xxxx</title><p>text</p></section><section id="text" difficulty="text"><title>a</title><figure width="12" height="24"><title xsi:type="figureTitleType">1-1-1.xxxx</title><image source=""></image></figure></section><section id="text" difficulty="text"><title xsi:type="sectionTitleType">120.250.215uafghaoh</title><section><title>afas</title><figure width="" height=""><title xsi:type="figureTitleType">1-1-1.xxxx</title><image source=""></image></figure></section></section></book>









0 0
原创粉丝点击