2.2.2 CIM Path and Namespace

The syntax for CIM path and namespace is provided in ABNF notation.

 ; -----------------------------------
 ; CIM PATH
 ; -----------------------------------
  
 CIMPATH = ( <NAMESPACE-PATH> COLON <OBJECT-PATH> ) /
   <OBJECT-PATH>
    NAMESPACE-PATH = [<MACHINE-PATH>] NAMESPACE
    MACHINE-PATH = BACKSLASH BACKSLASH <MACHINENAME> BACKSLASH
    OBJECT-PATH = <CLASS-NAME> [<INSTANCE-KEY>]
    INSTANCE-KEY = (EQUAL "@") / DOT <KEY-VALUE-LIST>
    KEY-VALUE-LIST = <PROPERTY-NAME> EQUAL 
      <TYPED-CONSTANT> <KEY-VALUE-LIST2>
    KEY-VALUE-LIST2 = [ COMMA KEY-VALUE-LIST ]
  
  
 CLASS-NAME = [__]<STRING-IDENTIFIER>
 PROPERTY-NAME = [__]<STRING-IDENTIFIER>
  
 ; -----------------------------------
 ; NAMESPACE
 ; -----------------------------------
  
 NAMESPACE = <STRING-IDENTIFIER> <SUB-NAMESPACE> 
 <SUB-NAMESPACE> = [ BACKSLASH <NAMESPACE> ]
  
 TYPED-CONSTANT = INT /
                  REAL /
                  STRING / 
                  DATETIME / 
                  BOOL
  
 INT = "[-+]?\d*"
 REAL = "[-+]?\d*(\.\d+)?"
 STRING = ["]([a-z][A-Z]\d)*["]
 DATETIME = 
 "(\d\d\d\d)(0\d|1[012])(0\d|[12][0-9]|3[01])([0-1]\d|2[0-3])([0-5]\d)([0-5]\d)[.]\d\d\d\d\d\d[+-]([0-6][02468][0]|7[0-2][0])"
  
 BOOL = "TRUE" / "FALSE"
  
 ; -----------------------------------
 ; Characters
 ; -----------------------------------
  
 ALPHA = %x41-5A
 DIGIT = %x30-39
 BACKSLASH = "\"
 DOT = "."
 STRING-IDENTIFIER = ALPHA *(ALPHA / DIGIT / (*("_") ALPHA / DIGIT))
 COLON=":"
 MACHINENAME = <STRING-IDENTIFIER> / DOT 
           

Objects and keywords

Description

OBJECT-PATH

The path of the CIM class or CIM instance to be referenced.

MACHINENAME

The network-identifiable name of the machine where the referenced WMI class, instance, or namespace resides.

CLASS-NAME

Identifies a CIM class name.

INSTANCE-KEY

Uniquely identifies the instance of a given CIM class.

KEY-VALUE-LIST

List of property names and their values, separated by a ",". Each property value pair is represented in propertyName=value format.

PROPERTY-NAME

Identifies the name of a property of the CIM class.