Стандартные квалификаторы

Все реализации, совместимые с CIM, должны обрабатывать стандартный набор квалификаторов. Любой конкретный объект не содержит всех квалификаторов, перечисленных. Как правило, классы расширений предоставляют дополнительные квалификаторы для упрощения подготовки экземпляров классов и других операций с классом.

Поставщик несет ответственность за применение квалификаторов. WMI не применяет квалификаторы, но использует их только для информирования пользователя о том, как используется свойство.

Примечание.

WMI соответствует спецификации CIM 2.5.

Квалификаторы имеют следующие ограничения:

  • Не все стандартные квалификаторы можно использовать вместе.
  • Не все квалификаторы могут применяться ко всем конструкциям, таким как связь или ссылка. Эти ограничения определяются в списке "Применимо к списку".
  • Для конкретной конструкции, например ассоциации или ссылки, использование юридических квалификаторов может быть дополнительно ограничено, поскольку некоторые квалификаторы являются взаимоисключающими, использование одного квалификатора может означать некоторые ограничения на значение другого и т. д. Эти правила использования описаны.
  • Квалификаторы права наследуются такими сущностями, как свойства, методы, экземпляры или подклассы, а не ассоциации или ссылки. Например, квалификатор MaxLen, который применяется к свойствам, не наследуется ссылками.

Ниже перечислены квалификаторы WMI уровня "Стандартный".

Краткие сведения

Тип данных: логический

Область применения: классы, связи, признаки

Указывает, является ли класс абстрактным и служит только основой для новых классов. Значение по умолчанию — FALSE. Нельзя создавать экземпляры абстрактных классов. Отсутствие этого квалификатора указывает, что класс не абстрактен; Таким образом, этот квалификатор требуется для всех абстрактных классов.

Общая

Тип данных: логический

Область применения: ссылки

Указывает, является ли ссылка родительским компонентом ассоциации агрегирования. Значение по умолчанию — FALSE.

Использование: квалификаторы агрегирования и статистических квалификаторов используются вместе агрегирование, а агрегат задает родительскую ссылку.

Агрегат

Тип данных: логический

Область применения: связи

Указывает, является ли связь агрегированием. Значение по умолчанию — FALSE. Используется с агрегатом. Этот квалификатор необходим для всех связей агрегирования.

Alias

Тип данных: строка

Область применения: свойства, ссылки, методы

Альтернативное имя свойства или метода в схеме. По умолчанию имеет значение NULL.

ArrayType

Тип данных: строка

Область применения: свойства, параметры

Тип квалифицированного массива.

Допустимые значения:

  • пакет (по умолчанию)
  • Индексированных
  • упорядоченного

Использование. Примените этот тип квалификатора только к свойствам и параметрам, которые являются массивами (определенными с помощью синтаксиса скобки).

Растрового изображения

Тип данных: массив строк

Область применения: свойства, методы, параметры

Карта существенных битовых позиций, в которых каждая значимая позиция может быть включена или отключена. Каждое битовое значение "on" сопоставляется с соответствующим значением в массиве BitValues . При наличии нескольких битов "on" указываются несколько параллельных значений в массиве BitValues . По умолчанию имеет значение NULL.

Дополнительные сведения см. в разделе BitMap и BitValues.

BitValues

Тип данных: массив строк

Область применения: свойства, методы, параметры

Преобразование битового значения позиции в связанную строку. По умолчанию имеет значение NULL.

Дополнительные сведения см. в разделе BitMap и BitValues.

Конструктор

Тип данных: логический

Область применения: методы

Указывает, создает ли метод экземпляры. Эти методы не ограничены действием для одного экземпляра или одного класса. Например, конструктор может создавать экземпляры ассоциаций, а также экземпляры класса, который определяет конструктор.

Квалификатор конструктора предназначен только для сведений, и он не ожидается, что он действует диспетчером объектов. Диспетчер объектов не должен вызывать методы конструктора при создании объекта. Кроме того, при вызове конструктора диспетчер объектов не должен вызывать методы конструктора, определенные для любого родительского класса исходного класса. Значение по умолчанию — FALSE.

CreateBy

Тип данных: строка

Область применения: классы

Имя метода, с помощью которого создаются экземпляры этого класса. Значением является "PutInstance" или имя другого метода, создающего экземпляры. По умолчанию имеет значение NULL.

Использование: этот квалификатор можно использовать только в том случае, если квалификатор SupportsCreate присутствует.

DeleteBy

Тип данных: строка

Область применения: классы

Имя метода, с помощью которого удаляются экземпляры этого класса. Значением является "DeleteInstance" или имя другого метода, который удаляет экземпляры. По умолчанию имеет значение NULL.

Использование: этот квалификатор можно использовать только в том случае, если квалификатор SupportsDelete присутствует.

Description

Тип данных: строка

