Pegasus Status and work on Qualifiers

13 Feb 2002, Original, KS

17 Feb 2002, V 0.2, KS

 

This table defines the qualifiers that are valid for CIM effective with the CIM Specification 2.2.1 (specification 2.2, errata, and addendum 2.2.1).  It does not yet cover extensions for CIM specification 2.3.  That will be added. We have attempted to define the qualifier and its characteristics from the existing documentation and then to define the state of usage of the qualifier in Pegasus and any work needed for Pegasus 2.0

 

Qualifier

Default

Source

QualType

Applies To

Type

Meaning

Status Pegasus

Work

Association

 

Spec 22

Meta

 

Boolean

The object class is defining an association.

 

Done

 

Indication

 

Spec 22

Meta

 

Boolean

The object class is defining an indication.

 

Done

 

Abstract

False

Spec 22

Standard

Class, Association, Indication

Boolean

Indicates that the class is abstract and serves only as a base for new classes. It is not possible to create instances of such classes.

 

???

Possible extra validation

Aggregate

False

Spec 22

Standard

Reference

Boolean

Defines the "parent" component of an Aggregation association.

 

Usage Rule: The Aggregation and Aggregate qualifiers are used together – Aggregation qualifying the association, and Aggregate specifying the "parent"  reference.

 

ignored

Resolution – See aggregate qualifier.

Aggregation

False

Spec 22

Standard

Association

Boolean

Indicates that the association is an

aggregation.

ignored

resolution – Should we check if other side has aggregation qualifier. YES

Alias

Null

Spec 22

Standard

Property, Reference, method

String

 

Establishes an alternate name for a property or method in the schema.

 

Possible to be dropped.

TBD- Until we understand future

Arraytype

“bag”

Spec 22

Standard

Property, parameter

String

Indicates the type of the qualified array. Valid values are "Bag", "Indexed" and "Ordered".

Usage rule: The ArrayType qualifier  should only be applied to properties and method parameters that are arrays

(defined using the square bracket syntax  specified in Appendix A).

 

ignored

Resolution – Add test - Should only apply to property that is an array

Bitmap

NULL

Spec 22

Standard

Property, method, parameter

String Array

Indicates which bit positions are

significant in a bit map. The position of  a specific value in the BitMap array  defines an index that is used in selecting a string literal from the BitValues array.

Installed correctly but no validation against bitvalues

Resolution – Test for existence of bitvalues

Bitvalues

NULL

Spec 22

Standard

Property, method, parameter

String Array

Provides translation between a bit

position value and an associated string. See the description for the BitMap qualifier.

 

See Bitmap

See Bitmap

Counter

FALSE

Spec 22

Standard

Property, method, parameter

Boolean

Applicable only to unsigned integer types. Represents a non-negative integer which

monotonically increases until it reaches a maximum value of 2^n-1, when it wraps around and starts increasing again from zero. N can be 8, 16, 32 or 64 depending on the datatype of the object

to which the qualifier is applied.

Counters have no defined "initial"

value, and thus, a single value of a Counter has (in general) no information content

 

Ignored

Resolution- confirm it applies only to unsigned integers

Description

Null

Spec 22

Standard

Any

String

Provides a description of a Named Element.

 

Done

 

Displayname

Null

Spec 22

Standard

Any

String

Defines a name that will be displayed on UI instead of the actual name of the element.

 

Nothing Special

 

DN

False

Add 221

Standard

Property, Parameter

Boolean

When applied to a string property or method, the DN qualifier specifies that the string must be a  distinguished name as defined in section 9 of X.501.

ignored

???

EmbeddedObject

False

Add221

Standard

Property, Parameter

Boolean

