ࡱ> oqn7 bjbjUU "B7|7|lLP4QE2&v-*4\DDDDDDD$F HD777D7 E7777 D77D77X?:HD,D PzH7tD D!E0QE~DRqI7qID7WBEM-SQL1 BNF: start ::=  HYPERLINK \l "select_statement" select-statement select-statement ::= SELECT  HYPERLINK \l "select_list" select-list HYPERLINK \l "select_expression"select-expression select-list ::= * |  HYPERLINK \l "property_list" property-list property-list ::= HYPERLINK \l "property_name" HYPERLINK \l "property_name" property-name [ ( , HYPERLINK \l "property_name" HYPERLINK \l "property_name" property-name) ] select-expression ::=  HYPERLINK \l "from_clause" from-clause [  HYPERLINK \l "where_clause" where-clause ] from-clause ::= FROM  HYPERLINK \l "class_name" class-name where-clause ::= WHERE  HYPERLINK \l "search_condition" search-condition search-condition ::=  HYPERLINK \l "boolean_term" boolean-term |  HYPERLINK \l "search_condition" search-condition OR  HYPERLINK \l "boolean_term" boolean-term boolean-term ::=  HYPERLINK \l "boolean_factor" boolean-factor |  HYPERLINK \l "boolean_term" boolean-term AND  HYPERLINK \l "boolean_factor" boolean-factor boolean-factor ::= [ NOT ]  HYPERLINK \l "boolean_test" boolean-test boolean-test ::=  HYPERLINK \l "boolean_primary" boolean-primary [ IS [ NOT ]  HYPERLINK \l "truth_value" truth-value ] boolean-primary ::=  HYPERLINK \l "predicate" predicate | (  HYPERLINK \l "search_condition" search-condition ) predicate ::=  HYPERLINK \l "comparison_predicate" comparison-predicate |  HYPERLINK \l "null_predicate" null-predicate comparison-predicate ::= HYPERLINK \l "comparison_term"comparison-term  HYPERLINK \l "comp_op" comp-op HYPERLINK \l "comparison_term"comparison-term comp-op ::= = | <> | < | > | <= | >= null-predicate ::=  HYPERLINK \l "comparison_term" comparison-term IS [ NOT ] NULL truth-value ::= TRUE | FALSE property-name = HYPERLINK \l "identifier"identifier class-name ::= HYPERLINK \l "identifier"identifier comparison-term ::=  HYPERLINK \l "property_name" property-name |  HYPERLINK \l "numeric_value_expression" numeric-value-expression | HYPERLINK \l "string_value_expression"string-value-expression |  HYPERLINK \l "truth_value" truth-value numeric-value-expression ::= [ HYPERLINK \l "sign" sign]  HYPERLINK \l "unsigned_numeric_literal" unsigned-numeric-literal unsigned-numeric-literal ::=  HYPERLINK \l "exact_numeric_literal" exact-numeric-literal |  HYPERLINK \l "approximate_numeric_literal" approximate-numeric-literal exact-numeric-literal ::=  HYPERLINK \l "unsigned_integer" unsigned-integer[.[ HYPERLINK \l "unsigned_integer" unsigned-integer]] | . HYPERLINK \l "unsigned_integer" unsigned-integer unsigned-integer ::=  HYPERLINK \l "digit" digit approximate-numeric-literal ::=  HYPERLINK \l "mantissa" mantissaE HYPERLINK \l "exponent" exponent mantissa ::=  HYPERLINK \l "exact_numeric_literal" exact-numeric-literal exponent ::=  HYPERLINK \l "signed_integer" signed-integer signed-integer ::= [ HYPERLINK \l "sign" sign] HYPERLINK \l "unsigned_integer" unsigned-integer string-value-expression ::=  HYPERLINK \l "character_string_literal" character-string-literal |  HYPERLINK \l "hex_string_literal" hex-string-literal |  HYPERLINK \l "bit_string_literal" bit-string-literal character-string-literal ::=  HYPERLINK \l "quote" quote[(UTF8-CHAR)]  HYPERLINK \l "quote" quote bit-string-literal ::= B HYPERLINK \l "quote" quote[ HYPERLINK \l "bit" bit... ] HYPERLINK \l "quote" quote[ ( HYPERLINK \l "quote" quote[ HYPERLINK \l "bit" bit... ] HYPERLINK \l "quote" quote)...] hex-string-literal ::= X HYPERLINK \l "quote" quote[ HYPERLINK \l "hexit" hexit... ] HYPERLINK \l "quote" quote[ ( HYPERLINK \l "quote" quote[ HYPERLINK \l "hexit" hexit... ] HYPERLINK \l "quote" quote)... ] identifier ::=  HYPERLINK \l "identifier_start" identifier-start [ ( HYPERLINK \l "identifier_subsequent" identifier-subsequent) ] identifier-start ::= HYPERLINK \l "upper_case_letter"upper-case-letter |  HYPERLINK \l "lower_case_letter" lower-case-letter | _ identifier-subsequent ::=  HYPERLINK \l "identifier_start" identifier-start |  HYPERLINK \l "digit" digit hexit ::= HYPERLINK \l "digit"digit | A..F | a..f upper-case-letter ::= A..Z lower-case-letter ::= a..z digit ::= 0..9 sign ::= + | - quote ::= bit ::= 0 | 1 WBEM-SQL1 YACC GRAMMAR: %{ %} %union { int intValue; double doubleValue; char* strValue; void* nodeValue; } %token EXACT_NUMBER %token APPROX_NUMBER %token STRING_LITERAL %token TRUE %token FALSE %token NULL %token EQ %token NE %token LT %token LE %token GT %token GE %token NOT %token OR %token AND %token IS %token IDENTIFIER %token SELECT %token WHERE %token FROM %token UNEXPECTED_CHAR %type propertyName %type propertyList %type predicate %type comparisonPredicate %type comparisonTerm %type nullPredicate %type searchCondition %type fromClause %type whereClause %type selectStatement %type selectList %type selectExpression %type className %left OR %left AND %nonassoc NOT %% start : selectStatement ; selectStatement : SELECT selectList selectExpression ; selectList : '*' ; | propertyList ; propertyList : propertyName ; | propertyList ',' propertyName ; selectExpression : fromClause whereClause ; | fromClause ; fromClause : FROM className ; whereClause : WHERE searchCondition ; searchCondition : searchCondition OR searchCondition ; | searchCondition AND searchCondition ; | NOT searchCondition ; | '(' searchCondition ')' ; | predicate ; | predicate IS truthValue ; | predicate IS NOT truthValue ; predicate : comparisonPredicate ; | nullPredicate ; comparisonPredicate : comparisonTerm LT comparisonTerm ; | comparisonTerm GT comparisonTerm ; | comparisonTerm LE comparisonTerm ; | comparisonTerm GE comparisonTerm ; | comparisonTerm EQ comparisonTerm ; | comparisonTerm NE comparisonTerm ; nullPredicate : comparisonTerm IS NULL ; | comparisonTerm IS NOT NULL ; truthValue : TRUE ; | FALSE ; propertyName : IDENTIFIER ; className : IDENTIFIER ; comparisonTerm : propertyName ; | EXACT_NUMBER ; | APPROX_NUMBER ; | STRING_LITERAL ; | truthValue ; %% <=>NOmn   -.KLNmno|~"#AjCJUjuCJUjCJUj{CJUjCJUjCJUjCJUjCJU0JCJjCJU jCJUCJ;PT= < Y R smABCOPij$%()KLM]^bc  +,-;jSCJUjCJUjYCJUjCJUj[CJUjCJUj]CJUjCJUCJ0JCJ jCJUjkCJU;;<YZxyz   ; < = F G N O q r s % & E F G V W X Y r jI CJUj CJUj? CJUj CJUjG CJUj CJUjM CJU0JCJjCJUCJ jCJU V W Z [ jCJUj;CJUjCJUj+CJUjCJUj=CJUj CJUj; CJUCJ0JCJ jCJUj CJU;     6 7 8 P Q o p <=>NOTUwxy!"<jCJUjoCJUjCJUjiCJUjCJUjCCJUjCJU0JCJjECJUCJ jCJU<<=>FGJKefgop./04567YZ[kl  456HjYCJUjCJUj?CJUjCJUjQCJUjCJUjECJUjCJUCJ0JCJ jCJUj_CJU;HIgh  )*+0145LMNSTUVklmpqvwjCJUjjCJUjCJUjCJUj'CJUjCJUjMCJU0JCJjCJUCJ jCJU?VWX]^cd{|}-.OPQbj CJUjQ CJUjCJUjaCJUjCJUjCJUjCJUjCJUCJ0JCJ jCJUj@CJU;bcfg#$9:;@ACJOJQJ^Jj"CJUjk"CJUj!CJU0JCJjc!CJUCJ jCJU"w(=Rg| 7YZy=ZZx ":;Kvw223>UVc&8X|} Ir"0>?M`al 1h/ =!"#$%DyK select_statementyDyK  select_listDyK select_expression}DyK property_list}DyK property_name}DyK property_name}DyK property_name}DyK property_nameyDyK  from_clause{DyK  where_clausewDyK  class_nameDyK search_condition{DyK  boolean_termDyK search_condition{DyK  boolean_termDyK boolean_factor{DyK  boolean_termDyK boolean_factor{DyK  boolean_testDyK boolean_primaryyDyK  truth_valueuDyK  predicateDyK search_conditionDyK comparison_predicateDyK null_predicateDyK comparison_termqDyK comp_opDyK comparison_termDyK comparison_termwDyK  identifierwDyK  identifier}DyK property_nameDyK numeric_value_expressionDyK string_value_expressionyDyK  truth_valuekDyK signDyK unsigned_numeric_literalDyK exact_numeric_literalDyK approximate_numeric_literalDyK unsigned_integerDyK unsigned_integerDyK unsigned_integermDyK digitsDyK  mantissasDyK  exponentDyK exact_numeric_literalDyK signed_integerkDyK signDyK unsigned_integerDyK character_string_literalDyK hex_string_literalDyK bit_string_literalmDyK quotemDyK quotemDyK quoteiDyK bitmDyK quotemDyK quoteiDyK bitmDyK quotemDyK quotemDyK hexitmDyK quotemDyK quotemDyK hexitmDyK quoteDyK identifier_startDyK identifier_subsequentDyK upper_case_letterDyK lower_case_letterDyK identifier_startmDyK digitmDyK digit iB@B Normal $xa$CJ_HaJmH sH tH 2@2 Heading 1$@&5\T@T Heading 2$<@& 56CJOJQJ\]^JaJ<A@< Default Paragraph Font.U@. Hyperlink >*B*ph>V@> FollowedHyperlink >*B* phB PT=  <YR  s  m J Xw.AUWXw(=Rg| 7YZy=Zx ":;Kvw23>UVc&8X|} Ir"0>?M`al000000000000@0@00@0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000A;r <HbmwZ2 =Nm -LMn|}"BOi$(L]b ,;Yy<FNr %FVXs{})i =VZ  7 P o  = N T x ! = F J f o  / 4 6 Z k  5 H g  *04MSUlpv6<>W]c|-Pbf#:@XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX _Hlt531865039 _Hlt531863610 _Hlt531880859 _Hlt531880860select_statement _Hlt531880703 _Hlt531863534 _Hlt531863535 _Hlt531849878 _Hlt531849879 _Hlt531865040 _Hlt531865074 _Hlt531880861 _Hlt531850051 _Hlt531863615 _Hlt531863537 _Hlt531863621 _Hlt531863513 _Hlt531880705 _Hlt531880862 _Hlt531865042 _Hlt531863532 select_list _Hlt531880706 _Hlt531880864 _Hlt531865076 _Hlt531865070 _Hlt531865071 _Hlt531865072 _Hlt531880708select_sublist property_list _Hlt531880709 _Hlt531880866 _Hlt531865027 _Hlt531880906select_expression _Hlt531850509 _Hlt531880978 _Hlt531850514 _Hlt531850505 _Hlt531880989 from_clause _Hlt531864111 _Hlt531880979 where_clause _Hlt531880991search_condition _Hlt531880992 _Hlt531881122 _Hlt531850786 _Hlt531850794 _Hlt531881131 _Hlt531850796 boolean_term _Hlt531850866 _Hlt531872324 _Hlt531880994 _Hlt531850868 _Hlt531881124 _Hlt531881125 _Hlt531867390 _Hlt531850883boolean_factor _Hlt531880995 _Hlt531855414 _Hlt531851057 _Hlt531872327 boolean_test _Hlt531851055 _Hlt531880996 _Hlt531881126 _Hlt531852079boolean_primary _Hlt531851124 _Hlt531880997 _Hlt531881133 _Hlt531852484 predicate _Hlt531881000 _Hlt531851165 _Hlt531852515 _Hlt531881135 _Hlt531852428comparison_predicate _Hlt531868109 _Hlt531880868 _Hlt531852508 _Hlt531881001 _Hlt531881005comp_opnull_predicate _Hlt531880711 _Hlt531881128 truth_value property_name _Hlt531880964 _Hlt531880908 table_name class_name _Hlt531880980comparison_term _Hlt531880778 _Hlt531880712 _Hlt531880713 _Hlt531880869 _Hlt531880724 _Hlt531880871 _Hlt531880775 _Hlt531853030 _Hlt531880722 _Hlt531880872 _Hlt531880715 _Hlt531880726 _Hlt531853032 _Hlt531880765 _Hlt531880740 _Hlt531880772 _Hlt531853033 _Hlt531880769 _Hlt531880770 _Hlt531881006numeric_value_expression _Hlt531880903 _Hlt531853902 _Hlt531877189 _Hlt531880781 _Hlt531881010 _Hlt531878079unsigned_numeric_literal _Hlt531880782 _Hlt531881012 _Hlt531880783 _Hlt531881014exact_numeric_literal _Hlt531880785 _Hlt531880894 _Hlt531880787 _Hlt531880896 _Hlt531880790 _Hlt531880898unsigned_integer _Hlt531880084 _Hlt531880900 _Hlt531880791approximate_numeric_literal _Hlt531880795 _Hlt531880968 _Hlt531880265 _Hlt531880969mantissa _Hlt531880797 _Hlt531880892exponent _Hlt531880799 _Hlt531880971signed_integer _Hlt531880965 _Hlt531880801 _Hlt531880972string_value_expression _Hlt531880874 _Hlt531880875 _Hlt531880877character_string_literal _Hlt531880889 _Hlt531880699 _Hlt531880887bit_string_literal _Hlt531880974 _Hlt531881016 _Hlt531881021 _Hlt531881027 _Hlt531881035 _Hlt531881024hex_string_literal _Hlt531880880 _Hlt531881115 _Hlt531881030 _Hlt531881119 _Hlt531881032 _Hlt531881019 identifier _Hlt531853624 _Hlt531880953 _Hlt531863696 _Hlt531880981 _Hlt531853768identifier_start _Hlt531881074 _Hlt531881038 _Hlt531881107 _Hlt531854229 _Hlt531881110 _Hlt531854247identifier_subsequent _Hlt531853805 _Hlt531880984 _Hlt531880985 _Hlt531853829hexit _Hlt531880063 _Hlt531880259 _Hlt531880883 _Hlt531880058 _Hlt531880059 _Hlt531880070 _Hlt531880080upper_case_letterlower_case_letterdigitsignquotebitEIIIP  uwxHJT T125=| ?C{} NOvw<YDFJJ  < C F R E E { ~  @ @ i j s   2 _ m : J -PU8Y RYY\#<<====Xw@@@@@@@@ @ @ @ @ @@@@@@@@@@@@@@@@ @!@"@#@$%@&@'@(@)@*+@,@-.@/0@1@2@3@4@5@67@8@9@:@;@<@=@>@?@@A@B@C@DE@F@G@H@IJ@K@L@M@NO@P@Q@R@S@TU@V@W@X@Y@Z[\@]@^_`@a@bcd@ef@g@h@i@j@k@l@m@n@o@p@q@r@s@t@u@v@w@x@y@z}@{@|@~@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@FJJJPvxyIKT!U236=}@D|~ OPwx<Y EGKK  = D G R F F |   A A j k s  3 5 ` m ; J .Qq9Z SZZ]==>>>>AXwmbrasher_C:\Documents and Settings\mbrasher\Application Data\Microsoft\Word\AutoRecovery save of bnf.asdmbrasher_C:\Documents and Settings\mbrasher\Application Data\Microsoft\Word\AutoRecovery save of bnf.asdmbrasher_C:\Documents and Settings\mbrasher\Application Data\Microsoft\Word\AutoRecovery save of bnf.asdmbrasher_C:\Documents and Settings\mbrasher\Application Data\Microsoft\Word\AutoRecovery save of bnf.asdmbrasher_C:\Documents and Settings\mbrasher\Application Data\Microsoft\Word\AutoRecovery save of bnf.asdmbrasher_C:\Documents and Settings\mbrasher\Application Data\Microsoft\Word\AutoRecovery save of bnf.asdmbrasher_C:\Documents and Settings\mbrasher\Application Data\Microsoft\Word\AutoRecovery save of bnf.asdmbrasher_C:\Documents and Settings\mbrasher\Application Data\Microsoft\Word\AutoRecovery save of bnf.asdmbrasher_C:\Documents and Settings\mbrasher\Application Data\Microsoft\Word\AutoRecovery save of bnf.asdmbrasher&D:\tog\pegasus\src\Pegasus\WQL\bnf.doc"age:h4%9lDh ^`OJQJo(h ^`OJQJo(oh pp^p`OJQJo(h @ @ ^@ `OJQJo(h ^`OJQJo(oh ^`OJQJo(h ^`OJQJo(h ^`OJQJo(oh PP^P`OJQJo(h ^`OJQJo(h ^`OJQJo(oh pp^p`OJQJo(h @ @ ^@ `OJQJo(h ^`OJQJo(oh ^`OJQJo(h ^`OJQJo(h ^`OJQJo(oh PP^P`OJQJo(%9l"age                  @VVԽsVV@UnknownGz Times New Roman5Symbol3& z Arial?5 z Courier New;Wingdings"hk \ƻ \/ \A /!0dT 2QB<query specification> ::= SELECT <select list><table expression> mbrashermbrasherOh+'0 $4 HT p |  C ::= SELECT Title 8@ _PID_HLINKSAdigitdigit"identifier_start7,lower_case_letter)3upper_case_letter6identifier_subsequent"identifier_startquote hexitquotequote hexitquotequotebibitquotequotebibitquotequotequoteKJbit_string_literalMFhex_string_literal8?character_string_literal5unsigned_integersign@ksigned_integerexact_numeric_literal exponent mantissa~digit5{unsigned_integer5xunsigned_integer5uunsigned_integerkwrapproximate_numeric_literaloexact_numeric_literallunsigned_numeric_literalisignsMf truth_valuekicstring_value_expression`numeric_value_expression0 ]property_name{xZ identifier{xW identifierSvTcomparison_termSvQcomparison_termQpNcomp_opSvKcomparison_term\aHnull_predicate7Ecomparison_predicate>Bsearch_condition? predicatesM< truth_value~P9boolean_primary,6 boolean_testlZ3boolean_factor50 boolean_termlZ-boolean_factor5* boolean_term>'search_condition5$ boolean_term>!search_conditionrD class_name9 where_clauseOn from_clause0 property_name0 property_name0 property_name0  property_name8 property_list3select_expressionJk select_list select_statement  !#$%&'()*+,-./012356789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXZ[\]^_`bcdefghijklmpRoot Entry FzrData "E#1Table4qIWordDocument"BSummaryInformation(YDocumentSummaryInformation8atCompObjjObjectPoolzz  FMicrosoft Word Document MSWordDocWord.Document.89q