Meta Data Services 概述

Microsoft® SQL Server™ 2000 Meta Data Services 是面向对象的知识库技术，它可以与企业信息系统或处理元数据的应用程序集成。

Microsoft 的很多技术都将 Meta Data Services 作为对象定义的本机存储或部署元数据的平台来使用。SQL Server 2000 使用 Meta Data Services 的一个方式是存储分版本的数据转换服务 (DTS) 包。在 Microsoft Visual Studio® 中，Meta Data Services 支持模型数据与其它开发工具进行交换。

Meta Data Services 还可用于您自己的目的：作为集成信息系统的一个组件使用，作为处理元数据的自定义应用程序的本机存储使用，或作为共享可再次使用的模型的存储服务或管理服务来使用。另外，还可以扩展 Meta Data Services 以便为零售的新工具提供支持，或对其进行自定义以满足内部工具的要求。

Meta Data Services 文档包含以下各章节。

章节 | 描述
Meta Data Services 基础知识 | 描述使用 Meta Data Services 的基本概念和策略。
Meta Data Services 构架 | 解释 Meta Data Services 的各个组件及其相互关系。
Meta Data Services 中的 OIM | 描述开放信息模型 (OIM) 及其在 Meta Data Services 中的使用方法。
使用元数据浏览器 | 介绍元数据浏览器及其使用方法。
Meta Data Services 应用程序设计 | 提供有关在知识库中对元数据进行程序设计的信息。
知识库 API 参考 | 描述可用于知识库引擎和信息模型程序设计的类、接口和对象。
XML 编码参考 | 描述可用于在工具或应用程序中执行可扩展标记语言 (XML) 编码的类、接口和对象。

请参见

Meta Data Services 新特性


Meta Data Services 基础知识

Microsoft® SQL Server™ 2000 Meta Data Services 提供了一种存储和管理关于信息系统和应用程序的元数据的方法。这项技术就象是个网络集线器，把数据与组件定义、开发与部署模型、可再次使用的软件组件和数据仓库描述连结在一起。

产品组件由知识库引擎、工具、API、标准信息模型、浏览器和软件开发工具包 (SDK) 组成。有关产品组件的更多信息，请参见 Meta Data Services 构架。

必须了解元数据的概念及其使用方式，才能将元数据管理服务与某个产品、某个开发环境或某个信息系统集成在一起。本节主题描述识别此元数据管理技术应用方式的基本概念和使用策略。

主题 | 描述
元数据基础知识 | 对元数据的特征进行定义与解释。
信息模型基础知识 | 提供有关信息模型的基本信息。
元数据管理 | 解释元数据管理的重要性以及知识库技术支持管理任务的方式。
使用 Meta Data Services | 描述基于用户角色和目标的使用 Meta Data Services 的方式。
用信息模型设计元数据类型 | 解释 Meta Data Services 在设计过程中的角色。
使用元数据开发应用程序 | 解释 Meta Data Services 在开发过程中的角色。
在运行时处理元数据 | 解释 Meta Data Services 在运行时的角色。

请参见

Meta Data Services 中的 OIM

知识库 API

知识库引擎

知识库对象构架

使用元数据浏览器


元数据基础知识

Microsoft® SQL Server™ 2000 Meta Data Services 是一系列使您得以管理元数据的服务。要使用 Microsoft Meta Data Services，需要先了解元数据的特点。如果不了解元数据的概念，本概述会帮助您了解 Meta Data Services 所管理的数据类型。

元数据描述数据的结构和意义，就象描述应用程序和进程的结构和意义一样。切记：元数据是抽象概念，具有上下文，在开发环境中有多种用途。

元数据是抽象概念

当人们描述现实世界的现象时，就会产生抽象信息，这些抽象信息便可以看作是元数据。例如，在描述风、雨和阳光这些自然现象时，就需要使用"天气"这类抽象概念。还可以通过定义温度、降水量和湿度等概念对天气作进一步的抽象概括。

在数据设计过程中，也使用抽象术语描述现实世界的各种现象。人们把人物、地点、事物和数字组织或指定为职员、顾客或产品数据。

在软件设计过程中，代表数据或存储数据的应用程序和数据库结构可以概括为开发和设计人员能够理解的元数据分类方案。表或表单由对象派生出来，而对象又由类派生。

在元数据中有多个抽象概念级别。可以描述一个数据实例，然后对该描述本身进行描述，接着再对后一个描述进行描述，这样不断重复，直到达到某个实际限度而无法继续描述为止。通常情况下，软件开发中使用的元数据描述可扩展为二至三级的抽象概念。比如 "loan table" 数据实例可以描述为数据库表名。数据库表又可以描述为数据库表对象。最后，数据库表对象可以用一个抽象类描述，该抽象类确定所有派生对象都必须符合的固定特征集合。

元数据具有上下文

人们通常把数据和元数据的区别称为类型/实例区别。模型设计人员表述的是类型（如各种类或关系），而软件开发人员表述的是实例（如 Table 类或 Table Has Columns 关系）。

实例和类型的区别是上下文相关的。在一个方案中的元数据将在另一个方案中变为数据。例如，在典型的关系型 DBMS 中，系统目录将描述包含数据的表和列。这就意味着系统目录描述数据定义，因而可以认为其中的数据是元数据。但只要使用正确的软件工具，仍然可以象操作其它数据一样对这些元数据进行操作。操作元数据的示例包括：查看数据沿袭或表的版本控制信息，或通过搜索具有货币数据类型的列来识别所有表示财务数据的表。在此方案中，如系统目录这样的标准元数据变为可操作的数据。

元数据有多种用途

可以像使用任何类型的应用程序或数据设计元素一样使用元数据类型和实例信息。将设计信息表达为元数据，特别是标准元数据，可以为再次使用、共享和多工具支持提供更多的可能性。

例如，将数据对象定义为元数据使您得以看到它们是如何构造和进行版本控制的。版本控制支持提供一种查看、衍生或检索任何特定 DTS 包或数据仓库定义的历史版本的方法。开发基于元数据的代码时，可以一次性定义结构，然后重复使用该结构创建可作为特定工具和应用程序的不同版本的多个实例。还可以在现有元数据类型之间创建新关系，以支持新的应用程序设计。

请参见

信息模型基础知识

元数据管理

Meta Data Services 中的 OIM


信息模型基础知识

信息模型是描述某个工具、应用程序、数据结构或信息系统的元数据类型集合。例如，建立一个业务处理模型来描述定单从入帐到最终开具发票的整个过程。如果您模拟某个数据库应用程序，则您的信息模型描述受应用程序支持的表和列。如果您的目标是为图书零售商定义一个应用程序，信息模型就应该包括描述图书、作者和出版商的元素。图书、作者和出版商数据是零售商应用程序中将会用到的数据。

要注意，以上例子只是描述数据类型，而不是数据实例。第一个例子描述一个定单处理过程，而不是某个客户发出的具体定单。同样，一个数据库应用程序的信息模型描述表、键值、约束和存储过程，而不是这些元素真正存储和操作的实际数据。同样，图书零售商应用程序信息模型描述的是图书的概念，但不是关于某本实际图书的数据。因此，您可以看到，信息模型所表述的事物总是与最终用户实例数据相差两个步骤。

信息模型基础材料

信息模型由类、关系和属性描述。

类是一个模板，定义对象的特征。它代表信息模型中的实体。在前面的示例中，定单、表、键值、约束和存储过程代表不同的类。

关系类型定义存储关系必须与其保持一致的模板。例如，可以定义表和列、列和数据类型或架构和表之间的关系类型。关系类型对描述两个对象相关方式的准则的集合进行定义。

属性是一个模板，存储属性值必须与该模板保持一致。例如，当存储一个发票合计时，必须存储货币值。

标准信息模型

Microsoft® SQL Server™ 2000 Meta Data Services 分发一个开放信息模型 (OIM) 的实现，用于提供工具可以使用的标准元数据类型。OIM 是一组描述对象建模、数据库建模和组件再利用的一般信息模型。

可以通过添加自定义元素来扩展 OIM。例如，如果要创建的应用程序需要 OIM 中没有的元素，可以添加这些元素以完成设计。尽管 OIM 并不是必需的，但部署基于 OIM 的策略可提供其它手段不能获得的集成可能性。

信息模型的重要性

在 SQL Server 2000 以及其它与 Meta Data Services 集成的 Microsoft 产品中，已预定义、安装并可运行基于 OIM 的模型。如果只是要使用这些服务，那么并不需要进行什么其它工作。但如果要生成自己的使用元数据类型的工具和应用程序，或者要创建或扩展一个信息模型，那么就需要了解有关信息模型的所有知识。

信息模型是把 Meta Data Services 与其它工具和技术集成在一起的关键手段。有关如何让信息模型与 Meta Data Services 架构相适应的更多信息，请参见信息模型。

请参见

使用 Meta Data Services

元数据基础知识

元数据管理


元数据管理

工具开发人员通过将元数据管理支持添加到所提供的产品中，可充分利用 Microsoft® SQL Server 2000® Meta Data Services。Meta Data Services 为在专用工具或现有工具的附加功能中增加元数据管理功能提供了一个平台。

共享元数据是跨异类平台和开发环境部署数据和应用程序结构的一种方法。它能提供公用定义，使得工具和应用程序可以解释相同的元数据定义，并将它转化为应用程序特定的结构。元数据是一个集成点，因为它是抽象概念，包含一些基本的详细信息，不管实现策略是否改变，这些信息都保持不变。这种灵活性使元数据非常适用于设计工作，因为它可以将设计与实现分离开来。当使用预定义的元数据时，可以用最适合需要的开发工具实现具体的设计。

把元数据合并到您的信息系统中时，需要一种工具跟踪您所创建的元数据，记录它的使用方式以及在后续项目中再次使用的方式。

Meta Data Services 提供一个平台，让您得以进行以下操作，从而帮助您管理元数据：

  • 存储元数据构造。

  • 对元数据对象和关系进行版本控制，使您得以同样轻松地使用当前版本和历史版本。

  • 分配工作区，以便将对具体对象集合的修改隔离开。

  • 以可扩展标记语言 (XML) 格式导入和导出元数据结构，以便在各种不同的环境中使用您的元数据。

请参见

使用 Meta Data Services

元数据基础知识


使用 Meta Data Services

Microsoft® SQL Server™ 2000 Meta Data Services 是一种与其它工具一起使用的技术。所使用的工具种类将取决于您是要设计元数据，还是要用元数据进行程序设计，或是要在运行时访问元数据。

下面的关系图显示可以与 Meta Data Services 进行交互的方式。它包括设计时阶段、开发时阶段和运行时阶段。实际上，这几个阶段之间的区别并不明显。但是，将这几个阶段区分开来有助于理解使用 Meta Data Services 的不同方式。

设计过程中的关键是模型创建。可以使用模型处理工具和 Meta Data Services 软件开发工具包 (SDK) 来创建元数据，并存储在知识库数据库中。

开发过程是在数据库中建立模型信息之后开始的。此时可以使用 API 对其进行程序设计，或使用 XML 编码与其它知识库交换元数据。

在运行时，可以用浏览器工具来直接使用知识库内容。在每个级别上，都可以创建基于 Meta Data Services 的自定义解决方案。

请参见

用信息模型设计元数据类型

使用元数据开发应用程序

元数据基础知识

元数据管理

Meta Data Services 构架

在运行时处理元数据


使用信息模型设计元数据类型

部署 Microsoft® SQL Server™ 2000 Meta Data Services 技术从信息模型开始。Meta Data Services 应该与提供有关元数据类型信息的信息模型一起使用。知识库引擎、知识库 API、附加工具和软件开发工具包 (SDK) 都使用信息模型。在信息模型中定义的元数据类型将提供与开发工具、应用程序和浏览器进行交互的设计数据。所有与 Meta Data Services 技术集成的 Microsoft 产品，其集成均基于某种类型的信息模型。

如果要建立一个带有 Meta Data Services 的应用程序，所使用的信息模型应该能够完全描述该数据、工具或您将随后进行编码的应用程序结构。例如，如果要生成一个清单控制应用程序，所需的信息模型应完整地描述这个清单控制应用程序。

