Package org.xmldb.api.modules
Interface XQueryService
-
- All Superinterfaces:
Configurable,Service
public interface XQueryService extends Service
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringSERVICE_NAME
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidclearNamespaces()CompiledExpressioncompile(java.lang.String query)Compiles the specified XQuery and returns a handle to the compiled code, which can then be passed toexecute(org.xmldb.api.base.CompiledExpression).voiddeclareVariable(java.lang.String qname, java.lang.Object initialValue)Declare a global, external XQuery variable and assign a value to it.ResourceSetexecute(CompiledExpression expression)Execute a compiled XQuery.java.lang.StringgetNamespace(java.lang.String prefix)Returns the URI string associated withprefixfrom the internal namespace map.ResourceSetquery(java.lang.String query)ResourceSetqueryResource(java.lang.String id, java.lang.String query)voidremoveNamespace(java.lang.String prefix)Removes the namespace mapping associated withprefixfrom the internal namespace map.voidsetModuleLoadPath(java.lang.String path)voidsetNamespace(java.lang.String prefix, java.lang.String uri)Sets a namespace mapping in the internal namespace map used to evaluate queries.voidsetXPathCompatibility(boolean backwardsCompatible)Enable or disable XPath 1.0 compatibility mode.-
Methods inherited from interface org.xmldb.api.base.Configurable
getProperty, setProperty
-
Methods inherited from interface org.xmldb.api.base.Service
getName, getVersion, setCollection
-
-
-
-
Field Detail
-
SERVICE_NAME
static final java.lang.String SERVICE_NAME
- See Also:
- Constant Field Values
-
-
Method Detail
-
setNamespace
void setNamespace(java.lang.String prefix, java.lang.String uri) throws XMLDBExceptionSets a namespace mapping in the internal namespace map used to evaluate queries. Ifprefixis null or empty the default namespace is associated with the provided URI. A null or emptyuriresults in an exception being thrown.- Parameters:
prefix- The prefix to set in the map. Ifprefixis empty or null the default namespace will be associated with the provided URI.uri- The URI for the namespace to be associated with prefix.- Throws:
XMLDBException
-
getNamespace
java.lang.String getNamespace(java.lang.String prefix) throws XMLDBExceptionReturns the URI string associated withprefixfrom the internal namespace map. Ifprefixis null or empty the URI for the default namespace will be returned. If a mapping for theprefixcan not be found null is returned.- Parameters:
prefix- The prefix to retrieve from the namespace map.- Returns:
- The URI associated with
prefix - Throws:
XMLDBException- with expected error codes.
ErrorCodes.VENDOR_ERRORfor any vendor specific errors that occur.
-
removeNamespace
void removeNamespace(java.lang.String prefix) throws XMLDBExceptionRemoves the namespace mapping associated withprefixfrom the internal namespace map. Ifprefixis null or empty the mapping for the default namespace will be removed.- Parameters:
prefix- The prefix to remove from the namespace map. Ifprefixis null or empty the mapping for the default namespace will be removed.- Throws:
XMLDBException- with expected error codes.
ErrorCodes.VENDOR_ERRORfor any vendor specific errors that occur.
-
clearNamespaces
void clearNamespaces() throws XMLDBException- Throws:
XMLDBException
-
query
ResourceSet query(java.lang.String query) throws XMLDBException
- Throws:
XMLDBException
-
queryResource
ResourceSet queryResource(java.lang.String id, java.lang.String query) throws XMLDBException
- Throws:
XMLDBException
-
compile
CompiledExpression compile(java.lang.String query) throws XMLDBException
Compiles the specified XQuery and returns a handle to the compiled code, which can then be passed toexecute(org.xmldb.api.base.CompiledExpression).- Throws:
XMLDBException
-
execute
ResourceSet execute(CompiledExpression expression) throws XMLDBException
Execute a compiled XQuery. The implementation should pass all namespaces and variables declared throughXQueryServiceto the compiled XQuery code.- Throws:
XMLDBException
-
declareVariable
void declareVariable(java.lang.String qname, java.lang.Object initialValue) throws XMLDBExceptionDeclare a global, external XQuery variable and assign a value to it. The variable has the same status as a variable declare through thedeclare variablestatement in the XQuery prolog. The variable can be referenced inside the XQuery expression as$variable. For example, if you declare a variable withdeclareVariable("name", "HAMLET");you may use the variable in an XQuery expression as follows://SPEECH[SPEAKER=$name]- Parameters:
qname- a valid QName by which the variable is identified. Any prefix should have been mapped to a namespace, usingsetNamespace(String, String). For example, if a variable is called x:name, a prefix/namespace mapping should have been defined for prefixxbefore calling this method.initialValue- the initial value, which is assigned to the variable- Throws:
XMLDBException
-
setXPathCompatibility
void setXPathCompatibility(boolean backwardsCompatible)
Enable or disable XPath 1.0 compatibility mode. In XPath 1.0 compatibility mode, some XQuery expressions will behave different. In particular, additional automatic type conversions will be applied to the operands of numeric operators.- Parameters:
backwardsCompatible-
-
setModuleLoadPath
void setModuleLoadPath(java.lang.String path)
-
-