Update of /cvsroot/monetdb/pathfinder/compiler/semantics
In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv14617/compiler/semantics
Modified Files:
Tag: M5XQ
normalize.brg
Log Message:
propagated changes of Thursday Nov 05 2009 - Monday Nov 09 2009
from the development trunk to the M5XQ branch
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2009/11/05 - singhan: compiler/semantics/normalize.brg,1.28
XQuery full-text search support initial version!
This initial version provides support to
-ftcontains keyword,
e.g., for $f in doc("menu.xml")//food[./name ftcontains "Belgian Waffles"]
return $f
The above query will return all the food nodes that has some relevancy over
"Belgian Waffles"
-initial score variable support
e.g., for $f score $s in doc("menu.xml")//food[./name ftcontains "Belgian
Waffles"]
return $s
The above query will return the relevancy score of all the matched food
nodes, however since its an initial version, the support to this score variable
is very limited.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Index: normalize.brg
===================================================================
RCS file: /cvsroot/monetdb/pathfinder/compiler/semantics/normalize.brg,v
retrieving revision 1.26.4.1
retrieving revision 1.26.4.2
diff -u -d -r1.26.4.1 -r1.26.4.2
--- normalize.brg 7 May 2009 14:47:31 -0000 1.26.4.1
+++ normalize.brg 9 Nov 2009 00:04:43 -0000 1.26.4.2
@@ -208,6 +208,13 @@
%term seed = 128
%term xrpc = 129
%term docmgmt_ty = 130
+%term ftcontains = 131
+%term ftfilter = 132
+%term ftignore = 133
+%term ftor = 134
+%term ftand = 135
+%term ftmildnot = 136
+%term ftnot = 137
%%
@@ -417,22 +424,22 @@
AndExpr: ComparisonExpr = 118 (10);
AndExpr: and (ComparisonExpr, AndExpr) = 119 (10);
-ComparisonExpr: RangeExpr = 120 (10);
-ComparisonExpr: eq (RangeExpr, RangeExpr) = 121 (10);
-ComparisonExpr: ne (RangeExpr, RangeExpr) = 122 (10);
-ComparisonExpr: lt (RangeExpr, RangeExpr) = 123 (10);
-ComparisonExpr: le (RangeExpr, RangeExpr) = 124 (10);
-ComparisonExpr: gt (RangeExpr, RangeExpr) = 125 (10);
-ComparisonExpr: ge (RangeExpr, RangeExpr) = 126 (10);
-ComparisonExpr: val_eq (RangeExpr, RangeExpr) = 127 (10);
-ComparisonExpr: val_ne (RangeExpr, RangeExpr) = 128 (10);
-ComparisonExpr: val_lt (RangeExpr, RangeExpr) = 129 (10);
-ComparisonExpr: val_le (RangeExpr, RangeExpr) = 130 (10);
-ComparisonExpr: val_gt (RangeExpr, RangeExpr) = 131 (10);
-ComparisonExpr: val_ge (RangeExpr, RangeExpr) = 132 (10);
-ComparisonExpr: is (RangeExpr, RangeExpr) = 133 (10);
-ComparisonExpr: ltlt (RangeExpr, RangeExpr) = 135 (10);
-ComparisonExpr: gtgt (RangeExpr, RangeExpr) = 136 (10);
+ComparisonExpr: FTContainsExpr = 120 (10);
+ComparisonExpr: eq (FTContainsExpr, FTContainsExpr) = 121 (10);
+ComparisonExpr: ne (FTContainsExpr, FTContainsExpr) = 122 (10);
+ComparisonExpr: lt (FTContainsExpr, FTContainsExpr) = 123 (10);
+ComparisonExpr: le (FTContainsExpr, FTContainsExpr) = 124 (10);
+ComparisonExpr: gt (FTContainsExpr, FTContainsExpr) = 125 (10);
+ComparisonExpr: ge (FTContainsExpr, FTContainsExpr) = 126 (10);
+ComparisonExpr: val_eq (FTContainsExpr, FTContainsExpr) = 127 (10);
+ComparisonExpr: val_ne (FTContainsExpr, FTContainsExpr) = 128 (10);
+ComparisonExpr: val_lt (FTContainsExpr, FTContainsExpr) = 129 (10);
+ComparisonExpr: val_le (FTContainsExpr, FTContainsExpr) = 130 (10);
+ComparisonExpr: val_gt (FTContainsExpr, FTContainsExpr) = 131 (10);
+ComparisonExpr: val_ge (FTContainsExpr, FTContainsExpr) = 132 (10);
+ComparisonExpr: is (FTContainsExpr, FTContainsExpr) = 133 (10);
+ComparisonExpr: ltlt (FTContainsExpr, FTContainsExpr) = 135 (10);
+ComparisonExpr: gtgt (FTContainsExpr, FTContainsExpr) = 136 (10);
RangeExpr: AdditiveExpr = 137 (10);
RangeExpr: range (RangeExpr, RangeExpr) = 138 (10);
@@ -617,7 +624,53 @@
FunctionDeclaration: fun_decl (fun_sig (OptParamList_,
seq_ty (docmgmt_ty (nil))),
OptExpr) = 249 (10);
+
+/* Pathfinder full-text support */
+FTContainsExpr: RangeExpr = 250 (10);
+FTContainsExpr: ftcontains (RangeExpr, FTSelectionExpr) = 251 (10);
+FTContainsExpr: ftcontains (RangeExpr, FTFilterExpr) = 252 (10);
+
+VarPosBinding: bind (vars (vars (var_type
+ (varref,
+ OptTypeDeclaration_),
+ OptPositionalVar_),
+ OptFTScoreVar_),
+ OptExpr) = 253 (10);
+
+
+OptFTScoreVar_: nil = 254 (10);
+OptFTScoreVar_: FTScoreVar = 255 (10);
+
+FTScoreVar: varref = 256 (10);
+
+FTFilterExpr: ftfilter (FTSelectionExpr,
+ FTIgnoreOption) = 257 (10);
+FTIgnoreOption: ftignore (UnionExpr) = 258 (10);
+
+FTSelectionExpr: FTOrExpr = 259 (10);
+
+FTOrExpr: FTAndExpr = 260 (10);
+FTOrExpr: ftor (FTOrExpr, FTAndExpr) = 261 (10);
+
+FTAndExpr: FTMildNot = 262 (10);
+FTAndExpr: ftand (FTAndExpr, FTMildNot) = 263 (10);
+
+FTMildNot: FTUnaryNot = 264 (10);
+FTMildNot: ftmildnot (FTMildNot, FTUnaryNot) = 265 (10);
+
+FTUnaryNot: FTPrimaryWithOptions = 266 (10);
+FTUnaryNot: ftnot (FTPrimaryWithOptions) = 267 (10);
+FTPrimaryWithOptions: FTPrimaryExpr = 268 (10);
+
+FTPrimaryExpr: FTWordsExpr = 269 (10);
+FTPrimaryExpr: FTSelectionExpr = 270 (10);
+
+FTWordsExpr: FTWordsValueExpr = 271 (10);
+
+FTWordsValueExpr: Literal = 272 (10);
+
+LetBinding_: let (varref, OptExpr) = 273 (10);
%%
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Monetdb-pf-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-pf-checkins