如果使用开放信息模型 (OIM)，则设计元素都是预定义的。还可以使用 OIM 元素的子集，然后将需要的附加元素补充到模型中。可以将 OIM 扩展为支持具体工具元数据类型或支持设计中需要的其它任何元数据类型。

尽管就工具和程序设计支持而言，OIM 能具有明显的优势，但您并不一定非要用它。可以用与 OIM 毫无关系的统一建模语言 (UML) 创建自定义信息模型。

所创建的自定义信息模型或扩展 OIM 信息模型必须与通过知识库 API 提供的抽象类相一致。若要生成自定义信息模型或扩展一个 OIM 模型，则应使用 Meta Data Services SDK。它包括了模型编辑器，以知识库 API 为标准验证您的模型。

使用信息模型并不意味着无须再编码。实际上它改变了编码的作用。在模型驱动的开发环境中，编码提供实现策略。有关根据信息模型进行程序设计的更多信息，请参见使用元数据开发应用程序。

请参见

使用 Meta Data Services

信息模型基础知识

Meta Data Services SDK

Meta Data Services 中的 OIM

在运行时处理元数据


使用元数据开发应用程序

信息模型安装到知识库数据库后，可以使用知识库 API 来根据它进行程序设计。

在开始程序设计之前，了解信息模型是如何构造的很有用。信息模型至少对您必须提供的代码的一部分（如果不是全部）进行完整的描述。如果它包含客户和定单对象，则代码应对客户和定单对象实例进行实例化。

模型驱动的应用程序开发不会限制应用程序的功能。应用程序代码始终可以支持需要它实现的结构和行为，不管模型是否描述这些结构和行为。但如果要使信息模型非常实用，就必须让信息模型尽可能包含最完整的元数据类型集合。关键是要明白，信息模型提供的是在代码中必须实现的最低程度的设计。

如果您使用 Microsoft® SQL Server™ 2000 Meta Data Services 软件开发工具包 (SDK)，可以通过合并样本和使用由它提供用来从您的信息模型生成程序文件的工具来加速您的开发工作。

开发方案

对于工具厂商而言，Meta Data Services 为集成工具和管理工具元数据提供一个基础。Meta Data Services 可以作为中间级存储使用，将一个工具的输出转换为另一个工具的输入。它还为创建特定应用程序的变体提供一种方法，使不同的工作组可以同时进行新的应用程序开发或保留现有的应用程序。Meta Data Services 包括的功能使您得以跟踪这项活动，并进而对版本进行同步处理或合并。

使用元数据可以改进开发应用程序的方式。使用元数据时能把设计与实现分隔开来。只须进行一次设计，就可以使用多种工具实现这个设计。使用元数据类型时，可以用知识库数据驱动实现工具，从而更改某个应用程序的设计以适用于不同的操作系统、数据库、网络和事务处理器。

请参见

用信息模型设计元数据

使用 Meta Data Services

信息模型基础知识

元数据管理

Meta Data Services 构架

在运行时处理元数据


在运行时处理元数据

应用程序设计人员和厂商依靠其应用程序中处理过的元数据来支持互操作性。尽管知识库技术并非 Microsoft® SQL Server™ 2000 Meta Data Services 常用或常见的实现方式，但可以在运行时方案中部署它。

SQL Server 2000 能在运行时检索并处理元数据构造，为数据仓库、查询或数据转换服务 DTS 包生成净化数据。

对于数据仓库专业人员而言，使用 Meta Data Services 可以进行工具集成以及为数据仓库定义提供单一数据源，从而产生净化的数据。

元数据浏览器是在运行时处理元数据的另一个工具示例。该浏览器使您得以查看现有的元数据及其定义方式。对于应用程序开发人员而言，当他们要扫描对象的知识库内容以确定为某一目的使用哪个对象时，就可以使用浏览器。

可以创建自定义浏览器或分析工具，用于研究存储在知识库数据库中的元数据内容，还可以创建功能齐全的应用程序以管理您的组织使用的元数据类型。

上述例子只是处理过的元数据的使用方式中的几种。还可以创建类似的工具或新的工具，以创新的方式使用元数据。

请参见

用信息模型设计元数据类型

使用元数据开发应用程序

使用 Meta Data Services

Meta Data Services 构架

使用元数据浏览器


Meta Data Services 的新特性

Microsoft® SQL Server™ 2000 Meta Data Services 扩展并重命名了以前称为 Microsoft 知识库的知识库组件。Meta Data Services 通过引入用于查看知识库数据库数据的新的浏览器、新的可扩展标记语言 (XML)、互换支持和新的知识库引擎功能，扩展了知识库技术。

"新特性"主题简要介绍了新的 Meta Data Services 功能，同时还与相关的概念主题链接。在这些主题中，对每一功能进行了更为详细的讨论并进一步提供了到相关文档的链接。本章信息包括对新特性的简要介绍，以及到 SQL Server 联机丛书中提供更详细信息的相关概念主题的交叉引用。

主题功能 | 描述
元数据浏览器增强功能 | 此版本中的新特性，元数据浏览器是一个用于浏览知识库数据库的工具。
XML 编码增强功能 | 此版本中的新特性，XML 编码支持元数据合并 (MDC) 开放信息模型 (OIM) XML 中元数据交换的新实现方式。
知识库引擎编程增强功能 | 编程增强功能为在已安装的信息模型上进行程序设计提供更详细、更有效的方法。
知识库引擎建模增强功能 | 建模增强功能支持在信息模型中添加的新定义。

请参见

Meta Data Services 构架

Meta Data Services 概述

Meta Data Services SDK

从早期版本升级


元数据浏览器增强功能

元数据浏览器是可用于浏览知识库数据库内容的新工具。此工具被引入 Microsoft® SQL Server™ 2000 Meta Data Services。可以在选择 Meta Data Services 时运行元数据浏览器。Meta Data Services 适用于所有安装的 SQL Server 复本。

有关更多信息，请参见使用元数据浏览器。有关更多信息，请参见 SQL Server 联机丛书中的"使用元数据浏览器"主题。

请参见

Meta Data Services 概述

Meta Data Services 新特性


XML 编码增强功能

Microsoft® SQL Server™ 2000 Meta Data Services 现在以本机模式使用可扩展标记语言 (XML) 编码。可以用最接近自己的信息模型的格式导入、导出和发布知识库元数据。

XML 编码将替代作为此软件旧版本一部分的 XML 互换格式 (XIF)。有关更多信息，请参见 Meta Data Services 内的 XML 和使用 XML 编码。有关更多信息，请参见 SQL Server 联机丛书中的"Meta Data Services 内的 XML"和"使用 XML 编码"主题。

新增 COM 接口

XML IExport 接口概述

XML IImport 接口概述

XML IExport 接口

XML IImport 接口

有关更多信息，请参见 SQL Server 联机丛书中的"XML IExport 接口概述"和"XML IImport 接口概述"主题。

请参见

Meta Data Services 概述

升级信息模型

Meta Data Services 新特性


知识库引擎编程增强功能

知识库引擎 3.0 版向后兼容 2.0 版的功能和接口。使用 3.0 版时对数据库不会有任何更改。此时只能使用 2.0 版的功能。通过在打开知识库数据库时传递 REPOS_CONN_UPGRADE 标志，可以将数据库从 2.0 版升级到 3.0 版格式。升级知识库数据库的另一种方法是在知识库数据库注册过程中通过元数据浏览器进行升级。升级后就可以使用 3.0 版的所有新特性，升级之后，无法再使用 2.0 版的引擎去打开升级的数据库。

Microsoft® SQL Server™ 2000 Meta Data Services 在 3.0 版中引入了下列新增知识库引擎功能。这些功能将提高您根据驻留在知识库数据库中的信息模型进行编程的能力。

视图生成

视图生成提供一种基于信息模型中的类、接口和关系来自动生成关系视图的方法。可以使用自定义的关系视图简化知识库数据库查询。为生成视图，知识库引擎新增了四个可用的接口。有关更多信息，请参见生成视图。有关更多信息，请参见 SQL Server 联机丛书中的"生成视图"主题。

新增 COM 接口

IViewClassDef 接口

IViewInterfaceDef 接口

IViewPropertyDef 接口

IViewRelationshipDef 接口

有关更多信息，请参见 SQL Server 联机丛书中特定接口的主题。

性能提示

可以按照本文档中描述的新性能优化引擎性能。除现有的各种优化技术以外，还可以调整高速缓存老化数据清除以改变不同行类型的老化数据清除条件、启用操作的原子性以及预装每个知识库对象的对象集合。新的增强性能可以通过 IreposOptions 来实现。对于可调整的高速缓存老化数据清除，可以设置一个或多个 AGEOUT 选项。对于操作的原子性，则设置 OPT_ATOMICMODE。对于预装对象集合，则设置 OPT_EXPORT_MODE 或 OPT_PRELOAD_COL_MODE 以指定每个集合中对象的最大数目。

新增 COM 接口

IReposOptions 接口

有关更多信息，请参见 SQL Server 联机丛书中特定接口的主题。

二进制大对象 (BLOB) 和大文本字段的属性扩展

知识库引擎已经可以通过属性扩展来处理大属性或二进制大对象 (BLOB)，并授权访问关于对象的元数据。有关更多信息，请参见二进制大对象 (BLOB) 和大文本字段的程序设计。有关更多信息，请参见 SQL Server 联机丛书中的"二进制大对象 (BLOB) 和大文本字段的程序设计"主题。

新增 COM 接口

IReposProperty2 接口

IReposPropertyLarge 接口

IRepositoryObject2 接口

有关更多信息，请参见 SQL Server 联机丛书中特定接口的主题。

集合筛选

集合筛选现在通过知识库 API 支持 SQL 选择条件。此版本的知识库引擎中，可以在运行时为任何目标对象指定选择条件，从而精确地选择感兴趣的对象。若要设置条件，可使用 IReposQuery 接口的 GetCollection 方法。

新增 COM 接口

IReposQuery 接口

有关更多信息，请参见 SQL Server 联机丛书中特定接口的主题。

与 MS DTC 集成

由于知识库引擎与 Microsoft 分布式事务处理协调器 (MS DTC) 集成在一起，所以，使用知识库引擎的应用程序可以执行跨越多个数据库系统的事务。有关更多信息，请参见与分布式事务处理协调器集成。有关更多信息，请参见 SQL Server 联机丛书中的"与分布式事务处理协调器集成"主题。

新增 COM 接口

IRepositoryTransaction2 接口

有关更多信息，请参见 SQL Server 联机丛书中特定接口的主题。

版本传播

版本传播行为已经通过两个新标志扩展为关系。可以设置 COLLECTION_NEWDESTVERSIONADD 以指定起始对象始终与目的对象的最新版本链接。这样在出现新的有版本控制的目的对象时，就不需要对起始对象进行相应的手工版本控制。第二个新标志 COLLECTION_NEWDESTVERSIONPROPAGATE 具有相反的效果。对它的设置可以将传播行为扩展到关系链的更深层次。如果一个对象既是起始对象又是目的对象，设置此标志将创造反向级联版本控制效果。新目的对象版本导致创建新的起始对象版本，该行为将一直重复到引擎到达一个未冻结的对象为止。设置此标志将使任务自动化，而此任务在以前是由开发人员用应用程序代码去处理的。有关更多信息，请参见传播版本和 CollectionDefFlags 枚举。有关更多信息，请参见 SQL Server 联机丛书中的"传播版本"和"CollectionDefFlags 枚举"主题。

请参见

Meta Data Services 概述

知识库引擎建模增强功能

升级知识库引擎

Meta Data Services 新特性


知识库引擎建模增强功能

Microsoft® SQL Server™ 2000 Meta Data Services 在 3.0 版引擎中引入了下列新增知识库引擎功能。这些功能使您能够更好地创建信息模型，以利用此版本的知识库引擎中的新特性。

脚本支持

脚本支持提供通过 Microsoft ActiveX® 脚本验证属性和实现方法的能力。模型创建者可以将脚本指派给定义在信息模型中的方法。有了脚本支持，就无须再使用聚合来验证属性和实现方法。有关更多信息，请参见定义脚本对象。有关更多信息，请参见 SQL Server 联机丛书中的"定义脚本对象"主题。

