Calificadores estándar
Todas las implementaciones compatibles con CIM deben controlar un conjunto estándar de calificadores. Un objeto específico no tiene enumerados todos los calificadores. 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 limitaciones siguientes:
- 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 calificadores legales se puede restringir aún más porque algunos calificadores se excluyen mutuamente, el uso de un calificador puede conllevar restricciones en el valor de otro, etc. Estas reglas de uso están documentadas.
- Los calificadores legales los heredan entidades como propiedades, métodos, instancias o subclases, no asociaciones ni referencias. Por ejemplo, las referencias no heredan el calificador MaxLen que se aplica a las propiedades.
A continuación se enumeran los calificadores estándar de WMI.
Abstract
Tipo de datos: booleano
Se aplica a: clases, asociaciones e indicaciones
Indica si la clase es abstracta y solo sirve como base para clases nuevas. 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.
Aggregate
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 Aggregation y Aggregate se usan juntos. Aggregation califica la asociación y Aggregate especifica la referencia primaria.
Aggregation
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 y métodos
Nombre alternativo para una propiedad o método del esquema. El valor predeterminado es NULL.
ArrayType
Tipo de datos: cadena
Se aplica a: propiedades y 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 sean matrices (definidas mediante la sintaxis de corchetes).
BitMap
Tipo de datos: matriz de cadenas
Se aplica a: propiedades, métodos y parámetros
Mapa de posiciones de bits significativas donde cada posición significativa puede estar "activada" o "desactivada". Cada bit "activado" se asigna a un valor correspondiente en la matriz BitValues. Al tener varios bits "activados", 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 y 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 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 aportar información y no se espera que el administrador de objetos realice ninguna acción en é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 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.
Description
Tipo de datos: cadena
Se aplica a: todo
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 puede eliminar instancias de asociación, así como instancias de la clase que define el destructor.
El calificador Destructor está pensado solo para aportar información y no se espera que el administrador de objetos realice ninguna acción en é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 destructor definido para ninguna clase primaria de la clase original. El valor predeterminado es FALSE.
DisplayName
Tipo de datos: cadena
Se aplica a: todo
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: todo
El elemento de tipo de cadena calificado contiene una instancia insertada. 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 de la clase especificada, incluidas las instancias de sus subclases. El valor predeterminado es NULL.
Gauge
Tipo de datos: booleano
Se aplica a: todo
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.
In
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.
In, Out
Tipo de datos: booleano
Se aplica a: parámetros
Indica si el parámetro es un parámetro de entrada y de salida.
Tipo de datos: booleano
Se aplica a: propiedades y referencias
Indica si la propiedad forma parte del identificador del espacio de nombres. Si más de una propiedad tiene el calificador Key, todas forman colectivamente la clave (una clave compuesta). Cuando se combinan, 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.
Lazy
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 Lazy.
MappingStrings
Tipo de datos: matriz de cadenas
Se aplica a: clases, propiedades, asociaciones, indicaciones y referencias
Conjunto de valores que indican una ruta de acceso a una ubicación donde se 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.
Max
Tipo de datos: entero
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 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: entero
Se aplica a: propiedades, métodos y parámetros
Longitud máxima (en caracteres) de un elemento de datos de cadena. Indica compatibilidad con matrices de longitud fija.
Si se encuentra una matriz de longitud fija, el calificador MaxLen contiene la longitud fija que se detecta 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: entero
Se aplica a: propiedades, métodos y parámetros
Valor máximo del objeto. El valor predeterminado es NULL.
Min
Tipo de datos: entero
Se aplica a: referencias
Cardinalidad mínima de la referencia (número mínimo de valores que una referencia determinada puede tener 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 A con instancias B y debe haber como mínimo una instancia A para cada instancia B, la referencia a A debe tener un mínimo de un calificador.
MinValue
Tipo de datos: entero
Se aplica a: propiedades, métodos y 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.
<nombre> de esquema "_" nombre de <clase o asociación> "." <nombre de propiedad>
Nonlocal
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 Nonlocal.
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 que se usan para definir valores NULL son las mismas que las que se aplican 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.
Out
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.
Override
Tipo de datos: cadena
Se aplica a: propiedades, métodos y 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 Override solo puede hacer referencia a construcciones basadas en el mismo metamodelo. No se permite cambiar una firma o nombre de construcción 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 se 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, Administración de Windows ajusta la cláusula WHERE de la consulta enviada a la clase primaria para excluir las referencias a esta propiedad.
Propagated
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 da por supuesto que existe un solo calificador débil en una referencia que tiene 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 Key debe especificarse con un valor TRUE.
Read
Tipo de datos: booleano
Se aplica a: propiedades
Indica si la propiedad se puede leer. El valor predeterminado es TRUE.
Required
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.
Revision
Tipo de datos: cadena
Se aplica a: clases, asociaciones, indicaciones y esquemas
Número de revisión menor del objeto de esquema. El valor predeterminado es NULL.
Uso: el calificador Version debe estar presente para proporcionar el número de versión principal cuando se usa el calificador Revision.
Schema
Tipo de datos: cadena
Se aplica a: propiedades, métodos
Nombre del esquema donde se define la característica. El valor predeterminado es NULL.
Source
Tipo de datos: cadena
Se aplica a: clases, asociaciones, indicaciones y 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 y 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 Abstract. Si se especifican los calificadores Terminal y Abstract, el compilador genera un error.
Units
Tipo de datos: cadena
Se aplica a: propiedades, métodos y 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 y 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 Values. Cuando se usa en combinación con el calificador Values, la ubicación del valor en la matriz ValueMap proporciona la ubicación de la entrada correspondiente en la matriz Values. Use el calificador ValueMap solo con valores enteros y de cadena. La sintaxis para representar un valor entero en la matriz de mapa de valores es [+|=]digit[*digit]. El contenido, número máximo de dígitos y valor representado están restringidos por el tipo de la propiedad asociada. Por ejemplo, uint8 puede no tener signo, debe tener menos de cuatro dígitos y debe representar un valor inferior a 256.
Values
Tipo de datos: matriz de cadenas
Se aplica a: propiedades, métodos y parámetros
Conjunto de valores que traducen un valor entero a 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 que define 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 (de forma relativa a cero) mediante el valor de la propiedad asociada, el tipo de valor devuelto del método o el parámetro de método. Si hay presente un calificador ValueMap, el índice de valores se define mediante la ubicación del valor de propiedad en el mapa de valores.
Version
Tipo de datos: cadena
Se aplica a: clases, esquemas, asociaciones e 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.
Weak
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 débil a una 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.
Write
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 los consumidores a los que WMI y el proveedor permiten el acceso pueden leer la propiedad y escribir en ella. El valor predeterminado es FALSE.
Es posible que se pueda escribir igualmente en una propiedad que no tenga el calificador Write. La implementación del proveedor podría permitir que se cambien las propiedades de las clases de proveedor, independientemente de si está presente el calificador Write.
WriteAtCreate
Tipo de datos: booleano
Se aplica a: propiedades
Indica si se puede escribir en la propiedad cuando se crea 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 se puede escribir en la propiedad cuando se actualiza 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, vea el ejemplo de código de PowerShell Get-WmiClassMethodsAndWritableWmiProperties en la Galería de TechNet.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible |
Windows Vista |
Servidor mínimo compatible |
Windows Server 2008 |