This qualifier can only be used in conjunction with string properties and method parameters. In indiates that the qualified entity contains an encoding of an instance’s data. At this time the DMTF defines twoo possible encodings – character striing encoded in MOF (INSTANCE OF abc {…}: or an XML representation (<INSTANCECLASSNAME=”abc”>…</INSTANCE>). It is desirable that the encoding of the embedded object data match the encoding of the instance/indication that contains this property or method parameter. This allows the same parsing engine that decodes the instance/indication envelope to decode the EmbeddedObject string. (However, encodings are defined by an implementation and are not the subject of this document). Please see Appendis H for examples and  furher explanation.

Must handle through indications. State unknown today

Work unknown

Expensive

False

Add 221. Moved from Optional

Standard

Property, Reference, Class, Association, Method

Boolean

Indicates the property or class is

expensive to compute.

 

Nothing to do

 

Gauge

False

Spec 22 and erratta22

Standard

Property, method, parameter

Boolean

.Applicable only to

integer types.

Represents an integer

which may increase

or decrease in any

order or magnitude.

The value of a Gauge

is capped at the

implied limits of the

effected property’s

datatype. If and

while the information

being modeled

exceeds an implied

limit, the value

represented will

instead be that limit;

values do not wrap.

For unsigned

integers, the limits

are zero (0) to 2^n-1,

inclusive. For signed

integers, the limits

are –(2^(n-1)) to

2^(n-1)-1, inclusive.

N can be 8, 16, 32, or

64 depending on the

datatype of the

property to which the

qualifier is applied.

 

 

Ignored today

Resolution – Check for integer type

In

True

Spec 22

Standard

Parameter

Boolean

Indicates that the associated parameter is used to pass values to a method.

 

Ignored today by CIMOM

Question if provider or CIMOM should enforce

Key

False

Spec 22 and erratta

Standard

Property, Reference

Boolean

Reference

Indicates that the

property is part of the

namespace handle

(see Section 5.3.1.2

for information about

namespace

handles). If more

than one property has

the KEY qualifier,

then all such

properties

collectively form the

key (a

compound key).

Usage Rule: Keys

are written once at

object instantiation

and must not be

modified thereafter. It

does not make

sense to apply a

default value to a

KEY-qualified

property. Properties

which are of an array

type must not be

qualified with KEY.

 

 

OK

Modification – refuse modifications to key properties

MappingStrings

Null

Spec 22

Standard

Class, property, association, indication, reference

String Array

Mapping strings for one or more

management data providers or agents.  See Section 2.5.5 and 2.5.6 for more details.

 

 

Resolution – Should we check values??

Max

Null

Spec 22

Standard

Reference

INT

Indicates the maximum cardinality of the reference (i.e. the maximum number of values a given reference can have for

each set of other reference values in the association). For example, if an association relates A instances to B instances, and there must be at most one A instance for each B instance, then the

reference to A should have a Max(1) qualifier.

 

Ignored by CIMOM today

Should CIMOM Check?

Maxlen

Null

Spec 22

Standard

Property, Method

Parameter

INT

Indicates the maximum length, in

characters, of a string data item. When overriding the default value, any unsigned integer value (uint32) can be specified. A value of NULL implies unlimited length.

 

? Provider or CIMOM

Instance – Should CIMOM check in

1)    requests

2)    Responses

Maxvalue

Null

Spec 22

Standard

Property, Method

Parameter

INT

Maximum value of this object.

 

Installed but not used by CIMOM. Not tested by compiler

Resolve – Check for integer type property.

Instance – Should CIMOM Verify or provider?

Min

0

Spec 22

Standard

Reference

INT

Indicates the minimum cardinality of the reference (i.e. the minimum number of values a given reference can have for each set of other reference values in the

association). For example, if an

association relates A instances to B  instances, and there must be at least one

A instance for each B instance, then the reference to A should have a Min(1) qualifier.

 

Ignored today

Should the CIMOM Check or the provider?

Minvalue

Null

Spec 22

Standard

Property, Method

Parameter

INT

Minimum value of this object.

 

Installed but not used by CIMOM. Not tested by compiler

Resolve – Check for integer type property.

Instance – Should CIMOM Verify or provider?

Model Correspondence

Null

Spec 22

Standard

Property

String Array

Indicates a correspondence between an object’s property and other properties in the CIM Schema. Object properties are

identified using the following syntax:

<schema name> "_" <class or

association name> "." <property name>

 

Ignored

???

NonLocal

Null

Spec 22

Standard

Reference

String

Indicates the location of an instance. Its value is

<namespacetype>://<namespacehandle>

Usage Rule: Cannot be used with the NonLocalType qualifier.

 

Installed but ignored by CIMOM

Not clear. Needs more explanation

NonLocalType

Null

Spec 22

Standard

Reference

String

Indicates the type of location of an instance. Its value is <namespacetype>

Usage Rule: Cannot be used with the NonLocal qualifier.

 

 

See NonLocal

Nullvalue

Null

Spec 22

Standard

Property

String

Defines a value the presence of which indicates that the associated property is

NULL – that is that the property cannot be considered as having a valid or meaningful value.

The conventions and restrictions used for defining null values are the same as those applicable to the ValueMap qualifier.

Note this qualifier cannot be overridden as it seems unreasonable to permit a

subclass to return a different null value to that of the superclass.

 

No check today

Needs check by compiler and CIMOM. Also needs clarification

OctetString

False

Erratta 22

Standard?

Property, Parameter

Boolean

Parameter

This qualifier is used

to identify the

qualified property or

parameter as an octet

string.

When used in

conjuction with an

unsigned 8-bit integer

(uint8) array, the

OCTETSTRING

qualifer indicates that

the unsigned 8-bit

integer array

 

Unsure. May need testing

????

Out

False

Spec 22

Standard

Parameter

Boolean