新增 COM 接口

IClassDef2 接口

IInterfaceMember2 接口

IInterfaceDef2 接口

IScriptDef 接口

有关更多信息，请参见 SQL Server 联机丛书中特定接口的主题。

接口含义

接口含义允许客户定义信息模型中两个接口之间的含义。还可以使用 IInterfaceDef2 模拟多重继承的某些功能，而这在 COM 中是不允许的。有关更多信息，请参见接口含义。有关更多信息，请参见 SQL Server 联机丛书中的"接口含义"主题。

新增 COM 接口

IInterfaceDef2 接口

有关更多信息，请参见 SQL Server 联机丛书中特定接口的主题。

成员委派

成员委派扩展了引擎，以支持将一个接口中的派生成员委派为另一个接口的基成员。这种委派可用于支持关系继承。有两种接口支持这种新增的映射能力：IInterfaceMember2 和 IInterfaceDef2。有关更多信息，请参见成员委派。有关更多信息，请参见 SQL Server 联机丛书中的"成员委派"主题。

新增 COM 接口

IInterfaceMember2 接口

IInterfaceDef2 接口

有关更多信息，请参见 SQL Server 联机丛书中特定接口的主题。

共享模型信息

模型相关性允许模型开发人员定义信息模型之间的相关性，以支持创建模块化和集成度更高的模型。若要支持模型相关性，可使用 IReposTypeLib2 的新 DependsOn 集合。有关更多信息，请参见定义类型库之间的相关性。有关更多信息，请参见 SQL Server 联机丛书中的"定义类型库之间的相关性"主题。

新增 COM 接口

IReposTypeLib2 接口

有关更多信息，请参见 SQL Server 联机丛书中特定接口的主题。

对象命名语义

对象命名语义已经进行了扩展，以支持更一致的命名。在此版本的知识库引擎中，可以设置 CollectionDefFlag 的 COLLECTION_OBJECTNAMING 标志，以便在创建后续集合和关系名称时自动指定对象名。有关更多信息，请参见 CollectionDefFlags 枚举。有关更多信息，请参见 SQL Server 联机丛书中的"CollectionDefFlags 枚举"主题。

参数支持

现在参数可以在模型中进行定义。3.0 版支持方法参数定义，这样，模型的创建就可以包括完整的对象描述。现在可以使用 Meta Data Services 软件开发工具包 (SDK) 从信息模型生成完整的描述性接口定义语言 (IDL) 文件。有关更多信息，请参见定义参数。有关更多信息，请参见 SQL Server 联机丛书中的"定义参数"主题。

新增 COM 接口

IMethodDef 接口

IParameterDef 接口

有关更多信息，请参见 SQL Server 联机丛书中特定接口的主题。

枚举定义

知识库枚举定义允许您将属性指定为枚举，它具有与现实世界的概念相对应的常量字符串或整数值的固定集。若要使用此功能，请指定一个 EnumerationDef 对象和多个相关的 EnumerationValue 对象，并将这些对象与 PropertyDef 对象关联起来。有关更多信息，请参见知识库枚举定义。有关更多信息，请参见 SQL Server 联机丛书中的"知识库枚举定义"主题。

新增 COM 接口

IEnumerationDef 接口

IEnumerationValueDef 接口

IPropertyDef2 接口

有关更多信息，请参见 SQL Server 联机丛书中特定接口的主题。

类型信息别名化

类型信息别名化允许用第二个名称（同义词）引用类、接口和关系。通过新接口可以实现类型信息别名化。

新增 COM 接口

IReposTypeInfo 接口

IReposTypeInfo2 接口

IInterfaceMember2 接口

有关更多信息，请参见 SQL Server 联机丛书中特定接口的主题。

版本标记

版本标记允许用户设置或检索版本注释属性。使用 IVersionAdminInfo2 实现版本标记。

新增 COM 接口

IVersionAdminInfo2 接口

有关更多信息，请参见 SQL Server 联机丛书中特定接口的主题。

虚拟成员

虚拟成员支持使您得以通过设置 InterfaceMemberFlags 属性中的 VIRTUAL_MEMBER 标志来定义非持久成员。如果设置了此标志，并且成员是一个属性的话，引擎不会为其在接口的表中分配列。有关更多信息，请参见虚拟成员和 IInterfaceMember 标志属性。有关更多信息，请参见 SQL Server 联机丛书中的"虚拟成员"和"IInterfaceMember 标志属性"主题。

请参见

Meta Data Services 概述

知识库引擎编程增强功能

升级知识库引擎

Meta Data Services 新特性


Meta Data Services 构架

Microsoft® SQL Server™ 2000 Meta Data Services 构架基于一组集成组件。下表概述了其中的主要组件并附有关系图。

组件摘要

构架组件说明见下表。阅读具体的主题可了解关于每个组件的更多信息。

主题 | 描述
工具和应用程序 | 描述工具和应用程序如何与 Meta Data Services 构架相关联。 元数据浏览器是与 Meta Data Services 一同提供的一个工具。有关更多信息，请参见使用元数据浏览器。
开放标准：OIM、COM、XML | 描述 Meta Data Services 支持的开放标准，包括基于组件对象模型 (COM) 的接口、可扩展标记语言 (XML) 编码和开放信息模型 (OIM)。 OIM 支持标准元数据。XML 编码支持 OIM 元数据的导入和导出。有关更多信息，请参见 Meta Data Services 中的 OIM 和 Meta Data Services 中的 XML。
信息模型 | 描述 Meta Data Services 如何通过 OIM 和其它信息模型支持标准元数据和用户定义的元数据。 模型设计人员和编程人员可以使用软件开发工具包 (SDK) 创建基于元数据的应用程序，并生成或扩展作为共享元数据基础的信息模型。有关更多信息，请参见 Meta Data Services SDK。
知识库引擎 | 讨论知识库引擎，该引擎在知识库数据库中对元数据进行存储、合并及检索。 知识库引擎表现为可用知识库 API 访问的对象模型。
知识库 API | 讨论知识库 API，该 API 通过 COM 接口表现知识库引擎功能和信息模型定义。
知识库数据库 | 讨论元数据的数据库存储。

构架关系图

在 Meta Data Services 构架中，工具和应用程序通过开放标准连接到核心引擎和存储组件。信息模型可定义类型信息，这些类型信息确定由工具和应用程序表现在顶层的元数据的结构和行为。

请参见

Meta Data Services 基础知识

Meta Data Services 中的 OIM

规范和限制

使用 Meta Data Services

Meta Data Services 中的 XML


工具和应用程序

Microsoft® SQL Server™ 2000 Meta Data Services 是一种为工具和应用程序使用而设计的技术。工具就是软件程序，用于帮助应用程序开发人员进行应用程序的设计、实现、部署和维护。而应用程序就是被设计用来协助执行诸如文字处理、帐目管理或清单管理等特定任务的程序。

在 Meta Data Services 构架中，工具和应用程序是用户建立或提供的程序。在构架中，工具和应用程序存在于核心引擎和存储组件之外，并通过开放标准与这些核心组件连接。

工具和应用程序的范围从设计时用于生成信息模型的建模软件，到运行时使用或转换元数据的数据仓库或应用程序开发工具。任何类型的工具和应用程都可以与 Meta Data Services 一起使用。

以下概述了 Microsoft、独立软件厂商 (ISV) 和软件开发人员将 Meta Data Services 与所提供的工具和产品集成在一起的几种方式。下面的列表显示了几个有关如何应用 Microsoft 知识库技术的示例。

  • SQL Server 2000、SQL Server 2000 Analysis Services、English Query 以及 Microsoft Visual Studio® 都使用 Meta Data Services 存储元数据、与其它工具互换元数据并在支持元数据创建的工具中添加版本控制功能。

  • ISV 供应商在商业产品中用 Meta Data Services 存储可由 ISV 客户使用的、增值的预定义信息模型。

  • 软件开发人员已经将 Meta Data Services 合并到应用程序开发环境中，以通过多种开发工具部署应用程序设计。

有关第三方供应商如何部署此技术的更多信息，请参见 SQL Server 页，网址为：Microsoft Web 站点。

请参见

使用元数据开发应用程序

Meta Data Services 构架

开放标准：OIM、COM、XML

使用元数据浏览器


开放标准：OIM、COM、XML

开放标准是描述某项技术特征的公开的规范。开放标准的目标是提高互操作性。对于类似 Microsoft® SQL Server™ 2000 Meta Data Services 的集成平台，互操作性是基本的。因此，您将发现在 Meta Data Services 构架中尽可能多地使用了开放接口和规范。

Meta Data Services 支持三种开放标准：元数据合并 (MDC) 开放信息模型 (OIM)、组件对象模型 (COM) 接口和可扩展标记语言 (XML) 编码。在一个应用程序生命周期的每个阶段，都有可用于锁定在集成中的开放标准。

用于设计阶段集成的 OIM

OIM 是可以共享、再次使用和扩展的标准信息模型。它由 MDC 发布，在工具厂商市场中受到广泛的支持。正是因为 OIM 得到广泛支持，才使得在各种实现工具中使用相同的信息模型设计成为可能。

在 Meta Data Services 中，可以将 OIM 作为生成类型信息的框架使用。知识库引擎或 API 并不要求 OIM。但在使用 OIM 时，可以充分利用 Meta Data Services 软件开发工具包 (SDK) 中的资源和功能，从而大大简化开发工作。而且，还可以在任何 OIM 兼容的工具中使用信息模型。

用于程序级集成的 COM 接口

COM 接口是用于生成、使用和改进组件软件的二进制规范。在程序设计语言（如 Microsoft Visual Basic®、Microsoft Visual C++® 和 Microsoft Visual J++®）中支持 COM。COM 构架和基本支持结构由 Microsoft 开发和维护。

在对 Meta Data Services进行程序设计时，可以使用在知识库 API 中定义的 COM 接口从应用程序代码访问知识库引擎和信息模型。由于知识库引擎和信息模型都表现为 COM 对象，所以两种编程语言之间的唯一差别就是开发平台的 COM 实现策略。

用于运行时和存储级别集成的 XML

XML 是 World Wide Web Consortium (W3C) 关于以结构化文档形式表示信息的标准。异类系统之间的数据传输正越来越多地使用 XML 标准。

知识库引擎支持 XML 编码，可提供以 XML 格式对存储的元数据进行导入与导出的功能。XML 编码使您得以在不同的 OIM 兼容知识库之间交换元数据。

请参见

Meta Data Services 构架

Meta Data Services 中的 OIM

知识库 API

使用 XML 编码

Meta Data Services 中的 XML


信息模型

信息模型定义存储在知识库数据库中并由工具和应用程序使用的各种元数据类型。与 Microsoft® SQL Server™ 2000 Meta Data Services 一起使用的信息模型必须用统一建模语言 (UML) 进行描述。

Meta Data Services 提供一组标准信息模型，称为开放信息模型 (OIM)。SQL Server 2000 将描述数据转换服务 (DTS) 包、数据仓库定义和联机分析处理 (OLAP) 多维数据集的标准 OIM 主题区预安装到 msdb 数据库中。这些信息模型不需要任何修改就能执行各自的设计功能。

这些标准模型可以作为生成新应用程序的框架而使用。还可以使用 Meta Data Services 软件开发工具包 (SDK) 来创建所需的新模型。只要信息模型是用 UML 所定义的，就可以在 Meta Data Services 中使用它们。

尽管可以通过编程方式创建信息模型，但大多数模型信息是在建模工具（如 Rational Rose）中创建的。自定义信息模型必须与知识库 API 相一致。知识库 API 包括正规地描述在一个模型中可以包含的元素的各种抽象类。如果要创建一个自定义模型，最好先看看知识库 API，以了解有关知识库引擎所支持的类型信息对象的更多信息。

对信息模型进行定义并测试完毕后，就可以把它安装到知识库数据库中。模型的安装过程将为元数据创建存储结构。使用此模型的工具和应用程序可以将有关模型定义的实例数据填充到存储中。

