diff --git a/marklogic-client-api/src/main/java/com/marklogic/client/expression/CtsExpr.java b/marklogic-client-api/src/main/java/com/marklogic/client/expression/CtsExpr.java index 945c79805..4871673b2 100644 --- a/marklogic-client-api/src/main/java/com/marklogic/client/expression/CtsExpr.java +++ b/marklogic-client-api/src/main/java/com/marklogic/client/expression/CtsExpr.java @@ -45,7 +45,11 @@ import com.marklogic.client.type.CtsRegionExpr; import com.marklogic.client.type.CtsRegionSeqExpr; -// IMPORTANT: Do not edit. This file is generated. +// IMPORTANT: Do not edit. This file is generated. + +// 2023-10-24 Exception: Manual changes have been made to this to expose the string constructors for cts.point and +// cts.polygon. These changes can be removed once optic-defs.json in the xdmp repository is updated to define these +// constructors. /** * Builds expressions to call functions in the cts server library for a row @@ -56,7 +60,7 @@ public interface CtsExpr { * Returns a query matching fragments committed after a specified timestamp. * * - + *
* Provides a client interface to the cts:after-query server function. * @param timestamp A commit timestamp. Database fragments committed after this timestamp are matched. (of xs:unsignedLong) @@ -67,7 +71,7 @@ public interface CtsExpr { * Returns a query specifying the set difference of the matches specified by two sub-queries. * * - + *
* Provides a client interface to the cts:and-not-query server function. * @param positiveQuery A positive query, specifying the search results filtered in. (of cts:query) @@ -87,7 +91,7 @@ public interface CtsExpr { * Returns a query specifying the intersection of the matches specified by the sub-queries. * * - + *
* Provides a client interface to the cts:and-query server function. * @param queries A sequence of sub-queries. (of cts:query) @@ -116,7 +120,7 @@ public interface CtsExpr { * Returns a query matching fragments committed before or at a specified timestamp. * * - + *
* Provides a client interface to the cts:before-query server function. * @param timestamp A commit timestamp. Database fragments committed before this timestamp are matched. (of xs:unsignedLong) @@ -127,7 +131,7 @@ public interface CtsExpr { * Returns a query specifying that matches to matching-query should have their search relevance scores boosted if they also match boosting-query. * * - + *
* Provides a client interface to the cts:boost-query server function. * @param matchingQuery A sub-query that is used for match and scoring. (of cts:query) @@ -150,7 +154,7 @@ public interface CtsExpr { * Returns a geospatial box value. * * - + *
* Provides a client interface to the cts:box server function. * @param south The southern boundary of the box. (of xs:double) @@ -164,7 +168,7 @@ public interface CtsExpr { * Returns a box's eastern boundary. * * - + *
* Provides a client interface to the cts:box-east server function. * @param box The box. (of cts:box) @@ -175,7 +179,7 @@ public interface CtsExpr { * Returns a box's northern boundary. * * - + *
* Provides a client interface to the cts:box-north server function. * @param box The box. (of cts:box) @@ -186,7 +190,7 @@ public interface CtsExpr { * Returns a box's southern boundary. * * - + *
* Provides a client interface to the cts:box-south server function. * @param box The box. (of cts:box) @@ -197,7 +201,7 @@ public interface CtsExpr { * Returns a box's western boundary. * * - + *
* Provides a client interface to the cts:box-west server function. * @param box The box. (of cts:box) @@ -217,7 +221,7 @@ public interface CtsExpr { * Returns a geospatial circle value. * * - + *
* Provides a client interface to the cts:circle server function. * @param radius The radius of the circle. The units for the radius is determined at runtime by the query options (miles is currently the only option). (of xs:double) @@ -229,7 +233,7 @@ public interface CtsExpr { * Returns a circle's center point. * * - + *
* Provides a client interface to the cts:circle-center server function. * @param circle The circle. (of cts:circle) @@ -240,7 +244,7 @@ public interface CtsExpr { * Returns a circle's radius. * * - + *
* Provides a client interface to the cts:circle-radius server function. * @param circle The circle. (of cts:circle) @@ -259,7 +263,7 @@ public interface CtsExpr { * Match documents in at least one of the specified collections. It will match both documents and properties documents in the collections with the given URIs. * * - + *
* Provides a client interface to the cts:collection-query server function. * @param uris One or more collection URIs. A document matches the query if it is in at least one of these collections. (of xs:string) @@ -270,7 +274,7 @@ public interface CtsExpr { * Creates a reference to the collection lexicon, for use as a parameter to cts:value-tuples. Since lexicons are implemented with range indexes, this function will throw an exception if the specified range index does not exist. * * - + *
* Provides a client interface to the cts:collection-reference server function. * @return a server expression with the cts:reference server data type @@ -307,7 +311,7 @@ public interface CtsExpr { * Returns a cts:query matching documents matching a TDE-view column equals to an value. Searches with the cts:column-range-query constructor require the triple index; if the triple index is not configured, then an exception is thrown. * * - + *
* Provides a client interface to the cts:column-range-query server function. * @param schema The TDE schema name. (of xs:string) @@ -399,7 +403,7 @@ public interface CtsExpr { * Returns a geospatial complex polygon value. * * - + *
* Provides a client interface to the cts:complex-polygon server function. * @param outer The outer polygon. (of cts:polygon) @@ -419,7 +423,7 @@ public interface CtsExpr { * Returns a query matching documents in the directories with the given URIs. * * - + *
* Provides a client interface to the cts:directory-query server function. * @param uris One or more directory URIs. (of xs:string) @@ -444,17 +448,57 @@ public interface CtsExpr { * @return a server expression with the cts:query server data type */ public CtsQueryExpr directoryQuery(ServerExpression uris, ServerExpression depth); +/** + * Returns a query matching documents of a given format. + *
+ * Provides a client interface to the cts:document-format-query server function. + * @param format Case insensitve one of: "json","xml","text","binary". This will result in a XDMP-ARG exception in case of an invalid format. (of xs:string) + * @return a server expression with the cts:query server data type + */ + public CtsQueryExpr documentFormatQuery(String format); +/** + * Returns a query matching documents of a given format. + * + * + + *
+ * Provides a client interface to the cts:document-format-query server function. + * @param format Case insensitve one of: "json","xml","text","binary". This will result in a XDMP-ARG exception in case of an invalid format. (of xs:string) + * @return a server expression with the cts:query server data type + */ + public CtsQueryExpr documentFormatQuery(ServerExpression format); /** * Returns a query that matches all documents where query matches any document fragment. When searching documents, document-properties, or document-locks, this function provides a convenient way to additionally constrain the search against any document fragment. * * - + *
* Provides a client interface to the cts:document-fragment-query server function. * @param query A query to be matched against any document fragment. (of cts:query) * @return a server expression with the cts:query server data type */ public CtsQueryExpr documentFragmentQuery(ServerExpression query); +/** + * Returns a query matching documents with a given permission. + *
+ * Provides a client interface to the cts:document-permission-query server function. + * @param role The role of the permission (of xs:string) + * @param capability The capability of the permission (read, update, node-update, insert, execute) (of xs:string) + * @return a server expression with the cts:query server data type + */ + public CtsQueryExpr documentPermissionQuery(String role, String capability); +/** + * Returns a query matching documents with a given permission. + * + * + + *
+ * Provides a client interface to the cts:document-permission-query server function. + * @param role The role of the permission (of xs:string) + * @param capability The capability of the permission (read, update, node-update, insert, execute) (of xs:string) + * @return a server expression with the cts:query server data type + */ + public CtsQueryExpr documentPermissionQuery(ServerExpression role, ServerExpression capability); /** * Returns a query matching documents with the given URIs. It will match both documents and properties documents with the given URIs. *
@@ -467,13 +511,32 @@ public interface CtsExpr { * Returns a query matching documents with the given URIs. It will match both documents and properties documents with the given URIs. * * - + *
* Provides a client interface to the cts:document-query server function. * @param uris One or more document URIs. (of xs:string) * @return a server expression with the cts:query server data type */ public CtsQueryExpr documentQuery(ServerExpression uris); +/** + * Returns a query matching documents with a given root element. + *
+ * Provides a client interface to the cts:document-root-query server function. + * @param root The root QName to query. (of xs:QName) + * @return a server expression with the cts:query server data type + */ + public CtsQueryExpr documentRootQuery(String root); +/** + * Returns a query matching documents with a given root element. + * + * + + *
+ * Provides a client interface to the cts:document-root-query server function. + * @param root The root QName to query. (of xs:QName) + * @return a server expression with the cts:query server data type + */ + public CtsQueryExpr documentRootQuery(ServerExpression root); /** * Returns a query matching elements by name which has specific attributes representing latitude and longitude values for a point contained within the given geographic box, circle, or polygon, or equal to the given point. Points that lie between the southern boundary and the northern boundary of a box, travelling northwards, and between the western boundary and the eastern boundary of the box, travelling eastwards, will match. Points contained within the given radius of the center point of a circle will match, using the curved distance on the surface of the Earth. Points contained within the given polygon will match, using great circle arcs over a spherical model of the Earth as edges. An error may result if the polygon is malformed in some way. Points equal to the a given point will match, taking into account the fact that longitudes converge at the poles. Using the geospatial query constructors requires a valid geospatial license key; without a valid license key, searches that include geospatial queries will throw an exception. *
@@ -489,7 +552,7 @@ public interface CtsExpr { * Returns a query matching elements by name which has specific attributes representing latitude and longitude values for a point contained within the given geographic box, circle, or polygon, or equal to the given point. Points that lie between the southern boundary and the northern boundary of a box, travelling northwards, and between the western boundary and the eastern boundary of the box, travelling eastwards, will match. Points contained within the given radius of the center point of a circle will match, using the curved distance on the surface of the Earth. Points contained within the given polygon will match, using great circle arcs over a spherical model of the Earth as edges. An error may result if the polygon is malformed in some way. Points equal to the a given point will match, taking into account the fact that longitudes converge at the poles. Using the geospatial query constructors requires a valid geospatial license key; without a valid license key, searches that include geospatial queries will throw an exception. * * - + *
* Provides a client interface to the cts:element-attribute-pair-geospatial-query server function. * @param elementName One or more parent element QNames to match. When multiple QNames are specified, the query matches if any QName matches. (of xs:QName) @@ -564,7 +627,7 @@ public interface CtsExpr { * Constructs a query that matches element-attributes by name with a range-index entry equal to a given value. An element attribute range index on the specified QName(s) must exist when you use this query in a search; if no such range index exists, the search throws an exception. * * - + *
* Provides a client interface to the cts:element-attribute-range-query server function. * @param elementName One or more element QNames to match. When multiple QNames are specified, the query matches if any QName matches. (of xs:QName) @@ -637,7 +700,7 @@ public interface CtsExpr { * Creates a reference to an element attribute value lexicon, for use as a parameter to cts:value-tuples. Since lexicons are implemented with range indexes, this function will throw an exception if the specified range index does not exist. * * - + *
* Provides a client interface to the cts:element-attribute-reference server function. * @param element An element QName. (of xs:QName) @@ -679,7 +742,7 @@ public interface CtsExpr { * Returns a query matching elements by name with attributes by name with text content equal a given phrase. * * - + *
* Provides a client interface to the cts:element-attribute-value-query server function. * @param elementName One or more element QNames to match. When multiple QNames are specified, the query matches if any QName matches. (of xs:QName) @@ -748,7 +811,7 @@ public interface CtsExpr { * Returns a query matching elements by name with attributes by name with text content containing a given phrase. * * - + *
* Provides a client interface to the cts:element-attribute-word-query server function. * @param elementName One or more element QNames to match. When multiple QNames are specified, the query matches if any QName matches. (of xs:QName) @@ -817,7 +880,7 @@ public interface CtsExpr { * Returns a query matching elements by name which has specific element children representing latitude and longitude values for a point contained within the given geographic box, circle, or polygon, or equal to the given point. Points that lie between the southern boundary and the northern boundary of a box, travelling northwards, and between the western boundary and the eastern boundary of the box, travelling eastwards, will match. Points contained within the given radius of the center point of a circle will match, using the curved distance on the surface of the Earth. Points contained within the given polygon will match, using great circle arcs over a spherical model of the Earth as edges. An error may result if the polygon is malformed in some way. Points equal to the a given point will match, taking into account the fact that longitudes converge at the poles. Using the geospatial query constructors requires a valid geospatial license key; without a valid license key, searches that include geospatial queries will throw an exception. * * - + *
* Provides a client interface to the cts:element-child-geospatial-query server function. * @param elementName One or more parent element QNames to match. When multiple QNames are specified, the query matches if any QName matches. (of xs:QName) @@ -885,7 +948,7 @@ public interface CtsExpr { * Returns a query matching elements by name whose content represents a point contained within the given geographic box, circle, or polygon, or equal to the given point. Points that lie between the southern boundary and the northern boundary of a box, travelling northwards, and between the western boundary and the eastern boundary of the box, travelling eastwards, will match. Points contained within the given radius of the center point of a circle will match, using the curved distance on the surface of the Earth. Points contained within the given polygon will match, using great circle arcs over a spherical model of the Earth as edges. An error may result if the polygon is malformed in some way. Points equal to the a given point will match, taking into account the fact that longitudes converge at the poles. Using the geospatial query constructors requires a valid geospatial license key; without a valid license key, searches that include geospatial queries will throw an exception. * * - + *
* Provides a client interface to the cts:element-geospatial-query server function. * @param elementName One or more element QNames to match. When multiple QNames are specified, the query matches if any QName matches. (of xs:QName) @@ -950,7 +1013,7 @@ public interface CtsExpr { * Returns a query matching elements by name which has specific element children representing latitude and longitude values for a point contained within the given geographic box, circle, or polygon, or equal to the given point. Points that lie between the southern boundary and the northern boundary of a box, travelling northwards, and between the western boundary and the eastern boundary of the box, travelling eastwards, will match. Points contained within the given radius of the center point of a circle will match, using the curved distance on the surface of the Earth. Points contained within the given polygon will match, using great circle arcs over a spherical model of the Earth as edges. An error may result if the polygon is malformed in some way. Points equal to the a given point will match, taking into account the fact that longitudes converge at the poles. Using the geospatial query constructors requires a valid geospatial license key; without a valid license key, searches that include geospatial queries will throw an exception. * * - + *
* Provides a client interface to the cts:element-pair-geospatial-query server function. * @param elementName One or more parent element QNames to match. When multiple QNames are specified, the query matches if any QName matches. (of xs:QName) @@ -1023,7 +1086,7 @@ public interface CtsExpr { * Constructs a query that matches elements by name with the content constrained by the query given in the second parameter. Searches for matches in the specified element and all of its descendants. If the query specified in the second parameter includes any element attribute sub-queries, it will search attributes on the specified element and attributes on any descendant elements. See the second example below). * * - + *
* Provides a client interface to the cts:element-query server function. * @param elementName One or more element QNames to match. When multiple QNames are specified, the query matches if any QName matches. (of xs:QName) @@ -1045,7 +1108,7 @@ public interface CtsExpr { * Constructs a query that matches elements by name with range index entry equal to a given value. Searches that use an element range query require an element range index on the specified QName(s); if no such range index exists, then an exception is thrown. * * - + *
* Provides a client interface to the cts:element-range-query server function. * @param elementName One or more element QNames to match. When multiple QNames are specified, the query matches if any QName matches. (of xs:QName) @@ -1112,7 +1175,7 @@ public interface CtsExpr { * Creates a reference to an element value lexicon, for use as a parameter to cts:value-tuples, temporal:axis-create, or any other function that takes an index reference. Since lexicons are implemented with range indexes, this function will throw an exception if the specified range index does not exist. * * - + *
* Provides a client interface to the cts:element-reference server function. * @param element An element QName. (of xs:QName) @@ -1149,7 +1212,7 @@ public interface CtsExpr { * Returns a query matching elements by name with text content equal a given phrase. cts:element-value-query only matches against simple elements (that is, elements that contain only text and have no element children). * * - + *
* Provides a client interface to the cts:element-value-query server function. * @param elementName One or more element QNames to match. When multiple QNames are specified, the query matches if any QName matches. (of xs:QName) @@ -1229,7 +1292,7 @@ public interface CtsExpr { * Returns a query matching elements by name with text content containing a given phrase. Searches only through immediate text node children of the specified element as well as any text node children of child elements defined in the Admin Interface as element-word-query-throughs or phrase-throughs; does not search through any other children of the specified element. If neither word searches nor stemmed word searches is enabled for the target database, an XDMP-SEARCH error is thrown. * * - + *
* Provides a client interface to the cts:element-word-query server function. * @param elementName One or more element QNames to match. When multiple QNames are specified, the query matches if any QName matches. (of xs:QName) @@ -1283,7 +1346,7 @@ public interface CtsExpr { * Returns a query that matches no fragments. * * - + *
* Provides a client interface to the cts:false-query server function. * @return a server expression with the cts:query server data type @@ -1303,7 +1366,7 @@ public interface CtsExpr { * Returns a cts:query matching fields by name with a range-index entry equal to a given value. Searches with the cts:field-range-query constructor require a field range index on the specified field name(s); if there is no range index configured, then an exception is thrown. * * - + *
* Provides a client interface to the cts:field-range-query server function. * @param fieldName One or more field names to match. When multiple field names are specified, the query matches if any field name matches. (of xs:string) @@ -1370,7 +1433,7 @@ public interface CtsExpr { * Creates a reference to a field value lexicon, for use as a parameter to cts:value-tuples. Since lexicons are implemented with range indexes, this function will throw an exception if the specified range index does not exist. * * - + *
* Provides a client interface to the cts:field-reference server function. * @param field A field name. (of xs:string) @@ -1408,7 +1471,7 @@ public interface CtsExpr { * Returns a query matching text content containing a given value in the specified field. If the specified field does not exist, cts:field-value-query throws an exception. If the specified field does not have the index setting field value searches enabled, either for the database or for the specified field, then a cts:search with a cts:field-value-query throws an exception. A field is a named object that specified elements to include and exclude from a search, and can include score weights for any included elements. You create fields at the database level using the Admin Interface. For details on fields, see the chapter on "Fields Database Settings" in the Administrator's Guide. * * - + *
* Provides a client interface to the cts:field-value-query server function. * @param fieldName One or more field names to search over. If multiple field names are supplied, the match can be in any of the specified fields (or-query semantics). (of xs:string) @@ -1471,7 +1534,7 @@ public interface CtsExpr { * Returns a query matching fields with text content containing a given phrase. If the specified field does not exist, this function throws an exception. A field is a named object that specified elements to include and exclude from a search, and can include score weights for any included elements. You create fields at the database level using the Admin Interface. For details on fields, see the chapter on "Fields Database Settings" in the Administrator's Guide. * * - + *
* Provides a client interface to the cts:field-word-query server function. * @param fieldName One or more field names to search over. If multiple field names are supplied, the match can be in any of the specified fields (or-query semantics). (of xs:string) @@ -1533,7 +1596,7 @@ public interface CtsExpr { * Creates a reference to a geospatial path range index, for use as a parameter to cts:value-tuples. This function will throw an exception if the specified range index does not exist. * * - + *
* Provides a client interface to the cts:geospatial-path-reference server function. * @param pathExpression A path expression. (of xs:string) @@ -1590,7 +1653,7 @@ public interface CtsExpr { * Create a reference to a geospatial region path index, for use as a parameter to cts:geospatial-region-query and other query operations on geospatial region indexes. This function throws an exception if the specified region path index does not exist. * * - + *
* Provides a client interface to the cts:geospatial-region-path-reference server function. * @param pathExpression The XPath expression specified in the index configuration. (of xs:string) @@ -1721,7 +1784,7 @@ public interface CtsExpr { * Construct a query to match regions in documents that satisfy a specified relationship relative to other regions. For example, regions in documents that intersect with regions specified in the search criteria. * * - + *
* Provides a client interface to the cts:geospatial-region-query server function. * @param reference Zero or more geospatial path region index references that identify regions in your content. To create a reference, see cts:geospatial-region-path-reference. (of cts:reference) @@ -1780,7 +1843,7 @@ public interface CtsExpr { * Creates a reference to the URI lexicon, for use as a parameter to cts:value-tuples. This function requires the URI lexicon to be enabled, otherwise it throws an exception. This reference returns URIs as IRIs. * * - + *
* Provides a client interface to the cts:iri-reference server function. * @return a server expression with the cts:reference server data type @@ -1800,7 +1863,7 @@ public interface CtsExpr { * Returns a query matching json properties by name which has specific children representing latitude and longitude values for a point contained within the given geographic box, circle, or polygon, or equal to the given point. Points that lie between the southern boundary and the northern boundary of a box, travelling northwards, and between the western boundary and the eastern boundary of the box, travelling eastwards, will match. Points contained within the given radius of the center point of a circle will match, using the curved distance on the surface of the Earth. Points contained within the given polygon will match, using great circle arcs over a spherical model of the Earth as edges. An error may result if the polygon is malformed in some way. Points equal to the a given point will match, taking into account the fact that longitudes converge at the poles. Using the geospatial query constructors requires a valid geospatial license key; without a valid license key, searches that include geospatial queries will throw an exception. * * - + *
* Provides a client interface to the cts:json-property-child-geospatial-query server function. * @param propertyName One or more parent property names to match. When multiple names are specified, the query matches if any name matches. (of xs:string) @@ -1868,7 +1931,7 @@ public interface CtsExpr { * Returns a query matching json properties by name whose content represents a point contained within the given geographic box, circle, or polygon, or equal to the given point. Points that lie between the southern boundary and the northern boundary of a box, travelling northwards, and between the western boundary and the eastern boundary of the box, travelling eastwards, will match. Points contained within the given radius of the center point of a circle will match, using the curved distance on the surface of the Earth. Points contained within the given polygon will match, using great circle arcs over a spherical model of the Earth as edges. An error may result if the polygon is malformed in some way. Points equal to the a given point will match, taking into account the fact that longitudes converge at the poles. Using the geospatial query constructors requires a valid geospatial license key; without a valid license key, searches that include geospatial queries will throw an exception. * * - + *
* Provides a client interface to the cts:json-property-geospatial-query server function. * @param propertyName One or more json property names to match. When multiple names are specified, the query matches if any name matches. (of xs:string) @@ -1933,7 +1996,7 @@ public interface CtsExpr { * Returns a query matching json properties by name which has specific property children representing latitude and longitude values for a point contained within the given geographic box, circle, or polygon, or equal to the given point. Points that lie between the southern boundary and the northern boundary of a box, travelling northwards, and between the western boundary and the eastern boundary of the box, travelling eastwards, will match. Points contained within the given radius of the center point of a circle will match, using the curved distance on the surface of the Earth. Points contained within the given polygon will match, using great circle arcs over a spherical model of the Earth as edges. An error may result if the polygon is malformed in some way. Points equal to the a given point will match, taking into account the fact that longitudes converge at the poles. Using the geospatial query constructors requires a valid geospatial license key; without a valid license key, searches that include geospatial queries will throw an exception. * * - + *
* Provides a client interface to the cts:json-property-pair-geospatial-query server function. * @param propertyName One or more parent property names to match. When multiple names are specified, the query matches if any name matches. (of xs:string) @@ -2007,7 +2070,7 @@ public interface CtsExpr { * Returns a cts:query matching JSON properties by name with a range-index entry equal to a given value. Searches with the cts:json-property-range-query constructor require a property range index on the specified names; if there is no range index configured, then an exception is thrown. * * - + *
* Provides a client interface to the cts:json-property-range-query server function. * @param propertyName One or more property name to match. When multiple names are specified, the query matches if any name matches. (of xs:string) @@ -2074,7 +2137,7 @@ public interface CtsExpr { * Creates a reference to a JSON property value lexicon, for use as a parameter to cts:value-tuples. Since lexicons are implemented with range indexes, this function will throw an exception if the specified range index does not exist. * * - + *
* Provides a client interface to the cts:json-property-reference server function. * @param property A property name. (of xs:string) @@ -2112,7 +2175,7 @@ public interface CtsExpr { * Returns a cts:query matching JSON properties by name with the content constrained by the given cts:query in the second parameter. Searches for matches in the specified property and all of its descendants. * * - + *
* Provides a client interface to the cts:json-property-scope-query server function. * @param propertyName One or more property names to match. When multiple names are specified, the query matches if any name matches. (of xs:string) @@ -2133,7 +2196,7 @@ public interface CtsExpr { * Returns a query matching JSON properties by name with value equal the given value. For arrays, the query matches if the value of any elements in the array matches the given value. * * - + *
* Provides a client interface to the cts:json-property-value-query server function. * @param propertyName One or more property names to match. When multiple names are specified, the query matches if any name matches. (of xs:string) @@ -2196,7 +2259,7 @@ public interface CtsExpr { * Returns a query matching JSON properties by name with text content containing a given phrase. Searches only through immediate text node children of the specified property. * * - + *
* Provides a client interface to the cts:json-property-word-query server function. * @param propertyName One or more JSON property names to match. When multiple names are specified, the query matches if any name matches. (of xs:string) @@ -2258,7 +2321,7 @@ public interface CtsExpr { * Returns a geospatial linestring value. * * - + *
* Provides a client interface to the cts:linestring server function. * @param vertices The waypoints of the linestring, given in order. vertexes. (of xs:anyAtomicType) @@ -2269,7 +2332,7 @@ public interface CtsExpr { * Returns a query that matches all documents where query matches document-locks. When searching documents or document-properties, cts:locks-fragment-query provides a convenient way to additionally constrain the search against document-locks fragments. * * - + *
* Provides a client interface to the cts:locks-fragment-query server function. * @param query A query to be matched against the locks fragment. (of cts:query) @@ -2288,7 +2351,7 @@ public interface CtsExpr { * Returns only documents before LSQT or a timestamp before LSQT for stable query results. * * - + *
* Provides a client interface to the cts:lsqt-query server function. * @param temporalCollection The name of the temporal collection. (of xs:string) @@ -2367,7 +2430,7 @@ public interface CtsExpr { * Returns a query matching all of the specified queries, where the matches occur within the specified distance from each other. * * - + *
* Provides a client interface to the cts:near-query server function. * @param queries A sequence of queries to match. (of cts:query) @@ -2438,7 +2501,7 @@ public interface CtsExpr { * Returns a query matching the first sub-query, where those matches do not occur within 0 distance of the other query. * * - + *
* Provides a client interface to the cts:not-in-query server function. * @param positiveQuery A positive query, specifying the search results filtered in. (of cts:query) @@ -2450,7 +2513,7 @@ public interface CtsExpr { * Returns a query specifying the matches not specified by its sub-query. * * - + *
* Provides a client interface to the cts:not-query server function. * @param query A negative query, specifying the search results to filter out. (of cts:query) @@ -2469,7 +2532,7 @@ public interface CtsExpr { * Returns a query specifying the union of the matches specified by the sub-queries. * * - + *
* Provides a client interface to the cts:or-query server function. * @param queries A sequence of sub-queries. (of cts:query) @@ -2498,7 +2561,7 @@ public interface CtsExpr { * Returns the part of speech for a cts:token, if any. * * - + *
* Provides a client interface to the cts:part-of-speech server function. * @param token A token, as returned from cts:tokenize. (of xs:string) @@ -2518,7 +2581,7 @@ public interface CtsExpr { * Returns a query matching path expressions whose content represents a point contained within the given geographic box, circle, or polygon, or equal to the given point. Points that lie between the southern boundary and the northern boundary of a box, travelling northwards, and between the western boundary and the eastern boundary of the box, travelling eastwards, will match. Points contained within the given radius of the center point of a circle will match, using the curved distance on the surface of the Earth. Points contained within the given polygon will match, using great circle arcs over a spherical model of the Earth as edges. An error may result if the polygon is malformed in some way. Points equal to the a given point will match, taking into account the fact that longitudes converge at the poles. Using the geospatial query constructors requires a valid geospatial license key; without a valid license key, searches that include geospatial queries will throw an exception. * * - + *
* Provides a client interface to the cts:path-geospatial-query server function. * @param pathExpression One or more path expressions to match. When multiple path expressions are specified, the query matches if any path expression matches. (of xs:string) @@ -2582,7 +2645,7 @@ public interface CtsExpr { * Returns a cts:query matching documents where the content addressed by an XPath expression satisfies the specified relationship (=, <, >, etc.) with respect to the input criteria values. A path range index must exist for each path when you perform a search. * * - + *
* Provides a client interface to the cts:path-range-query server function. * @param pathName One or more XPath expressions that identify the content to match. When multiple paths are specified, the query matches if any path matches. (of xs:string) @@ -2649,7 +2712,7 @@ public interface CtsExpr { * Creates a reference to a path value lexicon, for use as a parameter to cts:value-tuples. Since lexicons are implemented with range indexes, this function will throw an exception if the specified range index does not exist. * * - + *
* Provides a client interface to the cts:path-reference server function. * @param pathExpression A path range index expression. (of xs:string) @@ -2707,7 +2770,7 @@ public interface CtsExpr { * Creates a period value, for use as a parameter to cts:period-range-query or cts:period-compare-query. * * - + *
* Provides a client interface to the cts:period server function. * @param start The dateTime value indicating start of the period. (of xs:dateTime) @@ -2729,7 +2792,7 @@ public interface CtsExpr { * Returns a cts:query matching documents that have relevant pair of period values. Searches with the cts:period-compare-query constructor require two valid names of period, if the either of the specified period does not exist, then an exception is thrown. * * - + *
* Provides a client interface to the cts:period-compare-query server function. * @param axis1 Name of the first axis to compare (of xs:string) @@ -2773,7 +2836,7 @@ public interface CtsExpr { * Returns a cts:query matching axis by name with a period value with an operator. Searches with the cts:period-range-query constructor require a axis definition on the axis name; if there is no axis configured, then an exception is thrown. * * - + *
* Provides a client interface to the cts:period-range-query server function. * @param axis One or more axis to match on. (of xs:string) @@ -2832,11 +2895,18 @@ public interface CtsExpr { * @return a server expression with the cts:point server data type */ public CtsPointExpr point(double latitude, double longitude); + + /** + * + * @param expression e.g. "3,4" or "POINT(5 6)" + * @return a server expression with the cts:point server data type + */ + public CtsPointExpr point(String expression); /** * Returns a point value. * * - + *
* Provides a client interface to the cts:point server function. * @param latitude The latitude of the point. (of xs:double) @@ -2848,7 +2918,7 @@ public interface CtsExpr { * Returns a point's latitude value. * * - + *
* Provides a client interface to the cts:point-latitude server function. * @param point The point. (of cts:point) @@ -2859,7 +2929,7 @@ public interface CtsExpr { * Returns a point's longitude value. * * - + *
* Provides a client interface to the cts:point-longitude server function. * @param point The point. (of cts:point) @@ -2870,18 +2940,24 @@ public interface CtsExpr { * Returns a geospatial polygon value. * * - + *
* Provides a client interface to the cts:polygon server function. * @param vertices The vertices of the polygon, given in order. No edge may cover more than 180 degrees of either latitude or longitude. The polygon as a whole may not encompass both poles. These constraints are necessary to ensure an unambiguous interpretation of the polygon. There must be at least three vertices. The first vertex should be identical to the last vertex to close the polygon. vertexes. (of cts:point) * @return a server expression with the cts:polygon server data type */ public CtsPolygonExpr polygon(ServerExpression vertices); + + /** + * @param expression e.g. "1,2 3,4 5,6 1,2" or "POLYGON((2 1, 4 3, 6 5, 2 1))" + * @return a server expression with the cts:polygon server data type + */ + public CtsPolygonExpr polygon(String expression); /** * Returns a query that matches all documents where query matches document-properties. When searching documents or document-locks, this query type provides a convenient way to additionally constrain the search against document-properties fragments. * * - + *
* Provides a client interface to the cts:properties-fragment-query server function. * @param query A query to be matched against the properties fragment. (of cts:query) @@ -2902,7 +2978,7 @@ public interface CtsExpr { * Returns a cts:query matching specified nodes with a range-index entry compared to a given value. Searches with the cts:range-query constructor require a range index; if there is no range index configured, then an exception is thrown. * * - + *
* Provides a client interface to the cts:range-query server function. * @param index One or more range index references. When multiple indexes are specified, the query matches if any index matches. (of cts:reference) @@ -2961,7 +3037,7 @@ public interface CtsExpr { * Returns the stem(s) for a word. * * - + *
* Provides a client interface to the cts:stem server function. * @param text A word or phrase to stem. (of xs:string) @@ -3010,7 +3086,7 @@ public interface CtsExpr { * Tokenizes text into words, punctuation, and spaces. Returns output in the type cts:token, which has subtypes cts:word, cts:punctuation, and cts:space, all of which are subtypes of xs:string. * * - + *
* Provides a client interface to the cts:tokenize server function. * @param text A word or phrase to tokenize. (of xs:string) @@ -3069,7 +3145,7 @@ public interface CtsExpr { * Returns a cts:query matching triples with a triple index entry equal to the given values. Searches with the cts:triple-range-query constructor require the triple index; if the triple index is not configured, then an exception is thrown. * * - + *
* Provides a client interface to the cts:triple-range-query server function. * @param subject The subjects to look up. When multiple values are specified, the query matches if any value matches. When the empty sequence is specified, then triples with any subject are matched. (of xs:anyAtomicType) @@ -3154,7 +3230,7 @@ public interface CtsExpr { * Returns a query that matches all fragments. * * - + *
* Provides a client interface to the cts:true-query server function. * @return a server expression with the cts:query server data type @@ -3164,7 +3240,7 @@ public interface CtsExpr { * Creates a reference to the URI lexicon, for use as a parameter to cts:value-tuples. This function requires the URI lexicon to be enabled, otherwise it throws an exception. * * - + *
* Provides a client interface to the cts:uri-reference server function. * @return a server expression with the cts:reference server data type @@ -3182,7 +3258,7 @@ public interface CtsExpr { * Returns a query matching text content containing a given phrase. * * - + *
* Provides a client interface to the cts:word-query server function. * @param text Some words or phrases to match. When multiple strings are specified, the query matches if any string matches. (of xs:string) @@ -3233,49 +3309,49 @@ public interface CtsExpr { * @return a CtsBoxSeqExpr sequence */ public CtsBoxSeqExpr boxSeq(CtsBoxExpr... items); - + /** * Constructs a sequence of CtsCircleExpr items. * @param items the CtsCircleExpr items collected by the sequence * @return a CtsCircleSeqExpr sequence */ public CtsCircleSeqExpr circleSeq(CtsCircleExpr... items); - + /** * Constructs a sequence of CtsPeriodExpr items. * @param items the CtsPeriodExpr items collected by the sequence * @return a CtsPeriodSeqExpr sequence */ public CtsPeriodSeqExpr periodSeq(CtsPeriodExpr... items); - + /** * Constructs a sequence of CtsPointExpr items. * @param items the CtsPointExpr items collected by the sequence * @return a CtsPointSeqExpr sequence */ public CtsPointSeqExpr pointSeq(CtsPointExpr... items); - + /** * Constructs a sequence of CtsPolygonExpr items. * @param items the CtsPolygonExpr items collected by the sequence * @return a CtsPolygonSeqExpr sequence */ public CtsPolygonSeqExpr polygonSeq(CtsPolygonExpr... items); - + /** * Constructs a sequence of CtsQueryExpr items. * @param items the CtsQueryExpr items collected by the sequence * @return a CtsQuerySeqExpr sequence */ public CtsQuerySeqExpr querySeq(CtsQueryExpr... items); - + /** * Constructs a sequence of CtsReferenceExpr items. * @param items the CtsReferenceExpr items collected by the sequence * @return a CtsReferenceSeqExpr sequence */ public CtsReferenceSeqExpr referenceSeq(CtsReferenceExpr... items); - + /** * Constructs a sequence of CtsRegionExpr items. * @param items the CtsRegionExpr items collected by the sequence diff --git a/marklogic-client-api/src/main/java/com/marklogic/client/expression/PlanBuilder.java b/marklogic-client-api/src/main/java/com/marklogic/client/expression/PlanBuilder.java index de6b187a8..ae7578d3a 100644 --- a/marklogic-client-api/src/main/java/com/marklogic/client/expression/PlanBuilder.java +++ b/marklogic-client-api/src/main/java/com/marklogic/client/expression/PlanBuilder.java @@ -1587,6 +1587,22 @@ public interface ModifyPlan extends PreparePlan, PlanBuilderBase.ModifyPlanBase * @return a ModifyPlan object */ public abstract ModifyPlan joinDocUri(PlanColumn uriCol, PlanColumn fragmentIdCol); +/** + * This method adds an uri column and a document column to rows based on an existing source column having a value of a document uri (which can be used to read other documents) or a fragment id (which can be used to read the source documents for rows). If the fragment id column is null in the row, the row is dropped from the rowset. + * @param docCol The document column to add to the rows. This can be a string or a column, op:col, op:view-col or op:schema-col, specifying the name of the new column that should have the document as its value. See {@link PlanBuilder#col(XsStringVal)} + * @param uriCol The uri column to add to the rows. This can be a string or a column, op:col, op:view-col or op:schema-col, specifying the name of the new column that should have the document uri as its value. See {@link PlanBuilder#col(XsStringVal)} + * @param sourceCol The document uri or fragment id value. This is either an op:fragment-id-col specifying a fragment id column or a document uri column as xs:string or as a column using op:col, op:view-col or op:schema-col. Joining on a fragment id is more efficient than joining on a uri column. See {@link PlanBuilder#col(XsStringVal)} + * @return a ModifyPlan object + */ + public abstract ModifyPlan joinDocAndUri(String docCol, String uriCol, String sourceCol); +/** + * This method adds an uri column and a document column to rows based on an existing source column having a value of a document uri (which can be used to read other documents) or a fragment id (which can be used to read the source documents for rows). If the fragment id column is null in the row, the row is dropped from the rowset. + * @param docCol The document column to add to the rows. This can be a string or a column, op:col, op:view-col or op:schema-col, specifying the name of the new column that should have the document as its value. See {@link PlanBuilder#col(XsStringVal)} + * @param uriCol The uri column to add to the rows. This can be a string or a column, op:col, op:view-col or op:schema-col, specifying the name of the new column that should have the document uri as its value. See {@link PlanBuilder#col(XsStringVal)} + * @param sourceCol The document uri or fragment id value. This is either an op:fragment-id-col specifying a fragment id column or a document uri column as xs:string or as a column using op:col, op:view-col or op:schema-col. Joining on a fragment id is more efficient than joining on a uri column. See {@link PlanBuilder#col(XsStringVal)} + * @return a ModifyPlan object + */ + public abstract ModifyPlan joinDocAndUri(PlanColumn docCol, PlanColumn uriCol, PlanColumn sourceCol); /** * This method returns all rows from multiple tables where the join condition is met. In the output row set, each row concatenates one left row and one right row for each match between the keys in the left and right row sets. * @param right The row set from the right view. diff --git a/marklogic-client-api/src/main/java/com/marklogic/client/impl/CtsExprImpl.java b/marklogic-client-api/src/main/java/com/marklogic/client/impl/CtsExprImpl.java index a0a0f33f5..36587bfbd 100644 --- a/marklogic-client-api/src/main/java/com/marklogic/client/impl/CtsExprImpl.java +++ b/marklogic-client-api/src/main/java/com/marklogic/client/impl/CtsExprImpl.java @@ -49,6 +49,11 @@ import com.marklogic.client.impl.BaseTypeImpl; // IMPORTANT: Do not edit. This file is generated. + +// 2023-10-24 Exception: Manual changes have been made to this to expose the string constructors for cts.point and +// cts.polygon. These changes can be removed once optic-defs.json in the xdmp repository is updated to define these +// constructors. + class CtsExprImpl implements CtsExpr { final static XsExprImpl xs = XsExprImpl.xs; @@ -58,7 +63,7 @@ class CtsExprImpl implements CtsExpr { CtsExprImpl() { } - + @Override public CtsQueryExpr afterQuery(ServerExpression timestamp) { if (timestamp == null) { @@ -67,7 +72,7 @@ public CtsQueryExpr afterQuery(ServerExpression timestamp) { return new QueryCallImpl("cts", "after-query", new Object[]{ timestamp }); } - + @Override public CtsQueryExpr andNotQuery(ServerExpression positiveQuery, ServerExpression negativeQuery) { if (positiveQuery == null) { @@ -79,31 +84,31 @@ public CtsQueryExpr andNotQuery(ServerExpression positiveQuery, ServerExpression return new QueryCallImpl("cts", "and-not-query", new Object[]{ positiveQuery, negativeQuery }); } - + @Override public CtsQueryExpr andQuery(CtsQueryExpr... queries) { return andQuery(new QuerySeqListImpl(queries)); } - + @Override public CtsQueryExpr andQuery(ServerExpression queries) { return new QueryCallImpl("cts", "and-query", new Object[]{ queries }); } - + @Override public CtsQueryExpr andQuery(ServerExpression queries, String options) { return andQuery(queries, (options == null) ? (XsStringVal) null : xs.string(options)); } - + @Override public CtsQueryExpr andQuery(ServerExpression queries, XsStringSeqVal options) { return new QueryCallImpl("cts", "and-query", new Object[]{ queries, options }); } - + @Override public CtsQueryExpr beforeQuery(ServerExpression timestamp) { if (timestamp == null) { @@ -112,7 +117,7 @@ public CtsQueryExpr beforeQuery(ServerExpression timestamp) { return new QueryCallImpl("cts", "before-query", new Object[]{ timestamp }); } - + @Override public CtsQueryExpr boostQuery(ServerExpression matchingQuery, ServerExpression boostingQuery) { if (matchingQuery == null) { @@ -124,13 +129,13 @@ public CtsQueryExpr boostQuery(ServerExpression matchingQuery, ServerExpression return new QueryCallImpl("cts", "boost-query", new Object[]{ matchingQuery, boostingQuery }); } - + @Override public CtsBoxExpr box(double south, double west, double north, double east) { return box(xs.doubleVal(south), xs.doubleVal(west), xs.doubleVal(north), xs.doubleVal(east)); } - + @Override public CtsBoxExpr box(ServerExpression south, ServerExpression west, ServerExpression north, ServerExpression east) { if (south == null) { @@ -148,7 +153,7 @@ public CtsBoxExpr box(ServerExpression south, ServerExpression west, ServerExpre return new BoxCallImpl("cts", "box", new Object[]{ south, west, north, east }); } - + @Override public ServerExpression boxEast(ServerExpression box) { if (box == null) { @@ -157,7 +162,7 @@ public ServerExpression boxEast(ServerExpression box) { return new XsExprImpl.NumericCallImpl("cts", "box-east", new Object[]{ box }); } - + @Override public ServerExpression boxNorth(ServerExpression box) { if (box == null) { @@ -166,7 +171,7 @@ public ServerExpression boxNorth(ServerExpression box) { return new XsExprImpl.NumericCallImpl("cts", "box-north", new Object[]{ box }); } - + @Override public ServerExpression boxSouth(ServerExpression box) { if (box == null) { @@ -175,7 +180,7 @@ public ServerExpression boxSouth(ServerExpression box) { return new XsExprImpl.NumericCallImpl("cts", "box-south", new Object[]{ box }); } - + @Override public ServerExpression boxWest(ServerExpression box) { if (box == null) { @@ -184,13 +189,13 @@ public ServerExpression boxWest(ServerExpression box) { return new XsExprImpl.NumericCallImpl("cts", "box-west", new Object[]{ box }); } - + @Override public CtsCircleExpr circle(double radius, ServerExpression center) { return circle(xs.doubleVal(radius), center); } - + @Override public CtsCircleExpr circle(ServerExpression radius, ServerExpression center) { if (radius == null) { @@ -202,7 +207,7 @@ public CtsCircleExpr circle(ServerExpression radius, ServerExpression center) { return new CircleCallImpl("cts", "circle", new Object[]{ radius, center }); } - + @Override public CtsPointExpr circleCenter(ServerExpression circle) { if (circle == null) { @@ -211,7 +216,7 @@ public CtsPointExpr circleCenter(ServerExpression circle) { return new PointCallImpl("cts", "circle-center", new Object[]{ circle }); } - + @Override public ServerExpression circleRadius(ServerExpression circle) { if (circle == null) { @@ -220,43 +225,43 @@ public ServerExpression circleRadius(ServerExpression circle) { return new XsExprImpl.NumericCallImpl("cts", "circle-radius", new Object[]{ circle }); } - + @Override public CtsQueryExpr collectionQuery(String uris) { return collectionQuery((uris == null) ? (XsStringVal) null : xs.string(uris)); } - + @Override public CtsQueryExpr collectionQuery(ServerExpression uris) { return new QueryCallImpl("cts", "collection-query", new Object[]{ uris }); } - + @Override public CtsReferenceExpr collectionReference() { return new ReferenceCallImpl("cts", "collection-reference", new Object[]{ }); } - + @Override public CtsReferenceExpr collectionReference(String options) { return collectionReference((options == null) ? (XsStringVal) null : xs.string(options)); } - + @Override public CtsReferenceExpr collectionReference(ServerExpression options) { return new ReferenceCallImpl("cts", "collection-reference", new Object[]{ options }); } - + @Override public CtsQueryExpr columnRangeQuery(String schema, String view, String column, String value) { return columnRangeQuery((schema == null) ? (XsStringVal) null : xs.string(schema), (view == null) ? (XsStringVal) null : xs.string(view), (column == null) ? (XsStringVal) null : xs.string(column), (value == null) ? (XsAnyAtomicTypeVal) null : xs.string(value)); } - + @Override public CtsQueryExpr columnRangeQuery(ServerExpression schema, ServerExpression view, ServerExpression column, ServerExpression value) { if (schema == null) { @@ -271,13 +276,13 @@ public CtsQueryExpr columnRangeQuery(ServerExpression schema, ServerExpression v return new QueryCallImpl("cts", "column-range-query", new Object[]{ schema, view, column, value }); } - + @Override public CtsQueryExpr columnRangeQuery(String schema, String view, String column, String value, String operator) { return columnRangeQuery((schema == null) ? (XsStringVal) null : xs.string(schema), (view == null) ? (XsStringVal) null : xs.string(view), (column == null) ? (XsStringVal) null : xs.string(column), (value == null) ? (XsAnyAtomicTypeVal) null : xs.string(value), (operator == null) ? (XsStringVal) null : xs.string(operator)); } - + @Override public CtsQueryExpr columnRangeQuery(ServerExpression schema, ServerExpression view, ServerExpression column, ServerExpression value, ServerExpression operator) { if (schema == null) { @@ -292,13 +297,13 @@ public CtsQueryExpr columnRangeQuery(ServerExpression schema, ServerExpression v return new QueryCallImpl("cts", "column-range-query", new Object[]{ schema, view, column, value, operator }); } - + @Override public CtsQueryExpr columnRangeQuery(String schema, String view, String column, String value, String operator, String... options) { return columnRangeQuery((schema == null) ? (XsStringVal) null : xs.string(schema), (view == null) ? (XsStringVal) null : xs.string(view), (column == null) ? (XsStringVal) null : xs.string(column), (value == null) ? (XsAnyAtomicTypeVal) null : xs.string(value), (operator == null) ? (XsStringVal) null : xs.string(operator), (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr columnRangeQuery(ServerExpression schema, ServerExpression view, ServerExpression column, ServerExpression value, ServerExpression operator, ServerExpression options) { if (schema == null) { @@ -313,13 +318,13 @@ public CtsQueryExpr columnRangeQuery(ServerExpression schema, ServerExpression v return new QueryCallImpl("cts", "column-range-query", new Object[]{ schema, view, column, value, operator, options }); } - + @Override public CtsQueryExpr columnRangeQuery(String schema, String view, String column, String value, String operator, String options, double weight) { return columnRangeQuery((schema == null) ? (XsStringVal) null : xs.string(schema), (view == null) ? (XsStringVal) null : xs.string(view), (column == null) ? (XsStringVal) null : xs.string(column), (value == null) ? (XsAnyAtomicTypeVal) null : xs.string(value), (operator == null) ? (XsStringVal) null : xs.string(operator), (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr columnRangeQuery(ServerExpression schema, ServerExpression view, ServerExpression column, ServerExpression value, ServerExpression operator, ServerExpression options, ServerExpression weight) { if (schema == null) { @@ -334,7 +339,7 @@ public CtsQueryExpr columnRangeQuery(ServerExpression schema, ServerExpression v return new QueryCallImpl("cts", "column-range-query", new Object[]{ schema, view, column, value, operator, options, weight }); } - + @Override public CtsPolygonExpr complexPolygon(ServerExpression outer, ServerExpression inner) { if (outer == null) { @@ -343,31 +348,46 @@ public CtsPolygonExpr complexPolygon(ServerExpression outer, ServerExpression in return new PolygonCallImpl("cts", "complex-polygon", new Object[]{ outer, inner }); } - + @Override public CtsQueryExpr directoryQuery(String uris) { return directoryQuery((uris == null) ? (XsStringVal) null : xs.string(uris)); } - + @Override public CtsQueryExpr directoryQuery(ServerExpression uris) { return new QueryCallImpl("cts", "directory-query", new Object[]{ uris }); } - + @Override public CtsQueryExpr directoryQuery(String uris, String depth) { return directoryQuery((uris == null) ? (XsStringVal) null : xs.string(uris), (depth == null) ? (XsStringVal) null : xs.string(depth)); } - + @Override public CtsQueryExpr directoryQuery(ServerExpression uris, ServerExpression depth) { return new QueryCallImpl("cts", "directory-query", new Object[]{ uris, depth }); } - + + @Override + public CtsQueryExpr documentFormatQuery(String format) { + return documentFormatQuery((format == null) ? (XsStringVal) null : xs.string(format)); + } + + + @Override + public CtsQueryExpr documentFormatQuery(ServerExpression format) { + if (format == null) { + throw new IllegalArgumentException("format parameter for documentFormatQuery() cannot be null"); + } + return new QueryCallImpl("cts", "document-format-query", new Object[]{ format }); + } + + @Override public CtsQueryExpr documentFragmentQuery(ServerExpression query) { if (query == null) { @@ -376,61 +396,94 @@ public CtsQueryExpr documentFragmentQuery(ServerExpression query) { return new QueryCallImpl("cts", "document-fragment-query", new Object[]{ query }); } - + + @Override + public CtsQueryExpr documentPermissionQuery(String role, String capability) { + return documentPermissionQuery((role == null) ? (XsStringVal) null : xs.string(role), (capability == null) ? (XsStringVal) null : xs.string(capability)); + } + + + @Override + public CtsQueryExpr documentPermissionQuery(ServerExpression role, ServerExpression capability) { + if (role == null) { + throw new IllegalArgumentException("role parameter for documentPermissionQuery() cannot be null"); + } + if (capability == null) { + throw new IllegalArgumentException("capability parameter for documentPermissionQuery() cannot be null"); + } + return new QueryCallImpl("cts", "document-permission-query", new Object[]{ role, capability }); + } + + @Override public CtsQueryExpr documentQuery(String uris) { return documentQuery((uris == null) ? (XsStringVal) null : xs.string(uris)); } - + @Override public CtsQueryExpr documentQuery(ServerExpression uris) { return new QueryCallImpl("cts", "document-query", new Object[]{ uris }); } - + + @Override + public CtsQueryExpr documentRootQuery(String root) { + return documentRootQuery((root == null) ? (XsQNameVal) null : xs.QName(root)); + } + + + @Override + public CtsQueryExpr documentRootQuery(ServerExpression root) { + if (root == null) { + throw new IllegalArgumentException("root parameter for documentRootQuery() cannot be null"); + } + return new QueryCallImpl("cts", "document-root-query", new Object[]{ root }); + } + + @Override public CtsQueryExpr elementAttributePairGeospatialQuery(String elementName, String latitudeName, String longitudeName, CtsRegionExpr... region) { return elementAttributePairGeospatialQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (latitudeName == null) ? (XsQNameVal) null : xs.QName(latitudeName), (longitudeName == null) ? (XsQNameVal) null : xs.QName(longitudeName), new RegionSeqListImpl(region)); } - + @Override public CtsQueryExpr elementAttributePairGeospatialQuery(ServerExpression elementName, ServerExpression latitudeName, ServerExpression longitudeName, ServerExpression region) { return new QueryCallImpl("cts", "element-attribute-pair-geospatial-query", new Object[]{ elementName, latitudeName, longitudeName, region }); } - + @Override public CtsQueryExpr elementAttributePairGeospatialQuery(String elementName, String latitudeName, String longitudeName, ServerExpression region, String... options) { return elementAttributePairGeospatialQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (latitudeName == null) ? (XsQNameVal) null : xs.QName(latitudeName), (longitudeName == null) ? (XsQNameVal) null : xs.QName(longitudeName), region, (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr elementAttributePairGeospatialQuery(ServerExpression elementName, ServerExpression latitudeName, ServerExpression longitudeName, ServerExpression region, ServerExpression options) { return new QueryCallImpl("cts", "element-attribute-pair-geospatial-query", new Object[]{ elementName, latitudeName, longitudeName, region, options }); } - + @Override public CtsQueryExpr elementAttributePairGeospatialQuery(String elementName, String latitudeName, String longitudeName, ServerExpression region, String options, double weight) { return elementAttributePairGeospatialQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (latitudeName == null) ? (XsQNameVal) null : xs.QName(latitudeName), (longitudeName == null) ? (XsQNameVal) null : xs.QName(longitudeName), region, (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr elementAttributePairGeospatialQuery(ServerExpression elementName, ServerExpression latitudeName, ServerExpression longitudeName, ServerExpression region, ServerExpression options, ServerExpression weight) { return new QueryCallImpl("cts", "element-attribute-pair-geospatial-query", new Object[]{ elementName, latitudeName, longitudeName, region, options, weight }); } - + @Override public CtsQueryExpr elementAttributeRangeQuery(String elementName, String attributeName, String operator, String value) { return elementAttributeRangeQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (attributeName == null) ? (XsQNameVal) null : xs.QName(attributeName), (operator == null) ? (XsStringVal) null : xs.string(operator), (value == null) ? (XsAnyAtomicTypeVal) null : xs.string(value)); } - + @Override public CtsQueryExpr elementAttributeRangeQuery(ServerExpression elementName, ServerExpression attributeName, ServerExpression operator, ServerExpression value) { if (operator == null) { @@ -439,13 +492,13 @@ public CtsQueryExpr elementAttributeRangeQuery(ServerExpression elementName, Ser return new QueryCallImpl("cts", "element-attribute-range-query", new Object[]{ elementName, attributeName, operator, value }); } - + @Override public CtsQueryExpr elementAttributeRangeQuery(String elementName, String attributeName, String operator, String value, String... options) { return elementAttributeRangeQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (attributeName == null) ? (XsQNameVal) null : xs.QName(attributeName), (operator == null) ? (XsStringVal) null : xs.string(operator), (value == null) ? (XsAnyAtomicTypeVal) null : xs.string(value), (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr elementAttributeRangeQuery(ServerExpression elementName, ServerExpression attributeName, ServerExpression operator, ServerExpression value, ServerExpression options) { if (operator == null) { @@ -454,13 +507,13 @@ public CtsQueryExpr elementAttributeRangeQuery(ServerExpression elementName, Ser return new QueryCallImpl("cts", "element-attribute-range-query", new Object[]{ elementName, attributeName, operator, value, options }); } - + @Override public CtsQueryExpr elementAttributeRangeQuery(String elementName, String attributeName, String operator, String value, String options, double weight) { return elementAttributeRangeQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (attributeName == null) ? (XsQNameVal) null : xs.QName(attributeName), (operator == null) ? (XsStringVal) null : xs.string(operator), (value == null) ? (XsAnyAtomicTypeVal) null : xs.string(value), (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr elementAttributeRangeQuery(ServerExpression elementName, ServerExpression attributeName, ServerExpression operator, ServerExpression value, ServerExpression options, ServerExpression weight) { if (operator == null) { @@ -469,13 +522,13 @@ public CtsQueryExpr elementAttributeRangeQuery(ServerExpression elementName, Ser return new QueryCallImpl("cts", "element-attribute-range-query", new Object[]{ elementName, attributeName, operator, value, options, weight }); } - + @Override public CtsReferenceExpr elementAttributeReference(String element, String attribute) { return elementAttributeReference((element == null) ? (XsQNameVal) null : xs.QName(element), (attribute == null) ? (XsQNameVal) null : xs.QName(attribute)); } - + @Override public CtsReferenceExpr elementAttributeReference(ServerExpression element, ServerExpression attribute) { if (element == null) { @@ -487,13 +540,13 @@ public CtsReferenceExpr elementAttributeReference(ServerExpression element, Serv return new ReferenceCallImpl("cts", "element-attribute-reference", new Object[]{ element, attribute }); } - + @Override public CtsReferenceExpr elementAttributeReference(String element, String attribute, String options) { return elementAttributeReference((element == null) ? (XsQNameVal) null : xs.QName(element), (attribute == null) ? (XsQNameVal) null : xs.QName(attribute), (options == null) ? (XsStringVal) null : xs.string(options)); } - + @Override public CtsReferenceExpr elementAttributeReference(ServerExpression element, ServerExpression attribute, ServerExpression options) { if (element == null) { @@ -505,193 +558,193 @@ public CtsReferenceExpr elementAttributeReference(ServerExpression element, Serv return new ReferenceCallImpl("cts", "element-attribute-reference", new Object[]{ element, attribute, options }); } - + @Override public CtsQueryExpr elementAttributeValueQuery(String elementName, String attributeName, String text) { return elementAttributeValueQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (attributeName == null) ? (XsQNameVal) null : xs.QName(attributeName), (text == null) ? (XsStringVal) null : xs.string(text)); } - + @Override public CtsQueryExpr elementAttributeValueQuery(ServerExpression elementName, ServerExpression attributeName, ServerExpression text) { return new QueryCallImpl("cts", "element-attribute-value-query", new Object[]{ elementName, attributeName, text }); } - + @Override public CtsQueryExpr elementAttributeValueQuery(String elementName, String attributeName, String text, String... options) { return elementAttributeValueQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (attributeName == null) ? (XsQNameVal) null : xs.QName(attributeName), (text == null) ? (XsStringVal) null : xs.string(text), (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr elementAttributeValueQuery(ServerExpression elementName, ServerExpression attributeName, ServerExpression text, ServerExpression options) { return new QueryCallImpl("cts", "element-attribute-value-query", new Object[]{ elementName, attributeName, text, options }); } - + @Override public CtsQueryExpr elementAttributeValueQuery(String elementName, String attributeName, String text, String options, double weight) { return elementAttributeValueQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (attributeName == null) ? (XsQNameVal) null : xs.QName(attributeName), (text == null) ? (XsStringVal) null : xs.string(text), (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr elementAttributeValueQuery(ServerExpression elementName, ServerExpression attributeName, ServerExpression text, ServerExpression options, ServerExpression weight) { return new QueryCallImpl("cts", "element-attribute-value-query", new Object[]{ elementName, attributeName, text, options, weight }); } - + @Override public CtsQueryExpr elementAttributeWordQuery(String elementName, String attributeName, String text) { return elementAttributeWordQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (attributeName == null) ? (XsQNameVal) null : xs.QName(attributeName), (text == null) ? (XsStringVal) null : xs.string(text)); } - + @Override public CtsQueryExpr elementAttributeWordQuery(ServerExpression elementName, ServerExpression attributeName, ServerExpression text) { return new QueryCallImpl("cts", "element-attribute-word-query", new Object[]{ elementName, attributeName, text }); } - + @Override public CtsQueryExpr elementAttributeWordQuery(String elementName, String attributeName, String text, String... options) { return elementAttributeWordQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (attributeName == null) ? (XsQNameVal) null : xs.QName(attributeName), (text == null) ? (XsStringVal) null : xs.string(text), (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr elementAttributeWordQuery(ServerExpression elementName, ServerExpression attributeName, ServerExpression text, ServerExpression options) { return new QueryCallImpl("cts", "element-attribute-word-query", new Object[]{ elementName, attributeName, text, options }); } - + @Override public CtsQueryExpr elementAttributeWordQuery(String elementName, String attributeName, String text, String options, double weight) { return elementAttributeWordQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (attributeName == null) ? (XsQNameVal) null : xs.QName(attributeName), (text == null) ? (XsStringVal) null : xs.string(text), (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr elementAttributeWordQuery(ServerExpression elementName, ServerExpression attributeName, ServerExpression text, ServerExpression options, ServerExpression weight) { return new QueryCallImpl("cts", "element-attribute-word-query", new Object[]{ elementName, attributeName, text, options, weight }); } - + @Override public CtsQueryExpr elementChildGeospatialQuery(String elementName, String childName, CtsRegionExpr... region) { return elementChildGeospatialQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (childName == null) ? (XsQNameVal) null : xs.QName(childName), new RegionSeqListImpl(region)); } - + @Override public CtsQueryExpr elementChildGeospatialQuery(ServerExpression elementName, ServerExpression childName, ServerExpression region) { return new QueryCallImpl("cts", "element-child-geospatial-query", new Object[]{ elementName, childName, region }); } - + @Override public CtsQueryExpr elementChildGeospatialQuery(String elementName, String childName, ServerExpression region, String... options) { return elementChildGeospatialQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (childName == null) ? (XsQNameVal) null : xs.QName(childName), region, (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr elementChildGeospatialQuery(ServerExpression elementName, ServerExpression childName, ServerExpression region, ServerExpression options) { return new QueryCallImpl("cts", "element-child-geospatial-query", new Object[]{ elementName, childName, region, options }); } - + @Override public CtsQueryExpr elementChildGeospatialQuery(String elementName, String childName, ServerExpression region, String options, double weight) { return elementChildGeospatialQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (childName == null) ? (XsQNameVal) null : xs.QName(childName), region, (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr elementChildGeospatialQuery(ServerExpression elementName, ServerExpression childName, ServerExpression region, ServerExpression options, ServerExpression weight) { return new QueryCallImpl("cts", "element-child-geospatial-query", new Object[]{ elementName, childName, region, options, weight }); } - + @Override public CtsQueryExpr elementGeospatialQuery(String elementName, CtsRegionExpr... region) { return elementGeospatialQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), new RegionSeqListImpl(region)); } - + @Override public CtsQueryExpr elementGeospatialQuery(ServerExpression elementName, ServerExpression region) { return new QueryCallImpl("cts", "element-geospatial-query", new Object[]{ elementName, region }); } - + @Override public CtsQueryExpr elementGeospatialQuery(String elementName, ServerExpression region, String... options) { return elementGeospatialQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), region, (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr elementGeospatialQuery(ServerExpression elementName, ServerExpression region, ServerExpression options) { return new QueryCallImpl("cts", "element-geospatial-query", new Object[]{ elementName, region, options }); } - + @Override public CtsQueryExpr elementGeospatialQuery(String elementName, ServerExpression region, String options, double weight) { return elementGeospatialQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), region, (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr elementGeospatialQuery(ServerExpression elementName, ServerExpression region, ServerExpression options, ServerExpression weight) { return new QueryCallImpl("cts", "element-geospatial-query", new Object[]{ elementName, region, options, weight }); } - + @Override public CtsQueryExpr elementPairGeospatialQuery(String elementName, String latitudeName, String longitudeName, CtsRegionExpr... region) { return elementPairGeospatialQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (latitudeName == null) ? (XsQNameVal) null : xs.QName(latitudeName), (longitudeName == null) ? (XsQNameVal) null : xs.QName(longitudeName), new RegionSeqListImpl(region)); } - + @Override public CtsQueryExpr elementPairGeospatialQuery(ServerExpression elementName, ServerExpression latitudeName, ServerExpression longitudeName, ServerExpression region) { return new QueryCallImpl("cts", "element-pair-geospatial-query", new Object[]{ elementName, latitudeName, longitudeName, region }); } - + @Override public CtsQueryExpr elementPairGeospatialQuery(String elementName, String latitudeName, String longitudeName, ServerExpression region, String... options) { return elementPairGeospatialQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (latitudeName == null) ? (XsQNameVal) null : xs.QName(latitudeName), (longitudeName == null) ? (XsQNameVal) null : xs.QName(longitudeName), region, (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr elementPairGeospatialQuery(ServerExpression elementName, ServerExpression latitudeName, ServerExpression longitudeName, ServerExpression region, ServerExpression options) { return new QueryCallImpl("cts", "element-pair-geospatial-query", new Object[]{ elementName, latitudeName, longitudeName, region, options }); } - + @Override public CtsQueryExpr elementPairGeospatialQuery(String elementName, String latitudeName, String longitudeName, ServerExpression region, String options, double weight) { return elementPairGeospatialQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (latitudeName == null) ? (XsQNameVal) null : xs.QName(latitudeName), (longitudeName == null) ? (XsQNameVal) null : xs.QName(longitudeName), region, (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr elementPairGeospatialQuery(ServerExpression elementName, ServerExpression latitudeName, ServerExpression longitudeName, ServerExpression region, ServerExpression options, ServerExpression weight) { return new QueryCallImpl("cts", "element-pair-geospatial-query", new Object[]{ elementName, latitudeName, longitudeName, region, options, weight }); } - + @Override public CtsQueryExpr elementQuery(String elementName, ServerExpression query) { return elementQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), query); } - + @Override public CtsQueryExpr elementQuery(ServerExpression elementName, ServerExpression query) { if (query == null) { @@ -700,13 +753,13 @@ public CtsQueryExpr elementQuery(ServerExpression elementName, ServerExpression return new QueryCallImpl("cts", "element-query", new Object[]{ elementName, query }); } - + @Override public CtsQueryExpr elementRangeQuery(String elementName, String operator, String value) { return elementRangeQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (operator == null) ? (XsStringVal) null : xs.string(operator), (value == null) ? (XsAnyAtomicTypeVal) null : xs.string(value)); } - + @Override public CtsQueryExpr elementRangeQuery(ServerExpression elementName, ServerExpression operator, ServerExpression value) { if (operator == null) { @@ -715,13 +768,13 @@ public CtsQueryExpr elementRangeQuery(ServerExpression elementName, ServerExpres return new QueryCallImpl("cts", "element-range-query", new Object[]{ elementName, operator, value }); } - + @Override public CtsQueryExpr elementRangeQuery(String elementName, String operator, String value, String... options) { return elementRangeQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (operator == null) ? (XsStringVal) null : xs.string(operator), (value == null) ? (XsAnyAtomicTypeVal) null : xs.string(value), (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr elementRangeQuery(ServerExpression elementName, ServerExpression operator, ServerExpression value, ServerExpression options) { if (operator == null) { @@ -730,13 +783,13 @@ public CtsQueryExpr elementRangeQuery(ServerExpression elementName, ServerExpres return new QueryCallImpl("cts", "element-range-query", new Object[]{ elementName, operator, value, options }); } - + @Override public CtsQueryExpr elementRangeQuery(String elementName, String operator, String value, String options, double weight) { return elementRangeQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (operator == null) ? (XsStringVal) null : xs.string(operator), (value == null) ? (XsAnyAtomicTypeVal) null : xs.string(value), (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr elementRangeQuery(ServerExpression elementName, ServerExpression operator, ServerExpression value, ServerExpression options, ServerExpression weight) { if (operator == null) { @@ -745,13 +798,13 @@ public CtsQueryExpr elementRangeQuery(ServerExpression elementName, ServerExpres return new QueryCallImpl("cts", "element-range-query", new Object[]{ elementName, operator, value, options, weight }); } - + @Override public CtsReferenceExpr elementReference(String element) { return elementReference((element == null) ? (XsQNameVal) null : xs.QName(element)); } - + @Override public CtsReferenceExpr elementReference(ServerExpression element) { if (element == null) { @@ -760,13 +813,13 @@ public CtsReferenceExpr elementReference(ServerExpression element) { return new ReferenceCallImpl("cts", "element-reference", new Object[]{ element }); } - + @Override public CtsReferenceExpr elementReference(String element, String options) { return elementReference((element == null) ? (XsQNameVal) null : xs.QName(element), (options == null) ? (XsStringVal) null : xs.string(options)); } - + @Override public CtsReferenceExpr elementReference(ServerExpression element, ServerExpression options) { if (element == null) { @@ -775,103 +828,103 @@ public CtsReferenceExpr elementReference(ServerExpression element, ServerExpress return new ReferenceCallImpl("cts", "element-reference", new Object[]{ element, options }); } - + @Override public CtsQueryExpr elementValueQuery(String elementName) { return elementValueQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName)); } - + @Override public CtsQueryExpr elementValueQuery(ServerExpression elementName) { return new QueryCallImpl("cts", "element-value-query", new Object[]{ elementName }); } - + @Override public CtsQueryExpr elementValueQuery(String elementName, String text) { return elementValueQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (text == null) ? (XsStringVal) null : xs.string(text)); } - + @Override public CtsQueryExpr elementValueQuery(ServerExpression elementName, ServerExpression text) { return new QueryCallImpl("cts", "element-value-query", new Object[]{ elementName, text }); } - + @Override public CtsQueryExpr elementValueQuery(String elementName, String text, String... options) { return elementValueQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (text == null) ? (XsStringVal) null : xs.string(text), (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr elementValueQuery(ServerExpression elementName, ServerExpression text, ServerExpression options) { return new QueryCallImpl("cts", "element-value-query", new Object[]{ elementName, text, options }); } - + @Override public CtsQueryExpr elementValueQuery(String elementName, String text, String options, double weight) { return elementValueQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (text == null) ? (XsStringVal) null : xs.string(text), (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr elementValueQuery(ServerExpression elementName, ServerExpression text, ServerExpression options, ServerExpression weight) { return new QueryCallImpl("cts", "element-value-query", new Object[]{ elementName, text, options, weight }); } - + @Override public CtsQueryExpr elementWordQuery(String elementName, String text) { return elementWordQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (text == null) ? (XsStringVal) null : xs.string(text)); } - + @Override public CtsQueryExpr elementWordQuery(ServerExpression elementName, ServerExpression text) { return new QueryCallImpl("cts", "element-word-query", new Object[]{ elementName, text }); } - + @Override public CtsQueryExpr elementWordQuery(String elementName, String text, String... options) { return elementWordQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (text == null) ? (XsStringVal) null : xs.string(text), (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr elementWordQuery(ServerExpression elementName, ServerExpression text, ServerExpression options) { return new QueryCallImpl("cts", "element-word-query", new Object[]{ elementName, text, options }); } - + @Override public CtsQueryExpr elementWordQuery(String elementName, String text, String options, double weight) { return elementWordQuery((elementName == null) ? (XsQNameVal) null : xs.QName(elementName), (text == null) ? (XsStringVal) null : xs.string(text), (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr elementWordQuery(ServerExpression elementName, ServerExpression text, ServerExpression options, ServerExpression weight) { return new QueryCallImpl("cts", "element-word-query", new Object[]{ elementName, text, options, weight }); } - + @Override public CtsQueryExpr falseQuery() { return new QueryCallImpl("cts", "false-query", new Object[]{ }); } - + @Override public CtsQueryExpr fieldRangeQuery(String fieldName, String operator, String value) { return fieldRangeQuery((fieldName == null) ? (XsStringVal) null : xs.string(fieldName), (operator == null) ? (XsStringVal) null : xs.string(operator), (value == null) ? (XsAnyAtomicTypeVal) null : xs.string(value)); } - + @Override public CtsQueryExpr fieldRangeQuery(ServerExpression fieldName, ServerExpression operator, ServerExpression value) { if (operator == null) { @@ -880,13 +933,13 @@ public CtsQueryExpr fieldRangeQuery(ServerExpression fieldName, ServerExpression return new QueryCallImpl("cts", "field-range-query", new Object[]{ fieldName, operator, value }); } - + @Override public CtsQueryExpr fieldRangeQuery(String fieldName, String operator, String value, String... options) { return fieldRangeQuery((fieldName == null) ? (XsStringVal) null : xs.string(fieldName), (operator == null) ? (XsStringVal) null : xs.string(operator), (value == null) ? (XsAnyAtomicTypeVal) null : xs.string(value), (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr fieldRangeQuery(ServerExpression fieldName, ServerExpression operator, ServerExpression value, ServerExpression options) { if (operator == null) { @@ -895,13 +948,13 @@ public CtsQueryExpr fieldRangeQuery(ServerExpression fieldName, ServerExpression return new QueryCallImpl("cts", "field-range-query", new Object[]{ fieldName, operator, value, options }); } - + @Override public CtsQueryExpr fieldRangeQuery(String fieldName, String operator, String value, String options, double weight) { return fieldRangeQuery((fieldName == null) ? (XsStringVal) null : xs.string(fieldName), (operator == null) ? (XsStringVal) null : xs.string(operator), (value == null) ? (XsAnyAtomicTypeVal) null : xs.string(value), (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr fieldRangeQuery(ServerExpression fieldName, ServerExpression operator, ServerExpression value, ServerExpression options, ServerExpression weight) { if (operator == null) { @@ -910,13 +963,13 @@ public CtsQueryExpr fieldRangeQuery(ServerExpression fieldName, ServerExpression return new QueryCallImpl("cts", "field-range-query", new Object[]{ fieldName, operator, value, options, weight }); } - + @Override public CtsReferenceExpr fieldReference(String field) { return fieldReference((field == null) ? (XsStringVal) null : xs.string(field)); } - + @Override public CtsReferenceExpr fieldReference(ServerExpression field) { if (field == null) { @@ -925,13 +978,13 @@ public CtsReferenceExpr fieldReference(ServerExpression field) { return new ReferenceCallImpl("cts", "field-reference", new Object[]{ field }); } - + @Override public CtsReferenceExpr fieldReference(String field, String options) { return fieldReference((field == null) ? (XsStringVal) null : xs.string(field), (options == null) ? (XsStringVal) null : xs.string(options)); } - + @Override public CtsReferenceExpr fieldReference(ServerExpression field, ServerExpression options) { if (field == null) { @@ -940,85 +993,85 @@ public CtsReferenceExpr fieldReference(ServerExpression field, ServerExpression return new ReferenceCallImpl("cts", "field-reference", new Object[]{ field, options }); } - + @Override public CtsQueryExpr fieldValueQuery(String fieldName, String text) { return fieldValueQuery((fieldName == null) ? (XsStringVal) null : xs.string(fieldName), (text == null) ? (XsAnyAtomicTypeVal) null : xs.string(text)); } - + @Override public CtsQueryExpr fieldValueQuery(ServerExpression fieldName, ServerExpression text) { return new QueryCallImpl("cts", "field-value-query", new Object[]{ fieldName, text }); } - + @Override public CtsQueryExpr fieldValueQuery(String fieldName, String text, String... options) { return fieldValueQuery((fieldName == null) ? (XsStringVal) null : xs.string(fieldName), (text == null) ? (XsAnyAtomicTypeVal) null : xs.string(text), (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr fieldValueQuery(ServerExpression fieldName, ServerExpression text, ServerExpression options) { return new QueryCallImpl("cts", "field-value-query", new Object[]{ fieldName, text, options }); } - + @Override public CtsQueryExpr fieldValueQuery(String fieldName, String text, String options, double weight) { return fieldValueQuery((fieldName == null) ? (XsStringVal) null : xs.string(fieldName), (text == null) ? (XsAnyAtomicTypeVal) null : xs.string(text), (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr fieldValueQuery(ServerExpression fieldName, ServerExpression text, ServerExpression options, ServerExpression weight) { return new QueryCallImpl("cts", "field-value-query", new Object[]{ fieldName, text, options, weight }); } - + @Override public CtsQueryExpr fieldWordQuery(String fieldName, String text) { return fieldWordQuery((fieldName == null) ? (XsStringVal) null : xs.string(fieldName), (text == null) ? (XsStringVal) null : xs.string(text)); } - + @Override public CtsQueryExpr fieldWordQuery(ServerExpression fieldName, ServerExpression text) { return new QueryCallImpl("cts", "field-word-query", new Object[]{ fieldName, text }); } - + @Override public CtsQueryExpr fieldWordQuery(String fieldName, String text, String... options) { return fieldWordQuery((fieldName == null) ? (XsStringVal) null : xs.string(fieldName), (text == null) ? (XsStringVal) null : xs.string(text), (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr fieldWordQuery(ServerExpression fieldName, ServerExpression text, ServerExpression options) { return new QueryCallImpl("cts", "field-word-query", new Object[]{ fieldName, text, options }); } - + @Override public CtsQueryExpr fieldWordQuery(String fieldName, String text, String options, double weight) { return fieldWordQuery((fieldName == null) ? (XsStringVal) null : xs.string(fieldName), (text == null) ? (XsStringVal) null : xs.string(text), (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr fieldWordQuery(ServerExpression fieldName, ServerExpression text, ServerExpression options, ServerExpression weight) { return new QueryCallImpl("cts", "field-word-query", new Object[]{ fieldName, text, options, weight }); } - + @Override public CtsReferenceExpr geospatialPathReference(String pathExpression) { return geospatialPathReference((pathExpression == null) ? (XsStringVal) null : xs.string(pathExpression)); } - + @Override public CtsReferenceExpr geospatialPathReference(ServerExpression pathExpression) { if (pathExpression == null) { @@ -1027,13 +1080,13 @@ public CtsReferenceExpr geospatialPathReference(ServerExpression pathExpression) return new ReferenceCallImpl("cts", "geospatial-path-reference", new Object[]{ pathExpression }); } - + @Override public CtsReferenceExpr geospatialPathReference(String pathExpression, String options) { return geospatialPathReference((pathExpression == null) ? (XsStringVal) null : xs.string(pathExpression), (options == null) ? (XsStringVal) null : xs.string(options)); } - + @Override public CtsReferenceExpr geospatialPathReference(ServerExpression pathExpression, ServerExpression options) { if (pathExpression == null) { @@ -1042,13 +1095,13 @@ public CtsReferenceExpr geospatialPathReference(ServerExpression pathExpression, return new ReferenceCallImpl("cts", "geospatial-path-reference", new Object[]{ pathExpression, options }); } - + @Override public CtsReferenceExpr geospatialPathReference(String pathExpression, String options, ServerExpression map) { return geospatialPathReference((pathExpression == null) ? (XsStringVal) null : xs.string(pathExpression), (options == null) ? (XsStringVal) null : xs.string(options), map); } - + @Override public CtsReferenceExpr geospatialPathReference(ServerExpression pathExpression, ServerExpression options, ServerExpression map) { if (pathExpression == null) { @@ -1057,13 +1110,13 @@ public CtsReferenceExpr geospatialPathReference(ServerExpression pathExpression, return new ReferenceCallImpl("cts", "geospatial-path-reference", new Object[]{ pathExpression, options, map }); } - + @Override public CtsReferenceExpr geospatialRegionPathReference(String pathExpression) { return geospatialRegionPathReference((pathExpression == null) ? (XsStringVal) null : xs.string(pathExpression)); } - + @Override public CtsReferenceExpr geospatialRegionPathReference(ServerExpression pathExpression) { if (pathExpression == null) { @@ -1072,13 +1125,13 @@ public CtsReferenceExpr geospatialRegionPathReference(ServerExpression pathExpre return new ReferenceCallImpl("cts", "geospatial-region-path-reference", new Object[]{ pathExpression }); } - + @Override public CtsReferenceExpr geospatialRegionPathReference(String pathExpression, String options) { return geospatialRegionPathReference((pathExpression == null) ? (XsStringVal) null : xs.string(pathExpression), (options == null) ? (XsStringVal) null : xs.string(options)); } - + @Override public CtsReferenceExpr geospatialRegionPathReference(ServerExpression pathExpression, ServerExpression options) { if (pathExpression == null) { @@ -1087,13 +1140,13 @@ public CtsReferenceExpr geospatialRegionPathReference(ServerExpression pathExpre return new ReferenceCallImpl("cts", "geospatial-region-path-reference", new Object[]{ pathExpression, options }); } - + @Override public CtsReferenceExpr geospatialRegionPathReference(String pathExpression, String options, ServerExpression namespaces) { return geospatialRegionPathReference((pathExpression == null) ? (XsStringVal) null : xs.string(pathExpression), (options == null) ? (XsStringVal) null : xs.string(options), namespaces); } - + @Override public CtsReferenceExpr geospatialRegionPathReference(ServerExpression pathExpression, ServerExpression options, ServerExpression namespaces) { if (pathExpression == null) { @@ -1102,13 +1155,13 @@ public CtsReferenceExpr geospatialRegionPathReference(ServerExpression pathExpre return new ReferenceCallImpl("cts", "geospatial-region-path-reference", new Object[]{ pathExpression, options, namespaces }); } - + @Override public CtsReferenceExpr geospatialRegionPathReference(String pathExpression, String options, ServerExpression namespaces, long geohashPrecision) { return geospatialRegionPathReference((pathExpression == null) ? (XsStringVal) null : xs.string(pathExpression), (options == null) ? (XsStringVal) null : xs.string(options), namespaces, xs.integer(geohashPrecision)); } - + @Override public CtsReferenceExpr geospatialRegionPathReference(ServerExpression pathExpression, ServerExpression options, ServerExpression namespaces, ServerExpression geohashPrecision) { if (pathExpression == null) { @@ -1117,13 +1170,13 @@ public CtsReferenceExpr geospatialRegionPathReference(ServerExpression pathExpre return new ReferenceCallImpl("cts", "geospatial-region-path-reference", new Object[]{ pathExpression, options, namespaces, geohashPrecision }); } - + @Override public CtsReferenceExpr geospatialRegionPathReference(String pathExpression, String options, ServerExpression namespaces, long geohashPrecision, String units) { return geospatialRegionPathReference((pathExpression == null) ? (XsStringVal) null : xs.string(pathExpression), (options == null) ? (XsStringVal) null : xs.string(options), namespaces, xs.integer(geohashPrecision), (units == null) ? (XsStringVal) null : xs.string(units)); } - + @Override public CtsReferenceExpr geospatialRegionPathReference(ServerExpression pathExpression, ServerExpression options, ServerExpression namespaces, ServerExpression geohashPrecision, ServerExpression units) { if (pathExpression == null) { @@ -1132,13 +1185,13 @@ public CtsReferenceExpr geospatialRegionPathReference(ServerExpression pathExpre return new ReferenceCallImpl("cts", "geospatial-region-path-reference", new Object[]{ pathExpression, options, namespaces, geohashPrecision, units }); } - + @Override public CtsReferenceExpr geospatialRegionPathReference(String pathExpression, String options, ServerExpression namespaces, long geohashPrecision, String units, String invalidValues) { return geospatialRegionPathReference((pathExpression == null) ? (XsStringVal) null : xs.string(pathExpression), (options == null) ? (XsStringVal) null : xs.string(options), namespaces, xs.integer(geohashPrecision), (units == null) ? (XsStringVal) null : xs.string(units), (invalidValues == null) ? (XsStringVal) null : xs.string(invalidValues)); } - + @Override public CtsReferenceExpr geospatialRegionPathReference(ServerExpression pathExpression, ServerExpression options, ServerExpression namespaces, ServerExpression geohashPrecision, ServerExpression units, ServerExpression invalidValues) { if (pathExpression == null) { @@ -1147,13 +1200,13 @@ public CtsReferenceExpr geospatialRegionPathReference(ServerExpression pathExpre return new ReferenceCallImpl("cts", "geospatial-region-path-reference", new Object[]{ pathExpression, options, namespaces, geohashPrecision, units, invalidValues }); } - + @Override public CtsQueryExpr geospatialRegionQuery(ServerExpression reference, String operation, CtsRegionExpr... region) { return geospatialRegionQuery(reference, (operation == null) ? (XsStringVal) null : xs.string(operation), new RegionSeqListImpl(region)); } - + @Override public CtsQueryExpr geospatialRegionQuery(ServerExpression reference, ServerExpression operation, ServerExpression region) { if (operation == null) { @@ -1162,13 +1215,13 @@ public CtsQueryExpr geospatialRegionQuery(ServerExpression reference, ServerExpr return new QueryCallImpl("cts", "geospatial-region-query", new Object[]{ reference, operation, region }); } - + @Override public CtsQueryExpr geospatialRegionQuery(ServerExpression reference, String operation, ServerExpression region, String... options) { return geospatialRegionQuery(reference, (operation == null) ? (XsStringVal) null : xs.string(operation), region, (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr geospatialRegionQuery(ServerExpression reference, ServerExpression operation, ServerExpression region, ServerExpression options) { if (operation == null) { @@ -1177,13 +1230,13 @@ public CtsQueryExpr geospatialRegionQuery(ServerExpression reference, ServerExpr return new QueryCallImpl("cts", "geospatial-region-query", new Object[]{ reference, operation, region, options }); } - + @Override public CtsQueryExpr geospatialRegionQuery(ServerExpression reference, String operation, ServerExpression region, String options, double weight) { return geospatialRegionQuery(reference, (operation == null) ? (XsStringVal) null : xs.string(operation), region, (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr geospatialRegionQuery(ServerExpression reference, ServerExpression operation, ServerExpression region, ServerExpression options, ServerExpression weight) { if (operation == null) { @@ -1192,127 +1245,127 @@ public CtsQueryExpr geospatialRegionQuery(ServerExpression reference, ServerExpr return new QueryCallImpl("cts", "geospatial-region-query", new Object[]{ reference, operation, region, options, weight }); } - + @Override public CtsReferenceExpr iriReference() { return new ReferenceCallImpl("cts", "iri-reference", new Object[]{ }); } - + @Override public CtsQueryExpr jsonPropertyChildGeospatialQuery(String propertyName, String childName, CtsRegionExpr... region) { return jsonPropertyChildGeospatialQuery((propertyName == null) ? (XsStringVal) null : xs.string(propertyName), (childName == null) ? (XsStringVal) null : xs.string(childName), new RegionSeqListImpl(region)); } - + @Override public CtsQueryExpr jsonPropertyChildGeospatialQuery(ServerExpression propertyName, ServerExpression childName, ServerExpression region) { return new QueryCallImpl("cts", "json-property-child-geospatial-query", new Object[]{ propertyName, childName, region }); } - + @Override public CtsQueryExpr jsonPropertyChildGeospatialQuery(String propertyName, String childName, ServerExpression region, String... options) { return jsonPropertyChildGeospatialQuery((propertyName == null) ? (XsStringVal) null : xs.string(propertyName), (childName == null) ? (XsStringVal) null : xs.string(childName), region, (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr jsonPropertyChildGeospatialQuery(ServerExpression propertyName, ServerExpression childName, ServerExpression region, ServerExpression options) { return new QueryCallImpl("cts", "json-property-child-geospatial-query", new Object[]{ propertyName, childName, region, options }); } - + @Override public CtsQueryExpr jsonPropertyChildGeospatialQuery(String propertyName, String childName, ServerExpression region, String options, double weight) { return jsonPropertyChildGeospatialQuery((propertyName == null) ? (XsStringVal) null : xs.string(propertyName), (childName == null) ? (XsStringVal) null : xs.string(childName), region, (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr jsonPropertyChildGeospatialQuery(ServerExpression propertyName, ServerExpression childName, ServerExpression region, ServerExpression options, ServerExpression weight) { return new QueryCallImpl("cts", "json-property-child-geospatial-query", new Object[]{ propertyName, childName, region, options, weight }); } - + @Override public CtsQueryExpr jsonPropertyGeospatialQuery(String propertyName, CtsRegionExpr... region) { return jsonPropertyGeospatialQuery((propertyName == null) ? (XsStringVal) null : xs.string(propertyName), new RegionSeqListImpl(region)); } - + @Override public CtsQueryExpr jsonPropertyGeospatialQuery(ServerExpression propertyName, ServerExpression region) { return new QueryCallImpl("cts", "json-property-geospatial-query", new Object[]{ propertyName, region }); } - + @Override public CtsQueryExpr jsonPropertyGeospatialQuery(String propertyName, ServerExpression region, String... options) { return jsonPropertyGeospatialQuery((propertyName == null) ? (XsStringVal) null : xs.string(propertyName), region, (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr jsonPropertyGeospatialQuery(ServerExpression propertyName, ServerExpression region, ServerExpression options) { return new QueryCallImpl("cts", "json-property-geospatial-query", new Object[]{ propertyName, region, options }); } - + @Override public CtsQueryExpr jsonPropertyGeospatialQuery(String propertyName, ServerExpression region, String options, double weight) { return jsonPropertyGeospatialQuery((propertyName == null) ? (XsStringVal) null : xs.string(propertyName), region, (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr jsonPropertyGeospatialQuery(ServerExpression propertyName, ServerExpression region, ServerExpression options, ServerExpression weight) { return new QueryCallImpl("cts", "json-property-geospatial-query", new Object[]{ propertyName, region, options, weight }); } - + @Override public CtsQueryExpr jsonPropertyPairGeospatialQuery(String propertyName, String latitudeName, String longitudeName, CtsRegionExpr... region) { return jsonPropertyPairGeospatialQuery((propertyName == null) ? (XsStringVal) null : xs.string(propertyName), (latitudeName == null) ? (XsStringVal) null : xs.string(latitudeName), (longitudeName == null) ? (XsStringVal) null : xs.string(longitudeName), new RegionSeqListImpl(region)); } - + @Override public CtsQueryExpr jsonPropertyPairGeospatialQuery(ServerExpression propertyName, ServerExpression latitudeName, ServerExpression longitudeName, ServerExpression region) { return new QueryCallImpl("cts", "json-property-pair-geospatial-query", new Object[]{ propertyName, latitudeName, longitudeName, region }); } - + @Override public CtsQueryExpr jsonPropertyPairGeospatialQuery(String propertyName, String latitudeName, String longitudeName, ServerExpression region, String... options) { return jsonPropertyPairGeospatialQuery((propertyName == null) ? (XsStringVal) null : xs.string(propertyName), (latitudeName == null) ? (XsStringVal) null : xs.string(latitudeName), (longitudeName == null) ? (XsStringVal) null : xs.string(longitudeName), region, (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr jsonPropertyPairGeospatialQuery(ServerExpression propertyName, ServerExpression latitudeName, ServerExpression longitudeName, ServerExpression region, ServerExpression options) { return new QueryCallImpl("cts", "json-property-pair-geospatial-query", new Object[]{ propertyName, latitudeName, longitudeName, region, options }); } - + @Override public CtsQueryExpr jsonPropertyPairGeospatialQuery(String propertyName, String latitudeName, String longitudeName, ServerExpression region, String options, double weight) { return jsonPropertyPairGeospatialQuery((propertyName == null) ? (XsStringVal) null : xs.string(propertyName), (latitudeName == null) ? (XsStringVal) null : xs.string(latitudeName), (longitudeName == null) ? (XsStringVal) null : xs.string(longitudeName), region, (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr jsonPropertyPairGeospatialQuery(ServerExpression propertyName, ServerExpression latitudeName, ServerExpression longitudeName, ServerExpression region, ServerExpression options, ServerExpression weight) { return new QueryCallImpl("cts", "json-property-pair-geospatial-query", new Object[]{ propertyName, latitudeName, longitudeName, region, options, weight }); } - + @Override public CtsQueryExpr jsonPropertyRangeQuery(String propertyName, String operator, String value) { return jsonPropertyRangeQuery((propertyName == null) ? (XsStringVal) null : xs.string(propertyName), (operator == null) ? (XsStringVal) null : xs.string(operator), (value == null) ? (XsAnyAtomicTypeVal) null : xs.string(value)); } - + @Override public CtsQueryExpr jsonPropertyRangeQuery(ServerExpression propertyName, ServerExpression operator, ServerExpression value) { if (operator == null) { @@ -1321,13 +1374,13 @@ public CtsQueryExpr jsonPropertyRangeQuery(ServerExpression propertyName, Server return new QueryCallImpl("cts", "json-property-range-query", new Object[]{ propertyName, operator, value }); } - + @Override public CtsQueryExpr jsonPropertyRangeQuery(String propertyName, String operator, String value, String... options) { return jsonPropertyRangeQuery((propertyName == null) ? (XsStringVal) null : xs.string(propertyName), (operator == null) ? (XsStringVal) null : xs.string(operator), (value == null) ? (XsAnyAtomicTypeVal) null : xs.string(value), (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr jsonPropertyRangeQuery(ServerExpression propertyName, ServerExpression operator, ServerExpression value, ServerExpression options) { if (operator == null) { @@ -1336,13 +1389,13 @@ public CtsQueryExpr jsonPropertyRangeQuery(ServerExpression propertyName, Server return new QueryCallImpl("cts", "json-property-range-query", new Object[]{ propertyName, operator, value, options }); } - + @Override public CtsQueryExpr jsonPropertyRangeQuery(String propertyName, String operator, String value, String options, double weight) { return jsonPropertyRangeQuery((propertyName == null) ? (XsStringVal) null : xs.string(propertyName), (operator == null) ? (XsStringVal) null : xs.string(operator), (value == null) ? (XsAnyAtomicTypeVal) null : xs.string(value), (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr jsonPropertyRangeQuery(ServerExpression propertyName, ServerExpression operator, ServerExpression value, ServerExpression options, ServerExpression weight) { if (operator == null) { @@ -1351,13 +1404,13 @@ public CtsQueryExpr jsonPropertyRangeQuery(ServerExpression propertyName, Server return new QueryCallImpl("cts", "json-property-range-query", new Object[]{ propertyName, operator, value, options, weight }); } - + @Override public CtsReferenceExpr jsonPropertyReference(String property) { return jsonPropertyReference((property == null) ? (XsStringVal) null : xs.string(property)); } - + @Override public CtsReferenceExpr jsonPropertyReference(ServerExpression property) { if (property == null) { @@ -1366,13 +1419,13 @@ public CtsReferenceExpr jsonPropertyReference(ServerExpression property) { return new ReferenceCallImpl("cts", "json-property-reference", new Object[]{ property }); } - + @Override public CtsReferenceExpr jsonPropertyReference(String property, String options) { return jsonPropertyReference((property == null) ? (XsStringVal) null : xs.string(property), (options == null) ? (XsStringVal) null : xs.string(options)); } - + @Override public CtsReferenceExpr jsonPropertyReference(ServerExpression property, ServerExpression options) { if (property == null) { @@ -1381,13 +1434,13 @@ public CtsReferenceExpr jsonPropertyReference(ServerExpression property, ServerE return new ReferenceCallImpl("cts", "json-property-reference", new Object[]{ property, options }); } - + @Override public CtsQueryExpr jsonPropertyScopeQuery(String propertyName, ServerExpression query) { return jsonPropertyScopeQuery((propertyName == null) ? (XsStringVal) null : xs.string(propertyName), query); } - + @Override public CtsQueryExpr jsonPropertyScopeQuery(ServerExpression propertyName, ServerExpression query) { if (query == null) { @@ -1396,91 +1449,91 @@ public CtsQueryExpr jsonPropertyScopeQuery(ServerExpression propertyName, Server return new QueryCallImpl("cts", "json-property-scope-query", new Object[]{ propertyName, query }); } - + @Override public CtsQueryExpr jsonPropertyValueQuery(String propertyName, String value) { return jsonPropertyValueQuery((propertyName == null) ? (XsStringVal) null : xs.string(propertyName), (value == null) ? (XsAnyAtomicTypeVal) null : xs.string(value)); } - + @Override public CtsQueryExpr jsonPropertyValueQuery(ServerExpression propertyName, ServerExpression value) { return new QueryCallImpl("cts", "json-property-value-query", new Object[]{ propertyName, value }); } - + @Override public CtsQueryExpr jsonPropertyValueQuery(String propertyName, String value, String... options) { return jsonPropertyValueQuery((propertyName == null) ? (XsStringVal) null : xs.string(propertyName), (value == null) ? (XsAnyAtomicTypeVal) null : xs.string(value), (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr jsonPropertyValueQuery(ServerExpression propertyName, ServerExpression value, ServerExpression options) { return new QueryCallImpl("cts", "json-property-value-query", new Object[]{ propertyName, value, options }); } - + @Override public CtsQueryExpr jsonPropertyValueQuery(String propertyName, String value, String options, double weight) { return jsonPropertyValueQuery((propertyName == null) ? (XsStringVal) null : xs.string(propertyName), (value == null) ? (XsAnyAtomicTypeVal) null : xs.string(value), (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr jsonPropertyValueQuery(ServerExpression propertyName, ServerExpression value, ServerExpression options, ServerExpression weight) { return new QueryCallImpl("cts", "json-property-value-query", new Object[]{ propertyName, value, options, weight }); } - + @Override public CtsQueryExpr jsonPropertyWordQuery(String propertyName, String text) { return jsonPropertyWordQuery((propertyName == null) ? (XsStringVal) null : xs.string(propertyName), (text == null) ? (XsStringVal) null : xs.string(text)); } - + @Override public CtsQueryExpr jsonPropertyWordQuery(ServerExpression propertyName, ServerExpression text) { return new QueryCallImpl("cts", "json-property-word-query", new Object[]{ propertyName, text }); } - + @Override public CtsQueryExpr jsonPropertyWordQuery(String propertyName, String text, String... options) { return jsonPropertyWordQuery((propertyName == null) ? (XsStringVal) null : xs.string(propertyName), (text == null) ? (XsStringVal) null : xs.string(text), (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr jsonPropertyWordQuery(ServerExpression propertyName, ServerExpression text, ServerExpression options) { return new QueryCallImpl("cts", "json-property-word-query", new Object[]{ propertyName, text, options }); } - + @Override public CtsQueryExpr jsonPropertyWordQuery(String propertyName, String text, String options, double weight) { return jsonPropertyWordQuery((propertyName == null) ? (XsStringVal) null : xs.string(propertyName), (text == null) ? (XsStringVal) null : xs.string(text), (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr jsonPropertyWordQuery(ServerExpression propertyName, ServerExpression text, ServerExpression options, ServerExpression weight) { return new QueryCallImpl("cts", "json-property-word-query", new Object[]{ propertyName, text, options, weight }); } - + @Override public ServerExpression linestring(String vertices) { return linestring((vertices == null) ? (XsAnyAtomicTypeVal) null : xs.string(vertices)); } - + @Override public ServerExpression linestring(ServerExpression vertices) { return new RegionCallImpl("cts", "linestring", new Object[]{ vertices }); } - + @Override public CtsQueryExpr locksFragmentQuery(ServerExpression query) { if (query == null) { @@ -1489,13 +1542,13 @@ public CtsQueryExpr locksFragmentQuery(ServerExpression query) { return new QueryCallImpl("cts", "locks-fragment-query", new Object[]{ query }); } - + @Override public CtsQueryExpr lsqtQuery(String temporalCollection) { return lsqtQuery((temporalCollection == null) ? (XsStringVal) null : xs.string(temporalCollection)); } - + @Override public CtsQueryExpr lsqtQuery(ServerExpression temporalCollection) { if (temporalCollection == null) { @@ -1504,13 +1557,13 @@ public CtsQueryExpr lsqtQuery(ServerExpression temporalCollection) { return new QueryCallImpl("cts", "lsqt-query", new Object[]{ temporalCollection }); } - + @Override public CtsQueryExpr lsqtQuery(String temporalCollection, String timestamp) { return lsqtQuery((temporalCollection == null) ? (XsStringVal) null : xs.string(temporalCollection), (timestamp == null) ? (XsDateTimeVal) null : xs.dateTime(timestamp)); } - + @Override public CtsQueryExpr lsqtQuery(ServerExpression temporalCollection, ServerExpression timestamp) { if (temporalCollection == null) { @@ -1519,13 +1572,13 @@ public CtsQueryExpr lsqtQuery(ServerExpression temporalCollection, ServerExpress return new QueryCallImpl("cts", "lsqt-query", new Object[]{ temporalCollection, timestamp }); } - + @Override public CtsQueryExpr lsqtQuery(String temporalCollection, String timestamp, String... options) { return lsqtQuery((temporalCollection == null) ? (XsStringVal) null : xs.string(temporalCollection), (timestamp == null) ? (XsDateTimeVal) null : xs.dateTime(timestamp), (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr lsqtQuery(ServerExpression temporalCollection, ServerExpression timestamp, ServerExpression options) { if (temporalCollection == null) { @@ -1534,13 +1587,13 @@ public CtsQueryExpr lsqtQuery(ServerExpression temporalCollection, ServerExpress return new QueryCallImpl("cts", "lsqt-query", new Object[]{ temporalCollection, timestamp, options }); } - + @Override public CtsQueryExpr lsqtQuery(String temporalCollection, String timestamp, String options, double weight) { return lsqtQuery((temporalCollection == null) ? (XsStringVal) null : xs.string(temporalCollection), (timestamp == null) ? (XsDateTimeVal) null : xs.dateTime(timestamp), (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr lsqtQuery(ServerExpression temporalCollection, ServerExpression timestamp, ServerExpression options, ServerExpression weight) { if (temporalCollection == null) { @@ -1549,55 +1602,55 @@ public CtsQueryExpr lsqtQuery(ServerExpression temporalCollection, ServerExpress return new QueryCallImpl("cts", "lsqt-query", new Object[]{ temporalCollection, timestamp, options, weight }); } - + @Override public CtsQueryExpr nearQuery(CtsQueryExpr... queries) { return nearQuery(new QuerySeqListImpl(queries)); } - + @Override public CtsQueryExpr nearQuery(ServerExpression queries) { return new QueryCallImpl("cts", "near-query", new Object[]{ queries }); } - + @Override public CtsQueryExpr nearQuery(ServerExpression queries, double distance) { return nearQuery(queries, xs.doubleVal(distance)); } - + @Override public CtsQueryExpr nearQuery(ServerExpression queries, XsDoubleVal distance) { return new QueryCallImpl("cts", "near-query", new Object[]{ queries, distance }); } - + @Override public CtsQueryExpr nearQuery(ServerExpression queries, double distance, String... options) { return nearQuery(queries, xs.doubleVal(distance), (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr nearQuery(ServerExpression queries, ServerExpression distance, ServerExpression options) { return new QueryCallImpl("cts", "near-query", new Object[]{ queries, distance, options }); } - + @Override public CtsQueryExpr nearQuery(ServerExpression queries, double distance, String options, double weight) { return nearQuery(queries, xs.doubleVal(distance), (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr nearQuery(ServerExpression queries, ServerExpression distance, ServerExpression options, ServerExpression weight) { return new QueryCallImpl("cts", "near-query", new Object[]{ queries, distance, options, weight }); } - + @Override public CtsQueryExpr notInQuery(ServerExpression positiveQuery, ServerExpression negativeQuery) { if (positiveQuery == null) { @@ -1609,7 +1662,7 @@ public CtsQueryExpr notInQuery(ServerExpression positiveQuery, ServerExpression return new QueryCallImpl("cts", "not-in-query", new Object[]{ positiveQuery, negativeQuery }); } - + @Override public CtsQueryExpr notQuery(ServerExpression query) { if (query == null) { @@ -1618,31 +1671,31 @@ public CtsQueryExpr notQuery(ServerExpression query) { return new QueryCallImpl("cts", "not-query", new Object[]{ query }); } - + @Override public CtsQueryExpr orQuery(CtsQueryExpr... queries) { return orQuery(new QuerySeqListImpl(queries)); } - + @Override public CtsQueryExpr orQuery(ServerExpression queries) { return new QueryCallImpl("cts", "or-query", new Object[]{ queries }); } - + @Override public CtsQueryExpr orQuery(ServerExpression queries, String options) { return orQuery(queries, (options == null) ? (XsStringVal) null : xs.string(options)); } - + @Override public CtsQueryExpr orQuery(ServerExpression queries, XsStringSeqVal options) { return new QueryCallImpl("cts", "or-query", new Object[]{ queries, options }); } - + @Override public ServerExpression partOfSpeech(ServerExpression token) { if (token == null) { @@ -1651,49 +1704,49 @@ public ServerExpression partOfSpeech(ServerExpression token) { return new XsExprImpl.StringCallImpl("cts", "part-of-speech", new Object[]{ token }); } - + @Override public CtsQueryExpr pathGeospatialQuery(String pathExpression, CtsRegionExpr... region) { return pathGeospatialQuery((pathExpression == null) ? (XsStringVal) null : xs.string(pathExpression), new RegionSeqListImpl(region)); } - + @Override public CtsQueryExpr pathGeospatialQuery(ServerExpression pathExpression, ServerExpression region) { return new QueryCallImpl("cts", "path-geospatial-query", new Object[]{ pathExpression, region }); } - + @Override public CtsQueryExpr pathGeospatialQuery(String pathExpression, ServerExpression region, String... options) { return pathGeospatialQuery((pathExpression == null) ? (XsStringVal) null : xs.string(pathExpression), region, (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr pathGeospatialQuery(ServerExpression pathExpression, ServerExpression region, ServerExpression options) { return new QueryCallImpl("cts", "path-geospatial-query", new Object[]{ pathExpression, region, options }); } - + @Override public CtsQueryExpr pathGeospatialQuery(String pathExpression, ServerExpression region, String options, double weight) { return pathGeospatialQuery((pathExpression == null) ? (XsStringVal) null : xs.string(pathExpression), region, (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr pathGeospatialQuery(ServerExpression pathExpression, ServerExpression region, ServerExpression options, ServerExpression weight) { return new QueryCallImpl("cts", "path-geospatial-query", new Object[]{ pathExpression, region, options, weight }); } - + @Override public CtsQueryExpr pathRangeQuery(String pathName, String operator, String value) { return pathRangeQuery((pathName == null) ? (XsStringVal) null : xs.string(pathName), (operator == null) ? (XsStringVal) null : xs.string(operator), (value == null) ? (XsAnyAtomicTypeVal) null : xs.string(value)); } - + @Override public CtsQueryExpr pathRangeQuery(ServerExpression pathName, ServerExpression operator, ServerExpression value) { if (operator == null) { @@ -1702,13 +1755,13 @@ public CtsQueryExpr pathRangeQuery(ServerExpression pathName, ServerExpression o return new QueryCallImpl("cts", "path-range-query", new Object[]{ pathName, operator, value }); } - + @Override public CtsQueryExpr pathRangeQuery(String pathName, String operator, String value, String... options) { return pathRangeQuery((pathName == null) ? (XsStringVal) null : xs.string(pathName), (operator == null) ? (XsStringVal) null : xs.string(operator), (value == null) ? (XsAnyAtomicTypeVal) null : xs.string(value), (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr pathRangeQuery(ServerExpression pathName, ServerExpression operator, ServerExpression value, ServerExpression options) { if (operator == null) { @@ -1717,13 +1770,13 @@ public CtsQueryExpr pathRangeQuery(ServerExpression pathName, ServerExpression o return new QueryCallImpl("cts", "path-range-query", new Object[]{ pathName, operator, value, options }); } - + @Override public CtsQueryExpr pathRangeQuery(String pathName, String operator, String value, String options, double weight) { return pathRangeQuery((pathName == null) ? (XsStringVal) null : xs.string(pathName), (operator == null) ? (XsStringVal) null : xs.string(operator), (value == null) ? (XsAnyAtomicTypeVal) null : xs.string(value), (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr pathRangeQuery(ServerExpression pathName, ServerExpression operator, ServerExpression value, ServerExpression options, ServerExpression weight) { if (operator == null) { @@ -1732,13 +1785,13 @@ public CtsQueryExpr pathRangeQuery(ServerExpression pathName, ServerExpression o return new QueryCallImpl("cts", "path-range-query", new Object[]{ pathName, operator, value, options, weight }); } - + @Override public CtsReferenceExpr pathReference(String pathExpression) { return pathReference((pathExpression == null) ? (XsStringVal) null : xs.string(pathExpression)); } - + @Override public CtsReferenceExpr pathReference(ServerExpression pathExpression) { if (pathExpression == null) { @@ -1747,13 +1800,13 @@ public CtsReferenceExpr pathReference(ServerExpression pathExpression) { return new ReferenceCallImpl("cts", "path-reference", new Object[]{ pathExpression }); } - + @Override public CtsReferenceExpr pathReference(String pathExpression, String options) { return pathReference((pathExpression == null) ? (XsStringVal) null : xs.string(pathExpression), (options == null) ? (XsStringVal) null : xs.string(options)); } - + @Override public CtsReferenceExpr pathReference(ServerExpression pathExpression, ServerExpression options) { if (pathExpression == null) { @@ -1762,13 +1815,13 @@ public CtsReferenceExpr pathReference(ServerExpression pathExpression, ServerExp return new ReferenceCallImpl("cts", "path-reference", new Object[]{ pathExpression, options }); } - + @Override public CtsReferenceExpr pathReference(String pathExpression, String options, ServerExpression map) { return pathReference((pathExpression == null) ? (XsStringVal) null : xs.string(pathExpression), (options == null) ? (XsStringVal) null : xs.string(options), map); } - + @Override public CtsReferenceExpr pathReference(ServerExpression pathExpression, ServerExpression options, ServerExpression map) { if (pathExpression == null) { @@ -1777,13 +1830,13 @@ public CtsReferenceExpr pathReference(ServerExpression pathExpression, ServerExp return new ReferenceCallImpl("cts", "path-reference", new Object[]{ pathExpression, options, map }); } - + @Override public CtsPeriodExpr period(String start, String end) { return period((start == null) ? (XsDateTimeVal) null : xs.dateTime(start), (end == null) ? (XsDateTimeVal) null : xs.dateTime(end)); } - + @Override public CtsPeriodExpr period(ServerExpression start, ServerExpression end) { if (start == null) { @@ -1795,13 +1848,13 @@ public CtsPeriodExpr period(ServerExpression start, ServerExpression end) { return new PeriodCallImpl("cts", "period", new Object[]{ start, end }); } - + @Override public CtsQueryExpr periodCompareQuery(String axis1, String operator, String axis2) { return periodCompareQuery((axis1 == null) ? (XsStringVal) null : xs.string(axis1), (operator == null) ? (XsStringVal) null : xs.string(operator), (axis2 == null) ? (XsStringVal) null : xs.string(axis2)); } - + @Override public CtsQueryExpr periodCompareQuery(ServerExpression axis1, ServerExpression operator, ServerExpression axis2) { if (axis1 == null) { @@ -1816,13 +1869,13 @@ public CtsQueryExpr periodCompareQuery(ServerExpression axis1, ServerExpression return new QueryCallImpl("cts", "period-compare-query", new Object[]{ axis1, operator, axis2 }); } - + @Override public CtsQueryExpr periodCompareQuery(String axis1, String operator, String axis2, String options) { return periodCompareQuery((axis1 == null) ? (XsStringVal) null : xs.string(axis1), (operator == null) ? (XsStringVal) null : xs.string(operator), (axis2 == null) ? (XsStringVal) null : xs.string(axis2), (options == null) ? (XsStringVal) null : xs.string(options)); } - + @Override public CtsQueryExpr periodCompareQuery(ServerExpression axis1, ServerExpression operator, ServerExpression axis2, ServerExpression options) { if (axis1 == null) { @@ -1837,13 +1890,13 @@ public CtsQueryExpr periodCompareQuery(ServerExpression axis1, ServerExpression return new QueryCallImpl("cts", "period-compare-query", new Object[]{ axis1, operator, axis2, options }); } - + @Override public CtsQueryExpr periodRangeQuery(String axis, String operator) { return periodRangeQuery((axis == null) ? (XsStringVal) null : xs.string(axis), (operator == null) ? (XsStringVal) null : xs.string(operator)); } - + @Override public CtsQueryExpr periodRangeQuery(ServerExpression axis, ServerExpression operator) { if (operator == null) { @@ -1852,13 +1905,13 @@ public CtsQueryExpr periodRangeQuery(ServerExpression axis, ServerExpression ope return new QueryCallImpl("cts", "period-range-query", new Object[]{ axis, operator }); } - + @Override public CtsQueryExpr periodRangeQuery(String axis, String operator, CtsPeriodExpr... period) { return periodRangeQuery((axis == null) ? (XsStringVal) null : xs.string(axis), (operator == null) ? (XsStringVal) null : xs.string(operator), new PeriodSeqListImpl(period)); } - + @Override public CtsQueryExpr periodRangeQuery(ServerExpression axis, ServerExpression operator, ServerExpression period) { if (operator == null) { @@ -1867,13 +1920,13 @@ public CtsQueryExpr periodRangeQuery(ServerExpression axis, ServerExpression ope return new QueryCallImpl("cts", "period-range-query", new Object[]{ axis, operator, period }); } - + @Override public CtsQueryExpr periodRangeQuery(String axis, String operator, ServerExpression period, String options) { return periodRangeQuery((axis == null) ? (XsStringVal) null : xs.string(axis), (operator == null) ? (XsStringVal) null : xs.string(operator), period, (options == null) ? (XsStringVal) null : xs.string(options)); } - + @Override public CtsQueryExpr periodRangeQuery(ServerExpression axis, ServerExpression operator, ServerExpression period, ServerExpression options) { if (operator == null) { @@ -1882,14 +1935,18 @@ public CtsQueryExpr periodRangeQuery(ServerExpression axis, ServerExpression ope return new QueryCallImpl("cts", "period-range-query", new Object[]{ axis, operator, period, options }); } - + @Override public CtsPointExpr point(double latitude, double longitude) { return point(xs.doubleVal(latitude), xs.doubleVal(longitude)); } - - @Override + @Override + public CtsPointExpr point(String expression) { + return new PointCallImpl("cts", "point", new Object[]{ xs.string(expression) }); + } + + @Override public CtsPointExpr point(ServerExpression latitude, ServerExpression longitude) { if (latitude == null) { throw new IllegalArgumentException("latitude parameter for point() cannot be null"); @@ -1900,7 +1957,7 @@ public CtsPointExpr point(ServerExpression latitude, ServerExpression longitude) return new PointCallImpl("cts", "point", new Object[]{ latitude, longitude }); } - + @Override public ServerExpression pointLatitude(ServerExpression point) { if (point == null) { @@ -1909,7 +1966,7 @@ public ServerExpression pointLatitude(ServerExpression point) { return new XsExprImpl.NumericCallImpl("cts", "point-latitude", new Object[]{ point }); } - + @Override public ServerExpression pointLongitude(ServerExpression point) { if (point == null) { @@ -1918,14 +1975,18 @@ public ServerExpression pointLongitude(ServerExpression point) { return new XsExprImpl.NumericCallImpl("cts", "point-longitude", new Object[]{ point }); } - + @Override public CtsPolygonExpr polygon(ServerExpression vertices) { return new PolygonCallImpl("cts", "polygon", new Object[]{ vertices }); } - - @Override + @Override + public CtsPolygonExpr polygon(String expression) { + return new PolygonCallImpl("cts", "polygon", new Object[]{ xs.string(expression) }); + } + + @Override public CtsQueryExpr propertiesFragmentQuery(ServerExpression query) { if (query == null) { throw new IllegalArgumentException("query parameter for propertiesFragmentQuery() cannot be null"); @@ -1933,13 +1994,13 @@ public CtsQueryExpr propertiesFragmentQuery(ServerExpression query) { return new QueryCallImpl("cts", "properties-fragment-query", new Object[]{ query }); } - + @Override public CtsQueryExpr rangeQuery(ServerExpression index, String operator, String value) { return rangeQuery(index, (operator == null) ? (XsStringVal) null : xs.string(operator), (value == null) ? (XsAnyAtomicTypeVal) null : xs.string(value)); } - + @Override public CtsQueryExpr rangeQuery(ServerExpression index, ServerExpression operator, ServerExpression value) { if (operator == null) { @@ -1948,13 +2009,13 @@ public CtsQueryExpr rangeQuery(ServerExpression index, ServerExpression operator return new QueryCallImpl("cts", "range-query", new Object[]{ index, operator, value }); } - + @Override public CtsQueryExpr rangeQuery(ServerExpression index, String operator, String value, String... options) { return rangeQuery(index, (operator == null) ? (XsStringVal) null : xs.string(operator), (value == null) ? (XsAnyAtomicTypeVal) null : xs.string(value), (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr rangeQuery(ServerExpression index, ServerExpression operator, ServerExpression value, ServerExpression options) { if (operator == null) { @@ -1963,13 +2024,13 @@ public CtsQueryExpr rangeQuery(ServerExpression index, ServerExpression operator return new QueryCallImpl("cts", "range-query", new Object[]{ index, operator, value, options }); } - + @Override public CtsQueryExpr rangeQuery(ServerExpression index, String operator, String value, String options, double weight) { return rangeQuery(index, (operator == null) ? (XsStringVal) null : xs.string(operator), (value == null) ? (XsAnyAtomicTypeVal) null : xs.string(value), (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr rangeQuery(ServerExpression index, ServerExpression operator, ServerExpression value, ServerExpression options, ServerExpression weight) { if (operator == null) { @@ -1978,7 +2039,7 @@ public CtsQueryExpr rangeQuery(ServerExpression index, ServerExpression operator return new QueryCallImpl("cts", "range-query", new Object[]{ index, operator, value, options, weight }); } - + @Override public ServerExpression stem(ServerExpression text) { if (text == null) { @@ -1987,13 +2048,13 @@ public ServerExpression stem(ServerExpression text) { return new XsExprImpl.StringSeqCallImpl("cts", "stem", new Object[]{ text }); } - + @Override public ServerExpression stem(ServerExpression text, String language) { return stem(text, (language == null) ? (ServerExpression) null : xs.string(language)); } - + @Override public ServerExpression stem(ServerExpression text, ServerExpression language) { if (text == null) { @@ -2002,13 +2063,13 @@ public ServerExpression stem(ServerExpression text, ServerExpression language) { return new XsExprImpl.StringSeqCallImpl("cts", "stem", new Object[]{ text, language }); } - + @Override public ServerExpression stem(ServerExpression text, String language, String partOfSpeech) { return stem(text, (language == null) ? (ServerExpression) null : xs.string(language), (partOfSpeech == null) ? (ServerExpression) null : xs.string(partOfSpeech)); } - + @Override public ServerExpression stem(ServerExpression text, ServerExpression language, ServerExpression partOfSpeech) { if (text == null) { @@ -2017,7 +2078,7 @@ public ServerExpression stem(ServerExpression text, ServerExpression language, S return new XsExprImpl.StringSeqCallImpl("cts", "stem", new Object[]{ text, language, partOfSpeech }); } - + @Override public ServerExpression tokenize(ServerExpression text) { if (text == null) { @@ -2026,13 +2087,13 @@ public ServerExpression tokenize(ServerExpression text) { return new XsExprImpl.StringSeqCallImpl("cts", "tokenize", new Object[]{ text }); } - + @Override public ServerExpression tokenize(ServerExpression text, String language) { return tokenize(text, (language == null) ? (ServerExpression) null : xs.string(language)); } - + @Override public ServerExpression tokenize(ServerExpression text, ServerExpression language) { if (text == null) { @@ -2041,13 +2102,13 @@ public ServerExpression tokenize(ServerExpression text, ServerExpression languag return new XsExprImpl.StringSeqCallImpl("cts", "tokenize", new Object[]{ text, language }); } - + @Override public ServerExpression tokenize(ServerExpression text, String language, String field) { return tokenize(text, (language == null) ? (ServerExpression) null : xs.string(language), (field == null) ? (ServerExpression) null : xs.string(field)); } - + @Override public ServerExpression tokenize(ServerExpression text, ServerExpression language, ServerExpression field) { if (text == null) { @@ -2056,97 +2117,97 @@ public ServerExpression tokenize(ServerExpression text, ServerExpression languag return new XsExprImpl.StringSeqCallImpl("cts", "tokenize", new Object[]{ text, language, field }); } - + @Override public CtsQueryExpr tripleRangeQuery(String subject, String predicate, String object) { return tripleRangeQuery((subject == null) ? (XsAnyAtomicTypeVal) null : xs.string(subject), (predicate == null) ? (XsAnyAtomicTypeVal) null : xs.string(predicate), (object == null) ? (XsAnyAtomicTypeVal) null : xs.string(object)); } - + @Override public CtsQueryExpr tripleRangeQuery(ServerExpression subject, ServerExpression predicate, ServerExpression object) { return new QueryCallImpl("cts", "triple-range-query", new Object[]{ subject, predicate, object }); } - + @Override public CtsQueryExpr tripleRangeQuery(String subject, String predicate, String object, String operator) { return tripleRangeQuery((subject == null) ? (XsAnyAtomicTypeVal) null : xs.string(subject), (predicate == null) ? (XsAnyAtomicTypeVal) null : xs.string(predicate), (object == null) ? (XsAnyAtomicTypeVal) null : xs.string(object), (operator == null) ? (XsStringVal) null : xs.string(operator)); } - + @Override public CtsQueryExpr tripleRangeQuery(ServerExpression subject, ServerExpression predicate, ServerExpression object, ServerExpression operator) { return new QueryCallImpl("cts", "triple-range-query", new Object[]{ subject, predicate, object, operator }); } - + @Override public CtsQueryExpr tripleRangeQuery(String subject, String predicate, String object, String operator, String... options) { return tripleRangeQuery((subject == null) ? (XsAnyAtomicTypeVal) null : xs.string(subject), (predicate == null) ? (XsAnyAtomicTypeVal) null : xs.string(predicate), (object == null) ? (XsAnyAtomicTypeVal) null : xs.string(object), (operator == null) ? (XsStringVal) null : xs.string(operator), (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr tripleRangeQuery(ServerExpression subject, ServerExpression predicate, ServerExpression object, ServerExpression operator, ServerExpression options) { return new QueryCallImpl("cts", "triple-range-query", new Object[]{ subject, predicate, object, operator, options }); } - + @Override public CtsQueryExpr tripleRangeQuery(String subject, String predicate, String object, String operator, String options, double weight) { return tripleRangeQuery((subject == null) ? (XsAnyAtomicTypeVal) null : xs.string(subject), (predicate == null) ? (XsAnyAtomicTypeVal) null : xs.string(predicate), (object == null) ? (XsAnyAtomicTypeVal) null : xs.string(object), (operator == null) ? (XsStringVal) null : xs.string(operator), (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr tripleRangeQuery(ServerExpression subject, ServerExpression predicate, ServerExpression object, ServerExpression operator, ServerExpression options, ServerExpression weight) { return new QueryCallImpl("cts", "triple-range-query", new Object[]{ subject, predicate, object, operator, options, weight }); } - + @Override public CtsQueryExpr trueQuery() { return new QueryCallImpl("cts", "true-query", new Object[]{ }); } - + @Override public CtsReferenceExpr uriReference() { return new ReferenceCallImpl("cts", "uri-reference", new Object[]{ }); } - + @Override public CtsQueryExpr wordQuery(String text) { return wordQuery((text == null) ? (XsStringVal) null : xs.string(text)); } - + @Override public CtsQueryExpr wordQuery(ServerExpression text) { return new QueryCallImpl("cts", "word-query", new Object[]{ text }); } - + @Override public CtsQueryExpr wordQuery(String text, String... options) { return wordQuery((text == null) ? (XsStringVal) null : xs.string(text), (options == null) ? (XsStringVal) null : xs.stringSeq(options)); } - + @Override public CtsQueryExpr wordQuery(ServerExpression text, ServerExpression options) { return new QueryCallImpl("cts", "word-query", new Object[]{ text, options }); } - + @Override public CtsQueryExpr wordQuery(String text, String options, double weight) { return wordQuery((text == null) ? (XsStringVal) null : xs.string(text), (options == null) ? (XsStringVal) null : xs.string(options), xs.doubleVal(weight)); } - + @Override public CtsQueryExpr wordQuery(ServerExpression text, ServerExpression options, ServerExpression weight) { return new QueryCallImpl("cts", "word-query", new Object[]{ text, options, weight }); @@ -2171,7 +2232,7 @@ static class BoxCallImpl extends BaseTypeImpl.ServerExpressionCallImpl implement super(fnPrefix, fnName, fnArgs); } } - + @Override public CtsCircleSeqExpr circleSeq(CtsCircleExpr... items) { return new CircleSeqListImpl(items); @@ -2191,7 +2252,7 @@ static class CircleCallImpl extends BaseTypeImpl.ServerExpressionCallImpl implem super(fnPrefix, fnName, fnArgs); } } - + @Override public CtsPeriodSeqExpr periodSeq(CtsPeriodExpr... items) { return new PeriodSeqListImpl(items); @@ -2211,7 +2272,7 @@ static class PeriodCallImpl extends BaseTypeImpl.ServerExpressionCallImpl implem super(fnPrefix, fnName, fnArgs); } } - + @Override public CtsPointSeqExpr pointSeq(CtsPointExpr... items) { return new PointSeqListImpl(items); @@ -2231,7 +2292,7 @@ static class PointCallImpl extends BaseTypeImpl.ServerExpressionCallImpl impleme super(fnPrefix, fnName, fnArgs); } } - + @Override public CtsPolygonSeqExpr polygonSeq(CtsPolygonExpr... items) { return new PolygonSeqListImpl(items); @@ -2251,7 +2312,7 @@ static class PolygonCallImpl extends BaseTypeImpl.ServerExpressionCallImpl imple super(fnPrefix, fnName, fnArgs); } } - + @Override public CtsQuerySeqExpr querySeq(CtsQueryExpr... items) { return new QuerySeqListImpl(items); @@ -2271,7 +2332,7 @@ static class QueryCallImpl extends BaseTypeImpl.ServerExpressionCallImpl impleme super(fnPrefix, fnName, fnArgs); } } - + @Override public CtsReferenceSeqExpr referenceSeq(CtsReferenceExpr... items) { return new ReferenceSeqListImpl(items); @@ -2291,7 +2352,7 @@ static class ReferenceCallImpl extends BaseTypeImpl.ServerExpressionCallImpl imp super(fnPrefix, fnName, fnArgs); } } - + @Override public CtsRegionSeqExpr regionSeq(CtsRegionExpr... items) { return new RegionSeqListImpl(items); diff --git a/marklogic-client-api/src/main/java/com/marklogic/client/impl/PlanBuilderImpl.java b/marklogic-client-api/src/main/java/com/marklogic/client/impl/PlanBuilderImpl.java index 20f3c9ac0..12f798173 100644 --- a/marklogic-client-api/src/main/java/com/marklogic/client/impl/PlanBuilderImpl.java +++ b/marklogic-client-api/src/main/java/com/marklogic/client/impl/PlanBuilderImpl.java @@ -1930,6 +1930,27 @@ public ModifyPlan joinDoc(PlanColumn docCol, PlanColumn sourceCol) { } + @Override + public ModifyPlan joinDocAndUri(String docCol, String uriCol, String sourceCol) { + return joinDocAndUri((docCol == null) ? (PlanColumn) null : col(docCol), (uriCol == null) ? (PlanColumn) null : col(uriCol), (sourceCol == null) ? (PlanColumn) null : col(sourceCol)); + } + + + @Override + public ModifyPlan joinDocAndUri(PlanColumn docCol, PlanColumn uriCol, PlanColumn sourceCol) { + if (docCol == null) { + throw new IllegalArgumentException("docCol parameter for joinDocAndUri() cannot be null"); + } + if (uriCol == null) { + throw new IllegalArgumentException("uriCol parameter for joinDocAndUri() cannot be null"); + } + if (sourceCol == null) { + throw new IllegalArgumentException("sourceCol parameter for joinDocAndUri() cannot be null"); + } + return new PlanBuilderSubImpl.ModifyPlanSubImpl(this, "op", "join-doc-and-uri", new Object[]{ docCol, uriCol, sourceCol }); + } + + @Override public ModifyPlan joinDocCols(PlanDocColsIdentifier cols, String docIdCol) { return joinDocCols(cols, (docIdCol == null) ? (PlanColumn) null : col(docIdCol)); diff --git a/marklogic-client-api/src/main/javadoc/doc-files/types/cts_query.html b/marklogic-client-api/src/main/javadoc/doc-files/types/cts_query.html index d52fb0a86..f50c02a4f 100644 --- a/marklogic-client-api/src/main/javadoc/doc-files/types/cts_query.html +++ b/marklogic-client-api/src/main/javadoc/doc-files/types/cts_query.html @@ -150,240 +150,258 @@