This XML schema defines the structure of DMTF message registries. A message registry is an XML instance document
following this XML schema. A message registry defines messages that can be used to return errors using embedded
instances of CIM_Error and indications based on CIM_AlertIndication.
It is recommended that a message registry be created in a single language; the DMTF will publish English message
registries only. It is not recommended that the dynamic elements in a message contain translatable text because it
would make localization of the message registry difficult. It is also not recommended that the Message property in
CIM_Error or CIM_AlertIndication be used for localization. Localization may be performed by clients based on the
message ID and local availability of an accordingly translated message bundle.
Except for the REGISTRY element, any global element and type definitions in this schema shall not be used by other XML
schemas, in order to allow for structural changes in future updates to this XML schema.
White space in character data of any elements or in values of any attributes defined in a DMTF message registry shall be
processed by an application consuming the registry as defined by the behavior of the whiteSpace facet of their XML
datatype. This means that for attribute values, preserving white space is possible in the same way as for character data
of elements, i.e. dependent on their XML datatype. Note that the W3C XML Specification requires that white space in
attribute values is normalized to the space (#x20) character, while the W3C XML Schema Specifcations override that rule
by stating that the whiteSpace facet behavior of the XML datatype controls the normalization behavior also for
attributes (in addition to elements). For the whiteSpace facet behavior of the predefined XML datatypes, see W3C XML
Schema Part 2: Datatypes.
The top-level element of the message registry. Message registries shall contain one occurence of the REGISTRY element
as the only top-level element.
The major and minor version of the DSP0228 XSD used by the message registry XML file.
This attribute has been introduced in DSP0228 version 1.2 and it is strongly recommended to use it.
A description of the parent element. The description is targeted to developers of an implementation
that produces or consumes the message. It does not need to be well suited as an explanation for human consumers of the
message.
Identification and other details about the message registry.
The owning entity of the message registry. The value of the OwningEntity property in CIM_Error and CIM_AlertIndication
instances conveying a message from a message registry shall be set to the character data of this element.
A description of the message registry.
Identification information for the message registry, through its attributes ID, NAME and VERSION. The element also
defines the language of the messages through its LANGUAGE attribute.
An identification of the message registry, for programmatic use and external reference to the registry. Although
defined as optional for backwards comatibility, it is highly recommended that message registries specify this attribute.
If specified, it shall be unique across all message registries owned by the owning entity stated in the OWNING_ENTITY
element of the registry, and it shall not change over the lifetime of the registry. If specified, its format shall
conform to the IDENTIFIER ABNF rule defined in Annex A of DSP0004. It shall be compared case sensitively. For
registries owned by DMTF, its value shall be the DSP number of the registry if specified, in upper case (e.g.
"DSP8016").
A display name of the message registry, for human consumption. It should not be used for external reference to the
registry. It shall be unique across all message registries owned by the owning entity stated in the OWNING_ENTITY
element of the registry. It may be changed in future releases of the registry. It should not contain the owning
organization as stated in the OWNING_ENTITY element. It should contain the string "Message Registry" if written in
English language, or corresponding translations of this string if written in other languages. Example for the value:
"WBEM Operations Message Registry".
The version of the message registry. The attribute value shall conform to the DMTF versioning rules defined in DSP4004.
The language used by all messages defined in the message registry. The attribute value shall conform to the definition
of Language Tags defined in RFC3066, as defined in XML Schema Part 2: Datatypes.
A reference to a specification document the message registry was created for.
The owning entity of the document. If not specified, the owning entity of the message registry shall be assumed to also
be the owning entity of the document.
The title of the document.
A document number that uniquely identifies the document within its owning entity. For documents owned by DMTF, it shall
be specified and its value shall be the DSP number of the document in upper case (e.g. "DSP8016"). For other documents,
a specification of this attribute is optional.
The version of the document. For documents owned by DMTF, the version shall contain the major and minor version number,
optionally the update version number and if the update version number is present, optionally one or two draft letters.
If the version contains only the major and minor version number, the latest published update version number is meant to
be referenced. For documents not owned by DMTF, the version number may be an arbitrary string.
For documents owned by DMTF.
For documents not owned by DMTF.
The version of the CIM Schema the message registry is dependent on.
The version of the CIM Schema. The version shall contain the major and minor version number, and optionally the update
version number. If the version contains only the major and minor version number, the latest published update version
number is meant to be referenced.
The name of the organization owning a document (i.e. the business entity or standards body that maintains and owns the
document), for human consumption. The character data of the element shall include a copyrighted, trademarked or
otherwise unique name that is owned by the owning organization. For documents owned by DMTF, the character data of the
element shall be "DMTF".
The list of messages defined in the message registry.
A message defined in the message registry.
A name of the message, for human consumption. The attribute value should be unique within the message registry (the
MESSAGE_ID is required to be unique, for programmatic access) and should be a brief descriptive text. For example,
"HTTP header malformed in POST operation" is preferrable over "protocol error".
An indicator on whether or not the message is considered experimental. A value of "true" means the message is
experimental. Experimental messages may be removed or changed incompatibly in future revisions of the message registry.
Specifies the format of the expanded message text.
If this element is not specified, the expanded message text has the default format described in the choice element "TEXT".
The expanded message text consists of plain text only. It does not contain XML markup in any form (e.g. directly or escaped) or markup of other structured representation languages (e.g. JSON).
The expanded message text consists of XHTML with MRP extensions, as defined in DSP8028 (Machine Readable Profiles XML Schema) for the datatype mrp:XHTMLWithLinks_Type.
The DSP8028 version to which the expanded message text conforms.
The version shall be specified with its major and minor version identifiers. Example: "1.0".
The expanded message text is an XML fragment that conforms to the content model of an XML datatype.
The qualified name of the XML datatype.
The XML namespace prefix used in the type name shall be defined in the message registry (i.e. for a namespace prefix "xxx", there needs to be an "xmlns:xxx" attribute defining it).
The message defines possible values instead of a message text.
The message shall define only one message component which is a dynamic element that defines the possible values using its POSSIBLE_VALUES elements.
The message identifier. The message identifier consists of the PREFIX and SEQUENCE_NUMBER attributes. The combination
of these two attribute values shall be unique across all message registries owned by a particular owning entity (as
identified by the OWNING_ENTITY element). The value of the MessageID property in CIM_Error and CIM_AlertIndication
instances conveying a message from a message registry shall be set to the concatenation of the PREFIX and
SEQUENCE_NUMBER attribute values, as specified in the message registry (i.e. no further padding or adjustment of these
values takes place).
The prefix portion of the message identifier. Typically, the same prefix is used for all messages in a particular
message registry, and different prefixes are used for the messages in different message registries.
The sequence number portion of the message identifier. The format of the attribute value shall conform to the decimal
string representation of an integer value that optionally has leading zeros. It is recommended that the attribute value
is padded with leading zeros to a total length of at least four digits.
A description of the message. The description is targeted to developers of an implementation that produces or consumes
the message. It does not need to be well suited as an explanation for human consumers of the message. The description
should cover the purpose of the message and its usage. A profile may further constrain the purpose or the usage of the
message within the domain of the profile. Note that each dynamic element within the message can have a description on
its own, so this information should not be repeated in this element.
The components of the message, as an (ordered) sequence of static elements (i.e. static text) or dynamic elements (i.e.
computed values). The value of the Message property in CIM_Error and CIM_AlertIndication instances conveying a message
from a message registry shall be set to the concatenation of the message text of all child elements of this element, in
the order specified in the message registry.
A message component representing a dynamic element within a message. The message text that the dynamic element
contributes to the overall message is a string value that is computed at the time the message is issued. The (string
typed) MessageArguments array property in CIM_Error and CIM_AlertIndication instances conveying a message from a message
registry shall be set to have one array entry for each dynamic element defined in the message, in the order specified in
the message registry, where the value of the array entry is the message text of the dynamic element. The message text
of the dynamic element should not contain translatable text because it would make localization of the message registry
difficult. Instead, any translatable text should go into properly defined static elements.
The name of the dynamic element, for programmatic use. The attribute value shall be unique within the message.
A reference to a CIM property whose value is to be used as the source for the message text of the dynamic element. The
format of the attribute value shall be classname.propertyname, for example: CIM_Fan.ElementName. If the attribute is
specified, the value of the referenced property at the time the message is issued shall be used as the message text of
the dynamic element. If the attribute is not specified, the DESCRIPTION element of the dynamic element shall specify
the source of the message text.
The CIM datatype into which the message text of the dynamic element shall be coercible without loss. Note that this
constrains the string values in the message text of the dynamic element accordingly. For example, if the attribute
value is "sint8", the message text of the dynamic element is constrained to represent an integer value between -128 and
+127 in some string representation. As another example, if the attribute value is "reference", the message text of the
dynamic element is constrained to be an instance path in some string representation. Requirements on the specific
string representation to be used may be defined in the DESCRIPTION element of the dynamic element, and may be further
constrained in management profiles using the message. For example, the DESCRIPTION element of a dynamic element with
DATATYPE="sint8" might define that the message text is required to be represented as a decimal integer value that always
has a sign.
An indicator on whether or not the dynamic element is an array. A value of "true" means the dynamic element is an
array. If a dynamic element is an array, the DATATYPE attribute shall define the type of each array entry, the message
text of the dynamic element array shall be the ordered sequence of array entry values delimited by comma (this is what
is put into the array entry of the MessageArguments array property), and the usage of the message text as a component in
the Message property should insert curly braces around the message text before being used in the overall message text.
An indicator on whether or not the message text of the dynamic element is to be included in the Message property. Note
this does not affect the inclusion in the MessageArguments array property. A value of "true" means the message text of
the dynamic element shall be included in the Message property. A value of "false" means that the message text of the
dynamic element shall not be included in the Message property. This may be used to convey additional details about the
message that are not intended for the end user reading the message text in the Message property.
An indicator that a display value associated to the original value is to be used for the message text of the dynamic element
when the message text is included in the Message property, instead of the original value.
A value of "true" means that the display value shall be used; in this case every POSSIBLE_VALUE child element of this
dynamic element shall have a DISPLAY_VALUE child element defined.
A value of "false" means that the original value shall be used; in this case no POSSIBLE_VALUE child element of this
dynamic element shall have a DISPLAY_VALUE child element defined.
The EXPECTED_IN_MESSAGE attribute takes precedence to the USE_DISPLAY_VALUE attribute; so if the
EXPECTED_IN_MESSAGE attribute has a value of "false", no message text is included in the Message property, regardless
of the value of the USE_DISPLAY_VALUE attribute.
See the description of the DISPLAY_VALUE child element of the POSSIBLE_VALUE element for details on how to define
display values.
A message component representing a dynamic element within a message. The dynamic element is defined by referencing a
previously defined DYNAMIC_ELEMENT element in the same message. Other than that, the dynamic element follows the rules
defined for the DYNAMIC_ELEMENT element. Specifically, its message text is put into the MessageArguments and Message
properties as defined there.
The reference to the previously defined DYNAMIC_ELEMENT element. The attribute value shall be the value of the NAME
attribute of a previously defined DYNAMIC_ELEMENT element within the same message.
A possible value the message text of a dynamic element can have. The possible value is defined by the character data
of this element. The character data of this element shall conform to the constraints of XML datatype xs:string.
The display value associated to the possible value, for usage in the message text of the dynamic element
when the message text is included in the Message property, instead of the (original) possible value.
The MessageArguments array entry representing the dynamic element shall be the (original) possible value,
regardless of whether a display value is defined.
If the (original) value of the dynamic element cannot be found within the set of possible values (as defined with
POSSIBLE_VALUE child elements), then the default display value shall be the (original) value enclosed in
parenthesis. For example, if the numeric property value is 4096, its original value to be used is the string "4096",
and if no POSSIBLE_VALUE element is defined for "4096", the display value "(4096)" will be used in the Message
string, and the original value "4096" will be used as the entry in the MessageArguments array.
This element shall be specified only if the USE_DISPLAY_VALUE attribute has a value of "true".
A message component representing a static element within a message. The character data of the element is the message
text that the static element contributes to the overall message. The (string typed) MessageArguments array property in
CIM_Error and CIM_AlertIndication instances conveying a message from a message registry shall not be set to have array
entries for any static elements defined in the message.
The requirement level for implementing the property in CIM_Error or CIM_AlertIndication instances conveying a message
from a message registry.
Valid values and their meanings are:
- "required": The property is required to be implemented and it shall be set to the character data of the element.
- "optional": The property is optional to be implemented. If implemented, it shall be set to the character data of
the element. If not implemented, the property shall either be set to NULL or not be present in the (embedded)
instance.
- "discouraged": The property is discouraged from being implemented and should either be set to NULL or not be present
in the (embedded) instance. The character data of the element shall be empty in this case.
- "prohibited": The property is prohibited from being implemented and shall be set to NULL or not be present in the
(embedded) instance. The character data of the element shall be empty in this case.
Requirements for specific property values to be set in CIM_Message, CIM_Error and CIM_AlertIndication instances conveying a message
from a message registry. Such instances may have additional properties set, as defined in the CIM Schema or further
constrained in profiles using messages. Each child element of this element corresponds to a specific property in these
instances. The property value to be set is defined as the character data of the child element. The requirement for
setting the property to that value is defined in the EXISTENCE_IS attribute of the child element. There shall be at
most one occurence of this element for each of: CIM_Message (TYPE="MESSAGE"), CIM_Error (TYPE="ERROR"),
and CIM_AlertIndication (TYPE="ALERT"). If there is no occurence of this element for a particular type of class, instances of that
class may be produced, they are just not further constrained to specific property values.
Choice for CIM_Message instances (TYPE="MESSAGE").
Choice for CIM_Error instances (TYPE="ERROR").
Choice for CIM_AlertIndication instances (TYPE="ALERT").
An indicator for the class type whose instances are constrained by this occurence of the element.
Valid values and their meanings are:
- "MESSAGE": Instances of CIM_Message are constrained. The child elements shall be those of the choice for CIM_Message.
- "ERROR": Instances of CIM_Error are constrained. The child elements shall be those of the choice for CIM_Error
(CIMSTATUSCODE, etc.).
- "ALERT": Instances of CIM_AlertIndication are constrained. The child elements shall be those of the choice for
CIM_AlertIndication (ALERTING_MANAGED_ELEMENT, etc.).
A value constraint for the (uint32 typed) CIMStatusCode property in CIM_Error. The character data of the element
shall be a decimal string representation of the value to be used for the property, if implemented, and shall conform to
the constraints of XML datatype xs:unsignedInt. The specified value shall be a valid value according to the description
of the property in the CIM Schema. Note that a message can only specify a single property value, so if there is a need
to use different values depending on some condition, the message needs to be split up into multiple messages. The
character data of the DESCRIPTION child element should contain the corresponding value of the Values qualifier defined
for the property in the CIM Schema and may contain other text.
A value constraint for the (uint16 typed) ErrorType property in CIM_Error. The character data of the element shall
be a decimal string representation of the value to be used for the property, if implemented, and shall conform to the
constraints of XML datatype xs:unsignedShort. The specified value shall be a valid value according to the description of
the property in the CIM Schema. Note that a message can only specify a single property value, so if there is a need to
use different values depending on some condition, the message needs to be split up into multiple messages. The
character data of the DESCRIPTION child element should contain the corresponding value of the Values qualifier
defined for the property in the CIM Schema and may contain other text.
A value constraint for the (string typed) OtherErrorType property in CIM_Error. The character data of the element
shall be the value to be used for the property, if implemented, and shall conform to the constraints of XML datatype
xs:string. The specified value shall be a valid value according to the description of the property in the CIM Schema.
Note that according to that description, the property is used only if the ErrorType property has a value of 1 (Other).
Note that a message can only specify a single property value, so if there is a need to use different values depending on
some condition, the message needs to be split up into multiple messages.
A value constraint for the (string typed) ErrorSource property in CIM_Error. The character data of the element shall
be the value to be used for the property, if implemented, and shall conform to the constraints of XML datatype
xs:string. The specified value shall be a valid value according to the description of the property in the CIM Schema.
Note that a message can only specify a single property value, so if there is a need to use different values depending on
some condition, the message needs to be split up into multiple messages.
A value constraint for the (uint16 typed) ErrorSourceFormat property in CIM_Error. The character data of the element
shall be a decimal string representation of the value to be used for the property, if implemented, and shall conform to
the constraints of XML datatype xs:unsignedShort. The specified value shall be a valid value according to the
description of the property in the CIM Schema. Note that a message can only specify a single property value, so if
there is a need to use different values depending on some condition, the message needs to be split up into multiple
messages. The character data of the DESCRIPTION child element should contain the corresponding value of the Values
qualifier defined for the property in the CIM Schema and may contain other text.
A value constraint for the (string typed) OtherErrorSourceFormat property in CIM_Error. The character data of the
element shall be the value to be used for the property, if implemented, and shall conform to the constraints of XML
datatype xs:string. The specified value shall be a valid value according to the description of the property in the CIM
Schema. Note that according to that description, the property is used only if the ErrorSourceFormat property has a
value of 1 (Other). Note that a message can only specify a single property value, so if there is a need to use
different values depending on some condition, the message needs to be split up into multiple messages.
A value constraint for the (string typed) RecommendedActions array property in CIM_Error. Each occurence of the element
represents one array entry. The character data of the element shall be the value to be used for the property, if
implemented, and shall conform to the constraints of XML datatype xs:string. The specified value shall be a valid value
according to the description of the property in the CIM Schema. Note that a message can only specify a single property
value, so if there is a need to use different values depending on some condition, the message needs to be split up into
multiple messages.
A value constraint for the (string typed) AlertingManagedElement property in CIM_AlertIndication. The character data
of the element shall be the value to be used for the property, if implemented, and shall conform to the constraints of
XML datatype xs:string. The specified value shall be a valid value according to the description of the property in the
CIM Schema. Note that a message can only specify a single property value, so if there is a need to use different values
depending on some condition, the message needs to be split up into multiple messages.
A value constraint for the (uint16 typed) AlertingElementFormat property in CIM_AlertIndication. The character data
of the element shall be a decimal string representation of the value to be used for the property, if implemented, and
shall conform to the constraints of XML datatype xs:unsignedShort. The specified value shall be a valid value according
to the description of the property in the CIM Schema. Note that a message can only specify a single property value, so
if there is a need to use different values depending on some condition, the message needs to be split up into multiple
messages. The character data of the DESCRIPTION child element should contain the corresponding value of the Values
qualifier defined for the property in the CIM Schema and may contain other text.
A value constraint for the (string typed) OtherAlertingElementFormat property in CIM_AlertIndication. The character data
of the element shall be the value to be used for the property, if implemented, and shall conform to the constraints of XML
datatype xs:string. The specified value shall be a valid value according to the description of the property in the CIM
Schema. Note that according to that description, the property is used only if the AlertingElementFormat property has a
value of 1 (Other). Note that a message can only specify a single property value, so if there is a need to use
different values depending on some condition, the message needs to be split up into multiple messages.
A value constraint for the (uint16 typed) AlertType property in CIM_AlertIndication. The character data of the
element shall be a decimal string representation of the value to be used for the property, if implemented, and shall
conform to the constraints of XML datatype xs:unsignedShort. The specified value shall be a valid value according to the
description of the property in the CIM Schema. Note that a message can only specify a single property value, so if
there is a need to use different values depending on some condition, the message needs to be split up into multiple
messages. The character data of the DESCRIPTION child element should contain the corresponding value of the Values
qualifier defined for the property in the CIM Schema and may contain other text.
A value constraint for the (string typed) OtherAlertType property in CIM_AlertIndication. The character data of the
element shall be the value to be used for the property, if implemented, and shall conform to the constraints of XML
datatype xs:string. The specified value shall be a valid value according to the description of the property in the CIM
Schema. Note that according to that description, the property is used only if the AlertType property has a value of 1
(Other). Note that a message can only specify a single property value, so if there is a need to use different values
depending on some condition, the message needs to be split up into multiple messages.
A value constraint for the (uint16 typed) PerceivedSeverity property in CIM_Error and CIM_AlertIndication. The character data
of the element shall be a decimal string representation of the value that is recommended to be used for the property, if
implemented, and shall conform to the constraints of XML datatype xs:unsignedShort. Note that the specified value is not
required to be used, rather it is advisory and implementations may use other values. The specified value shall be a
valid value according to the description of the property in the CIM Schema. Note that a message can only specify a
single property value, so if there is a need to use different values depending on some condition, the message needs to
be split up into multiple messages. The character data of the DESCRIPTION child element should contain the
corresponding value of the Values qualifier defined for the property in the CIM Schema and may contain other text.