运行时，知识库引擎会读取元数据，并用某种与此信息模型的对象、关系和成员相对应的工具或应用程序对组件对象模型 (COM) 对象进行实例化。而您使用的 COM 接口是由知识库数据库中的一个信息模型派生出来的。通过这种方式，信息模型就成为由知识库引擎表现的 COM 对象的设计图。

还可以使用扩展标记语言 (XML) 在不同的平台、工具和应用程序之间导入和导出元数据。有关更多信息，请参见使用 XML 编码。

请参见

创建和扩展类型信息

用信息模型设计元数据类型

信息模型基础知识

Meta Data Services SDK

Meta Data Services 中的 OIM


知识库引擎

知识库引擎是一项服务，它提供用于对象的存储和检索以及维护对象之间关系的基本功能。

知识库引擎在信息模型的上下文内执行这些功能。从这一点来看，它又是一个模型驱动的解释器。该引擎处理用户定义的模型信息，以确定如何存储和支持对象、关系和对策。用知识库引擎对信息模型实例进行操作时，只能在模型结构允许的范围内进行。例如，只有在基础模型支持某种对象关系时，才能用知识库引擎创建这种关系。

若要使用知识库引擎，应以知识库 API 为标准进行编程。知识库引擎将响应由应用程序代码通过组件对象模型 (COM) 和 COM 自动化接口发出的命令。

知识库引擎将处理所有与存储层之间的交互作用。尽管事务发生的时间和方式由您控制，但执行指定操作的 SQL 命令将由知识库引擎生成。

引擎构架

下面的关系图说明引擎的构架。引擎作为类库执行。它以高速缓存为缓冲而存储来自知识库数据库的实例数据。您用代码操作的数据将指向高速缓存的数据。行高速缓存将维护关于实例化了的对象、属性和关系的状态信息。

请参见

Meta Data Services 构架

知识库 API


知识库 API

知识库 API 是一个编程接口，用于从应用程序代码内部驱动知识库引擎。

API 基于一个对象模型，此模型描述与信息模型相应的知识库引擎功能和类型定义。引擎功能包括事务、工作区管理和连接服务等。类型定义包括类、接口、属性和关系定义等。实际上对象模型的这两部分的区别是人为定义的。需要时可以根据应用程序代码的要求，随时随地唤醒调用任何一种类型的对象。

API 通过组件对象模型 (COM) 和 COM 自动化接口表现出来，它支持用于应用程序开发的开放标准，使您得以用任何 COM 兼容的编程语言进行编程。

通过使用 Meta Data Services 软件开发工具包 (SDK)，可以生成与 API 支持的类型定义相一致的模型。在生成并安装好模型后，就可以实例化对象，并通过应用程序代码唤醒调用接口。实例化对象支持具有单值属性和关系集合的接口。

请参见

Meta Data Services 构架

Meta Data Services SDK

开放标准：OIM、COM、XML

Meta Data Services 应用程序设计

知识库 API 参考


知识库数据库

知识库数据库存储物理数据。这些数据包括具有类型信息或对象实例数据的知识库类型库，还包括用于映射或管理对象关系的表。在 Microsoft 分发的 Microsoft® SQL Server™ 2000 Meta Data Services 各版本中，存储是通过 SQL Server、SQL Server 运行时引擎或 Microsoft Jet 提供的。

Meta Data Services 是 SQL Server 的一个已安装组件。如果使用的是 SQL Server，则知识库数据库已经存在。默认情况下，在 msdb 系统数据库中预定义知识库表。这些表存储由 SQL Server 和其它附件使用的数据仓库元数据。

知识库数据库中至少会包括每个知识库数据库中都有的标准表。此外，还为自定义接口定义创建其它的表。知识库引擎将属性和关系存储在它的表中。有关知识库表的更多信息，请参见知识库 SQL 架构。

如果需要，还可以选择将自定义的元数据添加到 msdb 中。通过将所有的元数据放在一个数据库中，可以创建关系，以各种新的方式组合现有的定义。

管理知识库数据库

知识库数据库是由知识库引擎驱动的，知识库引擎管理所有事务并确定存储结构。为节省数据库空间，Meta Data Services 有时会清除冗余的数据库定义。例如，即使某个属性值描述多个对象版本，Meta Data Services 也可能只存储该属性值的单个复本。同样，即使许多不同的对象版本具有同一个关系，Meta Data Services 有时也只存储此关系的单个复本。

如果您不是经验丰富的数据库编程人员或管理员，就不要直接修改知识库数据库。因为有些更改可能是知识库引擎无法管理的。

可以将多个信息模型存储在单个知识库数据库中。使用 ODBC 驱动程序可以实现与知识库数据库的连接。若要访问表中的特定信息模型，请使用知识库 API。

其它数据库类型

如果您使用的 Meta Data Services 是 SQL Server 的附加组件，那么元数据的物理存储就会作为一个 SQL Server 数据库实现。但 Meta Data Services 也和其它 Microsoft 产品一起分发。如果正在使用的 Meta Data Services 是 Microsoft Visual Studio® 的附加组件，则可以使用 Microsft Jet 或 SQL Server 运行时引擎以 SQL Server 表的形式实现数据存储。SQL Server 运行时引擎是 SQL Server 兼容的数据引擎，可以用它进行本地数据存储。有关 Microsoft Jet 或 SQL Server 运行时引擎的更多信息，请参见 MSDN® 库，网址为：Microsoft Web 站点。

其它第三方厂商也在非 Microsoft 数据库平台中支持 Meta Data Services。他们将来的开发工作会增加能使用 Meta Data Services 的数据库平台的数目。有关第三方支持的更多信息，请参见 SQL Server 页上的 Meta Data Services，网址为：Microsoft Web 站点。

请参见

连接和配置知识库

Meta Data Services 构架

知识库 API

知识库引擎

知识库数据库中的存储策略


Meta Data Services SDK

Microsoft® SQL Server™ 2000 Meta Data Services 软件开发工具包 (SDK) 包含模型设计人员和编程人员所需的资源。它包括模型开发工具包 (MDK)、建模文档、样本代码和附加工具。SDK 和 MDK 共同为扩展模型、自定义模型、创建新模型和根据模型编程提供非常重要的资源。

以下是 SDK 中提供的组件。

  • MDK 包括文档、程序设计扩展和资源文件，可以用于验证模型并生成 Microsoft Visual Basic® 和 Microsoft Visual C++® 程序的编程资源。

  • 开放信息模型 (OIM) 包含由主题区组织的模型。每个主题区模型作为独立的文件进行分发。与每个模型文件相关的是一套随时可用的建模文件，这些文件可帮助您起步。

  • 模型安装程序能使信息模型添加到知识库数据库的进程自动化。模型编辑器先将模型编译为知识库可分发模型 (RDM) 文件，之后即可进行安装。

  • 开发样本将提供样本文件和文档，解释使用文件的方式。可以用开发样本而练习使用 Meta Data Services。用样本文件进行练习有助于提高生成与处理自己的文件的技能。

SDK 可以从 Meta Data Services Web 站点下载。但使用 SDK 必须先安装 Meta Data Services。有关更多信息，请访问 SQL Server 页，网址为：Microsoft Web 站点。

请参见

安装信息模型

Meta Data Services 构架

Meta Data Services 中的 OIM

使用 OLE DB 扫描程序

使用 XML 编码


规范和限制

内存和存储限制取决于服务器上 RAM 空间和提供数据库存储服务的 DBMS 可以使用的硬盘存储资源。

按照本文档提供的下列性能说明，可以微调知识库引擎的性能。有关更多信息，请参见优化知识库性能。

存储限制

Microsoft® SQL Server™ 2000 Meta Data Services 使用由 DBMS 提供的存储空间。SQL Server 2000 对数据库大小没有实际的限制要求。如果您使用 msdb，或使用 SQL Server 2000 创建新知识库，则当需要更多存储空间时可以配置数据库大小。

运行时的内存限制

知识库引擎使用可用的 RAM 处理事务并且实例化模型信息。可用的 RAM 空间越大，知识库引擎的性能就越好。

请参见

Meta Data Services 构架

程序设计环境

知识库数据库


Meta Data Services 中的 OIM

开放信息模型 (OIM) 是一套标准对象模型，供工具和应用程序用来创建可交换的元数据。OIM 由元数据合并 (MDC) 发布。

Microsoft 随 Microsoft® SQL Server™ 2000、SQL Server 2000 Meta Data Services 软件开发工具包 (SDK) 和 Microsoft Visual Studio® 一起分发 OIM 的版本。基于 OIM 的元数据模型用于定义这些及其它 Microsoft 产品中的元数据。为了适应工具专用元数据，Microsoft 已经扩展了由其分发用来支持其元数据要求的 OIM 的版本。

OIM 是一个不断进化的标准。可以始终从 MDC 获得 OIM 的最新版本，以支持以模型为基础的应用程序开发。也可通过添加新定义来扩展它，以支持工具特有的元数据要求。

本节包括的主题将解释 OIM 的重要性，介绍有关的其它信息和资源的来源以及支持 OIM 开发的机构。

主题 | 描述
OIM 的重要性 | 解释 Microsoft 将 OIM 与 Meta Data Services 集成在一起的原因。
OIM 资源和文档 | 介绍从哪里可以获得 OIM 文档和模型开发资源。
元数据合并 | 介绍元数据合并 (MDC)。

请参见

信息模型

信息模型基础知识

开放标准：OIM, COM, XML

Meta Data Services 中的 XML


OIM 的重要性

开放信息模型 (OIM) 是一个正式的元数据规范，它为定义标准元数据提供了公共基础。为了在其系列产品中实现最大限度的集成，Microsoft 定义元数据构造时使用了 OIM 标准。为了促进模型驱动应用程序开发的标准元数据的使用，Microsoft 随 Microsoft ® SQL Server™ 2000 Meta Data Services 软件开发工具包 (SDK)、SQL Server 2000 和 Microsoft Visual Studio® 一起分发 OIM。

OIM 定义得到第三方数据仓库、企业应用程序和知识管理工具厂商的广泛支持。通过生成 OIM 兼容的模型，将引进一定程度的标准化，这样使您得以从支持 OIM 的各种开发工具中选择所需工具，十分有利于未来的应用开发。

OIM 是以众多厂商和开发人员的集体经验为基础的公认规范。使用 OIM 的主要优点之一就是它是一个稳定的模型框架。建模工作至关重要。如果对建模没有经验或经验不足，OIM 可以提供一个总体构架，您可以在其中组织开发工作，轻松起步。

OIM 是可扩展的，而且正在发展中。如果现有的定义不能满足您的需要，您可以创建出完全满足要求的新的核心信息模型。同样，当工具和数据仓库厂商认识到对元数据定义的新需求时，他们可以扩展 OIM 以支持对需求的通用实现。

请参见

元数据合并

元数据基础知识

OIM 资源和文档

开放标准：OIM, COM, XML


OIM 资源和文档

该主题指出可帮助您开始了解开放信息模型 (OIM) 的重要资源和文档。

  • OIM 是正式规范，有关文献十分全面。OIM 文档由元数据合并 (MDC) 发布，并且可以从 MDC Web 站点下载。它还与Microsoft® SQL Server™ 2000 Meta Data Services 软件开发工具包 (SDK) 一起分发。有关 OIM 子句的更多信息，请访问 。

  • Meta Data Services SDK 中包括 OIM 的一个版本、建模文档和几个资源，以帮助您立即开始使用和部署 OIM。OIM 资源包括 Microsoft Visual C++® 和 Microsoft Visual Basic® 的定义文件、可扩展标记语言 (XML) 文件、接口定义语言 (IDL) 文件和 OIM 模型的安装脚本。有关 SDK 的更多信息，请参见 Meta Data Services SDK。

请参见

使用元数据开发应用程序

元数据合并


元数据合并

元数据合并 (MDC) 是由供应商和用户组成的独立组织，他们为所有利益方的共同利益自愿投入时间与资源，以争取在企业元数据标准化方面实现一致的目标。

MDC 推动了开放信息模型 (OIM) 的定义、实现和发展，并促进其支持机制的发展。新的 OIM 模型和扩展建议将会提供给各成员，以进行深入的研究。然后，经过一致同意的模型将会正式纳入 OIM 规范中，并通过 MDC Web 站点发布。

