Table of contents
-
Programming Meta Data Services Applications
-
Repository Object Architecture
- Repository Engine Model
-
Repository Type Information Model
- Repository Type Library Objects
- Class Definition Objects
- Interface Definition Objects
- Alias Objects
- Relationship Definition Objects
- Collection Definition Objects
- Property Definition Objects
- Enumeration Definition Objects
- Method Definition Objects
- Parameter Definition Objects
- Script Definition Objects
- Understanding the RTIM Through Examples
- Designing Information Models
- Getting Started with Meta Data Services
- Connecting to and Configuring a Repository
-
Defining Information Models
- Repository Identifiers
- Naming Objects, Collections, and Relationships
-
Creating and Extending Type Information
- Creating Type Information Using Modeling Tools
- Information Model Creation Issues
-
Creating Type Information Programmatically
- Begin a Transaction
- Create a Repository Type Library
- Define Dependencies Between Type Libraries
- Add Classes to the Repository Type Library
- Add Interfaces to Each Class
- Add Properties to Each Interface
- Add Methods to Each Interface
- Add Relationship Types and Pairs of Collection Types
- Commit the Transaction
- Defining Relationships and Collections
- Defining Properties
- Defining Methods
- Defining Inheritance
- Generating Views
- Installing Information Models
-
Programming Information Models
-
Navigating a Repository
- Navigation Overview
- Accessing a Repository
- Accessing Repository Objects
- Accessing Relationships
- Accessing Relationship Collections
- Accessing Target Object Collections
- Selecting Items in a Collection
-
Propagating Deletes
- Requirements for Object-Version Deletion
- Requirements for Changing an Object Version
- Delete Propagation After Removing an Origin Relationship
- Delete Propagation After Removing a Destination Relationship
- Delete Propagation After Removing a Destination Target Version
- Delete Propagation After Removing an Origin Target Version
- Delete Propagation After Removing an Object Version
- Versioning Objects
- Programming Objects
- Managing Transactions and Threads
- Managing Workspaces
- Handling Errors
- Optimizing Repository Performance
-
Navigating a Repository
- Storage Strategy in a Repository Database
- Using OLE DB Scanner
- Using XML Encoding
-
Repository Object Architecture
-
Repository API Reference
-
Automation Reference
-
Repository Engine Automation Objects
- ObjectCol Object
- Relationship Object
- RelationshipCol Object
-
Repository Object
- Repository ConnectionString Property
- Repository MajorDBVersion Property
- Repository MinorDBVersion Property
- Repository Object Property
- Repository ReposConnection Property
- Repository RootObject Property
- Repository Transaction Property
- Repository Version Property
- Repository Create Method
- Repository CreateObject Method
- Repository CreateObjectEx Method
- Repository ExecuteQuery Method
- Repository FreeConnection Method
- Repository GetCollection Method
- Repository GetNewConnection Method
- Repository GetOption Method
- Repository InternalIDToObjectID Method
- Repository InternalIDToVersionID Method
- Repository ObjectIDToInternalID Method
- Repository Open Method
- Repository Refresh Method
- Repository ResetOption Method
- Repository SetOption Method
- Repository VersionIDToInternalID Method
-
RepositoryObject Object
- RepositoryObject ClassName Property
- RepositoryObject ClassType Property
- RepositoryObject Interface Property
- RepositoryObject InternalID Property
- RepositoryObject Name Property
- RepositoryObject ObjectID Property
- RepositoryObject Repository Property
- RepositoryObject Type Property
- RepositoryObject Delete Method
- RepositoryObject Lock Method
- RepositoryObject Refresh Method
- RepositoryObject Properties Collection
-
RepositoryObjectVersion Object
- RepositoryObjectVersion ClassName Property
- RepositoryObjectVersion ClassType Property
- RepositoryObjectVersion CheckOutWorkspace Property
- RepositoryObjectVersion Interface Property
- RepositoryObjectVersion InternalID Property
- RepositoryObjectVersion IsCheckedOut Property
- RepositoryObjectVersion IsFrozen Property
- RepositoryObjectVersion Name Property
- RepositoryObjectVersion ObjectID Property
- RepositoryObjectVersion PredecessorCreationVersion Property
- RepositoryObjectVersion Repository Property
- RepositoryObjectVersion ResolutionType Property
- RepositoryObjectVersion Type Property
- RepositoryObjectVersion VersionID Property
- RepositoryObjectVersion VersionInternalID Property
- RepositoryObjectVersion CreateVersion Method
- RepositoryObjectVersion Delete Method
- RepositoryObjectVersion FreezeVersion Method
- RepositoryObjectVersion Lock Method
- RepositoryObjectVersion MergeVersion Method
- RepositoryObjectVersion Refresh Method
- RepositoryObjectVersion ObjectVersions Collection
- RepositoryObjectVersion PredecessorVersions Collection
- RepositoryObjectVersion Properties Collection
- RepositoryObjectVersion SuccessorVersions Collection
- RepositoryObjectVersion Workspaces Collection
- RepositoryTransaction Object
- ReposProperties Object
-
ReposProperty Object
- ReposProperty APIType Property
- ReposProperty CurrentPosition Property
- ReposProperty Flags Property
- ReposProperty IsBaseMember Property
- ReposProperty IsMostDerived Property
- ReposProperty IsOriginCollection Property
- ReposProperty IsReadOnly Property
- ReposProperty Name Property
- ReposProperty PropType Property
- ReposProperty Size Property
- ReposProperty Type Property
- ReposProperty Value Property
- ReposProperty Close Method
- ReposProperty Read Method
- ReposProperty ReadFromFile Method
- ReposProperty Write Method
- ReposProperty WriteToFile Method
- TransientObjectCol Object
-
Workspace Object
- Workspace CheckedOutToWorkspace Property
- Workspace Interface Property
- Workspace InternalID Property
- Workspace IsCheckedOut Property
- Workspace IsFrozen Property
- Workspace MajorDBVersion Property
- Workspace MinorDBVersion Property
- Workspace Name Property
- Workspace Object Property
- Workspace ObjectID Property
- Workspace PredecessorCreationVersion Property
- Workspace Repository Property
- Workspace ResolutionType Property
- Workspace RootObject Property
- Workspace Transaction Property
- Workspace Type Property
- Workspace Version Property
- Workspace VersionID Property
- Workspace VersionInternalID Property
- Workspace Checkin Method
- Workspace Checkout Method
- Workspace Create Method
- Workspace CreateObject Method
- Workspace CreateVersion Method
- Workspace Delete Method
- Workspace FreezeVersion Method
- Workspace InternalIDToObjectID Method
- Workspace InternalIDToVersionID Method
- Workspace Lock Method
- Workspace MergeVersion Method
- Workspace ObjectIDToInternalID Method
- Workspace Open Method
- Workspace Refresh Method
- Workspace Refresh (from IRepositoryObjectVersion) Method
- Workspace VersionIDToInternalID Method
- Workspace Checkouts Collection
- Workspace Containers Collection
- Workspace Contents Collection
- Workspace ObjectVersions Collection
- Workspace PredecessorVersions Collection
- Workspace Properties Collection
- Workspace SuccessorVersions Collection
- Workspace Workspaces Collection
- VersionCol Object
-
VersionedRelationship Object
- VersionedRelationship Destination Property
- VersionedRelationship Interface Property
- VersionedRelationship Name Property
- VersionedRelationship Origin Property
- VersionedRelationship Repository Property
- VersionedRelationship Source Property
- VersionedRelationship Target Property
- VersionedRelationship Type Property
- VersionedRelationship Delete Method
- VersionedRelationship Lock Method
- VersionedRelationship Pin Method
- VersionedRelationship Unpin Method
- VersionedRelationship Properties Collection
- VersionedRelationship TargetVersions Collection
-
RTIM Automation Objects
- Alias Object
-
ClassDef Object
- ClassDef ClassID Property
- ClassDef Name Property
- ClassDef Synonym Property
- ClassDef AddInterface Method
- ClassDef CreateInterfaceDef Method
- ClassDef ObjectInstances Method
- ClassDef Interfaces Collection
- ClassDef Properties Collection
- ClassDef ReposTypeLibScopes Collection
- ClassDef ScriptsUsedByClass Collection
-
CollectionDef Object
- CollectionDef DispatchID Property
- CollectionDef Flags Property
- CollectionDef IsOrigin Property
- CollectionDef MaxCount Property
- CollectionDef MemberSynonym Property
- CollectionDef MinCount Property
- CollectionDef Name Property
- CollectionDef CollectionItem Collection
- CollectionDef Interface Collection
- CollectionDef Properties Collection
- EnumerationDef Object
- EnumerationValueDef Object
-
InterfaceDef Object
- InterfaceDef Flags Property
- InterfaceDef InterfaceID Property
- InterfaceDef Synonym Property
- InterfaceDef TableName Property
- InterfaceDef CreateAlias Method
- InterfaceDef CreateMethodDef Method
- InterfaceDef CreatePropertyDef Method
- InterfaceDef CreateRelationshipColDef Method
- InterfaceDef ObjectInstances Method
- InterfaceDef Ancestor Collection
- InterfaceDef Classes Collection
- InterfaceDef Descendants Collection
- InterfaceDef Implies Collection
- InterfaceDef ImpliedBy Collection
- InterfaceDef Members Collection
- InterfaceDef Properties Collection
- InterfaceDef ReposTypeLibScopes Collection
- InterfaceDef ScriptsUsedByInterface Collection
- MethodDef Object
- ParameterDef Object
-
PropertyDef Object
- PropertyDef APIType Property
- PropertyDef ColumnName Property
- PropertyDef DispatchID Property
- PropertyDef Flags Property
- PropertyDef MemberSynonym Property
- PropertyDef SQLBlobSize Property
- PropertyDef SQLScale Property
- PropertyDef SQLSize Property
- PropertyDef SQLType Property
- PropertyDef EnumerationDef Collection
- PropertyDef Interface Collection
- PropertyDef Properties Collection
- RelationshipDef Object
- ReposRoot Object
-
ReposTypeLib Object
- ReposTypeLib Name Property
- ReposTypeLib Prefix Property
- ReposTypeLib TypeLibID Property
- ReposTypeLib CreateClassDef Method
- ReposTypeLib CreateInterfaceDef Method
- ReposTypeLib CreateRelationshipDef Method
- ReposTypeLib ReposTypeInfos Collection
- ReposTypeLib ReposTypeLibContexts Collection
- ReposTypeLib Properties Collection
- ScriptDef Object
-
Repository Engine Automation Objects
-
COM Reference
- Repository Engine Classes
-
Repository Engine COM Interfaces
- IAnnotationalProps Interface
- IEnumRepositoryErrors Interface
- INamedObject Interface
- IObjectCol Interface
- IObjectCol2 Interface
- IRelationship Interface
- IRelationshipCol Interface
- IReposErrorQueueHandler Interface
- IRepository Interface
- IRepository2 Interface
- IRepositoryDispatch Interface
- IRepositoryErrorQueue Interface
- IRepositoryItem Interface
- IRepositoryObject Interface
- IRepositoryObject2 Interface
- IRepositoryObjectStorage Interface
-
IRepositoryObjectVersion Interface
- IRepositoryObjectVersion::CreateVersion
- IRepositoryObjectVersion::FreezeVersion
- IRepositoryObjectVersion::get_IsFrozen
- IRepositoryObjectVersion::get_ObjectVersions
- IRepositoryObjectVersion::get_PredecessorCreationVersion
- IRepositoryObjectVersion::get_PredecessorVersions
- IRepositoryObjectVersion::get_ResolutionType
- IRepositoryObjectVersion::get_SuccessorVersions
- IRepositoryObjectVersion::get_VersionID
- IRepositoryObjectVersion::get_VersionInternalID
- IRepositoryObjectVersion::MergeVersion
- IRepositoryODBC Interface
- IRepositoryODBC2 Interface
- IRepositoryTransaction Interface
- IRepositoryTransaction2 Interface
- IReposOptions Interface
- IReposProperties Interface
- IReposProperty Interface
- IReposProperty2 Interface
- IReposPropertyLarge Interface
- IReposQuery Interface
- ISummaryInformation Interface
- ITargetObjectCol Interface
- ITransientObjectCol Interface
- IVersionAdminInfo Interface
- IVersionAdminInfo2 Interface
- IVersionCol Interface
- IVersionedRelationship Interface
- IWorkspace Interface
- IWorkspaceContainer Interface
- IWorkspaceItem Interface
- RTIM Classes
-
RTIM COM Interfaces
- IClassDef Interface
- IClassDef2 Interface
- ICollectionDef Interface
- IEnumerationDef Interface
- IEnumerationValueDef Interface
-
IInterfaceDef Interface
- IInterfaceDef Flags Property
- IInterfaceDef InterfaceID Property
- IInterfaceDef TableName Property
- IInterfaceDef::CreateMethodDef
- IInterfaceDef::CreatePropertyDef
- IInterfaceDef::CreateRelationshipColDef
- IInterfaceDef::ObjectInstances
- IInterfaceDef Classes Collection
- IInterfaceDef Members Collection
- IInterfaceDef Ancestor Collection
- IInterfaceDef Descendants Collection
- IInterfaceDef2 Interface
- IInterfaceMember Interface
- IInterfaceMember2 Interface
- IManageReposTypeLib Interface
- IMethodDef Interface
- IParameterDef Interface
- IPropertyDef Interface
- IPropertyDef2 Interface
- IReposRoot Interface
- IReposTypeInfo Interface
- IReposTypeInfo2 Interface
- IReposTypeLib Interface
- IReposTypeLib2 Interface
- IScriptDef Interface
- IViewClassDef Interface
- IViewInterfaceDef Interface
- IViewPropertyDef Interface
- IViewRelationshipDef Interface
- Constants and Data Types
- Enumerations
-
Repository Errors
- REPOSERROR Data Structure
- Repository Errors (Numerical Order)
-
Repository Errors (Alphabetical Order)
- EREP_BADDRIVER
- EREP_BADERROR
- EREP_BADNAME
- EREP_BADPARAMS
- EREP_BLOB_SEEKPASTEND
- EREP_BLOB_TEMPFILE
- EREP_BLOB_USERFILE
- EREP_BLOB_CANNOTSETPOS
- EREP_BUFFER_OVERFLOW
- EREP_CLASS_TOOCOMPLEX
- EREP_COL_NOTSEQUENCED
- EREP_COL_OBJECTNAMING
- EREP_COL_OBJECTNOTNAMED
- EREP_DB_ALREADYCONNECTED
- EREP_DB_CORRUPT
- EREP_DB_DBMSOLD
- EREP_DB_DBMSONETHREAD
- EREP_DB_EXISTS
- EREP_DB_INCOMPATIBLEVERSION
- EREP_DB_NOSCHEMA
- EREP_DB_NOTCONNECTED
- EREP_DB_READONLY
- EREP_DB_UPGRADE
- EREP_DUPEDISPID
- EREP_INVALIDDEPENDENCY
- EREP_INVALIDFILTER
- EREP_ITEMNOTCHECKEDOUT
- EREP_LOCK_TIMEOUT
- EREP_MEMDEL_DELCOLINVALID
- EREP_MEMDEL_COLNOTDEFINED
- EREP_MEMDEL_BASEIFACENOTIMPL
- EREP_MEMDEL_BASECOLVIRTUAL
- EREP_MEMDEL_MULTIPLEBASES
- EREP_MEMDEL_CIRCULARCOLS
- EREP_MISSINGCOMMA
- EREP_MISSINGLEFTBRACKET
- EREP_MISSINGLEFTPARENTHESIS
- EREP_MISSINGRIGHTBRACKET
- EREP_MISSINGRIGHTPARENTHESIS
- EREP_NAME_NOTUNIQUE
- EREP_NAMETOOLONG
- EREP_NEED_DATA
- EREP_NOROWSFOUND
- EREP_NOTWORKSPACEITEM
- EREP_OBJ_EXISTS
- EREP_ODBC_NOTCAPABLE
- EREP_OBJ_NONAMINGRELSHIP
- EREP_OBJ_NOTFOUND
- EREP_OBJ_NOTINITIALIZED
- EREP_ODBC_CERROR
- EREP_ODBC_CREATEFAILED
- EREP_ODBC_MDBNOTFOUND
- EREP_ODBC_UNKNOWNDRIVER
- EREP_ODBC_WARNINGS
- EREP_PROP_CANTSETREPTIM
- EREP_PROP_MISMATCH
- EREP_PROP_NOTEXISTS
- EREP_PROP_READONLY
- EREP_PROP_SETINVALID
- EREP_PROPERTYNOTFOUND
- EREP_QRY_BADCOLUMNS
- EREP_REL_ORGFROZEN
- EREP_REL_ORGCLONE
- EREP_REL_NONSEQONLY
- EREP_REL_ORGPIN
- EREP_REL_NOTPINNED
- EREP_RELSHIP_DUPENAME
- EREP_RELSHIP_EXISTS
- EREP_RELSHIP_INVALIDFLAGS
- EREP_RELSHIP_INVALID_PAIR
- EREP_RELSHIP_NAMEINVALID
- EREP_RELSHIP_NONNAMINGCOL
- EREP_RELSHIP_NOTFOUND
- EREP_RELSHIP_ORGONLY
- EREP_RELSHIP_OUTOFDATE
- EREP_REPOS_CACHEFULL
- EREP_REPOS_NONEXTDISPID
- EREP_RTIM_CLASS_IS_NOT_CREATEABLE
- EREP_SCRIPT_INVALIDLANGUAGE
- EREP_SCRIPT_NESTEDCALL
- EREP_SCRIPT_NOTFOUND
- EREP_STILL_EXECUTING
- EREP_TIM_CTYPEINVALID
- EREP_TIM_FLAGSDEST
- EREP_TIM_INVALIDFLAGS
- EREP_TIM_RELTYPEINVALID
- EREP_TIM_SQLTYPEINVALID
- EREP_TIM_SQLSIZEINVALID
- EREP_TIM_TOOMANYCOLS
- EREP_TXN_AUTOABORT
- EREP_TXN_COLABORTED
- EREP_TXN_NODATA
- EREP_TXN_NOSETINTXN
- EREP_TXN_NOTXNACTIVE
- EREP_TXN_OBJABORTED
- EREP_TXN_TIMEOUT
- EREP_TXN_TOOMANY
- EREP_TYPE_BADTABLENAME
- EREP_TYPE_COLMISMATCH
- EREP_TYPE_INVALIDSCALE
- EREP_TYPE_INVERTEDNOTALLOWED
- EREP_TYPE_MULTIDEFIFACES
- EREP_TYPE_MULTIPLEANCESTORS
- EREP_TYPE_NOTNULLABLE
- EREP_TYPE_TABLEMISMATCH
- EREP_UNKNOWNPROPERTY
- EREP_VCOL_INVALIDOP
- EREP_VCOL_VERSIONNOTMEMBER
- EREP_VERSION_NOTFOUND
- EREP_VIRTUAL_ALIAS
- EREP_VIRTUAL_CALL
- EREP_VM_CANTSETFROZEN
- EREP_VM_MERGETOFROZEN
- EREP_VM_MERGEFROMUNFROZEN
- EREP_VM_UNFROZENVERSION
- EREP_VM_FROZENVERSION
- EREP_VM_CHECKEDOUTVERSION
- EREP_VM_DUPBRANCHID
- EREP_VM_SUCCESSOREXISTS
- EREP_VM_DIFFERENTTYPES
- EREP_WKS_ITEMEXISTS
- EREP_WKS_ITEMNOTEXISTS
- SREP_PROP_TRUNCATION
-
Repository SQL Schema
- Repository SQL Tables
- RTblClassDefs SQL Table
- RTblDatabaseVersion SQL Table
- RTblEnumerationDef SQL Table
- RTblEnumerationValueDef SQL Table
- RTblIfaceDefs SQL Table
- RTblIfaceHier SQL Table
- RTblIfaceMem SQL Table
- RTblNamedObj SQL Table
- RTblParameterDef SQL Table
- RTblPropDefs SQL Table
- RTblProps SQL Table
- RTblRelColDefs SQL Table
- RTblRelshipDefs SQL Table
- RTblRelshipProps SQL Table
- RTblRelships SQL Table
- RTblScriptDefs SQL Table
- RTblSites SQL Table
- RTblSumInfo SQL Table
- RTblTypeInfo SQL Table
- RTblTypeLibs SQL Table
- RTblVersionAdminInfo SQL Table
- RTblVersions SQL Table
- RTblWorkspaceItems SQL Table
-
Automation Reference
-
XML Encoding Reference
- XML Encoding Definition
- OIM-to-XML Mapping
- Sample Encoding
- EBNF Representation
- Namespaces in OIM
- DTD for the OIM Namespace
-
XML Import Export
- XML IExport Interface Overview
- IExport::_NewEnum Method
- IExport::Add Method
- IExport::Clear Method
- IExport::Count Property
- IExport::Export Method
- IExport::GetXML Method
- IExport::Item Method
- IExport::Remove Method
- XML IImport Interface Overview
- IImport::ImportXML Method
- IImport::ImportXMLString Method
- XML Encoding Errors
- OLE DB Scanner Reference
-
Model Installer Reference
- IIMInstall::InstallRDM Method
- IIMInstall2::InstallRDM Method
-
Model Installer Errors
- E_INSREP_BAD_ARGUMENTS
- E_INSREP_CANT_CREATE_IREPOSITORY
- E_INSREP_CANT_INITIALIZE_COM
- E_INSREP_CANT_OPEN_MODEL_FILE
- E_INSREP_CANTCREATEALIAS
- E_INSREP_CANTCREATEENUMDEF
- E_INSREP_CANTCREATEENUMLITERAL
- E_INSREP_CANTCREATEOPERATION
- E_INSREP_CANTCREATEPARAMDEF
- E_INSREP_CANTINSTALLCLASSDEF
- E_INSREP_CANTINSTALLINTERFACEDEF
- E_INSREP_CANTINSTALLPROPERTYDEF
- E_INSREP_CANTINSTALLRELATIONSHIPDEF
- E_INSREP_CANTINSTALLROLEDEF
- E_INSREP_CANTINSTALLTYPELIB
- E_INSREP_ERRORADDINGIFACE
- E_INSREP_ERRORGETTINGREPOSROOT
- E_INSREP_IMPLIESFAILED
- E_INSREP_INCOMPATIBLERDMVERSION
- E_INSREP_INCOMPREPOSVERSION
- E_INSREP_PREMATURE_EOF
- E_INSREP_REPOSITORY_CREATE_FAILS
- E_INSREP_TRANSACTIONERROR
- E_INSREP_UNEXPECTEDERROR
- E_INSREP_WRONG_FILE_TYPE