??xml version="1.0" encoding="utf-8" standalone="yes"?>日韩精品一级中文字幕精品视频免费观看 ,黄色大片在线,99国产精品久久久久http://www.aygfsteel.com/blovesaga/category/12117.html在希腊帕?dng)纳斯山南坡?有一个驰名世界的戴尔波伊托所,在它的入口处的巨石上赫然锈刻着q样几个大字: 认识你自?zh-cnWed, 28 Feb 2007 04:10:49 GMTWed, 28 Feb 2007 04:10:49 GMT60XML文档的结?/title><link>http://www.aygfsteel.com/blovesaga/archive/2006/06/13/52503.html</link><dc:creator>blovesaga</dc:creator><author>blovesaga</author><pubDate>Tue, 13 Jun 2006 08:42:00 GMT</pubDate><guid>http://www.aygfsteel.com/blovesaga/archive/2006/06/13/52503.html</guid><wfw:comment>http://www.aygfsteel.com/blovesaga/comments/52503.html</wfw:comment><comments>http://www.aygfsteel.com/blovesaga/archive/2006/06/13/52503.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/blovesaga/comments/commentRss/52503.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/blovesaga/services/trackbacks/52503.html</trackback:ping><description><![CDATA[XML文档l构包含下面三个部分:<br />* 声明部分,声明该文档是一个XML文档.<br />* 定义部分,定义XML数据的类型以?qing)所使用的DTD(可?.<br />* 内容部分,用XML标签和注释标注过的文档类?<br /><br />声明<br /><br />XML文档以XML声明开?声明本文档是一个XML文档.一般这样书?<br /><? xml version encoding standalone?><br />定义W?lt;??>表示q是一条给XML解析器的处理指o(h).虽然声明q条语句是可有可无的,但考虑C后的兼容,读者还是写上ؓ(f)?随着语言的进一步发?以后的浏览器如果知道文档所用的XML版本的话,是有好处的.q天语句必须全部用小?<br />在上面的声明中version表示的XML的标准版本号.encoding表示的是文档所用的~码.standalone用来指定在XML文档被解析之?是否使用外部或内部DTD,它的值只能是yes或no.如果为no,表示使用外部DTD;如果为yes表示使用内部DTD;如果不用DTD,则不使用q个属?<br />看下面的实际例子:<br /><?xml version="1.0" encoding="UTF-8" standalone="yes"><br />在XML声明之后,紧接着是类型定义部?定义XML文档中数据的cd.<br /><br />文档定义cd(DTD)<br /><br />DTD是用来定义XML文档内容的结构的,以便按统一的格式存储信?DTD规定?jin)XML文档中可以出现哪些元?q些元素是必ȝq是可选的;q些元素有什么属?以及(qing)它们之间的相互位|关p?{等.XML允许用户q应用E序定义专用的DTD,q样用户可以完全检查文档结构和内容的过E了(jin).q一(g)验过E称为有效化,严格依从一个DTD的XML文档被称作有效文?<br />创徏DTD的过E与在数据库里创建数据表是类似的.在DTD?用户定义用来表示数据的元?然后规定数据的结?q规定这个元素是可选的q是必须?q就好比创徏数据表的列;然后你把数据存入XML文档,好比添加数据表的记?<br />XML文档使用的元素可以在内部DTD中定?也可以在外部DTD中定?<br /><br />内部DTD<br />DTD可以作ؓ(f)文档的一部分直接攑ֈ文档里面,q样的DTD只能用于包含它的q个文档,别的文档׃能用了(jin).创徏内部DTD的语法如?<br /><!DOCTYPE rootelement<br />[element and attribute declarations]<br />><br /><!DOCTYPE标识文档cd定义的开?属性rootelement指明跟元素名?<br /><br />为部DTD<br />外部DTD是一个单独的文g,存放XML文档中可以用的全部元素?qing)属性的定义.你可以在多个文档中同时用同一个DTD,以便保持多个文档之间数据l构的一致性?br />在XML文档中引用外部DTD的语法如?<br /><!DOCTYPE rootelement [PUBLIC|SYSTEM] "name-of-file"><br />其中,DOCTYPE标识q是文档cd定义部分;rootelement代表根元?PUBLIC表示q个DTD是存攑֜公用服务器上?SYSTEM表示q个DTD是存攑֜本地计算机系l上?Name-of-file是被引用的DTD文g的名U?<br /><br />DTD字符<br />下表是DTD中用的部分专用字符?qing)其含?<br /><table style="WIDTH: 702pt; BORDER-COLLAPSE: collapse" cellspacing="0" cellpadding="0" width="936" border="0" x:str=""><colgroup><col style="WIDTH: 54pt" span="13" width="72" /></colgroup><tbody><tr style="HEIGHT: 14.25pt" height="19"><td class="xl22" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext 0.5pt solid; WIDTH: 54pt; BORDER-BOTTOM: windowtext 0.5pt solid; HEIGHT: 14.25pt; BACKGROUND-COLOR: silver" width="72" height="19"><font face="宋体">DTD字符</font></td><td class="xl27" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; WIDTH: 162pt; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: silver" width="216" colspan="3"><font face="宋体">含义</font></td><td class="xl27" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; WIDTH: 162pt; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: silver" width="216" colspan="3"><font face="宋体">举例</font></td><td class="xl27" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; WIDTH: 270pt; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: silver" width="360" colspan="5"><font face="宋体">描述</font></td><td style="BORDER-RIGHT: #ece9d8; BORDER-TOP: #ece9d8; BORDER-LEFT: #ece9d8; WIDTH: 54pt; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent" width="72"><font face="宋体"></font></td></tr><tr style="HEIGHT: 14.25pt" height="19"><td class="xl23" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext 0.5pt solid; BORDER-BOTTOM: windowtext 0.5pt solid; HEIGHT: 14.25pt; BACKGROUND-COLOR: transparent" height="19"><font face="宋体">,</font></td><td class="xl24" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" colspan="3"><font face="宋体" size="2">指定序中的"?</font></td><td class="xl30" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" colspan="3"><font face="宋体" size="2">Firstname ,Lastname</font></td><td class="xl24" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" colspan="5"><font face="宋体" size="2">Firstname与Lastname,以此序</font></td><td style="BORDER-RIGHT: #ece9d8; BORDER-TOP: #ece9d8; BORDER-LEFT: #ece9d8; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent"><font face="宋体" size="2"></font></td></tr><tr style="HEIGHT: 14.25pt" height="19"><td class="xl23" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext 0.5pt solid; BORDER-BOTTOM: windowtext 0.5pt solid; HEIGHT: 14.25pt; BACKGROUND-COLOR: transparent" height="19"><font face="宋体">|</font></td><td class="xl33" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" colspan="3"><font face="宋体">"?</font></td><td class="xl30" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" colspan="3"><font face="宋体" size="2">Firstname | Lastname</font></td><td class="xl24" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" colspan="5"><font face="宋体" size="2">Firstname或Lastname</font></td><td style="BORDER-RIGHT: #ece9d8; BORDER-TOP: #ece9d8; BORDER-LEFT: #ece9d8; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent"><font face="宋体" size="2"></font></td></tr><tr style="HEIGHT: 14.25pt" height="19"><td class="xl23" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext 0.5pt solid; BORDER-BOTTOM: windowtext 0.5pt solid; HEIGHT: 14.25pt; BACKGROUND-COLOR: transparent" height="19"><font face="宋体">?</font></td><td class="xl24" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" colspan="3"><font face="宋体" size="2">"可选项',只能出现一?/font></td><td class="xl30" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" colspan="3"><font face="宋体" size="2">Lastname?</font></td><td class="xl24" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" colspan="5"><font face="宋体" size="2">可以不出现Lastname,但如果?则只能出C?/font></td><td style="BORDER-RIGHT: #ece9d8; BORDER-TOP: #ece9d8; BORDER-LEFT: #ece9d8; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent"><font face="宋体" size="2"></font></td></tr><tr style="HEIGHT: 14.25pt" height="19"><td class="xl23" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext 0.5pt solid; BORDER-BOTTOM: windowtext 0.5pt solid; HEIGHT: 14.25pt; BACKGROUND-COLOR: transparent" height="19"><font face="宋体">()</font></td><td class="xl24" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" colspan="3"><font face="宋体" size="2">用于l成元素</font></td><td class="xl30" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" colspan="3"><font face="宋体" size="2">(Firstname | Lastname),Address</font></td><td class="xl24" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" colspan="5"><font face="宋体" size="2">一个Firstname或Lastname元素必须出现在Address元素之前</font></td><td style="BORDER-RIGHT: #ece9d8; BORDER-TOP: #ece9d8; BORDER-LEFT: #ece9d8; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent"><font face="宋体" size="2"></font></td></tr><tr style="HEIGHT: 14.25pt" height="19"><td class="xl23" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext 0.5pt solid; BORDER-BOTTOM: windowtext 0.5pt solid; HEIGHT: 14.25pt; BACKGROUND-COLOR: transparent" height="19"><font face="宋体">*</font></td><td class="xl24" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" colspan="3"><font face="宋体" size="2">该元素可以不出现也可以出现多?/font></td><td class="xl30" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" colspan="3"><font face="宋体" size="2">(Firstname | Lastname)*</font></td><td class="xl24" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" colspan="5"><font face="宋体" size="2">可以以Q何顺序出CQ意个数Firstname或Lastname元素</font></td><td style="BORDER-RIGHT: #ece9d8; BORDER-TOP: #ece9d8; BORDER-LEFT: #ece9d8; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent"><font face="宋体" size="2"></font></td></tr><tr style="HEIGHT: 14.25pt" height="19"><td class="xl23" style="BORDER-RIGHT: windowtext 0.5pt solid; BORDER-TOP: windowtext; BORDER-LEFT: windowtext 0.5pt solid; BORDER-BOTTOM: windowtext 0.5pt solid; HEIGHT: 14.25pt; BACKGROUND-COLOR: transparent" height="19"><font face="宋体"><span style="mso-spacerun: yes">  </span>Q?/font></td><td class="xl24" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" colspan="3"><font face="宋体" size="2">该元素至出Cơ也可以出现多次</font></td><td class="xl30" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" colspan="3"><font face="宋体" size="2">(Firstname +)</font></td><td class="xl24" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" colspan="5"><font face="宋体" size="2">可以出现多个Firstname元素</font></td><td style="BORDER-RIGHT: #ece9d8; BORDER-TOP: #ece9d8; BORDER-LEFT: #ece9d8; BORDER-BOTTOM: #ece9d8; BACKGROUND-COLOR: transparent"></td></tr></tbody></table><br />在DTD中定义元?br /><br />元素是XML文g的基本组成部?每个元素都是用标{标识的一段数据.标签包括?jin)元素的名字和属?<br />XML允许用于创徏自己的元素集.因此,元素名应该取得容易记?q且最好有一定的含义,让h一看到?便对里面的数据有个大概的?jin)?XML是大写敏感?所以要么你全用大写,要么׃律用写.<br />定义元素的语法如?<br /><!ELEMENT elementname content><br />在DTD?你通过创徏一个元素内Ҏ(gu)?element content model)来精的规定一个元素中是否喊有其它元素,可以出现多少ơ以?qing)按什么顺序出?如果元素中只包含别的元素,而不包含字符数据,我们p它只含有元素内容.<br /><br />XML中命名元素的规则<br />* 元素名至要含有一个字?a-z或A-Z中的一?<br />* 元素名可以用下划U?_)或冒? : )开?<br />* W一个字W后面可以是一个或多个字母,数字,q字W?下划U或句号,但不能是I格和定位符(tab),至于标点W号只能使用q字W?-)和句?.).<br /><br />对于完整的命名规?请参?a >http://www.w3.org/XML/</a>上的在线XML介绍<br /><br />元素cd<br />元素有空元素,自由元素和容器元素三U?如下?)<br /><table style="WIDTH: 432pt; BORDER-COLLAPSE: collapse" cellspacing="0" cellpadding="0" width="576" border="0" x:str=""><colgroup><col style="WIDTH: 54pt" span="8" width="72" /></colgroup><tbody><tr style="HEIGHT: 14.25pt" height="19"><td class="xl27" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext 0.5pt solid; WIDTH: 108pt; BORDER-BOTTOM: windowtext 0.5pt solid; HEIGHT: 14.25pt; BACKGROUND-COLOR: silver" width="144" colspan="2" height="19"><font face="宋体">元素cd</font></td><td class="xl27" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; WIDTH: 162pt; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: silver" width="216" colspan="3"><font face="宋体">语法</font></td><td class="xl30" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; WIDTH: 162pt; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: silver" width="216" colspan="3"><font face="宋体"> </font></td></tr><tr style="HEIGHT: 14.25pt" height="19"><td class="xl24" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext 0.5pt solid; BORDER-BOTTOM: windowtext 0.5pt solid; HEIGHT: 14.25pt; BACKGROUND-COLOR: transparent" colspan="2" height="19"><font face="宋体" size="2">I元?Empty)</font></td><td class="xl24" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" colspan="3"><font face="宋体" size="2"><!ELEMENT empty.element EMPTY></font></td><td class="xl24" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" colspan="3"><font face="宋体" size="2"><!ELEMENT empty.element EMPTY></font></td></tr><tr style="HEIGHT: 14.25pt" height="19"><td class="xl24" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext 0.5pt solid; BORDER-BOTTOM: windowtext 0.5pt solid; HEIGHT: 14.25pt; BACKGROUND-COLOR: transparent" colspan="2" height="19"><font face="宋体" size="2">自由元素(Unrestricted)</font></td><td class="xl24" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" colspan="3"><font face="宋体" size="2"><!ELEMENT any.element ANY></font></td><td class="xl24" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" colspan="3"><font face="宋体" size="2"><!ELEMENT any.element ANY></font></td></tr><tr style="HEIGHT: 14.25pt" height="19"><td class="xl24" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext 0.5pt solid; BORDER-BOTTOM: windowtext 0.5pt solid; HEIGHT: 14.25pt; BACKGROUND-COLOR: transparent" colspan="2" height="19"><font face="宋体" size="2">容器元素(Container)</font></td><td class="xl24" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" colspan="3"><font face="宋体" size="2"><!ELEMENT TITLE(#PCDATA)></font></td><td class="xl24" style="BORDER-RIGHT: black 0.5pt solid; BORDER-TOP: windowtext 0.5pt solid; BORDER-LEFT: windowtext; BORDER-BOTTOM: windowtext 0.5pt solid; BACKGROUND-COLOR: transparent" colspan="3"><font face="宋体" size="2"><!ELEMENT TITLE(#PCDATA)></font></td></tr></tbody></table>PCDATA 表示 parsable character data,既可解析的字W数?Z(jin)避免这一关键字与普通的元素名؜淆v来,在此关键字前加前~字符#.<br /><br />分析下面的标{?<br /><student><br /><firstname> Blove </firstname><br /><lastname> Saga </lastname><br /><rollno> 49 </rollno><br /><score> 70 </score><br /></student><br />要上面的文档生?必须创徏一个DTD,里面包含student,firstname,lastname,rollno,score{五个元素的定义.另外,q要规定q五个元素是必须的或可选的;以规定顺序或L排序;以及(qing)它们出现的次?用户些规定编写元素定?每个元素的定义可能不?<br />譬如,如果firstname和lastname都是必需的元?q且firstname要在lastname后面,那么DTD可以q样~写:<br /><!ELEMENT student  (firstname,lastname)><!--元素内容--><br /><!ELEMENT firstname (#PCDATA)><!--元素内容--><br /><!ELEMENT lastname  (#CDATA)><!--元素内容--><br />注意:<br />数据cd#CDATA表示元素包含字符型数?解析器不解析q些数据,其中的标{是不作为标记的.<br />数据cd#PCDATA表示元素包含字的数据由解析器解?其中的标{是被作为标记处?<br /><img src ="http://www.aygfsteel.com/blovesaga/aggbug/52503.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/blovesaga/" target="_blank">blovesaga</a> 2006-06-13 16:42 <a href="http://www.aygfsteel.com/blovesaga/archive/2006/06/13/52503.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>XML 文档的组?/title><link>http://www.aygfsteel.com/blovesaga/archive/2006/06/13/52436.html</link><dc:creator>blovesaga</dc:creator><author>blovesaga</author><pubDate>Tue, 13 Jun 2006 05:08:00 GMT</pubDate><guid>http://www.aygfsteel.com/blovesaga/archive/2006/06/13/52436.html</guid><wfw:comment>http://www.aygfsteel.com/blovesaga/comments/52436.html</wfw:comment><comments>http://www.aygfsteel.com/blovesaga/archive/2006/06/13/52436.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/blovesaga/comments/commentRss/52436.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/blovesaga/services/trackbacks/52436.html</trackback:ping><description><![CDATA[ <p>  XML 文档是一个含XML标记的ASCII文本文g,它的扩展名是.xml, ? employee.xml在开始编写XML文档之前,你应该了(jin)解组成XML文档的各个部?一个XML文档的主要成分包?<br /><br /> * 元素<br /> * 内容<br /> * 属?br /> * 注释<br /><br /> 元素<br /> 元素是XML文g的基本构造块,作ؓ(f)主要的标注组?用来描述文g的内?每一个元素用一个标{来表示一D|本信?大部分标{是成对出现?开始标{֜数据的开始处,l束标签攑֜数据的末?开始标{֒l束标签之间嵌有信心(j)的元素称为容器元?例如:<br />    <Title> My Title </Title><br />我们知道,上面语句中的Title是HTML里的元素,用来昄览器窗口的标题.在XML里,你可以创q元素,?<br />   <empname> John Rambo </empname><br />在上面的语句?empname是由开始标?<>)和结素标?</>)定义的元?嵌在q两个标{中的信息就是这个元素的内容.利用元素嵌套,你可以构Z个分层的l构.<br />也有一些标{不是成对出现的,被称作空元素.I元素不能包含的元素或数?因ؓ(f)它没有开始和l束标签.最单的I元素例子是?lt;BR>标签表示的断行元?<br />在一个XML文g?可以有一个或多个元素,但只能有一个根元素,根元素下面允许有多个子元?<br /><br />内容<br />在XML?由元素表C的信息,UCؓ(f)内容.L(fng)下面的例?<br />  <TITLE> LION KING </TITLE><br />上面q行语句?LION KING是TITLE元素所表示的内?<br /><br />属?br />属性提供元素的补充信息.每个属性有一个属性名和属性?属性值可以是数字,单词,或URL.<br /><br />在HTML?我们l常使用字体元素的颜色属??<br /><Font color="red">Displayed in red</Font><br />其中,color是属性名,其属性值是red.<br />在XML中,属性g律要加上引号.例如:<br /><empname doj="2006">John Rambo</empname><br />q里,"2006"是doj属?data of joining)的属性?用来描述元素empname.<br /><br />注释<br />注释是用来给XML文档加上注释?览器和XML处理器都忽略注释,不加处理.使用注释的好处是能所有用XML文档的h都对文档中各U元素的用法一目了(jin)?<br /><br />要在XML文g中输入注?可以依次输入一个小于号,一个感叹号和两个横?再输入注释的文本内容,q确保文本中没有两个横杠.q一点W3C规定?以保持XML与SGML的兼?最后输入两个横杠和一个大于号来结束注?例如:<br /><!-- Writing comments in XML Documents--><br />q就是注?<br /><br /><br />l构良好的XML文档<br />一个结构良好的XML文档应该遵守以下五个基本规则:<br /><br />* 标签不能隐含,必须昑ּ出现.每一个v始标{ֿL对应的结束标{?每一个结束标{也必须有对应的起始标签,Ҏ(gu)一下HTML和XML的不?<br /><br />在HTML?可以用下面的q段代码创徏一个编号列?<br /><OL><br /><LI> Number list item one<br /><LI> Number list item two<br /><LI> Number list item three<br /></OL><br />在上诉代码中,?lt;OL>?lt;/OL>来表C是一个顺序列??lt;LI>表示当前列表的开?而列表项的结?则是靠后一列表的开始来暗示?如果q段代码出现在XML文档?览器是不会(x)正确解析q个面?<br />因ؓ(f)它ƈ不是一个结构良好的文档.<br />XML文档中的标签必须昑ּ出现Q不能隐?如果用XML实现上面的例?必须q样书写:<br /><OL><br /><LI> Number list item one</LI><br /><LI> Number list item two</LI><br /><LI> Number list item three</LI><br /></OL><br />从上面这个例子中,你能看到,W一个列表必d含在开始标{֒l束标签之间,以满结构良好的XML文档的第一个规?<br /><br />* I标{l束字符'>'前必M?/'字符.<br />所谓空标签,是指标签的所有信息都攑֜它的分界W里,没有M属于它的文本信息.比如象HTML中的<BR>?lt;IMG>,都不需要结束标{?因ؓ(f)标签里已l包含了(jin)所有的信息.</p> <p>HTML中的标签全部是预定义?览器能够直接识?但是必须C,XML中没有Q何预定义的标{?用户q面定义自己的语a.正因?XMLq不能知?lt;BR>,<IMG>是空标签,你必d标签的结束处加上斜杠(/),来指明他们是I标{?像q样:<br /><BR/><br /><IMG SRC="image.gif"/><br /><br />* 所有的属性值必ȝ双引hh.<br />在HTML当中,下面的语法是正确?<br /><TD WIDTH="25%"><br /><TD WIDTH=25%><br />然而在XML当中,׃属性值必ȝ引号括v?所以只有前面一句和</TD>配合h才是合法?<br /><br />* 标签不能交叠使用<br />比如?下面q行语句׃叠v来了(jin):<br /><CITY>Chicago<STATE>Michigan</CITY></STATE><br />在XML中,必须从里到外地关闭标{?正确的顺序是:<br /><CITY>Chicago<STATE>Michigan</STATE></CITY><br /><br />* 标签大小写敏?每次都必M格匹?br />在XML文档?必须区分大小?如果你写?jin)如下的语?导致一个致命的错误(fatal error):<br /><P> Able was I, ere I saw Elba</p><br />标签<P>不能用来关闭标签</p>,因ؓ(f)两者的大小写是不同?所有的标签必须大小写严格匹?<br /><br />一个结构良好的XML文档,是一个严格遵循XML标签规则,但没有文档类型定?DTD, Document Type Definition)的文?</p> <img src ="http://www.aygfsteel.com/blovesaga/aggbug/52436.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/blovesaga/" target="_blank">blovesaga</a> 2006-06-13 13:08 <a href="http://www.aygfsteel.com/blovesaga/archive/2006/06/13/52436.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>XML基础理解http://www.aygfsteel.com/blovesaga/archive/2006/06/13/52404.htmlblovesagablovesagaTue, 13 Jun 2006 04:02:00 GMThttp://www.aygfsteel.com/blovesaga/archive/2006/06/13/52404.htmlhttp://www.aygfsteel.com/blovesaga/comments/52404.htmlhttp://www.aygfsteel.com/blovesaga/archive/2006/06/13/52404.html#Feedback0http://www.aygfsteel.com/blovesaga/comments/commentRss/52404.htmlhttp://www.aygfsteel.com/blovesaga/services/trackbacks/52404.html 理解XML
 
    XML表示可扩展标记语a(eXtensible Markup Language).其中,"可扩?q个词意味着开发者能够自由扩展在描述文g斚w的能?可以q应用E序定义有实际意义的标签.XML是基于文本的,允许开发者在各种应用E序之间传递和交换l构化数?同时大大便利?jin)不同服务器之间的数据传?用XML表注的数据能够被所有的讑֤识别,从带L的大型机和微型机,到掌上电(sh)脑和蜂窝?sh)?
    与诸如HTML,DHTML,CSS{其他网|术相?XML更注重数据的l构,而不是数据的表现形式.让我们看看下面的q段代码:
 <B>XML Bible</B>
 <P>
Elliotte Rusty Harold <BR>
IDG Books Worldwide <BR>
$39.99
    E微看一?你可能已l知道了(jin),它将的是一本关于书的基本信?作?出版C?h.但是,q里用作标记的元?比如<B>,<P>{?q没有揭C出q是一本有关书的信?它只是描qC(jin)q几行信息是如何昄?比如Q在W一行中用了(jin)<B>,pC浏览器处理的时?要以_体字显C行文?
    同样对这些信?我们用XML标注如下:
<BOOK>
<NAME>XML Bible</NAME>
<AUTHOR>Elliotte Rusty Harold</AUTHOR>
<PUBLISHER>IDG Books Worldwide</PUBLISHER>
<PRICE>$39.99</PRICE>
</BOOK>
    上面的小例子揭示?通过定义一些有含义的标{?XML扩展?jin)用hq文件的能力.你可以根据应用程序的需?定义L多个标签.在上面的代码D中,没有M关于如何昄信息的描q?XML数据的l果与显C分d?q似乎不太合?其实很有益处?

使用XML的优?br />
 
    XML不仅Ҏ(gu)据从服务器到客户端的传输大有好处,对于应用E序之间的数据传?也是十分理想?我们它的优性列丑֦?
* 可用特定领域的词汇
*  数据交换
*  化查?br />*  让用户选择昄的数?br />*  局部更?br />
可用特定领域的词汇
    XML是没有预定义标签?你必自己定义标{?用来标注你的数据.也就是说,你可以用XML创徏自己的表注语a(UCؓ(f)XML词汇?.XML允许每个特定的行业根据需要定义自q标签集合,q样览器就不必处理成千上万的标{N?利用XML,已经创徏?jin)若q新的标记语a,比如W3C特别推荐的MathML,一U用于显C数学公式和U学数据的专用标记语a,是ZXML?

数据交换
    数据交换在进行电(sh)子商务的交易时是极ؓ(f)重要.数据交换的关键在于企业之间或企业内部部门之间的标准数据接?使用存储格式不同的数据能够进行交?XMLZ文本格式式存储的数据提供?jin)对于结构的定义和管?可以作ؓ(f)数据交换的标准格式或协议,是数据交换双方的pȝ差异变得无关紧要,q且产生清晰易读的文?XML避免?jin)同cM品的一些常见弊?如扩展性差,~Z国际化和本地化的支持,q_相关{?作ؓ(f)一U非常健壮的数据交换格式,XMLl发?不断完善.

化查?br />    ׃XML的出?只能搜烦(ch)引擎成为现?可将XML文档中的数据q行化搜?得到更精的查询l果.Z(jin)更好的理解XML实现内容定义的意?我们来比较一下下面的两个例子:
?: The best pricture award in 1998 went to the film <I>Titanic</I>.
?: The best pricture award in 1998 went to the film  <FILM>Titanic<FILM>.
在第一例子?搜烦(ch)引擎q不能确定所涉及(qing)的一艘轮?一?一部电(sh)?抑或是一个Ş容词.q样的搜索精度比较低.而在W二个例子中,你能知道"Titanic"是一部电(sh)q名字.如果现在搜烦(ch)引擎要搜索的是电(sh)?"Titanic",那么在这个文档中p扑ֈ一个精的匚w?

 让用户选择昄的数?br />      XML支持用户端的数据处理.用户可以选择一?若干或全部数据记?也可以按照不同的属性进行排?或者切换到囑Ş化查看方?而且不需要服务器针对每一ơ操作发送数?相同的数据可以用不同的方式来昄,也可以仅仅显C数据的一个子?q些都取决于用户与这些数据的相对关系.比如,?x)计部门是可以访问?ch)务信息的,而购C西的֮却不能反问这部分信息.

 局部更?br />      当需要更新XML文档中的数据?q不需要更新整个页?而只要重C载那些变化了(jin)的数?q显然加快了(jin)更新的速度.例如:股票交易中的数据是动态的,如果每次都更新整个页面的?都需要很多时?而用XML,只改变变化?jin)的数?