MDC 设有一个传播信息的站点和电子邮件联系地址，供其成员和潜在成员以电子方式进行交流。有关 MDC 的更多信息，请访问 MDC Web 站点，网址为：http://www.mdcinfo.com。


Meta Data Services 中的 XML

Microsoft® SQL Server™ 2000 Meta Data Services 支持信息模型的可扩展标记语言 (XML) 编码，以便以 XML 格式导入、导出和发布元数据。可以在两个知识库数据库之间、知识库数据库与应用程序之间或两个可以解释相同 XML 格式的应用程序之间交换元数据。

使用 Meta Data Services 可以对 XML 文档进行编码、交换和解码。此功能通过双向接口提供，因此，可通过代码管理这些操作。

Meta Data Services 所支持的 XML 格式由元数据合并 (MDC) 开放信息模型 (OIM) XML 编码格式定义。该格式定义以某种信息模型为基础，用于生成 XML 的规则。应用这些规则将使 Meta Data Services 生成与信息模型相对应的 XML。同样是这些规则还将使 Meta Data Services 能将 XML 文档转换回知识库实例数据。

此版本 Meta Data Services 所提供的 XML 编码取代作为以前版本软件组成部分的 XML 交换格式 (XIF)。有关向后兼容性的更多信息，请参见使用 XML 编码。有关如何使用 XML 编码的更多信息，请参见在 Meta Data Services 中使用 XML 的方法。

关于 MDC OIM XML 编码

OIM 和 MDC OIM XML 编码格式均由 MDC 定义。若要充分利用 XML 编码功能，元数据应与 OIM 的最近版本保持一致。MDC OIM XML 编码格式针对 OIM 的最近版本进行了优化。如果您的信息模型建立在与 XML 编码格式最匹配的 OIM 版本之上，则能够生成更加丰富和准确的 XML。

对任何信息模型，即使它并不基于 OIM，都可以生成有效而完善的 XML。如果信息模型不是基于 OIM，则仍由 MDC OIM XML 编码规则决定用哪些 XML 标记元素组织知识库数据。若要查看将要为信息模型创建的 XML 元素，可以使用 Meta Data Services 模型开发工具箱 (MDK) 生成 XML 文件类型定义 (DTD)。XML DTD 是 XML 文件可以采用的结构的定义。

请参见

元数据合并

Meta Data Services 中的 OIM

开放标准：OIM、COM、XML


在 Meta Data Services 中使用 XML 的方法

基于开放信息模型 (OIM) 元数据的可扩展标记语言 (XML) 为发布和共享元数据带来了新的可能。例如，可以生成一个应用程序来创建 XML，然后让知识库引擎对其进行管理。还可以与其它知识库以及使用元数据的其它工具交换元数据。如果两个应用程序能理解同一种 XML 格式，则可以在这两个应用程序之间直接交换元数据，而无须与知识库数据库或知识库引擎交互。

在 Microsoft® SQL Server™ 2000 Meta Data Services 中，使用 XML 编码可获得下列优点。请对比下图中的每个优点，了解知识库之间以及应用程序之间如何使用 XML。

  • 可以在两个知识库数据库之间导出和导入元数据。如图所示，可以通过 XML 文档，在知识库 A 与知识库 B 之间交换元数据。

  • 可将元数据从知识库数据库导出到一个工具或导出到运行时对象。在该图中，可以通过 XML 文档从知识库 A 为应用程序 A 提供数据。

  • 可以将元数据从工具或者从运行时对象导入到知识库数据库中。在该图中，可以通过 XML 文档将元数据从应用程序A 导入到知识库 A 中。

  • XML 编码还支持知识库技术范围之外的第四个优点。各种支持相同 OIM 模型的启用了 OIM 的工具可以直接交换元数据，而无须支持基础知识库数据库。虽然该图没有表明这一点，但举例来讲，可以使用 XML 文档在应用程序 A 和应用程序 B 之间交换数据。

下图表明从一个知识库到另一个知识库，然后再到其它应用程序时的 XML 流以及三者之间的关系。

请参见

开放标准：OIM、COM、XML

使用 XML 编码


从早期版本升级

Microsoft® SQL Server™ 2000 Meta Data Services 安装包含某些核心组件，每个组件都可能具有不同的版本或格式。单个配置包括下列内容：一个 DBMS、一个知识库引擎、一个知识库数据库、一个或多个信息模型以及一种可扩展标记语言 (XML) 交换格式。

  • 用来管理知识库数据库的 DBMS 可以是 Microsoft Jet 3.5 或更高版本、SQL Server 6.5 或 7.0，也可以是 SQL Server 2000。

  • 知识库引擎可以是 2.0 版或 3.0 版。

  • 知识库数据库可以是 2.0 版数据库，也可以是 3.0 版数据库（分别由知识库引擎 2.0 或 3.0 创建）。

  • 信息模型可以是 Microsoft 开放信息模型 (OIM) 1.0、Microsoft OIM 1.1、元数据合并 (MDC) OIM，也可以是用户定义的自定义信息模型。

  • XML 交换支持可以是 XML 交换格式 (XIF)，也可以是 MDC XML 编码格式。
建议的配置

建议将每台计算机上的知识库引擎升级到 3.0 版，并将知识库数据库升级到 3.0 格式。另外，如果将知识库数据库迁移到 SQL Server 2000，将获得更好的性能以及对更多知识库引擎功能的访问权限。

升级信息模型提供访问更多元数据类型的访问权限（例如，对统一建模语言 (UML) 1.3 元素的访问权限）。

是否应升级信息模型取决于工具和应用程序的需要。例如，如果工具和应用程序使用数据转换服务 (DTS) 或 Microsoft 可视组件管理器，则不必升级信息模型。SQL Server 2000 和可视组件管理器使用当前所执行的现有 OIM。

在升级信息模型前，应明确新的模型格式是否能够提供知识库应用程序所需的定义。如果新的模型格式不能带来明显的优点，应保留 3.0 版知识库引擎和数据库使用的现有信息模型。

有关升级任何 Meta Data Services 安装元素的更多信息，请参见保留知识库中的遗留组件。

请参见

信息模型

知识库引擎

知识库数据库

Meta Data Services 新特性


保留知识库中的遗留组件

虽然升级安装中的每个组件均有其优点可言，但实际上许多安装都至少保留一个并非最新版本的组件。

下表描述这些不同版本的组件如何组合运行，以及如何升级为另一版本。

主题 | 描述
升级知识库引擎 | 解释如何升级知识库引擎。
升级和迁移知识库数据库 | 解释如何升级知识库数据库，并将其迁移为另一种 DBMS 格式，以及如何使用带有升级知识库引擎的未升级数据库。
升级信息模型 | 解释如何使用可扩展标记语言 (XML) 升级信息模型。
将知识库引擎用于较早版本的数据库 | 描述一些功能针对所使用的不同种类的 DBMS 和操作系统的可用性。

请参见

信息模型

知识库引擎

知识库数据库

Meta Data Services 新特性


升级知识库引擎

知识库引擎 3.0 是知识库引擎的最新版本。它所提供的新特性将帮助您提高在 Microsoft® SQL Server™ 2000 Meta Data Services 知识库上充分定义信息模型和程序的能力。

一台计算机上只能安装知识库引擎的一个版本。可以升级到知识库引擎 3.0 版使用新特性，也可以继续使用已经安装的版本。如果还存在前一版本，则无法升级知识库数据库。使用元数据合并 (MDC) 开放信息模型 (OIM) 的最新版本，或使用可扩展标记语言 (XML) 交换功能的最新版本。

下表列出了可以和各知识库引擎版本一起使用的各个数据库版本、信息模型版本和 XML 交换格式版本。

引擎版本 | 数据库版本 | OIM 版本 | XML 版本
2.0 | 2.0 | OIM 1.0 | XML 交换格式 (XIF)
3.0 | 2.0 和 3.0 | OIM 1.0 和 MDC OIM | XIF 和 MDC XML

如何升级知识库引擎

SQL Server 2000 使用知识库引擎 3.0。因此，知识库引擎 3.0 的升级是在升级现有的 SQL Server 或创建新的 SQL Server 2000 安装时完成的。

若要充分利用新的知识库引擎功能，建议将知识库数据库升级为最新的格式。升级过程会添加支持新特性的表和列。有关更多信息，请参见升级和迁移知识库数据库。

请参见

知识库引擎建模增强功能

知识库引擎编程增强功能

保留知识库中的遗留组件

升级信息模型

从早期版本升级

将知识库引擎用于较早版本的数据库


升级和迁移知识库数据库

升级知识库数据库将用支持知识库引擎 3.0 功能的新表和新列更新知识库架构。如果已经升级到知识库引擎 3.0，则还应升级数据库以便与引擎保持一致。

升级数据库和迁移数据库是可以独立完成的可选操作。对于任何知识库数据库，或者执行全部下列操作，或者不要执行任何这些操作。

  • 将知识库架构升级到知识库引擎 3.0 格式。

    安装知识库引擎 3.0 后，可以选择是升级全部知识库数据库，还是只升级部分知识库数据库。但是，升级之后，使用 2.0 版的引擎将无法打开该数据库。升级与数据库迁移无关。举例来讲，可以升级在 Microsoft® SQL Server™ 6.5 版中创建的知识库数据库，而无须将 SQL Server 6.5 数据库升级为较高版本的 SQL Server 数据库。

  • 升级知识库数据库，以使其在较新的或不同的 DBMS 上运行。

    如果需要提高性能或使用只在 SQL Server 2000 上可用的视图生成功能，可以迁移数据库。

如何升级知识库数据库

在打开使用知识库引擎 3.0 的知识库数据库时，可以通过传递 REPOS_CONN_UPGRADE 标志升级数据库。有关 REPOS_CONN_UPGRADE 的更多信息，请参见 ConnectionFlags 枚举。

如果您正在升级 SQL Server 6.5 或 7.0 数据库，可以使用 REPOS_CONN_UPGRADE 标志或元数据浏览器。若要通过浏览器升级数据库，则必须编辑已注册知识库数据库的属性。有关更多信息，请参见在元数据浏览器中处理知识库数据库。

与知识库数据库 2.0 的向后兼容性

最初用来填充数据库的知识库引擎的版本决定了知识库数据库的版本。例如，如果使用知识库引擎 2.0 填充知识库数据库，则知识库数据库的版本就是 2.0。

知识库引擎 3.0与知识库数据库 2.0 的功能和界面具有向后兼容性。使用知识库数据库 2.0 时，通常只有知识库引擎 3.0 中的 2.0 版引擎功能才工作。但是，2.0 知识库数据库可以使用两个知识库引擎 3.0 功能，即 IReposProperty2 和 bit 属性处理。

许多新特性都是在新的界面中提供的。如果不小心在知识库数据库 2.0 中唤醒调用了知识库引擎 3.0 的功能，则 QueryInterface 将为提供该新特性的界面返回 E_NOTIMPL。

有关升级数据库功能限制的更多信息，请参见将知识库引擎用于较早版本的数据库。

如何迁移知识库数据库

可以将知识库数据库从一个 DBMS 版本迁移到另一个版本。这些功能在 DBMS 中提供。

若要从 Jet 数据库转换到 SQL Server 数据库，必须使用 SQL Server 和 Microsoft Access 所提供的功能将 Jet 数据库中的数据复制到 SQL Server 中。接下来，必须在"打开"命令上设置 REPOS_CONN_RECOMPUTE，为 SQL Server 数据库添加 SQL Server 2000 Meta Data Services 要求的定义。有关更多信息，请参见 ConnectionFlags 枚举。

请参见

连接 SQL Server 知识库数据库

生成视图

知识库 SQL 架构

保留知识库中的遗留组件

升级知识库引擎


升级信息模型

本主题提供关于使用不同版本信息模型和可扩展标记语言 (XML) 交换格式的信息。一般情况下，如果不需要新格式信息模型提供的其它元数据类型，则可以省去将现有的信息模型升级为（即替换为）同一信息模型的较新格式。

如果确实要选择用信息模型的较新格式替换较早格式，必须将对象实例数据复制到新的信息模型中。XML 交换格式提供了移动数据的方法。

开放信息模型格式

