1、XML,许 雷,XML概览,XML基本语法 Schemas 验证 DOM 查询、编辑 XPath 定位 XSL-FO 格式化 XSLT 转换 XQuery 查询,XQuery,Schemas,XPath,XSLT,DOM,XSL-FO,XML,课程一览,与HTML的比较 XML基本语法 验证( XSD ) 定位语言( XPath ),XML 与 HTML 比较,相同点 都是纯文本格式 都是标记语言 都使用属性和元素的嵌套 都起源于SGML (Standard Generalized Markup Language ) 不同点 XML,你可以创建自己的元素名称 XML, 语法非常严谨 HTML
2、呈现数据; XML 描述数据,XML基本语法,XML基本结构, MercuryVenus ,根元素,子元素,元素的命名规则,元素名不能包含空格 元素名不能以数字或标点符号开头 元素名不能以XML或变量 元素名必须以左尖括号开始并不能有空格 一个XML文档必须包含至少一个元素(根结点),处理机首先查找根结点,所有后续结点都包含在其中。 所有元素被嵌套在根元素中 嵌套元素不能迭夹 一个缺乏内容元素包括一个开始和一个结束标记,除非它是根元素 根元素必须由一个开始和结束标记组成,甚至它没有内容,element content,属性的语法规则,声明他们在开始标记和处理指令中 一个元素由一个名称和一个指派
3、值组成 一个元素能包含许多属性 连续的的属性用空格分离 你在一个文档中仅能使用一个特定的属性名称一次 你能在文档中重复使用一个特定的属性名称 属性名称不能包括空格,Willow,名 称,指 派 值,验证( XSD ),验证的必要性,Lab_A,Lab_B,Gov_A,Gov_B,Lab_1,Lab_2,Lab_3,Lab_4,Lab_5,Web service,Database,什么是有效的XML,my data,Valid XML,Not Valid XML,my data,Validation,XML Processor,Application,Error! Root element mu
4、st be lower case.,Both documents are well-formed but,A schema is a specification for XML structure and data types,Only the valid document reaches the application for further processing,XSD 的组成,XSD 所涉及的W3C的名称空间XSD 命名前缀 “ xsd:” 元素和属性的声明 数据类型的定义 使用简单的类型 Boolean, integer, string等 使用复杂数据结构,XSD 的组成,XSD 所涉
5、及的W3C的名称空间XSD 命名前缀 “ xsd:” 元素和属性的声明 数据类型的定义 使用简单的类型 Boolean, integer, string等 使用复杂数据结构,验证的发展历史:DTD、XDR,使用XPath导航结点树,什么是定位语言,结点树 操作由一步或多步组成 执行由左向右 定位语法 (全写):轴类型:,axis:node-testpredicate,descendant:,following:,ancestor:,parent:,child:,preceding:,self:,descendant-or-self:,ancestor-or-self:,following-si
6、bling:,preceding-sibling:,attribute:,namespace:,定位语法,选择全写或缩写语法,attribute:,/descendant-or-self:node(),self:node,parent:node,node tree root,/,.,/,全写语法,缩写语法,ancestor-or-self:,not available,如何定义Axis,self,child,descendant,parent,attribute,descendant-or-self,ancestor,ancestor-or-self,following,following-sibling,preceding-sibling,preceding,NancyAndrew2500Janet,NancyAndrew2500Janet,Nancy,empID=“1”,Root node,empID=“2”,Andrew,empID=“3”,Janet,2500,?返回,