Skip to content

Commit 16d418d

Browse files
authored
Merge pull request #4927 from joewiz/remove-deprecated-variable-declaration
Remove pre-1.0 syntax for variable declarations
2 parents 7ecd64f + 7e8846e commit 16d418d

File tree

6 files changed

+40
-42
lines changed

6 files changed

+40
-42
lines changed

exist-core/src/main/antlr/org/exist/xquery/parser/XQuery.g

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -359,8 +359,6 @@ varDecl [XQueryAST decl, XQueryAST ann] throws XPathException
359359
(
360360
"external" ( COLON! EQ! e3:expr )?
361361
|
362-
LCURLY! e1:expr RCURLY! // deprecated
363-
|
364362
COLON! EQ! e2:expr
365363
)
366364
{

exist-core/src/test/java/org/exist/http/RESTServiceTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ public class RESTServiceTest {
122122

123123
private static final String TEST_MODULE =
124124
"module namespace t=\"http://test.foo\";\n" +
125-
"declare variable $t:VAR { 'World!' };";
125+
"declare variable $t:VAR := 'World!';";
126126

127127
private static final String TEST_XQUERY =
128128
"xquery version \"1.0\";\n" +
@@ -143,7 +143,7 @@ public class RESTServiceTest {
143143
private static final String TEST_XQUERY_PARAMETER_MODULE =
144144
"module namespace requestparametermod = \"http://exist-db.org/xquery/requestparametermod\";\n" +
145145
"declare namespace request=\"http://exist-db.org/xquery/request\";\n" +
146-
"declare variable $requestparametermod:request { request:get-parameter(\"doc\",())};\n";
146+
"declare variable $requestparametermod:request := request:get-parameter(\"doc\",());\n";
147147

148148
private static final String TEST_XQUERY_WITH_PATH_PARAMETER =
149149
"xquery version \"1.0\";\n" +

exist-core/src/test/java/org/exist/xquery/XPathQueryTest.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -839,23 +839,23 @@ public void position() throws XMLDBException, IOException, SAXException {
839839
assertEquals("XPath: " + query, "1", resource.getContent().toString());
840840

841841

842-
query = "declare variable $doc { <root>" +
842+
query = "declare variable $doc := <root>" +
843843
"<a>1</a><a>2</a><a>3</a><a>4</a><a>5</a><a>6</a><a>7</a>" +
844-
"</root> }; " +
844+
"</root>; " +
845845
"(for $x in $doc/a return $x)[position() mod 3 = 2]";
846846
result = service.queryResource("numbers.xml", query);
847847
assertEquals("XPath: " + query, 2, result.getSize());
848848

849-
query = "declare variable $doc { <root>" +
849+
query = "declare variable $doc := <root>" +
850850
"<a>1</a><a>2</a><a>3</a><a>4</a><a>5</a><a>6</a><a>7</a>" +
851-
"</root> }; " +
851+
"</root>; " +
852852
"for $x in $doc/a return $x[position() mod 3 = 2]";
853853
result = service.queryResource("numbers.xml", query);
854854
assertEquals("XPath: " + query, 0, result.getSize());
855855

856-
query = "declare variable $doc { <root>" +
856+
query = "declare variable $doc := <root>" +
857857
"<a>1</a><a>2</a><a>3</a><a>4</a><a>5</a><a>6</a><a>7</a>" +
858-
"</root> }; " +
858+
"</root>; " +
859859
"for $x in $doc/a[position() mod 3 = 2] return $x";
860860
result = service.queryResource("numbers.xml", query);
861861
assertEquals("XPath: " + query, 2, result.getSize());

exist-core/src/test/java/org/exist/xquery/XQueryFunctionsTest.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -194,11 +194,11 @@ public void compare() throws XPathException, XMLDBException {
194194

195195
@Test
196196
public void distinctValues() throws XMLDBException {
197-
ResourceSet result = existEmbeddedServer.executeQuery("declare variable $c { distinct-values(('a', 'a')) }; $c");
197+
ResourceSet result = existEmbeddedServer.executeQuery("declare variable $c := distinct-values(('a', 'a')); $c");
198198
String r = (String) result.getResource(0).getContent();
199199
assertEquals("a", r);
200200

201-
result = existEmbeddedServer.executeQuery("declare variable $c { distinct-values((<a>a</a>, <b>a</b>)) }; $c");
201+
result = existEmbeddedServer.executeQuery("declare variable $c := distinct-values((<a>a</a>, <b>a</b>)); $c");
202202
r = (String) result.getResource(0).getContent();
203203
assertEquals("a", r);
204204

@@ -213,16 +213,16 @@ public void distinctValues() throws XMLDBException {
213213

214214
@Test
215215
public void sum() throws XMLDBException {
216-
ResourceSet result = existEmbeddedServer.executeQuery("declare variable $c { sum((1, 2)) }; $c");
216+
ResourceSet result = existEmbeddedServer.executeQuery("declare variable $c := sum((1, 2)); $c");
217217
String r = (String) result.getResource(0).getContent();
218218
assertEquals("3", r);
219219

220-
result = existEmbeddedServer.executeQuery("declare variable $c { sum((<a>1</a>, <b>2</b>)) }; $c");
220+
result = existEmbeddedServer.executeQuery("declare variable $c := sum((<a>1</a>, <b>2</b>)); $c");
221221
r = (String) result.getResource(0).getContent();
222222
//Any untyped atomic values in the sequence are converted to xs:double values ([MK Xpath 2.0], p. 432)
223223
assertEquals("3", r);
224224

225-
result = existEmbeddedServer.executeQuery("declare variable $c { sum((), 3) }; $c");
225+
result = existEmbeddedServer.executeQuery("declare variable $c := sum((), 3); $c");
226226
r = (String) result.getResource(0).getContent();
227227
assertEquals("3", r);
228228
}

exist-core/src/test/java/org/exist/xquery/XQueryTest.java

Lines changed: 26 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -100,11 +100,11 @@ public class XQueryTest {
100100
private final static String numbers =
101101
"<test>" + "<item id='1'><price>5.6</price><stock>22</stock></item>" + "<item id='2'><price>7.4</price><stock>43</stock></item>" + "<item id='3'><price>18.4</price><stock>5</stock></item>" + "<item id='4'><price>65.54</price><stock>16</stock></item>" + "</test>";
102102
private final static String module1 =
103-
"module namespace blah=\"blah\";\n" + "declare variable $blah:param {\"value-1\"};";
103+
"module namespace blah=\"blah\";\n" + "declare variable $blah:param := \"value-1\";";
104104
private final static String module2 =
105-
"module namespace foo=\"\";\n" + "declare variable $foo:bar {\"bar\"};";
105+
"module namespace foo=\"\";\n" + "declare variable $foo:bar := \"bar\";";
106106
private final static String module3 =
107-
"module namespace foo=\"foo\";\n" + "declare variable $bar:bar {\"bar\"};";
107+
"module namespace foo=\"foo\";\n" + "declare variable $bar:bar := \"bar\";";
108108
private final static String module4 =
109109
"module namespace foo=\"foo\";\n" //An external prefix in the statically known namespaces
110110
+ "declare variable $exist:bar external;\n" + "declare function foo:bar() {\n" + "$exist:bar\n" + "};";
@@ -125,11 +125,11 @@ public class XQueryTest {
125125
+"};";
126126

127127
private final static String fatherModule =
128-
"module namespace foo=\"foo\";\n" + "import module namespace foo1=\"foo1\" at \"" + URI + "/test/" + CHILD1_MODULE_NAME + "\";\n" + "import module namespace foo2=\"foo2\" at \"" + URI + "/test/" + CHILD2_MODULE_NAME + "\";\n" + "declare variable $foo:bar { \"bar\" };\n " + "declare variable $foo:bar1 { $foo1:bar };\n" + "declare variable $foo:bar2 { $foo2:bar };\n";
128+
"module namespace foo=\"foo\";\n" + "import module namespace foo1=\"foo1\" at \"" + URI + "/test/" + CHILD1_MODULE_NAME + "\";\n" + "import module namespace foo2=\"foo2\" at \"" + URI + "/test/" + CHILD2_MODULE_NAME + "\";\n" + "declare variable $foo:bar := \"bar\";\n " + "declare variable $foo:bar1 := $foo1:bar;\n" + "declare variable $foo:bar2 := $foo2:bar;\n";
129129
private final static String child1Module =
130-
"module namespace foo=\"foo1\";\n" + "import module namespace blah=\"blah\" at \"" + URI + "/test/" + MODULE1_NAME + "\";\n" + "declare variable $foo:bar {\"bar1\"};";
130+
"module namespace foo=\"foo1\";\n" + "import module namespace blah=\"blah\" at \"" + URI + "/test/" + MODULE1_NAME + "\";\n" + "declare variable $foo:bar := \"bar1\";";
131131
private final static String child2Module =
132-
"module namespace foo=\"foo2\";\n" + "import module namespace blah=\"blah\" at \"" + URI + "/test/" + MODULE1_NAME + "\";\n" + "declare variable $foo:bar {\"bar2\"};";
132+
"module namespace foo=\"foo2\";\n" + "import module namespace blah=\"blah\" at \"" + URI + "/test/" + MODULE1_NAME + "\";\n" + "declare variable $foo:bar := \"bar2\";";
133133
private final static String namespacedDocument =
134134
"<rdf:RDF xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\"\n" +
135135
"xmlns:dc=\"http://purl.org/dc/elements/1.1/\"\n" +
@@ -392,30 +392,30 @@ public void variable() throws XMLDBException {
392392

393393
XPathQueryService service =
394394
storeXMLStringAndGetQueryService(NUMBERS_XML, numbers);
395-
query = "xquery version \"1.0\";\n" + "declare namespace param=\"param\";\n" + "declare variable $param:a {\"a\"};\n" + "declare function param:a() {$param:a};\n" + "let $param:a := \"b\" \n" + "return ($param:a, $param:a)";
395+
query = "xquery version \"1.0\";\n" + "declare namespace param=\"param\";\n" + "declare variable $param:a := \"a\";\n" + "declare function param:a() {$param:a};\n" + "let $param:a := \"b\" \n" + "return ($param:a, $param:a)";
396396
result = service.query(query);
397397
assertEquals("XQuery: " + query, 2, result.getSize());
398398
assertEquals("XQuery: " + query, "b", result.getResource(0).getContent());
399399
assertEquals("XQuery: " + query, "b", result.getResource(1).getContent());
400-
query = "xquery version \"1.0\";\n" + "declare namespace param=\"param\";\n" + "declare variable $param:a {\"a\"};\n" + "declare function param:a() {$param:a};\n" + "let $param:a := \"b\" \n" + "return param:a(), param:a()";
400+
query = "xquery version \"1.0\";\n" + "declare namespace param=\"param\";\n" + "declare variable $param:a := \"a\";\n" + "declare function param:a() {$param:a};\n" + "let $param:a := \"b\" \n" + "return param:a(), param:a()";
401401
result = service.query(query);
402402
assertEquals("XQuery: " + query, 2, result.getSize());
403403
assertEquals("XQuery: " + query, "a", result.getResource(0).getContent());
404404
assertEquals("XQuery: " + query, "a", result.getResource(1).getContent());
405-
query = "declare variable $foo {\"foo1\"};\n" + "let $foo := \"foo2\" \n" + "for $bar in (1 to 1) \n" + " let $foo := \"foo3\" \n" + " return $foo";
405+
query = "declare variable $foo := \"foo1\";\n" + "let $foo := \"foo2\" \n" + "for $bar in (1 to 1) \n" + " let $foo := \"foo3\" \n" + " return $foo";
406406
result = service.query(query);
407407
assertEquals("XQuery: " + query, 1, result.getSize());
408408
assertEquals("XQuery: " + query, "foo3", result.getResource(0).getContent());
409409

410410
try {
411411
message = "";
412-
query = "xquery version \"1.0\";\n" + "declare variable $a {\"1st instance\"};\n" + "declare variable $a {\"2nd instance\"};\n" + "$a";
412+
query = "xquery version \"1.0\";\n" + "declare variable $a := \"1st instance\";\n" + "declare variable $a := \"2nd instance\";\n" + "$a";
413413
result = service.query(query);
414414
} catch (XMLDBException e) {
415415
message = e.getMessage();
416416
}
417417
assertTrue(message.indexOf("XQST0049") > -1);
418-
query = "xquery version \"1.0\";\n" + "declare namespace param=\"param\";\n" + "declare function param:f() { $param:a };\n" + "declare variable $param:a {\"a\"};\n" + "param:f()";
418+
query = "xquery version \"1.0\";\n" + "declare namespace param=\"param\";\n" + "declare function param:f() { $param:a };\n" + "declare variable $param:a := \"a\";\n" + "param:f()";
419419
result = service.query(query);
420420
assertEquals("XQuery: " + query, 1, result.getSize());
421421
assertEquals("XQuery: " + query, "a", result.getResource(0).getContent());
@@ -568,21 +568,21 @@ public void typedVariables() throws XMLDBException {
568568
message = e.getMessage();
569569
}
570570
assertTrue(exceptionThrown);
571-
query = "declare variable $v as element()* {( <assign/> , <assign/> ) };\n" + "declare variable $w { <r>{ $v }</r> };\n" + "declare variable $x as element()* { $w/assign };\n" + "$x";
571+
query = "declare variable $v as element()* := ( <assign/> , <assign/> );\n" + "declare variable $w := <r>{ $v }</r>;\n" + "declare variable $x as element()* := $w/assign;\n" + "$x";
572572
result = service.query(query);
573573
assertEquals("XQuery: " + query, 2, result.getSize());
574574
assertEquals("XQuery: " + query, Node.ELEMENT_NODE, ((XMLResource) result.getResource(0)).getContentAsDOM().getNodeType());
575575
assertEquals("XQuery: " + query, "assign", ((XMLResource) result.getResource(0)).getContentAsDOM().getNodeName());
576-
query = "declare variable $v as node()* { () };\n" + "$v";
576+
query = "declare variable $v as node()* := ();\n" + "$v";
577577
result = service.query(query);
578578
assertEquals("XQuery: " + query, 0, result.getSize());
579-
query = "declare variable $v as item()* { () };\n" + "$v";
579+
query = "declare variable $v as item()* := ();\n" + "$v";
580580
result = service.query(query);
581581
assertEquals("XQuery: " + query, 0, result.getSize());
582-
query = "declare variable $v as empty-sequence() { () };\n" + "$v";
582+
query = "declare variable $v as empty-sequence() := ();\n" + "$v";
583583
result = service.query(query);
584584
assertEquals("XQuery: " + query, 0, result.getSize());
585-
query = "declare variable $v as item() { () };\n" + "$v";
585+
query = "declare variable $v as item() := ();\n" + "$v";
586586
try {
587587
exceptionThrown = false;
588588
result = service.query(query);
@@ -591,13 +591,13 @@ public void typedVariables() throws XMLDBException {
591591
message = e.getMessage();
592592
}
593593
assertTrue("XQuery: " + query, exceptionThrown);
594-
query = "declare variable $v as item()* { ( <a/> , 1 ) }; \n" + "$v";
594+
query = "declare variable $v as item()* := ( <a/> , 1 );\n" + "$v";
595595
result = service.query(query);
596596
assertEquals("XQuery: " + query, 2, result.getSize());
597597
assertEquals("XQuery: " + query, Node.ELEMENT_NODE, ((XMLResource) result.getResource(0)).getContentAsDOM().getNodeType());
598598
assertEquals("XQuery: " + query, "a", ((XMLResource) result.getResource(0)).getContentAsDOM().getNodeName());
599599
assertEquals("XQuery: " + query, "1", result.getResource(1).getContent());
600-
query = "declare variable $v as node()* { ( <a/> , 1 ) };\n" + "$v";
600+
query = "declare variable $v as node()* := ( <a/> , 1 );\n" + "$v";
601601
try {
602602
exceptionThrown = false;
603603
result = service.query(query);
@@ -606,7 +606,7 @@ public void typedVariables() throws XMLDBException {
606606
message = e.getMessage();
607607
}
608608
assertTrue(exceptionThrown);
609-
query = "declare variable $v as item()* { ( <a/> , 1 ) };\n" + "declare variable $w as element()* { $v };\n" + "$w";
609+
query = "declare variable $v as item()* := ( <a/> , 1 );\n" + "declare variable $w as element()* := $v;\n" + "$w";
610610
try {
611611
exceptionThrown = false;
612612
result = service.query(query);
@@ -634,7 +634,7 @@ public void precedence() throws XMLDBException {
634634

635635
XPathQueryService service =
636636
storeXMLStringAndGetQueryService(NUMBERS_XML, numbers);
637-
query = "xquery version \"1.0\";\n" + "declare namespace blah=\"blah\";\n" + "declare variable $blah:param {\"value-1\"};\n" + "let $blah:param := \"value-2\"\n" + "(:: FLWOR expressions have a higher precedence than the comma operator ::)\n" + "return $blah:param, $blah:param ";
637+
query = "xquery version \"1.0\";\n" + "declare namespace blah=\"blah\";\n" + "declare variable $blah:param := \"value-1\";\n" + "let $blah:param := \"value-2\"\n" + "(:: FLWOR expressions have a higher precedence than the comma operator ::)\n" + "return $blah:param, $blah:param ";
638638
result = service.query(query);
639639
assertEquals("XQuery: " + query, 2, result.getSize());
640640
assertEquals("XQuery: " + query, "value-2", result.getResource(0).getContent());
@@ -829,7 +829,7 @@ public void namespace() throws XMLDBException, IOException, SAXException {
829829
message = e.getMessage();
830830
}
831831
assertTrue(message.indexOf("XQST0033") > -1);
832-
query = "xquery version \"1.0\";\n" + "import module namespace blah=\"blah\" at \"" + URI + "/test/" + MODULE1_NAME + "\";\n" + "(:: redefine existing prefix with same getUri ::)\n" + "declare namespace blah=\"blah\";\n" + "declare variable $blah:param {\"value-2\"};\n" + "$blah:param";
832+
query = "xquery version \"1.0\";\n" + "import module namespace blah=\"blah\" at \"" + URI + "/test/" + MODULE1_NAME + "\";\n" + "(:: redefine existing prefix with same getUri ::)\n" + "declare namespace blah=\"blah\";\n" + "declare variable $blah:param := \"value-2\";\n" + "$blah:param";
833833
try {
834834
message = "";
835835
result = service.query(query);
@@ -923,16 +923,16 @@ public void namespaceWithTransform() throws XMLDBException {
923923
String query =
924924
"xquery version \"1.0\";\n" +
925925
"declare namespace transform=\"http://exist-db.org/xquery/transform\";\n" +
926-
"declare variable $xml {\n" +
926+
"declare variable $xml := \n" +
927927
" <node>text</node>\n" +
928-
"};\n" +
929-
"declare variable $xslt {\n" +
928+
";\n" +
929+
"declare variable $xslt := \n" +
930930
" <xsl:stylesheet xmlns=\"http://www.w3.org/1999/xhtml\" xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\" version=\"2.0\">\n" +
931931
" <xsl:template match=\"node\">\n" +
932932
" <div><xsl:value-of select=\".\"/></div>\n" +
933933
" </xsl:template>\n" +
934934
" </xsl:stylesheet>\n" +
935-
"};\n" +
935+
";\n" +
936936
"<html xmlns=\"http://www.w3.org/1999/xhtml\">\n" +
937937
" <body>\n" +
938938
" {transform:transform($xml, $xslt, ())}\n" +
@@ -999,7 +999,7 @@ public void module() throws XMLDBException {
999999
assertEquals("XQuery: " + query, 1, result.getSize());
10001000
assertEquals("XQuery: " + query, "value-1", result.getResource(0).getContent());
10011001

1002-
// query = "xquery version \"1.0\";\n" + "import module namespace blah=\"blah\" at \"" + getUri + "/test/" + MODULE1_NAME + "\";\n" + "(:: redefine variable ::)\n" + "declare variable $blah:param {\"value-2\"};\n" + "$blah:param";
1002+
// query = "xquery version \"1.0\";\n" + "import module namespace blah=\"blah\" at \"" + getUri + "/test/" + MODULE1_NAME + "\";\n" + "(:: redefine variable ::)\n" + "declare variable $blah:param := \"value-2\";\n" + "$blah:param";
10031003
// try {
10041004
// message = "";
10051005
// result = service.query(query);

exist-core/src/test/java/org/exist/xquery/functions/util/EvalTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -232,7 +232,7 @@ public void evalWithMissingVariableReferenceShouldReportTheSameErrorEachTime() t
232232
final String configModuleName = "config-test.xqm";
233233
final String configModule = "xquery version \"1.0\";\r\n" +
234234
"module namespace ct = \"http://config/test\";\r\n" +
235-
"declare variable $ct:var1 { request:get-parameter(\"var1\", ()) };";
235+
"declare variable $ct:var1 := request:get-parameter(\"var1\", ());";
236236

237237
writeModule(testHome, configModuleName, configModule);
238238

0 commit comments

Comments
 (0)