学习笔记之xml基础

2012/03/03 1962点热度 0人点赞 0条评论

一、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[内容]]> 特殊字符& 转义&amp;

< 转义&lt;

> 转义&gt;

" 转义&quot;

' 转义 &apos; 处理指令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 实体名称 "实体内容">

引用方式:&实体名称;

 

yxkong

这个人很懒,什么都没留下

文章评论