一、XML的作用 1、XML被设计的宗旨是描述数据,而非显示数据 二、XML的语法 1、声明 必须出现在文档的第一行。 XML声明之前不能有注释 最简单的声明语法:<?xml version="1.0"?> 属性:encoding:指定编码。若不指定该属性,默认值为UTF-8 保存文件时(到磁盘上)的编码要与声明的编码保持一致。 standalone:yes|no指示该xml文档是否是独立的 2、元素: 必须包含结束标签。 每一个xml文档必须且只有一个根标签 XML中不会忽略主体内容中出现的空格和换行 3、属性: 属性的取值必须使用引号(单引号或双引号)引起来 4、CDATA区: 作用:把标签当做普通文本内容 语法:<![CDATA[内容]]> 三、DTD的语法 1、格式良好的XML:遵循XML语法的XML 2、有效的XML:遵循约束文档的XML 有效的XML文档一定是格式良好的。但格式良好的不一定是有效的。 3、DTD:(Document Type Definition)文档类型定义 作用:约束XML的书写规范(元素、属性及顺序) 注:DTD文档必须使用UTF-8编码进行保存 4、在xml文档中引入DTD约束 DTD在本地: <!DOCTYPE 根元素名 SYSTEM "dtd路径"> DTD在网上: <!DOCTYPE 根元素名 PUBLIC "dtd名称" "dtd的url"> 5、DTD语法细节 定义元素: ELEMENT 语法:<!ELEMENT 元素名称 使用规则> 使用规则: (#PCDATA):指示元素的主体内容只能是普通的文本 EMPTY:用于指示元素的主体为空 ANY:用于指示元素的主体内容为任意类型 (子元素):指示包含的子元素 说明: 如果各子元素用逗号分隔,说明必须按照顺序出现 如果各子元素用“|”分隔,说明任选其一 用+、*、?来表示元素出现的次数 如果元素后面没有+*?:表示必须且只能出现一次 +:表示至少出现一次,一次或多次 *:表示可有可无,零次、一次或多次 ?:表示可以有也可以无,有的话只能有一次。零次或一次 定义属性: ATTLIST 语法:<!ATTLIST 元素名 属性名1 属性值类型 设置说明 属性名2 属性值类型 设置说明 … > 属性值类型: CDATA:表示属性的取值为普通的文本字符串 枚举:(枚举值1|枚举值2) ID:表示属性的取值不能重复 设置说明: #REQUIRED:说明该属性是必须的 #IMPLIED:说明该属性是可有可无的 直接值:表示属性的取值为该默认值 #FIXED:表示属性的取值为一个固定值。语法:#FIXED "固定值" 定义实体: ENTITY 引用实体: 概念:在DTD中定义,在XML中使用 语法:<!ENTITY 实体名称 “实体内容”> 引用方式(注意是在XML中使用):&实体名称; 参数实体: 概念:在DTD中定义,在DTD中使用 语法:<!ENTITY % 实体名称 “实体内容”> 引用方式(注意是在DTD中使用):%实体名称;