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 (http://www.dmtf.org/standards/published_documents/DSP1033.pdf)
To support this feature, the WMI infrastructure did the following:
- Created the interop namespace: \root\interop.
- Allowed cross namespace association traversal. Associations that cross namespaces support filtering at the association class level and at the implemented namespace level.
- Added the CIM_RegisteredProfile, CIM_ElementConformsToProfile, and CIM_ReferencedProfile classes.
- Implemented CIM Schema version 2.17.1 compatibility. For more information, see CIM Schema Compatibility.
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.
The CIM classes described in the following list support cross-namespace association traversal.
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.
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.
Used to represent the relationship between profiles.
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.
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 Schema Compatibility
- Writing an Association Provider for Interop
- Accessing Data in the Interop Namespace