开放信息模型 (OIM) 是一种通用的信息模型。OIM 1.0 和元数据合并 (MDC) OIM 是两种可以互相替换的 OIM 建模格式。MDC OIM 是 OIM 1.0 的增强版本，其中包扩统一建模语言 (UML) 1.3 支持。OIM 1.0 和 MDC OIM 使用同一个知识库表，不能安装在同一个知识库数据库中。若要使用 MDC OIM，则必须将 OIM 1.0 元数据复制到新的信息模型中。

  • 知识库引擎 2.0 和知识库引擎 3.0 均支持 OIM 1.0。OIM 1.0 版用 Microsoft® SQL Server ™进行分发。

  • 知识库引擎 3.0 支持 MDC OIM，MDC OIM 是两种格式中较新的一种。MDC OIM 版用 SQL Server 2000 Meta Data Services 软件开发工具包 (SDK) 进行分发。

使用 XML 交换格式可以在这两种模型格式之间交换和迁移元数据。下一节将详细讨论向后兼容性。有关 XML 交换格式 (XIF) 和向后兼容性的更多信息，请参见使用 XML 编码。

XML 交换格式

XML 交换格式定义与其它工具和知识库交换 XML 元数据时可以采用的方式。可以选择两种可以相互替代的 XML 交换格式。

  • 知识库引擎 2.0 和知识库引擎 3.0 均支持 XIF 格式。该格式以实体-普通的格式表达元数据。

  • 知识库引擎 3.0 支持 MDC XML 编码格式，它是 MDC OIM 的本机格式。它以特性-普通的格式表达元数据。MDC XML 编码符合万维网联盟 (W3C) 发布的 XML 规范。

XIF 和 MDC XML 编码是可以相互替代的两种编码机制。它们不兼容。

说明 实际上，由于知识库引擎 2.0 不支持 MDC OIM 和 MDC XML 编码，除非运行知识库引擎 3.0，否则无法将 OIM 1.0 与 MDC XML 编码配对使用。MDC OIM 和 XIF 不兼容。在任何环境中都不能将 MDC OIM 和 XIF 配对使用。

下表列出了可以和各知识库引擎版本一起使用的 OIM 和 XML 交换格式。

引擎版本 | OIM 版本 | XML 版本
2.0 | OIM 1.0 | XIF
3.0 | OIM 1.0 MDC OIM | XIF 或 MDC XML 编码 仅 MDC XML 编码

元数据交换组合

下表为每种信息模型源-目标组合以及所有知识库引擎版本推荐了一种 XML 交换格式。

引擎版本 | 源模型版本 | 目标模型版本 | 建议的 XML 交换格式
2.0 | OIM 1.0 | OIM 1.0 | XIF
3.0 | OIM 1.0 | OIM 1.0 | MDC XML 编码
3.0 | OIM 1.0 | MDC OIM | MDC XML 编码
3.0 | MDC OIM | MDC OIM | MDC XML 编码
3.0 | MDC OIM | OIM 1.0 | MDC XML 编码

请参见

信息模型

Meta Data Services 中的 OIM

保留知识库中的遗留组件

对早期版本进行升级

升级知识库引擎

Meta Data Services 中的 XML


将知识库引擎功能用于较早版本的数据库

将知识库数据库升级到知识库数据库 3.0 将使数据库可以使用知识库引擎 3.0 的各种功能。根据管理数据库所使用的 DBMS 的不同，可能会遇到一些意外情况。较早版本的 DBMS 产品不支持某些较新的功能。本主题将提供有关这些意外情况的更多信息。

DBMS 版本意外情况

大多数知识库引擎功能在所有支持的 DBMS 产品和版本中均能使用。

下表列出了将知识库数据库升级到知识库引擎 3.0 时，哪些功能对特定的 DBMS 版本不可用。

数据库类型 | 功能
Microsoft® SQL Server™ 6.5 | 无法将 bit 属性添加到现有表内。 不支持视图生成和基于视图的查询。
SQL Server 7.0 | 不支持查看生成和基于视图的查询。
SQL Server 2000 | 支持所有功能。
Microsoft Jet 3.5 及较新版本 | 无法将位属性添加到现有表内。 不支持视图生成和基于视图的查询。 不支持某些性能优化技术。

说明 将 Microsoft SQL Server数据库转换为较新版本的 SQL Server 数据库不会自动生成视图。生成视图和数据库转换是两个独立的任务。

关于操作系统

可以在下列 Microsoft Windows® 操作系统中运行 SQL Server 2000 Meta Data Services：Windows 98、Windows NT® 4.0 和 Windows 2000。当此 Meta Data Services 与 Microsoft 分布式事务处理协调器 (MS DTC) 集成后，则只能在运行 Windows 2000 系统的计算机上运行。有关更多信息，请参见与分布式事务处理协调器的集成。

请参见

生成视图

IReposProperty2 接口

优化知识库性能

知识库数据库

保留知识库中的遗留组件

升级和迁移知识库数据库

升级知识库引擎


使用元数据浏览器

Microsoft® SQL Server™ 2000 Meta Data Services 支持通过元数据浏览器浏览已注册的知识库数据库。可以通过以下两种方式使用元数据浏览器：

  • 使用 SQL Server 2000 中的 SQL Server 企业管理器

  • 将其作为一个独立的管理单元添加到 Microsoft 管理控制台 (MMC)，然后单独从 SQL Server 企业管理器运行

以什么方式使用浏览器将决定工作时的功能集。

在 SQL Server 企业管理器中使用元数据浏览器

若要从 SQL Server 企业管理器内运行元数据浏览器，请单击"Meta Data Services"。

在 SQL Server 中，Meta Data Services 为 SQL Server 元数据，包括与特定数据转换服务 (DTS) 包相关联的元数据和所有联机分析处理 (OLAP) 元数据提供存储服务。在 SQL Server msdb 系统数据库中包含知识库表，以支持管理与存储 SQL Server 元数据。

在 SQL Server 企业管理器中，元数据浏览器使您得以查看创建并存储在 msdb 中的元数据。可以在 Contents 文件夹中查看这些数据。

当您在 SQL Server 企业管理器中使用元数据浏览器时，将以最终用户模式操作。最终用户模式提供对知识库数据库的只读访问。可以查看知识库中存储的关于元数据的任何信息。

SQL Server 企业管理器有意地限制元数据浏览器的功能，以便保护所使用的元数据。修改或删除本机元数据可能会损坏 SQL Server 安装。因此，在该模式下不支持对元数据有危险的操作。

单独运行元数据浏览器

Meta Data Services 可作为一个独立的 MMC 管理单元，单独从 SQL Server 企业管理器运行。可以将 Meta Data Services 添加到控制台，以便使用更为广泛的功能处理其它 SQL Server 知识库数据库。

在 MMC 中添加了 Meta Data Services 之后，可以运行元数据浏览器注册准备处理的知识库数据库。可处理的数据库包括：SQL Server 6.5 版、7.0 版或 SQL Server 2000 中创建的任何 SQL Server 知识库数据库。但是，必须使用随 SQL Server 2000 分发的 3.0 版的知识库引擎。

若要以独立模式运行浏览器，请单击"Meta Data Services"。

请参见

在元数据浏览器中查看元数据

在元数据浏览器中处理内容

在元数据浏览器中处理信息模型

在元数据浏览器中处理知识库数据库

元数据基础知识

知识库数据库

知识库数据库中的存储策略


在元数据浏览器中查看元数据

元数据浏览器以不同的方式显示内容，具体取决于浏览器是从 SQL Server 企业管理器运行还是以独立模式运行。另外，通过选择显示选项可扩大查看的元数据的类型。图标用于以可视方式将浏览器中显示的各类元数据标识出来。

在 SQL Server 企业管理器中查看元数据

SQL Server 企业管理器中的元数据放在 Contents 文件夹中。在 SQL Server 企业管理器中，知识库表在 msdb 数据库中定义。在 SQL Server 企业管理器中，msdb 是唯一在元数据浏览器中提供可视内容的数据库。

最初，msdb 数据库不包含任何可供查看的元数据。但是，在向知识库中添加内容后，就可以通过展开 Meta Data Services 中的 Contents 文件夹进行查看。

向知识库中添加内容发生在当您选择保存到 Microsoft® SQL Server™ 2000 Meta Data Services（例如，保存数据转换服务 (DTS) 包）时。

在独立模式下查看元数据

当元数据浏览器作为一个单独的、独立 Microsoft 管理控制台 (MMC) 管理单元运行时，可以使用多个知识库数据库，还可以查看内容并执行其它方式无法执行的任务。

元数据浏览器通过知识库数据库组织内容。根据为数据库选择的浏览模式，可以进一步将内容组织到 Contents 和 Information Models 文件夹中。而在每个文件夹中，对象与集合又按层次排列以便于浏览。

  • Contents 文件夹显示存储在知识库数据库中的元数据。元数据随数据库的不同而不同。例如，在一些知识库数据库中，元数据可以是应用程序对象、数据库对象或者其它一些软件制品。

  • Information Models 文件夹显示安装在知识库数据库中的信息模型及其包含的类和关系定义。信息模型只能在"管理员"浏览模式下查看。

请参见

元数据浏览器中使用的图标

在元数据浏览器中选择浏览模式

在元数据浏览器中设置显示选项

使用元数据浏览器

在元数据浏览器中处理内容

在元数据浏览器中处理信息模型


元数据浏览器中使用的图标

下表显示并描述元数据浏览器中使用的图标。

图标 | 描述
 | 信息模型图标
 | 类图标
 | 连接对象图标
 | 接口图标
 | 关系图标
 | DTS 包图标
 | 类属对象图标
 | 数据源图标
 | OLE DB 提供程序图标
 | 类关系图图标
 | 特性图标
 | 方法图标
 | 标记值图标
 | 类属集合图标

请参见

在元数据浏览器中设置显示选项

使用元数据浏览器


在元数据浏览器中处理知识库数据库

作为独立的管理单元运行元数据浏览器时，可以注册任何包含知识库表的 Microsoft® SQL Server™ 数据库。注册的知识库数据库列在 SQL Server 2000 Meta Data Services 文件夹下。所有注册的知识库数据库按相同级别进行分组。

升级数据库

在注册数据库以后，可以选择将数据库升级为最新格式。升级会将最新的知识库 SQL 架构应用于使用旧版本知识库引擎格式化的知识库数据库。尽管可以注册用知识库引擎的较早版本创建的知识库数据库，但数据库升级时会采用最新的知识库 SQL 架构表（它们支持新的知识库引擎功能）。升级过程将添加新表，并把来自现有表的数据复制到新表格式中。而您创建的自定义表将保持不变。

若要升级 SQL Server 知识库数据库，请右击已注册的数据库并单击"属性"命令。这样将打开"知识库属性"对话框。在此对话框中提供所需的信息，完成选项的选择。

其它数据库相关任务

下表包含到相关主题的链接，这些主题可帮助您了解相关任务的更多信息。有关知识库数据库的更多信息，请参见知识库数据库。

主题 | 描述
在元数据浏览器中选择浏览模式 | 描述如何选择"最终用户"浏览模式、"权限高的用户"浏览模式或"管理员"浏览模式。使用知识库数据库时，可用的操作作用域取决于为数据库选择的浏览模式。
在元数据浏览器中设置显示选项 | 描述如何让可选项显示在浏览器中。
在元数据浏览器中注册知识库数据库 | 解释如何将新的知识库数据库添加到已注册的数据库列表中。
在元数据浏览器中编辑注册属性 | 解释如何编辑注册属性。
在元数据浏览器中删除注册属性 | 解释如何删除注册信息，进而撤消注册数据库。
导出到 XML | 解释如何将知识库数据复制到 XML 文件。

请参见

知识库属性对话框

知识库 SQL 架构

从早期版本升级

使用元数据浏览器

在元数据浏览器中处理内容

在元数据浏览器中处理信息模型


在元数据浏览器中注册知识库数据库

当元数据浏览器作为独立的管理单元运行时，可以注册知识库数据库。只能注册在 Microsoft® SQL Server™ 6.5 或 7.0、SQL Server 2000 或 SQL Server 运行时引擎中创建的知识库数据库。注册一个知识库数据库使元数据浏览器的用户可以使用它。当不再想让此数据库可用时，可以删除其注册信息，撤消注册。

