XML与Web Services
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2018年10月6日8时7分 山东大学计算机学院 17
注释
<!-- --> Defines a comment. 中间的空格是必需的 <?xml version="1.0"?> <!-- This is a comment. They can go anywhere except within an element tag. --> <book> <chapter>A is the first letter</chapter> <!-- Here is another comment. --> <chapter>Z is the last letter</chapter> </book>
XML与Web Services
概览
2018/10/6
1Байду номын сангаас
一、XML
2018/10/6
2
什么是XML?
XML—可扩展标记语言 eXtensible Markup Language XML是一种标记语言,形式上类似于 HTML,但允许自定义标记 共享结构数据的标准方式 SGML的一个简化子集 是一种定义其他语言、交换格式、信息 集的语言——元语言
2018年10月6日8时7分
山东大学计算机学院
23
HTML vs XML (1 of 2)
2018年10月6日8时7分
山东大学计算机学院
24
HTML vs XML (2 of 2)
2018年10月6日8时7分
山东大学计算机学院
25
HTML 与 XML 的关键区别
2018年10月6日8时7分
山东大学计算机学院
</xsd:sequence>
<xsd:attribute type="xsd:date"/> name="orderDate"
<xsd:element name="shipTo" type="USAddress"/> <xsd:element name="billTo" type="USAddress"/> <xsd:element ref="comment" minOccurs="0"/> <xsd:element name="items" type="Items"/>
2018年10月6日8时7分 山东大学计算机学院 18
处理指令PI
<? ?>源自SGML 表示一个Processing Instruction (PI) 处理指示是用来给处理XML文件的应用程序 提供信息的。这些信息原封不动地传给XML 应用程序。由应用程序来解释这个指示,遵 照它所提供的信息进行处理,动作名跟在 "<?"之后。 XML 声明是一个例外,它是所有xml文档中可 选的第一行: <?xml version="1.0" ?> <?xml version="1.0" encoding="UTF8" ?> <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
11
元素标记规则
元素包括开始和结束标记。 结束标记通过"/"表示. Example: <color>red</color> 在元素的开始标记中可以包含元素的属性 Example: <book isbn="34323"></book> Note: The attribute is "isbn". 空元素没有孩子信息 这种元素可以以一种简化符号表示 Example: <record key="123"></record> <record key="123" /> Also legal: <record />
2018年10月6日8时7分 山东大学计算机学院 15
标记命名-例子
2018年10月6日8时7分
山东大学计算机学院
16
属性-规则
Attributes通过将属性与元素关联以提供额外的信息。 由name="value" 对组成。 Attributes 包含在元素的开始标记中。 一个元素可以有多个attributes. Examples: <title type="section" number="1">XML overview</title> <title type="boat" state="FL">Yacht</title> 注意两个元素中对属性“type”的使用不同,它们 的语义不同。 Attributes 必须有值。 Attribute value 必须放在双引号或单引号中。 惯例是一直使用其中一个
26
Xml标准体系框架
2018年10月6日8时7分
山东大学计算机学院
27
XML相关技术
1.Architecture
XML 结构 XML 体系
2.Information Modeling 建模
DTD SCHEMA
3. XML Processing
DOM SAX
处理
4. XML Rendering
XSLT XPath
2018年10月6日8时7分 山东大学计算机学院 19
国际化和编码
通过Processing Instruction 的encoding 属性 支持多种语言。 Unicode 标准"UTF-8"是缺省编码不需要在PI 中说明。 Unicode 包括了许多主要的语言,但不是全 部。 有些现有数据以其他格式编码如EBCDIC. 编写和保存XML 文档的编辑器或处理系统支持 在PI中指定的编码非常重要。 <?xml version="1.0" encoding="UTF-8" ?> is the same as <?xml version="1.0" ?> <?xml version="1.0" encoding="ISO-88591" ?>
2018年10月6日8时7分 山东大学计算机学院 6
电子商务场景
2018年10月6日8时7分
山东大学计算机学院
7
一个简单的 XML 文档
<customer> <firstName>John</firstName> <lastName>Doe</lastName> <address type="home"> 1000 Main Street St Louis, MO, 12345 </address> <address type="business"> 2000 South Ave St Louis, MO, 12346 </address> </customer>
2018年10月6日8时7分
山东大学计算机学院
3
良好特征
XML 是一个开放标准 简单,易于使用 支持国际化 XML 是平台、工具、数据库、 协议、编程语言无关的
2018年10月6日8时7分
山东大学计算机学院
4
History of XML
2018年10月6日8时7分
山东大学计算机学院
5
支持电子商务的关键技术
2018年10月6日8时7分 山东大学计算机学院 30
schema片段
<xsd:element name="purchaseOrder" type="PurchaseOrderType"/>
<xsd:element name="comment" type="xsd:string"/>
<xsd:complexType name="PurchaseOrderType"> <xsd:sequence>
14
标记命名-规则
标记名必须以字母或下划线开始,后跟任意数 目的字母、数字、破折号、句点、下划线字符 标记名是大小写敏感的。 标记名不能包含空格。 标记名不能包含 W3C XML 和命名空间保留 字。 Best Practice: 标记名的简单是没有必要的。 使用描述性的名字 <Queue> or <que> is far better than <q>. Best Practice: 使用标准的命名习惯 Camelback 例: myDocument
2018年10月6日8时7分 山东大学计算机学院 21
CDATA Examples
这些script 元素包含JavaScript:
2018年10月6日8时7分
山东大学计算机学院
22
Well-formed vs Valid
一个Well-Formed XML document: 包含嵌套在其他元素中的元素 有唯一的根元素 遵循XML 元素命名惯例 遵循XML 属性引用规则 所有特殊字符被正确回避 一个合法的(Valid) XML document 有一个 附带的词汇集并遵循该词汇集中指定的结构规 则。 附带的词汇集或是 DTD 或是XML Schema.
XML brings data to the Web, completing the necessary components for 90% of ebusiness applications.
Web Communications(HTTP) + Web User Interface(HTML) + Web Programming (JAVA) + Web Data (XML) = e-business
2018年10月6日8时7分 山东大学计算机学院 12
元素嵌套
元素必须正确嵌套 内层元素的结束标记必须在外层 元素结束标记之前 一个元素的开始、结束标记间可以 嵌套任意数量的子元素或数据。
2018年10月6日8时7分
山东大学计算机学院
13
元素嵌套举例
2018年10月6日8时7分
山东大学计算机学院
2018年10月6日8时7分 山东大学计算机学院 29
XML Schema
Improved XML vocabulary definition language. Defines the structure, content and semantics of XML documents. A better implementation than provided by DTD. Uses XML-based syntax and structure Improves definition and validation of types of data. Built-in simple types. Derived types: "subclass" of built-in simple types. Complex types: defines an item with subitems. Complete Namespace support.
2018年10月6日8时7分 山东大学计算机学院 8
XML的树状表示例子
2018年10月6日8时7分
山东大学计算机学院
9
XML 文档基本结构
2018年10月6日8时7分
山东大学计算机学院
10
元素规则 – 单根元素
所有XML文档必须有一个唯一的"root"元 素
2018年10月6日8时7分
山东大学计算机学院
2018年10月6日8时7分 山东大学计算机学院
渲染
28
DTD - Document Type Definition
Defines the structure and ordering of elements for an XML document. Used to validate the contents of an XML document. Enforces the concept of a valid document. May be enclosed within the XML document or in a standalone file. DTDs do not describe the data allowed within elements. DTDs are not XML based. Being slowly superseded by XML Schema.
2018年10月6日8时7分 山东大学计算机学院 20
CDATA - 字符数据
CDATA中隐藏的数据不被解析 Syntax: <![CDATA[ ...Anything can go here... ]]> Note: 中间不能包括 "]>". 用于在XML中嵌入语言 HTML documents XML documents JavaScript source URL-laden data Or any other text with a lot of special characters.
注释
<!-- --> Defines a comment. 中间的空格是必需的 <?xml version="1.0"?> <!-- This is a comment. They can go anywhere except within an element tag. --> <book> <chapter>A is the first letter</chapter> <!-- Here is another comment. --> <chapter>Z is the last letter</chapter> </book>
XML与Web Services
概览
2018/10/6
1Байду номын сангаас
一、XML
2018/10/6
2
什么是XML?
XML—可扩展标记语言 eXtensible Markup Language XML是一种标记语言,形式上类似于 HTML,但允许自定义标记 共享结构数据的标准方式 SGML的一个简化子集 是一种定义其他语言、交换格式、信息 集的语言——元语言
2018年10月6日8时7分
山东大学计算机学院
23
HTML vs XML (1 of 2)
2018年10月6日8时7分
山东大学计算机学院
24
HTML vs XML (2 of 2)
2018年10月6日8时7分
山东大学计算机学院
25
HTML 与 XML 的关键区别
2018年10月6日8时7分
山东大学计算机学院
</xsd:sequence>
<xsd:attribute type="xsd:date"/> name="orderDate"
<xsd:element name="shipTo" type="USAddress"/> <xsd:element name="billTo" type="USAddress"/> <xsd:element ref="comment" minOccurs="0"/> <xsd:element name="items" type="Items"/>
2018年10月6日8时7分 山东大学计算机学院 18
处理指令PI
<? ?>源自SGML 表示一个Processing Instruction (PI) 处理指示是用来给处理XML文件的应用程序 提供信息的。这些信息原封不动地传给XML 应用程序。由应用程序来解释这个指示,遵 照它所提供的信息进行处理,动作名跟在 "<?"之后。 XML 声明是一个例外,它是所有xml文档中可 选的第一行: <?xml version="1.0" ?> <?xml version="1.0" encoding="UTF8" ?> <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
11
元素标记规则
元素包括开始和结束标记。 结束标记通过"/"表示. Example: <color>red</color> 在元素的开始标记中可以包含元素的属性 Example: <book isbn="34323"></book> Note: The attribute is "isbn". 空元素没有孩子信息 这种元素可以以一种简化符号表示 Example: <record key="123"></record> <record key="123" /> Also legal: <record />
2018年10月6日8时7分 山东大学计算机学院 15
标记命名-例子
2018年10月6日8时7分
山东大学计算机学院
16
属性-规则
Attributes通过将属性与元素关联以提供额外的信息。 由name="value" 对组成。 Attributes 包含在元素的开始标记中。 一个元素可以有多个attributes. Examples: <title type="section" number="1">XML overview</title> <title type="boat" state="FL">Yacht</title> 注意两个元素中对属性“type”的使用不同,它们 的语义不同。 Attributes 必须有值。 Attribute value 必须放在双引号或单引号中。 惯例是一直使用其中一个
26
Xml标准体系框架
2018年10月6日8时7分
山东大学计算机学院
27
XML相关技术
1.Architecture
XML 结构 XML 体系
2.Information Modeling 建模
DTD SCHEMA
3. XML Processing
DOM SAX
处理
4. XML Rendering
XSLT XPath
2018年10月6日8时7分 山东大学计算机学院 19
国际化和编码
通过Processing Instruction 的encoding 属性 支持多种语言。 Unicode 标准"UTF-8"是缺省编码不需要在PI 中说明。 Unicode 包括了许多主要的语言,但不是全 部。 有些现有数据以其他格式编码如EBCDIC. 编写和保存XML 文档的编辑器或处理系统支持 在PI中指定的编码非常重要。 <?xml version="1.0" encoding="UTF-8" ?> is the same as <?xml version="1.0" ?> <?xml version="1.0" encoding="ISO-88591" ?>
2018年10月6日8时7分 山东大学计算机学院 6
电子商务场景
2018年10月6日8时7分
山东大学计算机学院
7
一个简单的 XML 文档
<customer> <firstName>John</firstName> <lastName>Doe</lastName> <address type="home"> 1000 Main Street St Louis, MO, 12345 </address> <address type="business"> 2000 South Ave St Louis, MO, 12346 </address> </customer>
2018年10月6日8时7分
山东大学计算机学院
3
良好特征
XML 是一个开放标准 简单,易于使用 支持国际化 XML 是平台、工具、数据库、 协议、编程语言无关的
2018年10月6日8时7分
山东大学计算机学院
4
History of XML
2018年10月6日8时7分
山东大学计算机学院
5
支持电子商务的关键技术
2018年10月6日8时7分 山东大学计算机学院 30
schema片段
<xsd:element name="purchaseOrder" type="PurchaseOrderType"/>
<xsd:element name="comment" type="xsd:string"/>
<xsd:complexType name="PurchaseOrderType"> <xsd:sequence>
14
标记命名-规则
标记名必须以字母或下划线开始,后跟任意数 目的字母、数字、破折号、句点、下划线字符 标记名是大小写敏感的。 标记名不能包含空格。 标记名不能包含 W3C XML 和命名空间保留 字。 Best Practice: 标记名的简单是没有必要的。 使用描述性的名字 <Queue> or <que> is far better than <q>. Best Practice: 使用标准的命名习惯 Camelback 例: myDocument
2018年10月6日8时7分 山东大学计算机学院 21
CDATA Examples
这些script 元素包含JavaScript:
2018年10月6日8时7分
山东大学计算机学院
22
Well-formed vs Valid
一个Well-Formed XML document: 包含嵌套在其他元素中的元素 有唯一的根元素 遵循XML 元素命名惯例 遵循XML 属性引用规则 所有特殊字符被正确回避 一个合法的(Valid) XML document 有一个 附带的词汇集并遵循该词汇集中指定的结构规 则。 附带的词汇集或是 DTD 或是XML Schema.
XML brings data to the Web, completing the necessary components for 90% of ebusiness applications.
Web Communications(HTTP) + Web User Interface(HTML) + Web Programming (JAVA) + Web Data (XML) = e-business
2018年10月6日8时7分 山东大学计算机学院 12
元素嵌套
元素必须正确嵌套 内层元素的结束标记必须在外层 元素结束标记之前 一个元素的开始、结束标记间可以 嵌套任意数量的子元素或数据。
2018年10月6日8时7分
山东大学计算机学院
13
元素嵌套举例
2018年10月6日8时7分
山东大学计算机学院
2018年10月6日8时7分 山东大学计算机学院 29
XML Schema
Improved XML vocabulary definition language. Defines the structure, content and semantics of XML documents. A better implementation than provided by DTD. Uses XML-based syntax and structure Improves definition and validation of types of data. Built-in simple types. Derived types: "subclass" of built-in simple types. Complex types: defines an item with subitems. Complete Namespace support.
2018年10月6日8时7分 山东大学计算机学院 8
XML的树状表示例子
2018年10月6日8时7分
山东大学计算机学院
9
XML 文档基本结构
2018年10月6日8时7分
山东大学计算机学院
10
元素规则 – 单根元素
所有XML文档必须有一个唯一的"root"元 素
2018年10月6日8时7分
山东大学计算机学院
2018年10月6日8时7分 山东大学计算机学院
渲染
28
DTD - Document Type Definition
Defines the structure and ordering of elements for an XML document. Used to validate the contents of an XML document. Enforces the concept of a valid document. May be enclosed within the XML document or in a standalone file. DTDs do not describe the data allowed within elements. DTDs are not XML based. Being slowly superseded by XML Schema.
2018年10月6日8时7分 山东大学计算机学院 20
CDATA - 字符数据
CDATA中隐藏的数据不被解析 Syntax: <![CDATA[ ...Anything can go here... ]]> Note: 中间不能包括 "]>". 用于在XML中嵌入语言 HTML documents XML documents JavaScript source URL-laden data Or any other text with a lot of special characters.