html,xml:
Html目的:显示信息
CSS、JAVASCRIPT等,文档显示依赖的环境越多,浏览器开发
就越困难,不同浏览器的兼容性;
Xml目的:用层次模型保存数据;
xml标记命名规则
XML标记命名规则
1)标记必须以英文字母或下划线”_”作为开头,若果在XML声明中把
encoding属性值设置为”GB2312”,那么也可以使用中文开头;
2)XML标记名严格区分大小写;
3)标记名不可以XML三个字母为开头(不论大小写);
4)除了开始字符外,其他字符必须是英文、数字、下划线、连接线和
点“.“;
例如:
合法:
<abc> 、<_xy>、<书号>、<Hell-OK>等;
不合法:
<123a>、<-hello>、<书 号>、<XML123>、<ra%>等;
在使用XML文档声明的时候必须注意以下几点:
<?xml version=”” encoding=”” standalone=””>
1) 属性必须按照声明的顺序使用;
2) 在声明中,xml、version、encoding、standalone必需小写;
3) encoding值不区分大小写
encoding=”GB2312” encoding=“gb2312“是等价的;
2)规定DTD
内部:
<!DOCTYPE 根元素名称 [
元素规则(声明元素名称,声明元素与元素之间的关系)
<!ELEMENT 元素名称 类型>
类型:
EMPTY:空元素;
ANY:任何内容,可以为空;
PCDATA:文本(不能使用特殊符号&><’”)(解析,&)、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声明中的注释;