XML文档的组成部分
内部DTD定义
XML内容定义部分
DTD的引用方式:
内部DTD
<?xml version = "1.0" encoding="GB2312" standalone = "yes"?>
<!DOCTYPE 根元素名[
元素描述
]>
外部DTD
DTD文件结构
<?xml version = "1.0" encoding="GB2312" standalone = "no"?>
引用外部DTD
<!DOCTYPE 联系人列表 SYSTEM "http://www.mydomain.com/dtds/xxx.dtd">
或
<!DOCTYPE 联系人列表 SYSTEM "xxx.dtd">
DTD中的元素声明格式:
<!ELEMENT 元素名 元素内容描述>
示例代码
<?xml version = "1.0" encoding="GB2312" standalone = "yes"?>
<!DOCTYPE 联系人列表[
?? <!ELEMENT 联系人列表>
]>
关键词ANY(区分大小写)表明所有可能的元素以及可解析的字符数据都可以是“联系人列表”元素的子元素。
<!ELEMENT联系人列表 ANY>
#PCDATA标签
只能包含非标记文本,不能包含自己的子元素。
定义方式:
<!ELEMENT 姓名(#PCDATA)>
合法的:
<姓名>张三</姓名>
子元素之间不要求顺序
子元素之间用空格分隔
子元素之间要求顺序
子元素之间用逗号分隔
重复子元素
符号 含义
+ 出现一次或多次
* 出现零次或多次
? 可选,不出现或出现一次
() 一组要共同匹配的表达式
| OR,或
, AND,要求严格遵从顺序要求
元素属性
必须赋值的属性REQUIRED
可以赋值的属性IMPLIED
固定取值的属性FIXED
取缺省值的属性
命名空间
语法:
<element xmlns="namespace">
例子:
<table xmlns="http://www.w3.org/TR/html4/">
使用命名空间
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/xsl">
<xsl:template match="/">
用css显示xml
BOOK
{display:block;
margin-top:12pt;
font-size:10pt}
TITLE
{font-style:italic}
AUTHOR
{font-weight:bold}
<?xml-stylesheet type="text/css" href=CSSFilePath ?>