Поделиться через


Ассоциации схем

Запросы сопоставления схем используют те же инструкции, что и в запросах связи данных: ASSOCIATOR OF и REFERENCES OF. Однако с запросами сопоставления данных возвращаются экземпляры классов и с запросами сопоставления схемы, имена классов, которые могут участвовать в связях связи, возвращаются. Например, используйте запрос схемы для поиска всех классов ассоциаций, определенных в схеме, ссылающейся на исходный класс.

Синтаксис инструкций ASSOCIATOR OF и REFERENCES OF совпадает с запросами сопоставления схем, так как это касается запросов сопоставления данных со следующими исключениями:

  • Исходный объект — это класс, а не экземпляр.
  • Существует дополнительное ключевое слово, SchemaOnly, который определяет запрос как применение к схеме, а не к данным.
  • Недопустимое ключевое слово classDefsOnly ClassDefsOnly.

В следующем примере показан полный синтаксис инструкции ASSOCIATOR OF для запроса схемы. Подробный синтаксис см. в разделе ASSOCIATOR OF Statement.

ASSOCIATORS OF {SourceClass} WHERE 
    AssocClass = AssocClassName
    RequiredAssocQualifier = QualifierName
    RequiredQualifier = QualifierName
    ResultClass = ClassName
    ResultRole = PropertyName
    Role = PropertyName
    SchemaOnly

В следующем примере показан запрос, возвращающий классы протокола и Driver, два класса, ссылающиеся на исходный класс.

ASSOCIATORS OF {Adapter} WHERE SchemaOnly

Следующий запрос возвращает только класс Driver из-за ограничений, помещенных ключевым словом assocClass.

ASSOCIATORS OF {Adapter} WHERE AssocClass = AdapterDriver SchemaOnly

Полный синтаксис инструкции REFERENCES OF для запроса схемы выглядит следующим образом. Подробный синтаксис см. в разделе REFERENCES OF Statement.

REFERENCES OF {SourceClass} WHERE
    ResultClass = ClassName
    Role = PropertyName
    RequiredQualifier = QualifierName
    SchemaOnly

Заметка

Запросы сопоставления схем могут возвращать повторяющиеся объекты.

 

Например, следующий запрос возвращает класс CIM_ComputerSystem несколько раз при перечислении классов в пространстве имен root\cimv2.

ASSOCIATORS OF {Win32_ComputerSystem} WHERE SchemaOnly