XML的设计目?br />      XML是针对大规模的电(sh)子出版物的挑战来设计?同时在Web数据的交换中也充当着来重要的角色.
Ҏ(gu)W3C的有x?XML在如下几个斚w发挥重要作用:
* 实现国际?独立于媒体的?sh)子出?
* 允许个业部门制订与q_无关的数据交换协?其针对?sh)子商务数据交换的协?
* 使用允许自动处理的格?信息传递给用户代理?br />* 让h们用低h(hun)软g可以实现数据处?br />* 允许Z按照自己的方式显CZ?br />* 提供一U有关信息的数据(写作 metadata),以帮助h们寻扑֒发现信息,实现信息的生产者和消费者之间的双向L.

  M形式?sh)子商务的成?都有赖于一个公p汇表的广泛?部分XML词汇表列丑֦?

  频道定义格式(CDF, Channel Definition Format)-一U基于XML?用于创徏web频道的数据格?所谓web频道,是一U实现web服务器到客户端的数据自动发送的技?
 
  开放Y件描q?OSD, Open Software Description)-用于|上自动安装软g,而不需要Q何h工干?

  开攑ּ金融交易(OFX, Open financial Exchange)-被个人金融应用程序用来作Z人和金融l织之间q行|上交流的工?

  Meta内容框架(MCF, Meta Content Framework)-用来定义关于信息的数?以实现对信息的编目和搜烦(ch).

  资源描述框架(RDF, Resource Description Framework)-用于描述各种cd的资?以实现对资源的编?搜烦(ch)和引?

  无线标记语言(WML, Wireless Markup Language)-用于在无U网l上的数据奋?采用无线讉K协议.

  化学标记语言(CML, Chemical Markup Language)-用来定义化学公式.
 
   数学标记语言(MathML, Mathematical Markup Language)-用来定义复杂的数学公?



blovesaga 2006-06-13 12:02 发表评论
]]>
վ֩ģ壺 ع| | | | | | ƽ| | | | Į| | İ| | ֯| | | | | °Ͷ| | | Ϻ| ɽ| «| | ٳ| | ع| ̩| ˮ| Ϫ| ߰| | ɽ| | | ƽ| | | żҸ|