XML第二课

XML标记命名规则

1)标记必须以英文字母或下划线”_”作为开头,若果在XML声明中把

encoding属性值设置为”GB2312”,那么也可以使用中文开头;

2)XML标记名严格区分大小写;

3)标记名不可以XML三个字母为开头(不论大小写);

4)除了开始字符外,其他字符必须是英文、数字、下划线、连接线和“.“;

 在使用XML文档声明的时候必须注意以下几点:

<?xml version=”” encoding=”” standalone=””>

1)      属性必须按照声明的顺序使用;

2)      在声明中,xml、version、encoding、standalone必需小写;

3)      encoding值不区分大小写  encoding=”GB2312”  encoding=“gb2312“是等价的;

XML特点:

严格区分大小写

元素必须闭合

根元素有且只能有一个

XML文档的构成

1)声明语句:必须在第一行出现,并且不能有空白;

<?xml version="1.0" encoding="UTF-8"?>

Version:浏览器支持的版本

Encoding:支持中文

2)规定DTD

内部DTD:

<!DOCTYPE 根元素名称 [

元素规则(声明元素名称,声明元素与元素之间的关系)

<!ELEMENT 元素名称  类型>

类型:

 EMPTY:空元素;

 ANY:任何内容,可以为空;

 PCDATA:文本(不能使用特殊符号&><’”)(解析,&amp)、CDATA;

 CDATA:把内容当作字符来显示;

(子元素列表):逗号分隔,严格按照声明顺序来使用相应的子元素;

(子元素?):表示该子元素可以出现0~1次;

(子元素+):表示该子元素可以出现1~无数次;

(子元素*):表示该子元素可以出现0~无数次;

(子元素1|子元素2):表示可以出现子元素1或者子元素2其中一个;

(子元素1,(子元素2,子元素3)?):()表示分组,该组出现0~1次; 

属性规则

语法:

 <!ATTLIST 元素名

  属性名1 类型  默认值

……

类型:

 例如:<!ATTLIST   input

name  CDATA                   "zhy"

type   (text|radio|submit|checkbox)   #REQUIRED

alt    (text|radio|submit|checkbox)   #IMPLIED

value  CDATA                   #FIXED  "abc"

classname  IDREFS               #IMPLIED>

>

  CDATA:表示值为字符,默认值表示未赋值时自动给定的值;

(en1|en2…..):枚举类型,表示只能从给定集合选择对应值;

ID :表示值为唯一ID;

IDREF:参照已存在(其他)ID;

  IDREFS:值为一个或多个参照已存在(其他)ID;

           多个参数中间用“空格”为分隔符,不能使用“逗号”;

NMTOKEN:值为合法的XML名称;

NMTOKENS:由空格分隔开的多个XML名称;

ENTITY:在DTD中声明实体名;

ENTITIES:在DTD中声明用空格分隔的实体名;

NOTATION:在DTD声明中的注释;

  

默认值:

#REQUIRED:该元素必须有该属性值;

<img src=””>

#IMPLIED:表示该属性值可有可无;

<img src=” ”  alt=””

#FIXED :表示该属性有固定值;

Default:默认值;

实体规则

1)  一般实体

声明并引用普通字符或特殊字符的快捷方式的变量

实体引用是对实体的引用,包括内部、外部声明两种

语法格式:

  声明

<!ENTITY 实体名 “值“>

      <!ENTITY 实体名 SYSTEM “URL“>

      <!ENTITY  实体名  PUBLIC “公共名“  “URL”>

   支持嵌套,

 <!ENTITY abc SYSTEM “a.ent”>

 

外部DTD

文件:扩展名   .dtd

绝对路径:http://www.zhy.com/index.dtd

 <!DOCTYPE 根元素名称 SYSTEM “URI/URL”>

<!DOCTYPE 根元素名称 PUBLIC “公共名称” “URL”>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值