Grammar for Path Start: ServerSpec NameSpaceSpecAbs ':' ObjectSpec | ServerSpec ':' ObjectSpec | NameSpaceSpecAbs ':' ObjectSpec | NameSpaceSpecRel ':' ObjectSpec | ObjectSpec ServerSpec: '\' '\' ServerName ; ServerName: TOKEN_ID | '.' ; NameSpaceSpecAbs: '\' NameSpaceName NameSpaceSpecAbs | '\' NameSpaceName ; NameSpaceSpecRel: NameSpaceName NameSpaceSpecAbs | NameSpaceName ; NameSpaceName: TOKEN_ID | '.' ; ObjectSpec: OidReference | KeyReference ; OidReference: OID_ID ; KeyReference: ClassReference | ClassReference '=' "@" | ClassReference '=' PropertyValue | ClassReference '.' KeyPropertySpec ; ClassReference: TOKEN_ID ; PropertyReference: TOKEN_ID ; KeyPropertySpec: KeyPropertyPair ',' KeyPropertySpec | KeyPropertyPair ; KeyPropertyPair: PropertyReference '=' PropertyValue ; ArraySpec: '{' PropertyAtomicValueList '}' ; PropertyAtomicValueList: PropertyAtomicValue ',' PropertyAtomicValueList | PropertyAtomicValue ; PropertyValue: PropertyAtomicValue | ArraySpec ; PropertyAtomicValue: STRING_ID | TOKEN_ID | INTEGER_ID ; Lexical Regular Expressions STRING_ID = \".*\" ; OID_ID = \{ ([0-9]|[a-f]|[A-F]){8}\-([0-9]|[a-f]|[A-F]){4}\-([0-9]|[a-f]|[A-F]){4}\-([0-9]|[a-f]|[A-F]){4}\-([0-9]|[a-f]|[A-F]){12} \} ; INTEGER_ID = 0x([0-9]|[a-f]|[A-F])+ |[1-9]( [0-9] )* |0([0-7])+ ; TOKEN_ID = ([a-z]|[A-Z])([a-z]|[A-Z]|_|[0-9])* ;