注册知识库数据库时，必须提供类似于注册 SQL Server 2000 数据库的连接信息。

只有一个知识库数据库已经存在时，才能对其进行注册。SQL Server 2000 Meta Data Services 不创建知识库数据库。

注册数据库后，可以升级数据库以使用知识库引擎的最新功能。有关更多信息，请参见在元数据浏览器中处理知识库数据库。

若要注册知识库数据库，请右击"Meta Data Services"，然后单击"注册数据库"命令。"数据库注册属性"对话框随即打开。在此对话框中提供所需的信息，完成数据库注册。

请参见

在元数据浏览器中删除注册属性

在元数据浏览器中编辑注册属性

数据库注册属性对话框

在元数据浏览器中选择浏览模式


在元数据浏览器中选择浏览模式

当元数据浏览器作为独立的管理单元运行时，可以在知识库数据库级别上设置浏览模式，以确定可用的操作作用域。浏览模式包括"最终用户"、"权限高的用户"和"管理员"。可以为每个数据库选择不同的浏览模式。

每一种浏览模式的操作作用域包括：

  • 在任何浏览模式下均可创建、编辑和删除注册信息。

  • 查看 Contents 文件夹和设置显示模式选项可以在所有浏览模式下执行。

  • 创建、编辑及删除对象和对象属性可以在"权限高的用户"和"管理员"浏览模式下执行。

  • 查看 Information Models 文件夹可以在"管理员"浏览模式下执行。此外，只有管理员可以查看知识库标识符。

浏览模式只适用于知识库数据库，对 Microsoft® SQL Server™ 2000 用户模式、Microsoft Windows NT® 用户模式或 Microsoft Windows® 2000 用户模式无效。换句话说，知识库管理员在 SQL Server 中并没有管理员权限。

如果从 SQL Server 企业管理器中运行元数据浏览器，将不能更改浏览模式。在 SQL Server 企业管理器中，元数据浏览器只能以"最终用户"模式运行。

若要设置浏览模式，必须在数据注册期间进行选择。所选的浏览模式是注册信息的一部分。若要选择不同的浏览模式，必须编辑注册属性。有关各用户模式所支持的操作作用域的更多信息，请参见数据库注册属性对话框。

请参见

在元数据浏览器中编辑注册属性

在元数据浏览器中注册知识库数据库

在元数据浏览器中处理内容

在元数据浏览器中处理信息模型


在元数据浏览器中设置显示选项

对于在元数据浏览器中查看的元数据，可以通过设置显示选项，选择显示或隐藏集合和继承的属性信息。如果显示集合，则可以设置其它选项以显示或隐藏空集合，并反转关系。

下图分别显示集合图标和关系图标。

显示选项是上下文相关的。所设置的选项将影响当前选定内容以及由当前选定内容派生的所有子节点。可以为已选的全部或部分数据库设置显示选项。在重置选项之前，您设置的显示选项将一直有效。而且显示选项不依赖于浏览模式选择。

若要设置显示选项，请先右击已注册的知识库数据库或数据库中的对象，然后单击"显示选项"命令。"Meta Data Services 浏览器显示选项"对话框随即打开。在此对话框中提供所需的信息，完成选项的选择。

请参见

Meta Data Services 浏览器显示选项对话框


在元数据浏览器中编辑注册属性

当元数据浏览器作为独立的管理单元运行时，可以编辑已注册知识库数据库的属性，以更改连接信息、选择其它数据库或更改浏览模式。

若要编辑数据库注册，请先右击 Microsoft® SQL Server™ 2000 Meta Data Services 中的知识库数据库，然后单击"编辑数据库注册"命令。"数据库注册属性"对话框随即打开。有关知识库数据库属性的更多信息，请参见数据库注册属性对话框。

请参见

在元数据浏览器中删除注册属性

在元数据浏览器中注册知识库数据库


在元数据浏览器中删除注册属性

当元数据浏览器作为独立的管理单元运行时，可以通过删除其注册信息从 Meta Data Services 文件夹下删除知识库数据库。若要删除知识库数据库，请使用 Microsoft® SQL Server™ 2000 的数据库删除功能。

若要删除数据库注册，请先右击 SQL Server 2000 Meta Data Services 中的知识库数据库，然后单击"删除"命令。Meta Data Services 将提示您再次确认此删除。

请参见

在元数据浏览器中编辑注册属性

在元数据浏览器中注册知识库数据库


导出到 XML

存储于知识库中的任何类型的元数据均可导出到 XML 文件，包括 Contents 文件夹下的实例数据和"Information Models"文件夹下的信息模型元素。

XML 的格式由 MDC OIM XML 编码定义。有关更多信息，请参见使用 XML 编码。

若要导出到 XML 文件，请右击一个元素，然后单击"导出到 XML"。

导出作用域取决于选定元素是否与其它元素相关。如果元素之间通过包含或聚合关系相关，则 XML 导出文件中包含相关数据。在 Contents 文件夹中，父元素与子元素之间是包含关系，因此，导出文件包括多个 XML 标记元素。与此相反，"Information Models"文件夹中元素之间的关系为典型的非包含关系。因此，"Information Models"文件夹中元素的 XML 导出文件只包含选定节点的 XML 数据。

请参见

在元数据浏览器中处理内容

在元数据浏览器中处理信息模型


在元数据浏览器中处理内容

使用元数据浏览器可以找出有关应用程序中已实现的对象、已为应用程序设计的对象或应用程序已定义的对象的事实。如果您是应用程序开发人员，则在开发新应用程序时浏览知识库内容有助于找出最佳的对象。还可以通过浏览内容查看有关现有数据转换服务 (DTS) 包或应用程序组件的详细信息。

可查看的内容类型因您运行浏览器的方式和选择的选项而异。有关更多信息，请参见使用元数据浏览器和在元数据浏览器中查看元数据。

在 Contents 文件夹中

Contents 文件夹显示知识库数据库中的对象实例数据。可以查看对象、对象属性、集合和关系。浏览模式选择将决定您与 Contents 文件夹进行交互的方式。显示选项的选择将确定显示出的内容。除顺序关系集合外，对象显示的顺序都没有定义。如果某个数据库没有显示 Contents 文件夹，那它可能就不是知识库数据库。

说明 浏览器不跟踪工作区和知识库对象版本数据。对象属性不显示对象所属的工作区。但通过属性信息可以找出某些版本信息。在识别特定对象版本的部署方式时，版本标签十分有用。

对象

对象可以包含集合与其它对象。如果选择不显示集合，可以更轻松地查看对象关系。在浏览器中，对象关系将按层次显示。展开一个对象就可以看到与其相关的对象。例如，展开汽车 (Car) 对象即可显示附加对象引擎 (Engine)、车身 (Body) 和轮胎 (Tires)。而展开引擎 (Engine) 即可显示附加对象零件 (Parts)。

下图显示类属对象图标。

查看每个对象的属性能获得很多有关此对象的信息。属性是按字母顺序排列的。有关属性的更多信息，请参见在元数据浏览器中处理对象属性。

如果您是知识库管理员，就可以删除、重命名或移去集合中的对象。有关更多信息，请参见删除、重命名和移去集合中的对象。

集合

集合既可以包含对象，也可以是空的。当显示集合时，可以看到对象分组的方式。例如，因为引擎 (Engine)、车身 (Body) 和 轮胎 (Tires) 是汽车 (Car) 的元素，所以通过显示集合信息就可以了解引擎 (Engine)、车身 (Body) 和 轮胎 (Tires) 是汽车 (Car) 下面的元素 (Element) 集合的成员。

下图显示类属集合的图标。

请参见

在元数据浏览器中选择浏览模式

在元数据浏览器中设置显示选项


在元数据浏览器中处理对象属性

可以显示对象属性以查看单个对象的特征。

若要查看属性，请先右击一个对象，然后单击"属性"命令。"知识库对象属性"对话框随即打开。有关此对话框中各选项的更多信息，请参见知识库对象属性对话框。

除了查看属性外，当元数据浏览器作为独立的管理单元运行时，还可以编辑 Contents 文件夹中对象的属性值。但必须用知识库管理员或权限高的用户模式才能编辑属性值。编辑属性值操作只能在 Contents 文件夹的对象上执行。Information Models 文件夹总是只读的。

若要编辑某个属性值，应选择 Contents 文件夹中某个对象的某个属性，然后在 Value 列中输入不同的值。有关如何成为知识库管理员或权限高的用户的更多信息，请参见在元数据浏览器中选择浏览模式。

了解属性信息

对象属性将显示"类名"和揭示有关特定对象详细信息的属性集。每个对象都支持一个属性集，对象与对象的属性集不同，文件夹与文件夹的属性集也不同。

在 Contents 文件夹中，"类名"标识用于创建对象的信息模型类。如果理解信息模型，那么了解类将有助于理解关于对象的抽象数据的含义（这些数据可能会有用）。属性集来源于抽象类所支持的属性，它定义对象特征。而属性值是关于对象的实例数据。属性集来源于抽象类支持的属性。

在 Information Models 文件夹中，"类名"标识用于生成对象类的知识库 API 定义。知识库 API 定义可以是 InterfaceDef、ClassDef 或其它定义。属性集定义对象类特征。关于对象类的类型信息通过属性值进行表达。属性集来源于知识库 API 定义所支持的属性。

可以在 SQL Server 联机丛书中搜索有关知识库 API 定义和属性的更多信息。例如，可以搜索 InterfaceDef。还可以搜索特定属性，例如 CreateByUser、Name 和 VersionLabel。

特殊属性

自定义对象支持由模型设计人员所确定的属性集。要了解有关自定义对象属性的更多信息，请与模型的设计人员联系。

枚举对象与属性定义相关联。枚举对象的目的是为给定的属性提供预定义值列表。在浏览器中，当查看一个枚举属性时，可以从预定义列表中选择一个枚举值。此列表出现在在属性的"值"列中。

虚拟属性是通常没有持续数据的属性的特殊分类。但是，如果聚合对象存储在知识库数据库中，则虚拟属性将出现在元数据浏览器中。

请参见

创建对象

删除、重命名和移去集合中的对象

知识库 API 参考

在元数据浏览器中处理内容

在元数据浏览器中处理信息模型


创建对象

可以用创建的新对象实例数据填充知识库。创建的对象必须符合安装的信息模型的定义。例如，若要创建新的表对象，基础信息模型必须支持表对象定义。

若要创建对象，请右击新对象将要驻留的父对象，然后单击"创建对象"命令。

若要创建对象，必须满足以下条件。

准则 | 条件
环境 | 独立的管理单元。不能从企业管理器内创建对象。有关独立模式的更多信息，请参见使用元数据浏览器。
浏览器模式 | 管理员或权限高的用户。有关更多信息，请参见在元数据浏览器中选择浏览模式。
元数据的类型 | Contents 文件夹元数据。不能在 Information Models 文件夹中创建对象。有关 Contents 文件夹的更多信息，请参见在元数据浏览器中查看元数据。

创建对象时需要选择集合、类并定义对象名称。您的选择将决定对象所呈现的特性。

  • 可以选择的集合属于父元素。例如，如果父对象是"表"对象，则可以从属于"表"对象的集合中选择（在本例中是"列"集合）。不能创建集合，而只能在通过信息模型方式提供给父对象的集合中进行选择。

  • 是否需要选择类取决于集合。如果一个集合支持多个类，则必须选择要使用的类。

  • 名称是指定义的对象名。定义的名称长度必须少于 255 个字符。名称中可以包含空格。

创建对象后，可以编辑其属性。有关更多信息，请参见在元数据浏览器中处理对象属性。

请参见

删除、重命名和移去集合中的对象

在元数据浏览器中处理内容


删除、重命名和移去集合中的对象

当元数据浏览器作为独立的管理单元运行时，可以从集合中删除、重命名或移去对象实例数据。必须是知识库管理员才能执行这些操作。只能对显示在 Contents 文件夹中的对象实例数据执行这些操作。

在删除、重命名或移去集合中的对象时，所做的更改会立即保存到知识库数据库中。除重命名操作外，不能用元数据浏览器反转这些更改。

