1. 首页
  2. 网站建设
  3. 其他知识

XML快速学习(3)

四. XML语法

()XML语法规则

规则1:必须有XML声明语句

规则2:是否有DTD文件

规则3:注意你的大小写:在 XML文档中,大小写是有区别的。

规则4:给属性值加引号:和HTML不一样

规则5:所有的标识必须有相应的结束标识

规则6:所有的空标识也必须被关闭

例如:
br应写为br /
META name=”keywords” content=”XML, SGML, HTML”应写为META name=”keywords” content=”XML, SGML, HTML” /
IMG src= “cool.gif”应写为IMG src= “cool.gif” /

(二)元素的语法

1.名称中可以包含字母、数字以及其它字母;
2.名称不能以数字或“_” (下划线)开头;
3.名称不能以字母 xml(XML Xml ..)开头
4.名称中不能包含空格
5.名称中间不能包含“:”(冒号)

(三)注释的语法

!– 这里是注释信息

(四)CDATA的语法

CDATA全称character data,翻译为字符数据。我们在写XML文档时,有时需要显示字母,数字和其它的符号本身,比如“”,而在XML中,这些字符已经有特殊的含义,这就需要用到CDATA语法。语法格式如下:
![CDATA[这里放置需要显示的字符]]
例如:
![CDATA[AUTHOR sex=”female”ajie/AUTHOR]]
在页面上显示的内容将是“AUTHOR sex=”female”ajie/AUTHOR”

(五)Namespaces的语法

当我们在一个XML文档中使用他人的或者多个DTD文件时,标识名可能相同但表示的含义不同。这个时候需要使用Namespaces来区别。

Namespaces需要在XML文档的开头部分声明,声明的语法如下:
document xmlns:yourname=’URL’

举例:

document xmlns:zhuozi=’http://www.zhuozi.com’
然后在后面的标识中使用定义好的名字空间:
zhuozi:tablewood table/table

注意的是:设置URL并不是说这个标识真的要到那个网址去读取,仅仅作为一种区别的标志而已。

()entity的语法

entity的作用类似word中的,也可以理解为DW中的摸板,你可以预先定义一个entity,然后在一个文档中多次调用,或者在多个文档中调用同一个entity

entity的定义语法为:
!DOCTYPE filename [
!ENTITY entity-name “entity-content”
]

举例:

?xml version=”1.0″ encoding=”GB2312″?
!DOCTYPE copyright [
!ENTITY copyright “Copyright 2001, Ajie. All rights reserved”
]
myfile
titleXML/title
authorajie/author
emailajie@aolhoo.com/email
date20010115/date
&copyright;
/myfile

()DTD语法

1、设置元素

元素是XML文档的基本组成部分。你要在DTD中定义一个元素,然后在XML文档中使用。元素的定义语法为:!ELEMENT DESCRIPTION (#PCDATA, DEFINITION)*
说明:
“!ELEMENT” 是元素的声明,说明你要定义的是一个元素;
声明后面的“DESCRIPTION”,是元素的名称;
“(#PCDATA, DEFINITION)*”则是该元素的使用规则。规则定义了元素可以包含的内容以及相互的关系。

2、元素规则表

总结前四章学习的内容,写一个包含DTDXML,以及Script的简单实例,便于读者理解
a.将下面文件存为myfile.dtd
!ELEMENT myfile (title, author)
!ELEMENT title (#PCDATA)
!ELEMENT author (#PCDATA)
b.然后建立XML文档myfile.xml:
?xml version=”1.0″ encoding=”GB2312″?
!DOCTYPE myfile SYSTEM “myfile.dtd”
myfile
titleXML轻松学习手册/title
authorajie/author
/myfile
c.建立HTML文档myfile.html
html
head
script language=”javascript” for=”window” event=”onload”
var xmlDoc = new ActiveXObject(“Microsoft.XMLDOM”);
xmlDoc.async=”false”;
xmlDoc.load(“myfile.xml”);
nodes = xmlDoc.documentElement.childNodes;
title.innerText = nodes.item(0).text;
author.innerText = nodes.item(1).text;
/script
titleHTML中调用XML数据/title
/head
body bgcolor=”#FFFFFF”
b标题: /b
span id=”title”/spanbr
b作者: /b
span id=”author”/spanbr
/body
/html
d.IE5.0以上浏览器打开myfile.html就可以看到效果。

联系我们

0574-55011290

QQ:248687950

邮件:admin@nbhao.org

工作时间:周一至周五,9:00-18:00,节假日休息

QR code