IAnnotationalProps Interface
Annotational properties are repository properties that can be associated with individual repository objects or relationships. Before an annotational property value can be attached to a repository object, two requirements must be met:
- The object must conform to an object class that exposes the IAnnotationalProps interface.
- A property definition object must exist for an IAnnotationalProps interface property. The name of the property definition object must match the name of your annotational property.
If these two requirements are met, you can attach an annotational property value to an object using the IReposProperty::put_Value method to set the value of the annotational property for that particular object.
When to Use
Annotational properties are not recommended. Support for annotational properties will not be included in future releases of the repository engine.
Version 3.0 of the repository engine still supports annotational properties. If you are already using annotational properties, you can use the IAnnotationalProps interface to access the annotational properties of a repository object or relationship.
Methods
IUnknown method | Description |
---|---|
QueryInterface | Returns pointers to supported interfaces |
AddRef | Increments the reference count |
Release | Decrements the reference count |
IDispatch method | Description |
---|---|
GetIDsOfNames | Maps a single member and a set of argument names to a corresponding set of dispatch identifiers |
GetTypeInfo | Retrieves a type information object, which can be used to get the type information for an interface |
GetTypeInfoCount | Retrieves the number of type information interfaces that an object provides (either 0 or 1) |
Invoke | Provides access to properties and methods exposed by an Automation object |
IRepositoryDispatch method | Description |
---|---|
get_Properties | Retrieves the IReposProperties interface pointer. The IReposProperties interface provides access to the Properties collection. |
Remarks
Annotational properties are maintained by the repository engine as string data. The creator and users of the annotational property must get and set the property value using the appropriate data type through the VARIANT structure. If a data type other than string is used, the repository engine performs the appropriate data conversion.
Because all annotational properties in the repository must be defined as interface members of the IAnnotationalProps interface, all annotational property names share the same name space. When you choose a name for an annotational property, make the name as specific and unique as possible.