Применимо к: любой

Описание именованного элемента. По умолчанию имеет значение NULL.

Деструктор

Тип данных: логический

Область применения: методы

Указывает, удаляет ли метод экземпляры. Методы, использующие квалификатор деструктора, удаляют экземпляры, к которым применяется деструктор , и не ограничиваются действием на одном экземпляре или классе. Например, деструктор может удалять экземпляры ассоциаций, а также экземпляры класса, определяющего деструктор.

Квалификатор деструктора предназначен только для сведений, и он не ожидается, что он действует диспетчером объектов. Диспетчер объектов не обязан вызывать метод, имеющий квалификатор деструктора при удалении экземпляра. Кроме того, при вызове деструктора диспетчер объектов не должен вызывать методы деструктора, определенные для любого родительского класса исходного класса. Значение по умолчанию — FALSE.

Отображаемое имя

Тип данных: строка

Применимо к: любой

Имя, отображаемое в пользовательском интерфейсе вместо фактического имени элемента. По умолчанию имеет значение NULL.

EmbeddedInstance

Тип данных: строка

Применимо к: любой

Элемент квалифицированного типа строки содержит внедренный экземпляр. Значение квалификатора указывает имя класса CIM в том же пространстве имен, что и класс, принадлежащий квалифицированному элементу. Внедренный экземпляр — это экземпляр указанного класса, включая экземпляры его подклассов. По умолчанию имеет значение NULL.

Датчика

Тип данных: логический

Применимо к: любой

Указывает, представляет ли свойство неотрицательное целое число, которое может увеличиваться или уменьшаться, но никогда не превышает максимальное значение. Значение по умолчанию — FALSE.

Максимальное значение свойства не может быть больше 2^n – 1. N может быть 8, 16, 32 или 64 в зависимости от типа данных свойства, к которому применяется этот квалификатор. Значение датчика имеет максимальное значение всякий раз, когда данные моделиируются больше или равны максимальному значению. Если данные, моделироваемые впоследствии, снижаются ниже максимального значения, датчик также уменьшается. Этот квалификатор применим только к свойствам с типом данных без знака.

In

Тип данных: логический

Область применения: параметры

Указывает, используется ли параметр для передачи значений методу. Значение по умолчанию — TRUE.

In, Out

Тип данных: логический

Область применения: параметры

Указывает, является ли параметр входным и выходным параметром.

Ключ

Тип данных: логический

Область применения: свойства, ссылки

Указывает, является ли свойство частью дескриптора пространства имен. Если несколько свойств имеют квалификатор ключа , все такие свойства совместно образуют ключ (составной ключ). При объединениях ключевые свойства должны предоставлять уникальную ссылку для каждого экземпляра класса. Если этот квалификатор помещается в свойство, допускается только значение TRUE .

Lazy

Область применения: свойства

Указывает, что свойство является ресурсоемким для возврата и требует много времени процессора и памяти. WMI повышает производительность запросов, не пытаясь вернуть свойства, помеченные с помощью квалификатора "Отложенный ".

СопоставленияStrings

Тип данных: массив строк

Область применения: классы, свойства, связи, признаки, ссылки

Набор значений, указывающий путь к расположению, где можно найти дополнительные сведения о происхождении свойства, класса, ассоциации, указания или ссылки. Строка сопоставления может быть путем к каталогу, URL-адресом, разделом реестра, файлом включения, ссылкой на класс CIM или другим форматом. По умолчанию имеет значение NULL.

Max

Тип данных: int

Область применения: ссылки

Максимальное количество значений заданной ссылки может иметь для каждого набора других ссылочных значений в ассоциации. По умолчанию имеет значение NULL. Например, если связь связана с экземплярами A с экземплярами B и должна быть не более одного экземпляра A для каждого экземпляра B, то ссылка на A должна иметь не более одного квалификатора.

MaxLen

Тип данных: int

Область применения: свойства, методы, параметры

Максимальная длина (в символах) элемента строковых данных и указывает на поддержку массивов фиксированной длины.

Если обнаружен массив фиксированной длины, квалификатор MaxLen содержит фиксированную длину, найденную во время синтаксического анализа. Если обнаружен массив переменной длины, этот квалификатор не используется. MaxLen используется для определения максимального количества элементов, которые должны храниться в массиве. При переопределении значения по умолчанию можно указать любое целое число без знака (uint32). Значение NULL (по умолчанию) подразумевает неограниченную длину.

Maxvalue

Тип данных: int

Область применения: свойства, методы, параметры

Максимальное значение объекта. По умолчанию имеет значение NULL.

Min

Тип данных: int

Область применения: ссылки

Минимальная карта inality ссылки (минимальное количество значений, указанной ссылки может иметь для каждого набора других ссылочных значений в ассоциации). По умолчанию установлено значение 0.

