Cross-Namespace Association Traversal

Starting in Windows 7, Windows Management Instrumentation (WMI) implemented a standard mechanism for discovering profiles by using the CIM schema.

WMI supports the cross-namespace association traversal and association profile registration. For more information about profile registration and the CIM standard implementation of association traversal, see DSP1033 (https://www.dmtf.org/standards/published_documents/DSP1033.pdf)

To support this feature, the WMI infrastructure did the following:

Interop Namespace

The interop namespace provides a common location for a client application to discover all of the profiles that are supported on a computer. Profiles can be used to manage various aspects of an operating system, storage array, or database.

All interop classes and objects must be defined in the root\interop namespace.

CIM Classes

The CIM classes described in the following list support cross-namespace association traversal.

CIM_RegisteredProfile

Used to identify the profile specification that is advertised as being implemented. This class specifies information that includes the profile name, organization, and version with which the implementation is compliant.

CIM_ElementConformsToProfile

Used to associate instances of management elements that are defined in profiles with the CIM_RegisteredProfile class that identifies the particular profile specifications that are implemented.

CIM_ReferencedProfile

Used to represent the relationship between profiles.

Implementing Cross-Namespace Association Traversal

The WMI service allows cross-namespace association traversal. WMI provides the interop namespace for registering profiles and associating them with profiles that are implemented in different namespaces. However, to use association traversal, implementers must instantiate the profile classes both in the interop and in the implemented namespace. For more information, see Writing an Association Provider for Interop.

Associations that cross namespaces within the same management environment must be instantiated in both the interop and implemented namespaces. Otherwise, association traversal will not work. For example, the power profile association provider must be registered with both root/interop and root/cimv2/power namespaces. Association traversal should be able to occur from either namespace back to the other. For examples of association traversal, see Accessing Data in the Interop Namespace.

**Windows Vista:  **

After upgrading to Windows 7, if there are interop device profiles that were previously installed in the root/interop namespace, no Windows 7 profiles will be installed. These third-party profile objects overwrite Windows 7 interop schema to maintain functionality. Additionally, the WMI application event ID 5631 is recorded.

To get the Windows 7 interop profiles, the Windows 7 version of the Interop.mof file and the related MFL files must be compiled. For more information, see Compiling MOF Files.

CIM_RegisteredProfile

CIM_ElementConformsToProfile

CIM_ReferencedProfile

CIM Schema Compatibility

Writing an Association Provider for Interop

Accessing Data in the Interop Namespace