// Object Path BNF // ================ // The first part of the grammar is the ns path. // ============================================= <umi_path> ::= UMICONST TOK_COLON FSLASH FSLASH <locator> FSLASH <ns_root_selector> FSLASH <component_list>; <locator> ::= IDENT ; // Machine name <locator> ::= DOT ; // current machine name <locator> ::= <>; // Machine name <ns_root_selector> ::= IDENT; <component_list> ::= <component><component_list_rest>; <component_list_rest> ::= FSLASH <component><component_list_rest>; <component_list_rest> ::= <>; <component> ::= IDENT <def_starts_with_ident>; <component> ::= DOT <key_list>; <component> ::= <GUID_PATH>; <def_starts_with_ident> ::= DOT <key_list>; <def_starts_with_ident> ::= TOK_EQUALS IDENT; <def_starts_with_ident> ::= <>; <guid_path> ::= TOK_GUILD_CONST TOK_GUID; <key_list> ::= <key><key_list_rest>; <key_list_rest> ::= TOK_COMMA <key><key_list_rest>; <key_list_rest> ::= <>; <key> ::= IDENT TOK_EQUALS IDENT;