Calificadores estándar
Todas las implementaciones compatibles con CIM deben controlar un conjunto estándar de calificadores. Cualquier objeto específico no tiene todos los calificadores enumerados. Normalmente, las clases de extensión proporcionan calificadores adicionales para facilitar el aprovisionamiento de instancias de clase y otras operaciones en la clase .
Es responsabilidad del proveedor aplicar los calificadores. WMI no aplica calificadores, sino que los usa solo para informar al usuario sobre cómo se usa la propiedad.
Nota
WMI es compatible con la especificación CIM 2.5.
Los calificadores tienen las siguientes limitaciones:
- No todos los calificadores estándar se pueden usar juntos.
- No todos los calificadores se pueden aplicar a todas las construcciones, como la asociación o la referencia. Estas limitaciones se identifican en la lista Se aplica a .
- Para una construcción determinada, como la asociación o la referencia, el uso de los calificadores legales se puede restringir aún más porque algunos calificadores son mutuamente excluyentes, el uso de un calificador puede implicar algunas restricciones en el valor de otro, etc. Estas reglas de uso se documentan.
- Las entidades heredan los calificadores legales, como propiedades, métodos, instancias o subclases, no por asociaciones o referencias. Por ejemplo, el calificador MaxLen que se aplica a las propiedades no se hereda por referencias.
A continuación se enumeran los calificadores estándar de WMI.
Abstracto
Tipo de datos: booleano
Se aplica a: clases, asociaciones, indicaciones
Indica si la clase es abstracta y solo sirve como base para las nuevas clases. El valor predeterminado es FALSE. No se pueden crear instancias de clases abstractas. La ausencia de este calificador indica que la clase no es abstracta; por lo tanto, este calificador es necesario para todas las clases abstractas.
Agregado
Tipo de datos: booleano
Se aplica a: referencias
Indica si la referencia es el componente primario de una asociación de agregación. El valor predeterminado es FALSE.
Uso: los calificadores de agregación y agregado se usan juntos La agregación califica la asociación y Aggregate especifica la referencia primaria.
Agregación
Tipo de datos: booleano
Se aplica a: asociaciones
Indica si la asociación es una agregación. El valor predeterminado es FALSE. Se usa con Aggregate. Este calificador es necesario para todas las asociaciones de agregación.
Alias
Tipo de datos: cadena
Se aplica a: propiedades, referencias, métodos
Nombre alternativo para una propiedad o método en el esquema. El valor predeterminado es NULL.
ArrayType
Tipo de datos: cadena
Se aplica a: propiedades, parámetros
Tipo de la matriz calificada.
Los valores válidos son:
- bag (valor predeterminado)
- indizadas
- ordered
Uso: aplique este tipo de calificador solo a propiedades y parámetros que son matrices (definidas mediante la sintaxis de corchetes).
Bits
Tipo de datos: matriz de cadenas
Se aplica a: propiedades, métodos, parámetros
Mapa de posiciones de bits significativas en las que cada posición significativa puede ser "activada" o "desactivada". Cada bit "on" se asigna a un valor correspondiente en la matriz BitValues . Al tener varios bits "on", se indican varios valores simultáneos en la matriz BitValues . El valor predeterminado es NULL.
Para obtener más información, vea BitMap y BitValues.
BitValues
Tipo de datos: matriz de cadenas
Se aplica a: propiedades, métodos, parámetros
Traducción de un valor de posición de bits en una cadena asociada. El valor predeterminado es NULL.
Para obtener más información, vea BitMap y BitValues.
Constructor
Tipo de datos: booleano
Se aplica a: métodos
Indica si el método crea instancias. Estos métodos no están restringidos a actuar en una sola instancia o en una sola clase. Por ejemplo, un constructor puede crear instancias de asociación, así como instancias de la clase que define el constructor.
El calificador Constructor está pensado solo para la información y no se espera que el administrador de objetos actúe sobre él. El administrador de objetos no tiene que llamar a métodos de constructor cuando se crea un objeto. Además, cuando se llama a un constructor, el administrador de objetos no tiene que invocar ningún método constructor definido para ninguna clase primaria de la clase original. El valor predeterminado es FALSE.
CreateBy
Tipo de datos: cadena
Se aplica a: clases
Nombre del método por el que se crean instancias de esta clase. El valor es "PutInstance" o el nombre de otro método que crea las instancias. El valor predeterminado es NULL.
Uso: este calificador solo se puede usar si el calificador SupportsCreate está presente.
DeleteBy
Tipo de datos: cadena
Se aplica a: clases
Nombre del método por el que se eliminan las instancias de esta clase. El valor es "DeleteInstance" o el nombre de otro método que elimina las instancias. El valor predeterminado es NULL.
Uso: este calificador solo se puede usar si el calificador SupportsDelete está presente.
Descripción
Tipo de datos: cadena
Se aplica a: any
Descripción de un elemento con nombre. El valor predeterminado es NULL.
Destructor
Tipo de datos: booleano
Se aplica a: métodos
Indica si el método elimina instancias. Los métodos que usan el calificador Destructor eliminan las instancias a las que se aplica el destructor y no están restringidas a actuar en una sola instancia o clase. Por ejemplo, un destructor podría eliminar instancias de asociación, así como instancias de la clase que define el destructor.
El calificador Destructor está pensado solo para la información y no se espera que el administrador de objetos actúe sobre él. No hay ninguna obligación de que el administrador de objetos llame a un método que tenga el calificador Destructor cuando se elimina una instancia. Además, cuando se llama a un destructor, el administrador de objetos no tiene que invocar ningún método de destructor definido para ninguna clase primaria de la clase original. El valor predeterminado es FALSE.
Displayname
Tipo de datos: cadena
Se aplica a: any
Nombre que se muestra en la interfaz de usuario en lugar del nombre real del elemento. El valor predeterminado es NULL.
EmbeddedInstance
Tipo de datos: cadena
Se aplica a: any
El elemento de tipo de cadena calificado contiene una instancia incrustada. El valor de calificador especifica el nombre de una clase CIM en el mismo espacio de nombres que la clase propietaria del elemento calificado. La instancia insertada es una instancia de la clase especificada, incluidas las instancias de sus subclases. El valor predeterminado es NULL.
Calibre
Tipo de datos: booleano
Se aplica a: any
Indica si la propiedad representa un entero no negativo, que puede aumentar o disminuir, pero nunca superar un valor máximo. El valor predeterminado es FALSE.
El valor máximo de la propiedad no puede ser mayor que 2^n - 1. N puede ser 8, 16, 32 o 64 según el tipo de datos de la propiedad a la que se aplica este calificador. El valor de un medidor tiene su valor máximo cada vez que la información que se modela es mayor o igual que ese valor máximo. Si la información que se modela posteriormente disminuye por debajo del valor máximo, el medidor también disminuye. Este calificador solo se aplica a las propiedades con un tipo de datos entero sin signo.
En
Tipo de datos: booleano
Se aplica a: parámetros
Indica si el parámetro se usa para pasar valores a un método . El valor predeterminado es TRUE.
Dentro, Fuera
Tipo de datos: booleano
Se aplica a: parámetros
Indica si el parámetro es un parámetro de entrada y salida.
Tipo de datos: booleano
Se aplica a: propiedades, referencias
Indica si la propiedad forma parte del identificador del espacio de nombres. Si más de una propiedad tiene el calificador Key , todas estas propiedades forman colectivamente la clave (una clave compuesta). Cuando se toman juntas, las propiedades de clave deben proporcionar una referencia única para cada instancia de clase. Si este calificador se coloca en una propiedad, solo se permite el valor TRUE .
Perezoso
Se aplica a: propiedades
Indica que la propiedad consume muchos recursos para devolver y requiere una gran cantidad de tiempo y memoria del procesador. WMI mejora el rendimiento de las consultas al no intentar devolver las propiedades marcadas con el calificador diferido .
MappingStrings
Tipo de datos: matriz de cadenas
Se aplica a: clases, propiedades, asociaciones, indicaciones, referencias
Conjunto de valores que indican una ruta de acceso a una ubicación donde puede encontrar más información sobre el origen de una propiedad, clase, asociación, indicación o referencia. La cadena de asignación puede ser una ruta de acceso de directorio, una dirección URL, una clave del Registro, un archivo de inclusión, una referencia a una clase CIM o algún otro formato. El valor predeterminado es NULL.
Máximo
Tipo de datos: int
Se aplica a: referencias
Número máximo de valores que una referencia determinada puede tener para cada conjunto de otros valores de referencia de la asociación. El valor predeterminado es NULL. Por ejemplo, si una asociación relaciona instancias de A con instancias B y debe haber como máximo una instancia A para cada instancia B, la referencia a A debe tener un máximo de un calificador.
MaxLen
Tipo de datos: int
Se aplica a: propiedades, métodos, parámetros
Longitud máxima (en caracteres) de un elemento de datos de cadena e indica la compatibilidad de matrices de longitud fija.
Si se encuentra una matriz de longitud fija, el calificador MaxLen contiene la longitud fija encontrada durante el análisis. Si se encuentra una matriz de longitud variable, no se usa este calificador. MaxLen se usa para sugerir el número máximo de elementos que se deben almacenar en una matriz. Al invalidar el valor predeterminado, se puede especificar cualquier valor entero sin signo (uint32). Un valor de NULL (valor predeterminado) implica una longitud ilimitada.
MaxValue
Tipo de datos: int
Se aplica a: propiedades, métodos, parámetros
Valor máximo del objeto. El valor predeterminado es NULL.
Min
Tipo de datos: int
Se aplica a: referencias
Cardinalidad mínima de la referencia (el número mínimo de valores que puede tener una referencia determinada para cada conjunto de otros valores de referencia de la asociación). El valor predeterminado es 0.
Por ejemplo, si una asociación relaciona instancias de A con instancias B y debe haber al menos una instancia A para cada instancia B, la referencia a A debe tener un mínimo de un calificador.
MinValue
Tipo de datos: int
Se aplica a: propiedades, métodos, parámetros
Indica el valor mínimo del objeto. El valor predeterminado es NULL.
ModelCorrespondence
Tipo de datos: matriz de cadenas
Se aplica a: propiedades
Conjunto de valores que indican la correspondencia entre la propiedad de un objeto y otras propiedades del esquema CIM. El valor predeterminado es NULL.
Las propiedades de objeto se identifican mediante la sintaxis siguiente.
"_" "."
No local
Tipo de datos: cadena
Se aplica a: referencias
Ubicación de una instancia, cuyo valor es <namespacetype>://<namespacehandle> El valor predeterminado es NULL.
Uso: este calificador no se puede usar con el calificador NonlocalType .
NonlocalType
Tipo de datos: cadena
Se aplica a: referencias
Tipo de ubicación de una instancia. Su valor es <namespacetype>. El valor predeterminado es NULL.
Uso: este calificador no se puede usar con el calificador no local .
NullValue
Tipo de datos: cadena
Se aplica a: propiedades
Valor que indica que la propiedad asociada es NULL (la propiedad no tiene un valor válido o significativo). El valor predeterminado es NULL.
Las convenciones y restricciones usadas para definir valores NULL son las mismas que las aplicables al calificador ValueMap . Tenga en cuenta que este calificador no se puede invalidar. No es razonable permitir que una subclase devuelva un valor NULL diferente al de la clase primaria.
Salida
Tipo de datos: booleano
Se aplica a: parámetros
Indica si el parámetro devuelve valores de un método. El valor predeterminado es FALSE.
Anular
Tipo de datos: cadena
Se aplica a: propiedades, métodos, referencias
Clase primaria o construcción subordinada (propiedad, método o referencia) que se invalida mediante la propiedad, el método o la referencia del mismo nombre en la clase derivada. El valor predeterminado es NULL.
El formato es:
[<clase>.]<construcción subordinada>
Si se omite el nombre de clase, la invalidación se aplica a la construcción subordinada en la clase primaria de la jerarquía de clases.
Uso: el calificador de invalidación solo puede hacer referencia a construcciones basadas en el mismo metamodelo. No se permite cambiar un nombre de construcción o una firma durante una operación de invalidación.
OverrideValue
Se aplica a: clases
Indica si el valor de propiedad de una subclase invalida el valor de una clase primaria. La implicación funcional es que, si realiza una consulta en la clase primaria y si la cláusula WHERE incluye esta propiedad, el elemento primario debe devolver una instancia con el valor invalidado. Como resultado, Windows Management ajusta la cláusula WHERE de la consulta enviada a la clase primaria para excluir las referencias a esta propiedad.
Propagado
Tipo de datos: cadena
Se aplica a: propiedades
Nombre de la clave que se va a propagar. El valor predeterminado es NULL.
El uso de este calificador supone la existencia de solo un calificador débil en una referencia que tenga la clase contenedora como destino. La propiedad asociada debe tener el mismo valor que la propiedad denominada por el calificador de la clase en el otro lado de la asociación débil. El formato es:
[<clase>.]<construcción subordinada>
Uso: cuando se usa el calificador Propagated , el calificador de clave debe especificarse con un valor true.
Leer
Tipo de datos: booleano
Se aplica a: propiedades
Indica si la propiedad es legible. El valor predeterminado es TRUE.
Obligatorio
Tipo de datos: booleano
Se aplica a: propiedades
Indica si se requiere un valor distinto de NULL para la propiedad . El valor predeterminado es FALSE.
Revisión
Tipo de datos: cadena
Se aplica a: clases, asociaciones, indicaciones, esquemas
Número de revisión menor del objeto de esquema. El valor predeterminado es NULL.
Uso: el calificador de versión debe estar presente para proporcionar el número de versión principal cuando se usa el calificador de revisión .
Esquema
Tipo de datos: cadena
Se aplica a: propiedades, métodos
Nombre del esquema en el que se define la característica. El valor predeterminado es NULL.
Fuente
Tipo de datos: cadena
Se aplica a: clases, asociaciones, indicaciones, referencias
Ubicación de una instancia. El valor predeterminado es NULL.
El valor del calificador es <namespacetype>://<namespacehandle>.
Uso: el calificador source no se puede usar con el calificador SourceType .
Sourcetype
Tipo de datos: cadena
Se aplica a: clases, asociaciones, indicaciones, referencias
Tipo de ubicación de una instancia. El valor de este calificador es <namespacetype>. El valor predeterminado es NULL.
Uso: el calificador SourceType no se puede usar con el calificador Source .
SupportsCreate
Tipo de datos: booleano
Se aplica a: clases
Indica si la clase admite la creación de instancias. El valor predeterminado es FALSE.
SupportsDelete
Tipo de datos: booleano
Se aplica a: clases
Indica si la clase admite la eliminación de instancias. El valor predeterminado es FALSE.
SupportsUpdate
Tipo de datos: booleano
Se aplica a: clases
Indica si la clase admite la modificación (actualización) de instancias. El valor predeterminado es FALSE.
Terminal
Tipo de datos: booleano
Se aplica a: clases
Indica si la clase puede tener subclases. El valor predeterminado es FALSE.
Si se declara una subclase, el compilador genera un error.
Uso: este calificador no puede coexistir con el calificador abstracto . Si se especifican los calificadores Terminal y Abstract , el compilador genera un error.
Unidades
Tipo de datos: cadena
Se aplica a: propiedades, métodos, parámetros
Tipo de unidad en la que se expresa el elemento de datos asociado. El valor predeterminado es NULL.
Por ejemplo, un elemento de datos de tamaño podría tener un valor de "bytes" para Units.
ValueMap
Tipo de datos: matriz de cadenas
Se aplica a: propiedades, métodos, parámetros
Conjunto de valores permitidos para una propiedad, un tipo de valor devuelto de método o un parámetro de método. El valor predeterminado es NULL.
Uso: este calificador se puede usar solo o en combinación con el calificador Valores . Cuando se usa en combinación con el calificador Values , la ubicación del valor de la matriz ValueMap proporciona la ubicación de la entrada correspondiente en la matriz Values . Use el calificador ValueMap solo con valores de cadena e enteros. La sintaxis para representar un valor entero en la matriz de mapa de valores es [+|=]digit[*digit]. El contenido, el número máximo de dígitos y el valor representado están restringidos por el tipo de la propiedad asociada. Por ejemplo, es posible que uint8 no esté firmado, debe ser inferior a cuatro dígitos y debe representar un valor inferior a 256.
Valores
Tipo de datos: matriz de cadenas
Se aplica a: propiedades, métodos, parámetros
Conjunto de valores que traducen un valor entero en una cadena asociada. El valor predeterminado es NULL.
Esta propiedad también especifica una matriz de valores de cadena que se asignarán a una propiedad de enumeración. Este calificador se puede aplicar a una propiedad entera o a una propiedad de cadena, y la asignación puede ser implícita o explícita. Si la asignación es implícita, los valores enteros o de propiedad de cadena representan posiciones ordinales en la matriz Values . Si la asignación es explícita, la propiedad debe ser un entero y los valores de propiedad válidos se muestran en la matriz definida por el calificador ValueMap . Para obtener más información, vea Mapa de valores.
Si un calificador ValueMap no está presente, la matriz Values se indexa (relativa a cero) mediante el uso del valor de la propiedad asociada, el tipo de valor devuelto del método o el parámetro method. Si existe un calificador ValueMap , el índice de valores se define mediante la ubicación del valor de propiedad en el mapa de valores.
Versión
Tipo de datos: cadena
Se aplica a: clases, esquemas, asociaciones, indicaciones
Número de versión principal del objeto de esquema. El valor predeterminado es NULL. El número de versión se incrementa cuando se realizan cambios en el esquema que modifican la interfaz.
Débil
Tipo de datos: booleano
Se aplica a: referencias
Indica si las claves de la clase a la que se hace referencia incluyen las claves de los demás participantes de la asociación. El valor predeterminado es FALSE.
Este calificador se usa cuando la identidad de la clase a la que se hace referencia depende de la identidad de los demás participantes de la asociación. No puede haber más de una referencia a ninguna clase determinada. Las demás clases de la asociación deben definir una clave. Las claves de las otras clases de la asociación se repiten en la clase a la que se hace referencia y se etiquetan con un calificador Propagated .
Escribir
Tipo de datos: booleano
Se aplica a: propiedades
Indica que las aplicaciones o scripts pueden cambiar el valor de propiedad. La cuenta que ejecuta la aplicación debe tener acceso al espacio de nombres que contiene instancias de la clase . La implementación del proveedor también puede limitar el acceso a los datos del proveedor. Un valor true indica que la propiedad es legible y grabable por los consumidores a los que WMI y el proveedor permiten el acceso. El valor predeterminado es FALSE.
Es posible que todavía se pueda escribir una propiedad que no tenga el calificador Write . La implementación del proveedor puede permitir que se cambien las propiedades de las clases de proveedor, si el calificador de escritura está presente.
WriteAtCreate
Tipo de datos: booleano
Se aplica a: propiedades
Indica si la propiedad se puede escribir en la creación de la instancia. Este calificador se puede usar junto con el calificador WriteAtCreate . El valor predeterminado es FALSE.
WriteAtUpdate
Tipo de datos: booleano
Se aplica a: propiedades
Indica si la propiedad se puede escribir en la actualización de la instancia. Este calificador se puede usar junto con el calificador WriteAtCreate . El valor predeterminado es FALSE.
Ejemplos
Para obtener más información sobre cómo recuperar calificadores, consulte el ejemplo de código get-WmiClassMethodsAndWritableWmiProperties de PowerShell en la Galería de TechNet.
Requisitos
| Requisito | Value |
|---|---|
| Cliente mínimo compatible |
Windows Vista |
| Servidor mínimo compatible |
Windows Server 2008 |