You are here: Foswiki>System Web>Category>DeveloperDocumentationCategory>PerlDoc (2024-12-23, UnknownUser)Edit Attach
See PublishedAPI for packages intended to be used by Plugin and Contrib authors, or browse all packages.
See also Developing plugins, Developer's Bible, Technical Overview
internal package
Foswiki::Query::Parser is a
Foswiki::Infix::ParserParser for queries, using the Foswiki::Infix::Parser.
The default node type in the generated parse tree is Foswiki::Query::Node, though you can pass your own alternative class as an option (it must implement Foswiki::Infix::Node)
Query Language BNF
expr ::= and_expr 'or' expr | and_expr; and_expr ::= not_expr 'and' and_expr | not_expr; not_expr ::= 'not' comma_expr | comma_expr; comma_expr ::= cmp_expr ',' comma_expr | cmp_expr; cmp_expr ::= add_expr cmp_op cm_expr | add_expr; cmp_op ::= '<=' | '>=' | '<' | '>' | '=' | '=~' | '~' | '!=' | 'in'; add_expr ::= mul_expr add_op add_expr | mul_expr; mul_expr ::= ref_expr mul_op mul_expr | ref_expr; mul_op ::= '*' | 'div'; ref_expr ::= u_expr ref_op ref_expr | u_expr; ref_op ::= '/' | '.'; u_expr ::= value uop u_expr | value; uop ::= 'lc' | 'uc' | 'd2n' | 'length' | '-' | 'int' | '@'; value ::= <name> | <string> | <number>;
String and Numbers are as defined in Foswiki::Infix::Parser. Names default to /([A-Z:][A-Z0-9_:]*|({[A-Z][A-Z0-9_]*})+)/i
.
See QuerySearch for details of the query language.
Edit | Attach | Print version | History: r1 | Backlinks | View wiki text | Edit wiki text | More topic actions
Topic revision: r1 - 2024-12-23, UnknownUser
Copyright © by the contributing authors. All material on this site is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback