Meta Data Services
Repository Engine Modeling Enhancements
Microsoft® SQL Server™ 2000 Meta Data Services introduces the following new repository engine features in version 3.0 of the engine. These features extend your ability to create an information model that can take advantage of new features added to this version of the repository engine.
Scripting Support
Scripting support provides the ability to validate properties and implement methods through Microsoft ActiveX® scripts. Model creators can assign scripts to methods that are defined in an information model. With scripting support, you no longer need to use aggregation to validate properties and implement methods. For more information, see
Defining Script Objects.
New COM Interfaces
IClassDef2 Interface
IInterfaceMember2 Interface
IInterfaceDef2 Interface
IScriptDef Interface
Interface Implication
Interface implication enables a client to define an implication between two interfaces in an information model. Using
IInterfaceDef2, you can simulate some of the functionality of multiple inheritance, which is not allowed in COM. For more information, see
Interface Implication.
New COM Interfaces
IInterfaceDef2 Interface
Member Delegation
Member delegation extends the engine to support the delegation of derived members on one interface to base members on another interface. This delegation can be used to support relationship inheritance. Two interfaces support this new mapping capability:
IInterfaceMember2 and
IInterfaceDef2. For more information, see
Member Delegation.
New COM Interfaces
IInterfaceMember2 Interface
IInterfaceDef2 Interface
Sharing Model Information
Model dependency allows model developers to define dependencies between information models to support the creation of more modular, integrated models. To support model dependency, use the new
DependsOn collection of
IReposTypeLib2. For more information, see
Define Dependencies Between Type Libraries.
New COM Interfaces
IReposTypeLib2 Interface
Naming Semantics for Objects
Object naming semantics have been extended to support more consistent naming. In this version of repository engine, you can set the COLLECTION_OBJECTNAMING flag of
CollectionDefFlag to specify an object name automatically when creating names for subsequent collections and relationships. For more information, see
CollectionDefFlags Enumeration.
Parameter Support
Parameters can now be defined in models. Version 3.0 supports method parameter definitions so that model creation can include complete object descriptions. You can now use the Meta Data Services Software Development Kit (SDK) to generate fully descriptive Interface Definition Language (IDL) files from an information model. For more information, see
Defining a Parameter.
New COM Interfaces
IMethodDef Interface
IParameterDef Interface
Enumeration Definition
Repository enumeration definition allows you to specify a property as an enumeration that has a fixed set of constant strings or integer values that correspond to real-world concepts. To use this feature, specify an
EnumerationDef object and associated
EnumerationValue objects and associate these with
PropertyDef objects. For more information, see
Repository Enumeration Definition.
New COM Interfaces
IEnumerationDef Interface
IEnumerationValueDef Interface
IPropertyDef2 Interface
Type Information Aliasing
Type information aliasing allows classes, interfaces, and relationships to be referred to by a second name (a synonym). You can implement type information aliasing through new interfaces.
New COM Interfaces
IReposTypeInfo Interface
IReposTypeInfo2 Interface
IInterfaceMember2 Interface
Version Labeling
Version labeling allows users to set or retrieve the version comments properties. Use IVersionAdminInfo2 to implement version labeling.
New COM Interfaces
IVersionAdminInfo2 Interface
Virtual Members
Virtual member support enables you to define nonpersistent members by setting the VIRTUAL_MEMBER flag on the
InterfaceMemberFlags property. If this flag is set and the member is a property, the engine does not allocate a column for it in the interface's table. For more information, see
Virtual Members and
IInterfaceMember Flags Property.
See Also
Meta Data Services Overview
Repository Engine Programming Enhancements
Upgrading the Repository Engine
What's New in Meta Data Services