Например, если связь связана с экземплярами A и экземплярами B, то для каждого экземпляра B должно быть по крайней мере один экземпляр A, то ссылка на A должна иметь минимум один квалификатор.

Minvalue

Тип данных: int

Область применения: свойства, методы, параметры

Указывает минимальное значение объекта. По умолчанию имеет значение NULL.

ModelCorrespondence

Тип данных: массив строк

Область применения: свойства

Набор значений, указывающих на соответствие свойству объекта и другим свойствам в схеме CIM. По умолчанию имеет значение NULL.

Свойства объекта определяются с помощью следующего синтаксиса.

<имя> схемы "_" <или имя> ассоциации ". <имя свойства>

Нелокальный

Тип данных: строка

Область применения: ссылки

Расположение экземпляра, значение которого — <namespacetype>://<namespacehandle>, значение по умолчанию — NULL.

Использование: этот квалификатор нельзя использовать с квалификатором NonlocalType .

NonlocalType

Тип данных: строка

Область применения: ссылки

Тип расположения экземпляра. Его значением является <тип> пространства имен. По умолчанию имеет значение NULL.

Использование: этот квалификатор нельзя использовать с нелокальным квалификатором.

Nullvalue

Тип данных: строка

Область применения: свойства

Значение, указывающее, что связанное свойство равно NULL (свойство не имеет допустимого или понятного значения). По умолчанию имеет значение NULL.

Соглашения и ограничения, используемые для определения значений NULL , совпадают с теми, которые применимы к квалификатору ValueMap . Обратите внимание, что этот квалификатор нельзя переопределить. Неразумно разрешить подклассу возвращать другое значение NULL , отличное от родительского класса.

Исходящие

Тип данных: логический

Область применения: параметры

Указывает, возвращает ли параметр значения из метода. Значение по умолчанию — FALSE.

Переопределение

Тип данных: строка

Область применения: свойства, методы, ссылки

Родительский класс или подчиненная конструкция (свойство, метод или ссылка), переопределенная свойством, методом или ссылкой на то же имя в производном классе. По умолчанию имеет значение NULL.

Формат будет следующим:

[<класс>.]<подчиненная конструкция>

Если имя класса опущено, переопределение применяется к подчиненной конструкции родительского класса в иерархии классов.

Использование: квалификатор переопределения может ссылаться на конструкции, основанные только на одной метамодели. Во время операции переопределения нельзя изменить имя конструкции или подпись.

ПереопределениеValue

Область применения: классы

Указывает, переопределяет ли значение свойства в подклассе значение родительского класса. Функциональное влияние заключается в том, что, если вы выполняете запрос к родительскому классу, и если предложение WHERE включает это свойство, родитель должен вернуть экземпляр с переопределенным значением. В результате управление Windows корректирует предложение WHERE запроса, отправленного в родительский класс, чтобы исключить ссылки на это свойство.

Распространяются

Тип данных: строка

Область применения: свойства

Имя распространяемого ключа. По умолчанию имеет значение NULL.

Использование этого квалификатора предполагает существование только одного слабого квалификатора для ссылки, содержащей класс в качестве целевого объекта. Связанное свойство должно иметь то же значение, что и свойство с именем квалификатора в классе с другой стороны слабой связи. Формат будет следующим:

[<класс>.]<подчиненная конструкция>

Использование. Если используется квалификатор распространения, квалификатор ключа должен быть указан со значением TRUE.

Чтение

Тип данных: логический

Область применения: свойства

Указывает, доступно ли свойство для чтения. Значение по умолчанию — TRUE.

Обязательный

Тип данных: логический

Область применения: свойства

Указывает, требуется ли для свойства значение, отличное от NULL. Значение по умолчанию — FALSE.

Revision

Тип данных: строка

Область применения: классы, связи, признаки, схемы

Дополнительный номер редакции объекта схемы. По умолчанию имеет значение NULL.

Использование: квалификатор версии должен присутствовать для предоставления основного номера версии при использовании квалификатора редакции .

Схема

Тип данных: строка

Область применения: свойства, методы

Имя схемы, в которой определена функция. По умолчанию имеет значение NULL.

Источник

Тип данных: строка

Область применения: классы, связи, признаки, ссылки

Расположение экземпляра. По умолчанию имеет значение NULL.

Значение квалификатора — <namespacetype>://<namespacehandle>.

Использование: квалификатор источника нельзя использовать с квалификатором SourceType .

Тип источника

Тип данных: строка

Область применения: классы, связи, признаки, ссылки

Тип расположения экземпляра. Значением этого квалификатора является <тип> пространства имен. По умолчанию имеет значение NULL.

Использование: квалификатор SourceType нельзя использовать с квалификатором Source .

ПоддержкаCreate

Тип данных: логический

Область применения: классы