Indicates that the associated parameter is used to return values from a method.

 

Installed but ignored by CIMOM today

? Provider or CIMOM

Override

Null

Spec 22

Standard

Property, Method, Reference

String

Indicates that the property, method, or reference in the derived class overrides

the similar construct (of the same name) in the parent class in the inheritance tree, or in the specified parent class. The

value of this qualifier MAY identify the parent class whose subordinate construct (property, method, or reference) is overridden. The format of

the string to accomplish this is:

[<class>.]<subordinate construct>

If the class name is omitted, the

Override applies to the  subordinate construct in the parent class in the inheritance tree.

Usage Rule: The Override qualifier can only refer to constructs based on the

same meta model. Also, it is not

allowed to change a construct's name or signature when overriding.

 

Unsure

Part of general create class validation and processing that we may need to extend. Verify

Propagated

Null

Spec 22

Standard

Property

String

The propagated qualifier is a stringvalued qualifier that contains the name of the key that is being propagated. Its use assumes the existence of only one

weak qualifier on a reference that has the containing class as its target. The associated property must have the same value as the property named by the qualifier in the class on the other side of

the weak association. The format of the string to accomplish this is:

[<class>.]<subordinate construct>

Usage Rule: When the PROPAGATED qualifier is used, the KEY qualifier must

be specified with a value of TRUE.

 

CIMOM

Resolution – Verify reference class exists and has weak. See weak for contra test.

Read

true

Spec 22

Standard

Property

Boolean

Indicates that the property is readable.

 

Installed but ignored by CIMOM today

Should CIMOM verify for instances?

Required

False

Spec 22

Standard

Property

Boolean

Indicates that a non-NULL value is required for the property.

 

Nothing now

Need to check that CIMOM is validating for create instance.

Should response handler validate for instance responses?

Revision

Null

Spec 22

Standard

 

String

Provides the minor revision number of the schema object.

Usage Rule: The VERSION qualifier must be present to supply the major version number when the REVISION qualifier is used.

 

Installed but ignored

Nothing to do

Schema

Null

Spec 22

Standard

Propety

method

String

The name of the schema in which the feature is defined.

 

Needs clarification

 

Source

Null

Spec 22

Standard

Class, Association, Indication, Reference

String

Indicates the location of an instance. Its value is

<namespacetype>://<namespacehandle>

Usage Rule: Cannot be used with the SourceType qualifier.

 

 

???

Sourcetype

Null

Spec 22

Standard

Class, Association, Indication, Reference

String

Indicates the type of location of an instance. Its value is <namespacetype>

Usage Rule: Cannot be used with the Source qualifier.

 

 

???

Static

False

Spec 22

Standard

Property, Method

Boolean

For methods indicates that the method is a class method that does not depend on any per-instance data. For properties, indicates that the property is a class variable rather than

an instance variable.

 

 

? Do we need to do validation?

Terminal

False

Spec 22

Standard

Class

Boolean

Indicate that the class can have no

subclasses. If such a subclass is declared

the compiler will generate an error.

Note this qualifier cannot coexist with the Abstract qualifier. If both are specified the compiler generates an

error.

 

???

Superclass not terminal on create. Abstract not set if terminal set

Units

Null

Spec 22

Standard

Property, Method, Parameter

String

Provides units in which the associated data item is expressed. For example, a Size data item might have Units ("bytes"). The complete set of standard

units is defined in Appendix C.

 

Nothing Now

Resolve – Check against standard set from spec

Valuemap

Null

Spec 22, Add221 (add .. syntax)

Standard

Property, Method, Parameter

String Array

NOTE: See the addenda for latest description. The following is from V 2.2 spec.

 

Defines the set of permissible values for this property, method return type or method parameter. The ValueMap can be used alone, or in combination with the Values qualifier. When used in

combination with the Values qualifier, the location of the value in the ValueMap array provides the location of the corresponding entry in the Values array.

ValueMap may only be used with string and integer values. The syntax for representing an integer value in the ValueMap array is:

[+|-]digit[*digit]

The content, maximum number of digits and represented value are constrained by the type of the associated property. For example, uint8 may not be signed, must

be less than four digits, and must

represent a value less than 256.

 

 

???

Values

Null

Spec 22

Standard

Property, Method

Parameter

String Array

Provides translation between an integer value and an associated string. If a ValueMap qualifier is not present, the Values array is indexed (zero relative) using the value in the associated property, method return type or method parameter. If a ValueMap qualifier is present, the Values index is defined by the location of the property value in the ValueMap.

 

 

???

Version

Null

Spec 22 and erratta

Standard

Class, Schema, Association, Indication

 

Provides the major version number of the schema object. This is incremented

when changes are made to the schema that alter the interface.

 

Installed but ignored today

Request to provide option in compiler.

