XML 词汇表
本词汇表定义与 XML 标准有关的术语。
A
特性
XML 结构构造。通过等号分隔的名值对,包含在修改元素特定功能的标记元素中。所有属性值(包括大小和宽度等属性)实际上是文本字符串,而不是数字。对于 XML,所有值都必须在引号内。可以使用属性列表声明声明 XML 元素类型的属性。
C
层叠样式表 (Cascading Style Sheets, CSS)
增强对 HTML 和 XML 元素的显示和布局的控制的格式说明。CSS 可以用于说明简单结构化的 XML 文档的格式化行为,但是不能提供从源数据的结构派生的显示结构。另请参见“可扩展样式表语言”。CDF
请参见“频道定义格式 (CDF)”。频道定义格式 (Channel Definition Format, CDF)
Microsoft® Internet Explorer 4.0 以及更高版本中使用的一种基于 XML 的数据格式,用于描述 Active Channel™ 内容和桌面组件。CDF 允许 Web 发行者提供经常更新的信息集合(或频道),支持自动提供给兼容的 Web 客户端。用户只需要选择一次频道,频道信息就会定期提供给客户端,不再需要用户的参与。
- 字符数据 (character data)
元素或属性中不属于标记的所有文本内容。XML 将此类纯文本和二进制数据区别对待。在 XML OM 中,字符数据存储在作为 DOM 文本对象实现的文本节点中。
- 复杂数据类型 (complex data type)
可以包含其他元素或属性的元素。也称为复杂类型。在 XML 文档中作为 <complexType> 出现。
- CSS
请参见“层叠样式表 (CSS)”。
D
数据岛 (data island)
XML 文档(<XML> 或 <SCRIPT language="XML">)。存在于 HTML 页中。使您可以对 XML 文档编写脚本,不必通过脚本或通过 <OBJECT> 标记加载。可以存在于格式正确的 XML 文档中的几乎所有内容都可以存在于数据岛中。HTML 作为主文档或显示格式使用,XML 用于将数据嵌入文档。
数据源对象 (Data Source Object)
提供将 HTML 控件直接绑定到 XML 数据岛的方法。帮助开发人员连接到结构化 XML 数据并使用动态 HTML 的数据绑定工具将其提供给 HTML 页。通过 XML 数据源对象可以一次处理一个节点的数据,但是也可以一次处理多个节点,而不必浏览文档树。数据源对象将数据绑定到页上特定的控件,并自动在控件中填充数据源对象中的数据。
- 数据类型
XML 架构中作为架构中所有较大的组件的基础使用的部分或子部分。
- 定义
用于创建简单和复杂数据类型的说明。
文档元素 (document element)
XML 文档中包含所有其他元素的元素。文档元素是 XML 文档的顶级元素,必须是文档中的第一个元素。只能有一个文档元素,文档元素的任何部分不得出现在任何其他元素的内容中。文档元素表示整个文档;每个其他元素表示文档的一个组件。根元素和文档元素两个术语可以互换使用。
- 文档实体 (document entity)
XML 分析器的起点。与其他实体不同,文档实体没有名称,不能引用。文档实体中可以出现 XML 声明和文档类型声明。
- 文档对象模型 (DOM)
一个与平台和语言无关的接口,允许程序和脚本动态地访问和更新文档的内容、结构和样式。文档对象模型提供一组标准的对象用于表示 HTML 和 XML 文档,并提供如何组合这些对象的标准模型以及访问和处理这些对象的标准接口。供应商可以将 DOM 作为其专用数据结构和 API 的接口进行支持,内容作者可以针对标准的 DOM 接口进行编写,而不必针对产品特定的 API,从而提高了 Web 上的互操作性。
- 文档类型声明 (document type declaration)
XML 结构构造。由指示文档特定类的语法规则(或文档类型定义,即 DTD)的标记代码组成。文档类型声明还可以指向包含全部或部分 DTD 的外部文件。该声明必须出现在 XML 声明之后、文档元素之前。文档类型声明的语法为 <!DOCTYPE 内容>。
文档类型定义 (Document Type Definition, DTD)
可以附带文档,对文档规则进行必要的定义,例如存在哪些元素以及这些元素之间的结构关系。定义文档中可以出现的标记、可以包含其他标记的标记、标记的数目和顺序、标记可以具有的属性以及属性可以具有的值(可选)。如果接收应用程序对传入数据没有内置的描述,DTD 可以帮助验证数据。DTD 在 XML 文件的文档类型声明中声明。但是对于 XML,DTD 是可选项。
另请参见“架构”。
- DOM
请参见“文档对象模型”。
- DTD
请参见“文档类型定义”。
E
- EDI
请参见“电子数据交换”。
- 电子数据交换 (Electronic Data Interchange, EDI)
用于交换数据和支持事务的现有格式。EDI 事务只能在专门设置了兼容的系统的站点之间进行。专用 EDI 格式比 XML 更难编写,并且与 XML 不同,不能通过 HTTP 传输。
元素
XML 结构构造。XML 元素由开始标记、结束标记和标记之间的信息(通常称为内容)组成。每个元素都具有类型,有时称为“类标识符”(GI),并且可能会指定一组属性。指定的每个属性具有名称和值。元素的实例使用 <element> 标记声明。XML 文件中使用的元素通过 DTD 或架构描述,DTD 或架构可以提供对数据结构的描述。
实体
XML 结构构造。文件、数据库记录或包含数据的其他项。实体的主要用途是存放内容 — 而不是存放结构、规则或语法。每个实体通过唯一名称标识,包含其自己的内容,从文档中的单个字符到文档之外的大文件。XML 实体的功能与宏定义类似。实体可以通过实体引用进行引用,将实体的内容插入树中的相应位置。实体声明出现在 DTD 中。
实体引用
XML 结构构造。充当内容作者的占位符,XML 分析器将实际内容放在每个引用站点。要加入实体引用,先插入“and”符 (&),然后输入实体名称,后接分号 (;),如下所示:&YourEntityName;。然后,在处理该行时,实体将替换为实体的内容。其用法与宏基本相同。
可扩展标记语言 (Extensible Markup Language, XML)
SGML 的一个子集,该子集针对 Web 传输进行了优化。XML 提供统一的方法来描述和交换结构化数据,该方法与应用程序或供应商无关。关键是使用 XML 时,信息处于文档中,而显示指令在其他位置。也就是说,内容和显示是独立的。XML 是用于数据交换的 Web 语言,HTML 是用于显示的 Web 语言。
在本文档发布时,XML 1.0 是万维网联合会的建议,这意味着 XML 1.0 已处于批准流程的最后阶段。
可扩展样式表语言 (Extensible Stylesheet Language, XSL)
用于将基于 XML 的数据转换为 HTML 或其他显示格式,以便在 Web 浏览器中显示这些数据的一种语言。将 XML 转换为 HTML 等格式的过程通过声明来完成,通常比通过脚本更加简单并且更容易访问。此外,XSL 使用 XML 作为语法,使 XML 作者不必学习其他标记语言。与 CSS 相反,后者通过格式属性“修饰”XML 树,而 XSL 将 XML 树转换为新树 (HTML),允许大范围的重新排序、生成文本以及计算 — 所有这些操作均不需要修改 XML 源代码。源代码可以从“纯内容”的角度进行维护,可以同时提供给不同的频道或目标受众,只需要切换样式表即可。
XSL 由两个部分组成,用于转换的词汇表和 XSL 格式对象。
F
- 方面
对数据类型的限制。值空间的单个定义方面。有两种类型的方面:基础型和约束型。
I
- 信息集 (infoset)
请参见“XML 信息集”。
- 无效文档 (invalid document)
不遵守 XML 标记规则的文档。如果文档具有 DTD 或架构,并且不遵守其 DTD 或架构中定义的规则,该文档也无效。
M
- 混合内容
包含混合内容的元素类型可以单独存放字符数据,也可以将字符数据与子元素混合存放。在这种情况下,可以约束子元素的类型,但是不能约束子元素的顺序或出现次数。
N
命名空间
使开发人员可以唯一限定元素名和关系并使这些名称可以识别的一种机制。这样做可以避免具有相同名称但是在不同词汇表中定义的元素上发生名称冲突。允许混合来自多个命名空间的标记,如果数据来自多个源,就需要这样做。命名空间可以确保元素名不会冲突,并确定定义相应术语的用户。命名空间标识 URN 中定义的 XML 词汇表。元素、属性或实体引用上的一个属性将简称与定义命名空间的 URN 相关联;然后使用该简称作为相应元素、属性或实体引用名称的前缀,用于唯一标识该命名空间。命名空间引用有范围。指定命名空间的节点下面的所有子节点继承该命名空间。这样,未限定的名称可以使用默认命名空间。另请参见“RDF 命名空间”。
NCName
不包含冒号 (:) 的 XML 名称。NCName 以字母或下划线 (_) 字符开头,后接 XML 规范中允许的任意字母、数字、重音字符、变音符号、句点 (.)、连字符 (-) 和下划线 (_) 的组合。下表显示 NCName 的一些示例:x
_aaabbb.ccc
catalog
part-number
_-._-...
- 表示法 (notation)
通知分析器所引用的对象类型。通常是指非 XML 数据的数据格式(例如 BMP)。表示法通过名称标识未分析实体的格式、具有表示法属性的元素的格式或处理指令寻址到的应用程序。
表示法声明 (notation declaration)
通知分析器如何处理特定的二进制文件类型,并提供表示法的名称和外部标识符。表示法声明为现有表示法提供内部名称,以便可以在属性列表声明、未分析实体声明和处理指令中引用。
表示法的外部标识符使 XML 分析器或其客户端应用程序可以找到能够处理给定表示法的数据的帮助器应用程序。
P
- 已分析实体 (parsed entity)
包含已分析并且替换为实际文本值的实体。结果称为替换文本。已分析实体只能包含字符数据或 XML 标记。
处理指令 (processing instruction)
将信息传递给处理 XML 的应用程序的 XML 构造。处理指令是一种将用于专有应用程序的信息嵌入在文件中的机制。处理 XML 的应用程序可以根据处理指令采取特定操作。在处理指令内不展开任何实体。下面的处理指令指示 XML 文件是一个 Microsoft Word XML 文档:
<?mso-application progid="Word.Document"?>
Q
- QName
XML QName 若要使 QName 有效,命名空间声明必须位于使用 QName 的上下文范围内。例如,如果命名空间声明(例如 xmlns:aw=”www.adventure-works.com”)位置范围内,则可以声明一个元素 <aw:Root/>。对于此元素,aw:Root 是 QName。
R
- 引用节点 (reference node)
搜索上下文的引用节点是搜索上下文中的所有节点的直接父级。每个搜索上下文都具有关联的引用节点。
- 替换文本 (replacement text)
已分析实体的内容,在替换字符引用和参数实体引用之后。
S
- SAX
请参见“XML 的简单 API”。
架构
元素名的正式规范,指示 XML 文档中允许包含的元素以及如何组合。架构还定义文档的结构:哪些元素是其他元素的子元素、子元素出现的顺序以及子元素的数目。架构定义元素为空还是可以包含文本。架构还定义属性的默认值。架构的功能等效于 DTD,但是使用 XML 编写。架构还提供一些扩展功能,例如数据键入、继承和显示规则。因此,新的架构语言比 DTD 强大得多。
- 架构结构 (schema structures)
可以使用数据类型构建的复合对象,用于描述文档类型的元素、属性和验证结构。
- SGML
请参见“标准通用标记语言”。
- XML 的简单 API (SAX)
使开发人员可以利用由事件驱动的 XML 分析的 XML API。与 DOM 规范不同,SAX 不要求整个 XML 文件全部加载到内存中。SAX 在分析文档时如果发现特定事件发生,会通知您。在您响应某个事件时,将丢弃所有未专门存储的数据。如果文档很大,与使用 DOM 相比,使用 SAX 可以节省大量的内存。如果只需要一个很大的文档中的少量元素,情况尤其如此。
- 简单数据类型 (simple data type)
只包含文本的元素。也称为简单类型。在 XML 文档中作为 <simpleType> 出现。属性属于简单类型,因为只包含文本。
- 简单对象访问协议 (Simple Object Access Protocol, SOAP)
一种开放的、可扩展的方式,使应用程序可以使用基于 XML 的消息通过 Web 进行通信,与所使用的操作系统、对象模型或语言无关。通过 SOAP 可以使用现有的 Internet 结构,使应用程序可以直接相互通信,不会无意中被防火墙阻止。
- SOAP
请参见“简单对象访问协议”。
标准通用标记语言 (Standard Generalized Markup Language, SGML)
用于定义对电子文档结构和内容的描述的国际标准。尽管名称是标准通用标记语言,但是 SGML 本身不是语言,而是定义根据其通用原则开发的语言的一种方式。SGML 通过指定用于编写元素和属性的语法和定义,定义构建标记语言的方式。XML 是 SGML 的一个子集,用于通过 Web 传输 SGML 类型的信息,而 HTML 是 SGML 的应用。
T
模板 (template)
XML 样式表的基础是模板规则,通过模板规则,模板允许用户代理使用源节点构造特定样式的结果节点。模板包含下列两个部分:匹配部分标识要进行处理操作的源 (XML) 节点。匹配信息包含在匹配属性中。
处理部分定义如何处理子级以及要对子级应用的样式。处理信息包含在模板的子元素中。
标记化属性类型 (tokenized attribute type)
在标记化类型中,分析器将使所有空白标准化为单个空格字符,并将前导和尾随空白一同删除。还将根据声明的类型验证内容。有七种属性类型属于标记化类型,因为每个值表示单个标记(ID、IDREF、ENTITY、NMTOKEN)或标记列表(IDREFS、ENTITIES 和 NMTOKENS)。
U
统一资源标识符 (Uniform Resource Identifier, URI)
包括 URN 和 URL 的超类。目前,在讨论 XML 时,几乎所有情况下 URI 都是指 URL,尽管以后 URN 将越来越常见。URI 提供通用的唯一编号或名称,可以通过通用的唯一方式标识元素或属性。在 Internet 上定位资源时,URI 方案更常用一些,它更多的着重点在于资源,而不是位置。理论上,URI 可以查找镜像文档的最近的副本,或者定位从一个站点移动到另一个站点的文档。
统一资源定位符 (Uniform Resource Locator, URL)
URI 方案集,包含如何访问 Internet 上的资源的明确指令。URL 是统一的,因为它们采用相同的基本语法,无论寻址哪种特定类型的资源(网页、新闻组)或描述通过哪种机制获取该资源。
统一资源名称 (Uniform Resource Name, URN)
标识持久性 Internet 资源。URN 可以提供一种机制,用于查找和检索定义特定命名空间的架构文件。尽管普通的 URL 可以提供类似的功能,但是在这方面,URN 更加强大并且更容易管理,因为 URN 可以引用多个 URL。与 URL 不同,URN 与地址无关。
未分析实体 (unparsed entity)
任何非 XML 数据块,有时称为二进制实体,因为其内容通常是二进制文件(例如图像),XML 分析器无法直接解释。未分析实体可以包含纯文本,所以,二进制一词有一点误导。与已分析实体不同,未分析实体要求指定表示法,用于标识声明实体的资源的格式或类型。除了要求 XML 分析器使实体和表示法的标识符可供应用程序使用之外,XML 对未分析实体的内容没有任何约束。
- URI
请参见“统一资源标识符”。
- URL
请参见“统一资源定位符”。
- URN
请参见“统一资源名称”。
V
有效 XML
符合 XML 规范中定义的规则以及 DTD 或架构中定义的规则的 XML。分析器必须了解 XML 规范的有效性约束,并检查文档中是否存在违反约束的情况。如果分析器发现任何错误,必须将错误报告给 XML 应用程序。分析器必须还要读取 DTD,根据 DTD 验证文档,并再次将任何违反规范的情况报告给 XML 应用程序。
因为所有这些分析和检查可能都需要一段时间,并且并不一定总是需要进行验证,所以,XML 允许注明格式正确的文档。
- 词汇表 (vocabulary)
请参见“XML 词汇表”。
W
- W3C
请参见“万维网联合会”。
格式良好的 XML
遵循 W3C 对 XML 1.0 的建议中列出的 XML 标记规则、但是没有 DTD 或架构的 XML。格式正确的 XML 文档包含一个或多个元素;包含一个文档元素以及该元素下正确嵌套的所有其他元素;在文档中直接或间接引用的每个已分析实体的格式正确。格式正确的 XML 文档很容易创建,因为这样的文档不需要创建 DTD 的额外工作。格式正确的 XML 可以节省下载时间,因为客户端不需要下载 DTD,并且可以节省处理时间,因为 XML 分析器不需要处理 DTD。
- 万维网联合会 (Worldwide Web Consortium, W3C)
位于 MIT (麻省理工学院)的标准机构/团体,为 XML、HTML、XSL 以及许多其他 Web 技术制订标准。
X
XDR
请参见“XML 数据缩减”。XML
请参见“可扩展标记语言”。
- XML 数据缩减 (XDR)
早期用于创建架构的一种语言,创建的架构标识特定 XML 文档的结构和约束。XML 数据缩减是指 XML 数据架构规范的一个子集,在 MSXML 3.0 以及更高版本中提供。其执行的基本任务与 DTD 相同,但是更加强大和灵活。与 DTD 不同,DTD 要求使用自己的语言和语法,而 XML 数据缩减的语言使用 XML 语法。与 XSD 不同,XSD 只是最近才成为一项建议的标准,而在 W3C XML 架构工作组将 XSD 作为建议标准之前很长时间,Microsoft 就已实现并提供了 XML 数据缩减。
XML 声明
XML 文件的第一行可以包含“xml”处理指令,该处理指令称为 XML 声明。XML 声明可以包含伪属性,指示 XML 语言版本、字符集以及文档是否可以作为独立的实体使用。每个有效 XML 文件开头的 XML 声明就是一个示例:
<?xml version="1.0" standalone="yes" ?>
- XML 文档
格式符合 XML 建议的文档对象,也许有效,也许无效。XML 文档具有逻辑结构(由声明、元素、注释、字符引用和处理指令组成)和物理结构(由实体组成,开头是根实体,即文档实体)。
- XML 引擎
支持客户端上的 XML 功能的软件;Internet Explorer 4.0 以及更高版本包含 XML 引擎。其组件包括 XML 分析器、XSL 处理器和架构支持。
- XML 信息集
对格式正确的 XML 文档中所包含的信息的描述。
- XML 对象模型
定义开发人员与 XML 结构化树进行交互的标准方式的一个 API。XML 对象模型公开对象中包含的属性、方法和实际内容(数据)。控制用户如何与树进行通信,并将所有树元素作为对象公开,不需要与服务器进行任何交互即可访问这些对象。XML OM 使用 W3C 标准文档对象模型。
- XML 分析器
用于读取 XML 文档并访问文档内容和结构的软件模块。XML 分析器生成具有层次结构的树,然后将数据提交给查看器和其他应用程序进行处理,最后将结果返回给浏览器。验证 XML 分析器还检查 XML 语法并报告错误。
- XPath
努力为 XSL 转换 (XSLT) 与 XPointer 之间共享的功能提供公共的语法和语义的成果。XPath 的主要用途是寻址 XML 文档的各个部分。还提供用于处理字符串、数字和布尔值的基本工具。XPath 使用简洁的非 XML 语法,以便于在 URI 和 XML 属性值中使用 XPath。XPath 使用路径表示法获取其名称,在 URL 中通过该路径表示法浏览 XML 文档的层次结构。
XML 指针语言 (XPointer)
W3C 的一项推荐规范,用于指定寻址 XML 文档的内部结构的构造。特别是规定了对元素、字符串和 XML 文档的其他部分的特定引用,无论是否具有明确的 ID 属性。XPointer 由一系列位置术语组成,每个位置术语指定一个位置,通常相对于前一个位置术语所指定的位置。每个位置术语具有一个关键字(例如 id、child、ancestor 等),并且可以具有参数,例如实例编号、元素类型或属性。例如,XPointer:
child(2,precocious)
是指属于 precocious 类型的第二个元素。
XML 查询语言 (XQL)
向 W3C 推荐的一组对 XSL 模式的扩展。XQL 是对 XSL 功能的扩展,将规定如何在 XML 文档中搜索以及如何从 XML 文档中检索数据。通过 XQL 可以对 XML 进行处理,以便创建新文档,控制现有文档的内容,以及与 XSL 一起管理这些文档的排序和显示。
XML 架构定义 (XSD)
W3C XML 架构工作组建议在定义架构时使用的一种语言。架构用于强制执行结构和/或约束可以在其他 XML 文档中有效使用的数据类型。XML 架构定义是指已完全指定并且目前建议在编写 XML 架构时使用的标准。因为 XSD 规范只是最近才完成,所以,只有 MSXML 4.0 发行版支持 XSD 规范。其执行的基本任务与 DTD 相同,但是更加强大和灵活。与 DTD 不同,DTD 要求使用自己的语言和语法,而 XML 架构定义的语言使用 XML 语法。XSD 的功能与 XDR 非常接近,但是扩展了 XDR 的功能。与 XDR 不同,Microsoft 在 MSXML 2.0 以及更高的发行版中就实现并提供了 XDR,而 W3C 现在才建议将 XSD 作为定义 XML 架构时使用的标准。另请参见“架构”。
XML 词汇表
在特定数据格式中使用的特定文档类型的一组实际元素和结构。词汇表以及元素之间的结构关系在 DTD 中定义,DTD 充当该词汇表的规则手册。最早的并且可能是最知名的词汇表之一是“频道定义格式”,用于定义自动发送(即“推”)到客户端用户的网页。
- XPointer
请参见“XML 指针语言”。
- XQL
请参见“XML 查询语言”。
- XSD
请参见“XML 架构定义”。
- XSL
请参见“可扩展样式表语言”。
XSL 格式对象
作为 XML 词汇表表示的一组格式语义。在概念上,这些对象形成树。格式对象指示印刷元素,例如页面、段落、标尺等。通过一组格式属性对这些元素的显示进行更好地控制,例如缩进、词间距、字母间距、孤父、孤儿和连字符控制。格式对象和格式属性提供了表示显示缩进的词汇表。
- XSL 模式
MSXML 版本 3.0 以及更早版本中实现的声明型非程序化选择语言。MSXML 4.0 以及更高版本不支持 XSL 模式。有关 XSL 模式的更多信息,请从 MSDN® at msdn.microsoft.com/downloads/ 下载 MSXML 2.5 SDK。
XSL 转换 (XSLT)
利用 XPath 定义的表达式语言来选择要进行条件处理和生成文本的元素。XSLT 为扩展该语言提供两个“挂钩”,一个挂钩用于扩展模板中使用的指令元素集,一个挂钩用于扩展 XPath 表达式中使用的函数集。这两个挂钩均基于 XML 命名空间。