Указывает, поддерживает ли класс создание экземпляров. Значение по умолчанию — FALSE.

ПоддержкаDelete

Тип данных: логический

Область применения: классы

Указывает, поддерживает ли класс удаление экземпляров. Значение по умолчанию — FALSE.

ПоддержкаUpdate

Тип данных: логический

Область применения: классы

Указывает, поддерживает ли класс изменение (обновление) экземпляров. Значение по умолчанию — FALSE.

Терминал

Тип данных: логический

Область применения: классы

Указывает, может ли класс иметь подклассы. Значение по умолчанию — FALSE.

Если подкласс объявлен, компилятор создает ошибку.

Использование: этот квалификатор не может сосуществовать с абстрактным квалификатором. Если указаны квалификаторы терминала и абстрактных, компилятор создает ошибку.

Единицы измерения

Тип данных: строка

Область применения: свойства, методы, параметры

Тип единицы, в которой выражается связанный элемент данных. По умолчанию имеет значение NULL.

Например, элемент данных размера может иметь значение "байт" для единиц.

ValueMap

Тип данных: массив строк

Область применения: свойства, методы, параметры

Набор допустимых значений для свойства, типа возвращаемого метода или параметра метода. По умолчанию имеет значение NULL.

Использование: этот квалификатор можно использовать отдельно или в сочетании с квалификатором значений. При использовании в сочетании с квалификатором значений расположение значения в массиве ValueMap предоставляет расположение соответствующей записи в массиве значений. Используйте квалификатор ValueMap только со значениями строк и целых чисел. Синтаксис для представления целочисленного значения в массиве карты значений — [+|=]digit[*digit]. Содержимое, максимальное число цифр и представленное значение ограничены типом связанного свойства. Например, uint8 может быть не подписан, должен быть меньше четырех цифр и должен представлять значение менее 256.

Значения

Тип данных: массив строк

Область применения: свойства, методы, параметры

Набор значений, превратив целочисленное значение в связанную строку. По умолчанию имеет значение NULL.

Это свойство также указывает массив строковых значений, сопоставленных со свойством перечисления. Этот квалификатор может применяться либо к целочисленного свойства, либо к строкового свойства, а сопоставление может быть неявным или явным. Если сопоставление неявно, целочисленные или строковые значения свойств представляют порядковые позиции в массиве значений. Если сопоставление является явным, свойство должно быть целым числом, а допустимые значения свойств перечислены в массиве, определенном квалификатором ValueMap . Дополнительные сведения см. в разделе "Карта значений".

Если квалификатор ValueMap отсутствует, массив значений индексируется (от нуля) с помощью значения в связанном свойстве, типе возвращаемого метода или параметре метода. Если квалификатор ValueMap присутствует, индекс значений определяется расположением значения значения в карте значений.

Версия

Тип данных: строка

Область применения: классы, схемы, связи, признаки

Основной номер версии объекта схемы. По умолчанию имеет значение NULL. Номер версии увеличивается при внесении изменений в схему, которая изменяет интерфейс.

Слабым

Тип данных: логический

Область применения: ссылки

Указывает, включают ли ключи указанного класса ключи других участников ассоциации. Значение по умолчанию — FALSE.

Этот квалификатор используется, если удостоверение указанного класса зависит от удостоверения других участников ассоциации. Не более одной ссылки на любой заданный класс может быть слабым. Другие классы в ассоциации должны определять ключ. Ключи других классов в ассоциации повторяются в упоминаемом классе и помечены квалификатором распространения .

Запись

Тип данных: логический

Область применения: свойства

Указывает, что приложения или скрипты могут изменить значение свойства. Учетная запись, которая запускает приложение, должна иметь доступ к пространству имен, содержаму экземпляры класса. Реализация поставщика также может ограничить доступ к данным поставщика. Значение TRUE указывает, что свойство доступно для чтения и записи потребителями, которым разрешен доступ WMI и поставщиком. Значение по умолчанию — FALSE.

Свойство, которое не имеет квалификатора записи , может быть записано. Реализация поставщика может разрешить изменять любые свойства в классах поставщика, независимо от того, присутствует ли квалификатор записи .

WriteAtCreate

Тип данных: логический

Область применения: свойства

Указывает, можно ли записывать свойство при создании экземпляра. Этот квалификатор может использоваться вместе с квалификатором WriteAtCreate . Значение по умолчанию — FALSE.

WriteAtUpdate

Тип данных: логический

Область применения: свойства

Указывает, можно ли записывать свойство при обновлении экземпляра. Этот квалификатор может использоваться вместе с квалификатором WriteAtCreate . Значение по умолчанию — FALSE.

Требования

Требование Значение
Минимальная версия клиента
Windows Vista
Минимальная версия сервера
Windows Server 2008

См. также

Квалификаторы WMI

Добавление квалификатора