若要执行这些操作，请先右击 Contents 文件夹中的对象，然后单击"删除"、"重命名"或"移去"命令。

  • 单击"删除"命令将把对象实例数据从知识库数据库中永久地删除掉。

  • 单击"重命名"命令将激活一个适当的编辑器，以便可以用新名称覆盖现有名称。重命名集合中的对象时，如果集合要求使用唯一名称，则 Meta Data Services 不允许集合中有重复的名称。而在其它情况下，Meta Data Services 支持重复的名称。

  • 单击"移去"命令将删除使对象与集合相关联的引用信息。但不会删除对象实例数据。

有关如何成为知识库管理员的更多信息，请参见在元数据浏览器中选择浏览模式。

请参见

创建对象

在元数据浏览器中处理内容

在元数据浏览器中处理对象属性


在元数据浏览器中处理信息模型

如果您是应用程序开发人员或模型设计人员，可以将元数据浏览器作为可视工具使用，用于跟踪信息模型的清单。还可以找出构成信息模型的有关对象、集合和属性的事实。

Information Models 文件夹将显示安装在知识库数据库中的信息模型。Information Models 文件夹只对知识库管理员可见，并且仅在浏览器作为独立的管理单元运行时才可以使用。除顺序的关系集合之外，并不规定信息模型对象的出现顺序。

信息模型是在 Contents 文件夹中看到的项目的设计图。信息模型在其本机格式中一般是相关对象的网络。而在元数据浏览器中，信息模型是按层次进行描述的。在展开一个对象时，显示的子节点是与已展开的对象相关的对象。以层次格式描述网络结构时意味着某些对象将出现多次。例如，在关系中，每个对象将作为另一个对象的子节点出现。

可以使用元数据浏览器或 Microsoft® SQL Server™ 2000 Meta Data Services 软件开发工具包 (SDK) 附带的单独的安装工具安装随时可用的信息模型（存储为 .rdm 文件）。信息模型的安装过程将把信息从模型中析取出来，并将其置于知识库数据库的表中。至于此后的信息模型使用方式，将会随工具、用户和环境的变化而大不相同。

有关如何成为知识库管理员的更多信息，请参见在元数据浏览器中选择浏览模式。

在信息模型文件夹内

在元数据浏览器中，可以展开一个已安装的信息模型查看它所包含的对象和集合。但不能创建、修改或删除信息模型、信息模型的对象或属性。必须使用模型设计工具才能执行这些任务。

可以展开一个信息模型以进行以下操作。

  • 查看对象、集合、接口和成员。

  • 查看每个接口的继承树。

  • 查看只读对象属性以获得对象定义方式信息。

请参见

信息模型

信息模型基础知识

在元数据浏览器中安装信息模型

在元数据浏览器中处理内容

在元数据浏览器中处理对象属性


在元数据浏览器中安装信息模型

当元数据浏览器作为独立的管理单元运行时，就可以将随时可用的信息模型安装到知识库数据库中，供应用程序、应用程序开发人员和模型设计人员使用。要安装信息模型，您必须是知识库管理员。有关如何成为知识库管理员的更多信息，请参见在元数据浏览器中选择浏览模式。

信息模型安装完毕后，它将保留在知识库数据库中。Microsoft® SQL Server™ 2000 Meta Data Services 当前不支持删除信息模型。

若要安装信息模型，请先右击希望模型驻留在的数据库的 Information Models 文件夹，然后单击"安装信息模型"命令。"安装信息模型"对话框随即打开，然后可以选择要安装的知识库可分发模型 (RDM) 文件。RDM 文件是已编译过的信息模型文件，RDM 文件是由 Meta Data Services 软件开发工具包 (SDK) 中的模型设计工具生成的。

说明 也可以不使用元数据浏览器，而通过编程或命令行安装信息模型。有关此可选方法的更多信息，请参见安装信息模型。

请参见

信息模型基础知识

信息模型

Meta Data Services SDK


元数据浏览器用户界面参考

元数据浏览器包含很多对话框。其中有一些对话框支持对上下文相关的帮助主题进行直接访问。

若要打开上下文相关的帮助主题，可在对话框打开时单击"帮助"按钮或按 F1 键。另外，还可从下面的列表中选择主题。

对话框 | 描述
Meta Data Services 浏览器显示选项对话框 | 包含可进行设置以增加可查看内容量的选项。
知识库对象属性对话框 | 显示信息模型、对象或集合的属性。
数据库注册属性对话框 | 连接知识库数据库以便可在浏览器中查看元数据。还包括选择浏览模式的选项。
知识库属性对话框 | 显示服务器名称、数据库名称和知识库数据库版本。还包括升级数据库格式的选项。
创建新对象对话框 | 用新对象实例数据填充信息模型。

请参见

使用元数据浏览器


Meta Data Services 浏览器显示选项对话框

使用此对话框可以在元数据浏览器中设置筛选集合和属性数据的显示选项。

若要打开此对话框，请右击"Meta Data Services"文件夹中的任意项目，然后单击"浏览选项"。您选择的显示选项将应用到当前项目和它的所有分支项目中。

集合选项

这些选项使您得以查看集合，并可选择空集合和反转关系是否可见。

显示集合

指定是否显示对象和关系集合。下面就是表示集合的图标。

选择此选项将启用以下各附加选项。

显示空集合

指定是否显示空集合。空集合不包括任何成员。

显示反转关系

指定是否显示反转关系。反转关系将从相反的角度显示一个关系，其中可能包含在其它情况下没有的数据。例如，汽车 (car) 包含引擎 (engine) 这种一对一关系的反转关系是引擎 (engine) 包含于汽车 (car)。反转关系代表一种数据定义，它将显示一种类型的引擎 (engine) 是否由多种类型的汽车 (car) 使用。

属性选项

这些选项使您得以显示或隐藏"内容"和"信息模型"文件夹中对象的继承属性值。

显示所有类属性

指定是否显示继承属性。继承属性是基接口上一个属性的别名。显示继承属性时，既可看到别名，也可看到派生出此别名的基本属性。

假设 Person 对象具有名为 Phone Number 的属性。通过使用别名，可以在 Phone Number 上建立另一个对象的新属性。例如，Customer 对象可以从 Phone Number 派生出一个名为 Customer ID 的属性。选择"显示所有类属性"选项时，继承属性 (Customer ID) 和基本属性 (Phone Number) 表现为兄弟属性。

请参见

知识库集合

知识库关系对象

在元数据浏览器中设置显示选项

在元数据浏览器中处理对象属性


知识库对象属性对话框

使用此对话框可以查看知识库对象的属性。当前对象的名称确定此对话框的名称。例如，如果对象名称为 TblCustomer，则对话框的名称为"TblCustomer 属性"。

如果将元数据浏览器作为独立的管理单元，并以"权限高的用户"浏览模式或"管理员"浏览模式运行，则可以编辑属性值。

若要显示此对话框，请右击"内容"文件夹或"信息模型"文件夹中的对象，然后单击"属性"命令。

选项

名称

显示对象或信息模型的名称。

类名

显示对象所基于的类的名称。类名是提供关于对象的元数据的知识库 API 类。

列

名称
显示属性的名称。
数据类型
显示属性的数据类型。
值
显示用户定义的属性值。根据浏览器模式，可以单击该值以唤醒调用用于修改值的适当的编辑器。

请参见

在元数据浏览器中编辑注册属性

知识库 API 参考

在元数据浏览器中选择浏览模式

在元数据浏览器中处理对象属性


数据库注册属性对话框

使用此对话框可以用元数据浏览器注册新的知识库数据库。只能通过它注册知识库数据库。因为不包含标准知识库 SQL 表的数据库在元数据浏览器中没有可查看的内容。

如果将元数据浏览器作为独立管理单元运行时，则显示此对话框。在 SQL Server 企业管理器中不显示此对话框。有关更多信息，请参见使用元数据浏览器。

若要显示此对话框，请右击"Meta Data Services"文件夹或现有的已注册知识库数据库，然后单击"注册数据库"。也可以通过单击"编辑数据库注册"打开此对话框。

选项

服务器

运行 Microsoft® SQL Server™ 2000 的已注册计算机的名称。

连接

提供与 SQL Server 数据库注册相同的两种身份验证方式。有关更多信息，请在 SQL Server 联机丛书中搜索"已注册 SQL Server 属性"。

数据库

要注册的知识库数据库的名称。确保选择具有知识库 SQL 表的数据库。这些表将为"内容"和"信息模型"文件夹提供信息。

浏览模式

指定用于浏览内容和信息模型的浏览模式。默认选择为"最终用户"。"权限高的用户"和"管理员"模式将提供更多的浏览能力。

最终用户

这是默认的用户模式选项。最终用户模式支持对"内容"文件夹的只读访问。

权限高的用户
"权限高的用户"模式支持对"内容"文件夹的读/写访问。权限高的用户可以在"内容"文件夹中显示和编辑对象属性。
管理员
管理员模式支持对"内容"文件夹的读写访问，支持对"信息模型"文件夹的只读访问，还支持对知识库数据库注册的创建、编辑和删除。知识库管理员还可以安装信息模型，并在"知识库对象属性"对话框中查看对象标识符属性（如 ObjID 和 InternalID）。

在新数据库注册期间可以使用浏览模式选择。所选的浏览模式决定了与数据库交互的程度。若要更改浏览模式，必须编辑注册属性。

所选的浏览模式适用于您自己的浏览模式。无法设置或预先确定其它用户的浏览模式。

请参见

在元数据浏览器中编辑注册属性

在元数据浏览器中注册知识库数据库

在元数据浏览器中选择浏览模式


知识库属性对话框

使用此对话框可以指定升级选项，并可查看有关知识库数据库的版本信息。当前知识库数据库的名称决定对话框的名称。例如，如果知识库数据库的名称为 DevTools，则对话框的名称为"DevTools 属性"。如果在企业管理器内部打开此对话框，则对话框的名称为"Meta Data Services 属性"。

若要打开此对话框，请右击知识库数据库并单击"属性"命令。

选项

服务器

已安装的 Microsoft® SQL Server™ 2000 实例的名称。

数据库

知识库数据库的名称。

知识库数据库版本

如果可用则显示版本号和带句点的发行编号。版本信息标识使用哪个版本的知识库引擎创建数据库。创建数据库的结果因所使用的 DBMS 而异。对于 SQL Server 数据库，创建数据库将使 SQL Server 在提供的空数据库内创建知识库 SQL 表。有关更多信息，请参见连接到 SQL Server 知识库数据库。

升级

更新知识库数据库中的知识库 SQL 架构表，使您得以使用新的知识库引擎功能。知识库数据库升级后，将无法再用以前版本的知识库引擎处理它。
只有当数据库版本低于当前知识库引擎版本时才能使用此按钮。

请参见

在元数据浏览器中注册知识库数据库

知识库 SQL 架构

对早期版本进行升级


创建新对象对话框

使用此对话框可以创建新的知识库对象并将它添加到指定的集合。可以在"内容"文件夹中添加知识库对象实例数据。无法在"信息模型"文件夹中为项目创建新的对象。

如果将元数据浏览器作为独立管理单元，并以"权限高的用户"浏览模式或"管理员"浏览模式运行时，则显示此对话框。在 SQL Server 企业管理器中使用时不显示此对话框。有关更多信息，请参见使用元数据浏览器。

若要打开此对话框，请右击"内容"文件夹中的项目，然后单击"新建对象"命令。所选的项目决定了可以创建的对象类型和它的位置。

选项

对象添加到的集合

列出按对象定义的集合。总是将对象添加到集合中。如果集合可见（即启用"显示集合"选项），则系统将为您选择集合。如果隐藏集合，则必须选择集合以放置对象。

对象类型

列出集合允许的对象类型。仅有效的对象类型可以用于选择。

对象名

对象的 objName。将对象添加到命名关系时需要此名称。对象名称应反映出它的上下文。例如，接口成员名称应包括包、接口和成员名称。由多个部分组成的名称必须用冒号分隔（例如，BaseInterfaces:IUMLPackage:Visibility）。

请参见

创建对象

在元数据浏览器中处理对象属性