一、XML定义 xml是可扩展标记语言(eXtensible Markup Language),是一种标记语言,设计的宗旨是:传输数据XML的标签需要自行定义 XML是一种通用数据交换格式
二、XML语法文档声明:必须出现在文档的第一行 最简单的语法:<?xml version="1.0"?> encoding属性说明文档编码格式如:<?xml version="1.0" encoding="gbk"?> 中国默认编码格式是UTF-8
元素:一个XML文档有且仅有一个跟标签 XML不会忽略主题内容中的出现的空格和换行 XML标签严格区分大小写
元素属性:一个元素可以有多个属性。 属性值一定要用引号(单引号或者双引号)引起来, 属性是不允许重复定义的
注释:XMl中的注释语法:<!--这是注释--> CDATA区是Character Data 可以把标签当做普通文本内容保存 <![CDATA[内容]]> 特殊字符& 转义& < 转义< > 转义> " 转义" ' 转义 '
处理指令Pi(Processing Instruction)用来指挥软件如何解析XML文档 语法:必须以“<?”作为开头,以“?>”作为结尾 如:指示xml文档所使用的css样式<?xml-stylesheet type="text/css" href="some.css"?>。对中文命名的标签元素不起作用
三、XML约束之DTD(Document Type Definition):
文档类型定义xml技术中可以编写一个文档来约束一个xml的书写规范,这个文档称之为约束 格式良好的XML:遵循XML语法的XML 有效的XML:遵循约束文档的XML IE5以上版本内置了xml解析工具:Microsoft.XMLDOM
<javascript type="text/javascript" >
var xmldoc=new ActiveXObject("Microsoft.XMLDOM");
xmldoc.validateOnParse="true";
xmldoc.load("*.xml");//加载xml
var reason=xmldoc.parseError.reason;
var line=xmldoc.parseError.line;
document.write(reason);
document.write(line);
</javascript>
xml文件中可以直接编写DTD约束文档当引用的DTD文档在本地是,采用如下方式<!DOCTYPE 根元素 SYSTEM "DTD文档路径"> 当引用的DTD文档在公共网络上时,<!DOCTYPE 根元素 PUBLIC "DTD名称" "DTD文档的URL">
DTD文档的语法:定义元素:<!ELEMENT 元素名称 使用规则>
使用规则:(#PCDATA):指示元素的主体内容只能是普通的文本(Parsed Character Data) EMPTY:用于指示元的主体为空 ANY:用于指示元素的主体内容为任意类型 (子元素):指示元素中包含的子元素 定义子元素: 如果子元素用逗号分开,说明必须按照声明顺序去编写XML文档。 如果子元素用“|”分开,说明任选其一。
用+、*、?来表示子元素出现的次数如果元素后面没有+*?表示必须且只能出现一次 + 表示至少出现一次,一次或多次 * 表示可有可无,凌迟,一次或多次 ? 表示可以有也可以无,有的话只能有一次。零次或一次
定义属性:<!ATTLIST 属性名 属性值类型 设置说明>属性值类型: CDATA:表示属性的取值为普通的文本字符串 (a|b|c|d)表示枚举 ID:表示属性的取值不能重复 设置说明: #REQUIRED:表示该属性必须出现 #IMPLIED:表示该属性可有可无 #FIXED:表示属性的取值为一个固定值。语法:#FIXED "固定值" 直接值:表示属性的取值为该默认值
定义实体:定义实体就是为一段内容制定一个名称,使用时通过这个名称就可以引用其所代表的内容 使用ENTITY关键字声明实体 实体分为:引用实体和参数实体 引用实体:在DTD中定义,在XML中使用 语法:<!ENTITY 实体名称 "实体内容"> 引用方式:&实体名称;