Weak

False

Spec 22

Standard

Reference

Boolean

Indicates that the keys of the referenced class include the keys of the other participants in the association. This qualifier is used when the identity of the

referenced class depends on the identity of the other participants in the association. No more than one reference to any given class can be weak. The other classes in the association must define a key. The keys of the other classes in the association are repeated in

the referenced class and tagged with a propagated qualifier.

 

Boolean

See propagated

Write

False

Spec 22

Standard

Property

Boolean

Indicates whether write access is

allowed for a property by any

"consumers" of that property’s data. This qualifier does not address the initial assignment of a property value, nor its maintenance by its "provider".

It describes the maximal level of access that is allowed, and does not address whether security and authorization restrictions may actually prevent writing

of the data. A value of true indicates that the property is readable and writable by

"consumers", given appropriate

administrative authorization. A value of false indicates that the property is only readable by "consumers", regardless of

authorization.

 

Boolean

Should test against write requests (set property, create, modify instance) Is that a CIMOM task?

Delete

False

Spec 22

Optional

Association, Reference

Boolean

For associations: Indicates that the qualified association must be deleted if any of the objects referenced in the association are deleted, AND the respective object referenced in the association is qualified with

IFDELETED.

For references: Indicates that the

referenced object must be deleted if the association containing the reference is deleted, AND qualified with IFDELETED, or if any of the objects referenced in the association are deleted

AND the respective object referenced in the association is qualified with

IFDELETED.

Usage Rule: Applications must to chase associations according to the modeled semantic and delete objects appropriately. Note: This usage rule must be verified when the CIM security model is defined.

 

 

Ignore, this is an optional qualifier.

Expensive

 

Spec 22

Optional

 

Boolean

NOTE: Changed in Erratta. See standard.

 

 

IfDeleted

False

Spec 22

Optional

Association, Reference

Boolean

Indicates that all objects qualified by DELETE within the association must be

deleted if the referenced object or the association, respectively, is deleted.

 

 

See Delete

Invisible

False

Spec 22

Optional

Association, Property, Method, Reference, Class

Boolean

Indicates that the association is defined only for internal purposes (for example,

for definition of dependency semantics) and should not be displayed (for example, in maps).

 

 

Is there any use case to implement this?

Large

False

Spec 22

Optional

Property, Class

Boolean

Class Indicates the property or class requires a large amount of storage space.

 

 

Nothing to do

Provider

Null

Spec 22

Optional

Any

String

An implementation specific handle to the instrumentation that populates those elements in the schemas which refer to dynamic data.

 

Used today

Ignore it will not be used after provider registration works

Syntax

Null

Spec 22

Optional

Property, Referene, Method, Parameter

String

Specific type assigned to a data item.

Usage Rule: Must be used with the SyntaxType qualifier.

 

 

Ignore, this is an optional qualifier.

Syntaxtype

Null

Spec 22

Optional

Property, Reference, Method, Parameter

String

Defines the format of the SYNTAX qualifier.

Usage Rule: Must be used with the SYNTAX qualifier.

 

 

Ignore, this is an optional qualifier.

Triggertype

Null

Spec 22

Optional

Class, Property, Method, Association, Indication, Reference

String Array

Indicates the circumstances under which a trigger is fired.

Usage Rule: The trigger types vary by meta-model construct. For classes and associations, the legal values are

CREATE, DELETE, UPDATE and ACCESS. For properties and references, the legal values are: UPDATE and ACCESS. For methods, the legal values

are BEFORE and AFTER. For

indications, the legal values are

THROWN.

 

 

Ignore, this is an optional qualifier.

UnknownValues

Null

Spec 22

Optional

Property

String Array

Defines a set of values the presence of which indicates that the value of the associated property is unknown – that is

that the property cannot be considered as having a valid or meaningful value. The   onventions and restrictions used

for defining unknown values are the same as those applicable to the ValueMap qualifier.

Note this qualifier cannot be overridden as it seems unreasonable to permit a

subclass to treat as a known value a value that is treated as unknown by some superclass.

 

 

Ignore, this is an optional qualifier.

UnsupportedValues

Null

Spec 22

Optional

Property

String Array

Defines a set of values the presence of which indicates that the value of the associated property is unsupported – that is that the property cannot be

considered as having a valid or

meaningful value. The conventions and restrictions used

for defining unsupported values are the same as those applicable to the ValueMap qualifier.

Note this qualifier cannot be overridden as it seems unreasonable to permit a

subclass to treat as a supported value a value that is treated as unknown by some superclass.

 

 

Ignore, this is an optional qualifier.

PropertyUsage

CurrentContext

Add 221

Optional

 

 

NOTE: See the addendum since it will not let me copy the text

 

Ignore, this is an optional qualifier.