Docbook之一:概念 DOM schema xsl xsl-xslt xsl-fo
一、XML基本概念说明
1、XML
xml 是扩展标记语言是一种数据存储结构,用来存放数据的.
2、XML DTD 和 XML Schema
XML DTD 和 XML Schema是XML使用比较广泛的约束模式语言,其实就是来定义你的XML文件可以有那些元素?可以有那些属性?元素之间的关系是怎么样的?等等……
xml DTD与xml Schema之间的区别:
- XML Schema符合XML语法结构
- DOM、SAX等XML API很容易解析出XML Schema文档中的内容
- XML Schema则采用与XML文档同样的合法性验证机制。
- XML Schema对名称空间支持得非常好。
- XML Schema比XML DTD支持更多的数据类型,并支持用户自定义新的数据类型。
- XML Schema定义约束的能力非常强大,可以对XML实例文档作出细致的语义限制。
- XML Schema基本上满足了关系模式在数据描述上的需要。
- XML Schema不能像DTD一样定义实体,比DTD更复杂。
3、XSL
XSL 之于 XML ,就像 CSS 之于 HTML。即可扩展样式表语言,是 w3c 推荐的一种标准,用以定义 XML 文档的转换与格式化。XSL 语言家族主要包括三大部分:XSLT、XPath 及 XSL-FO
4、XSLT
引自IBM:在准备 XML 文档以备显示的过程中执行的任务可以分成两个阶段:转换和格式化。转换是将一个 XML 文档(或其内存中的表示法)转换成另一个 XML 文档的过程。格式是将已转换的树状结构转换成两维图形表示法或可能是一维音频流的过程。XSLT 是为控制第一阶段“转换”而开发的语言。第二阶段“格式化”的开发工作还是进行中。但实际上,大多数人现在使用 XSL 将 XML 文档转换成 HTML,并使用 HTML 浏览器作为格式化引擎。这是可行的,因为 HTML 实际上只是 XML 词汇表的一个示例,而 XSLT 可以使用任何 XML 词汇表作为其目标。
图 1. XSLT 输入和输出的树状结构
XSLT通过读取一个样式表的定义将XML数据转化为样式表中定义的格式。
5、XPath
XPath 是一门在 XML 文档中查找信息的语言
XPath 使用路径表达式在 XML 文档中进行导航
XPath 包含一个标准函数库
XPath 是 XSLT 中的主要元素
6、XSL-FO
使用 XSLT 将 XML 文档转换为格式化对象,可以使用 Apache XML 项目的 FOP(Formatting Object to PDF,格式化对象转换为 PDF)工具将那些格式化对象转换为 PDF 文件。