javax.xml.xquery

Interface XQMetaData

public interface XQMetaData

XQMetaData interface provides information about the data source, in various aspects, such as the product name and version identification, supported features, specific behaviors, user information, product limits and so forth.

An object implementing this interface is obtained from the connection object by calling the getMetaData() method, for example:
  XQMetaData metaData = connection.getMetaData();
  String productVersion = metaData.getProductVersion();
    ...
 
Since the metadata object depends on the connection, all its methods would raise an exception if the connection it is created from is no longer valid.

See Also: XQConnection

Method Summary
intgetMaxExpressionLength()
Gets the maximum number of characters allowed in an expression in this data source.
intgetMaxUserNameLength()
Gets the maximum number of characters allowed in a user name.
intgetProductMajorVersion()
Gets the major version of this product.
intgetProductMinorVersion()
Gets the minor version of this product.
StringgetProductName()
Gets the name of this product.
StringgetProductVersion()
Gets the full version of this product.
SetgetSupportedXQueryEncodings()
Returns a set of java.lang.String, each of which specifies a character encoding method the XQJ implmentation supports to parse the XQuery query text.
StringgetUserName()
Gets the user name associated with this connection.
intgetXQJMajorVersion()
Gets the major version number of XQJ specification supported by this implementation.
intgetXQJMinorVersion()
Gets the minor version number of XQJ specification supported by this implementation.
StringgetXQJVersion()
Gets the full version of XQJ specification supported by this implementation.
booleanisFullAxisFeatureSupported()
Query if XQuery full axis feature is supported in this connection.
booleanisModuleFeatureSupported()
Query if XQuery module feature is supported in this connection.
booleanisReadOnly()
Query if the associated conection is restricted for read only use.
booleanisSchemaImportFeatureSupported()
Query if XQuery schema import feature is supported in this connection.
booleanisSchemaValidationFeatureSupported()
Query if XQuery schema validation feature is supported in this connection.
booleanisSerializationFeatureSupported()
Query if XQuery serialization feature is supported in this connection.
booleanisStaticTypingExtensionsSupported()
Query if XQuery static typing extensions are supported in this connection.
booleanisStaticTypingFeatureSupported()
Query if XQuery static typing feature is supported in this data source.
booleanisTransactionSupported()
Query if transaction is supported in this data source.
booleanisUserDefinedXMLSchemaTypeSupported()
Check if the user defined XML schema type is supported in this connection.
booleanisXQueryEncodingDeclSupported()
Query if the XQuery encoding declaration is supported by the XQJ implementation.
booleanisXQueryEncodingSupported(String encoding)
Query if a character encoding method of the XQuery query text is supported by the XQJ implmentation.
booleanisXQueryXSupported()
Query if XQueryX format is supported in this data source.
booleanwasCreatedFromJDBCConnection()
Query if this connection was created from a JDBC connection.

Method Detail

getMaxExpressionLength

public int getMaxExpressionLength()
Gets the maximum number of characters allowed in an expression in this data source.

Returns: the maximum length of expression as an integer. A zero value means that there is no limit or the limit is unknown

Throws: XQException if the connection is no longer valid

getMaxUserNameLength

public int getMaxUserNameLength()
Gets the maximum number of characters allowed in a user name.

Returns: the maximum length of user name as an integer. A zero value means that there is no limit or the limit is unknown

Throws: XQException if the connection is no longer valid

getProductMajorVersion

public int getProductMajorVersion()
Gets the major version of this product.

Returns: a integer indicating the major version of this product

Throws: XQException if the connection is no longer valid

getProductMinorVersion

public int getProductMinorVersion()
Gets the minor version of this product.

Returns: a integer indicating the minor version of this product

Throws: XQException if the connection is no longer valid

getProductName

public String getProductName()
Gets the name of this product. The value of string returned by this method is implementation-defined.

Returns: a string indicating the product name

Throws: XQException if the connection is no longer valid

getProductVersion

public String getProductVersion()
Gets the full version of this product. The format and value of the string returned by this method is implementation-defined.

Returns: a string indicating the product version

Throws: XQException if the connection is no longer valid

getSupportedXQueryEncodings

public Set getSupportedXQueryEncodings()
Returns a set of java.lang.String, each of which specifies a character encoding method the XQJ implmentation supports to parse the XQuery query text.
For an example, for an XQJ impmentation which is able to parse the XQuery encoded in "UTF-8" or "UTF-16", it returns a java.util.Set of "UTF-8" and "UTF-16". If the implemetation is not able to generate a list of encodings supported, an empty set is returned. If a non-empty set is returned, the encodings returned in this set are guaranteed to be supported. Note that encodings not in the returned set might also be supported. For example, if the set has two encoding methods: 'UTF-8' and 'UTF-16', they are supported by the implementation. However, this does not mean 'Shift-Js' is not supported. It might be supported.

Returns: a java.util.Set of java.lang.String, each of which is an XQuery query text encoding method

Throws: XQException if the connection is no longer valid

getUserName

public String getUserName()
Gets the user name associated with this connection.

Returns: the user's name

Throws: XQException if the connection is no longer valid

getXQJMajorVersion

public int getXQJMajorVersion()
Gets the major version number of XQJ specification supported by this implementation.

Returns: an integer indicating the XQJ major version

Throws: XQException if the connection is no longer valid

getXQJMinorVersion

public int getXQJMinorVersion()
Gets the minor version number of XQJ specification supported by this implementation.

Returns: an integer indicating the XQJ minor version

Throws: XQException if the connection is no longer valid

getXQJVersion

public String getXQJVersion()
Gets the full version of XQJ specification supported by this implementation.

Returns: a string indicating the version of XQJ specification

Throws: XQException if the connection is no longer valid

isFullAxisFeatureSupported

public boolean isFullAxisFeatureSupported()
Query if XQuery full axis feature is supported in this connection.

Returns: true if so; otherwise false

Throws: XQException if the connection is no longer valid

isModuleFeatureSupported

public boolean isModuleFeatureSupported()
Query if XQuery module feature is supported in this connection.

Returns: true if so; otherwise false

Throws: XQException if the connection is no longer valid

isReadOnly

public boolean isReadOnly()
Query if the associated conection is restricted for read only use.

Returns: true if the associated connection is for read-only; false otherwise

Throws: XQException if the connection is no longer valid

isSchemaImportFeatureSupported

public boolean isSchemaImportFeatureSupported()
Query if XQuery schema import feature is supported in this connection.

Returns: true if so; otherwise false

Throws: XQException if the connection is no longer valid

isSchemaValidationFeatureSupported

public boolean isSchemaValidationFeatureSupported()
Query if XQuery schema validation feature is supported in this connection.

Returns: true if so; otherwise false

Throws: XQException if the connection is no longer valid

isSerializationFeatureSupported

public boolean isSerializationFeatureSupported()
Query if XQuery serialization feature is supported in this connection.

Returns: true if so; otherwise false

Throws: XQException if the connection is no longer valid

isStaticTypingExtensionsSupported

public boolean isStaticTypingExtensionsSupported()
Query if XQuery static typing extensions are supported in this connection.

Returns: true if so; otherwise false

Throws: XQException if the connection is no longer valid

isStaticTypingFeatureSupported

public boolean isStaticTypingFeatureSupported()
Query if XQuery static typing feature is supported in this data source.

Returns: true if so; otherwise false

Throws: XQException if the connection is no longer valid

isTransactionSupported

public boolean isTransactionSupported()
Query if transaction is supported in this data source.

Returns: true if so; otherwise false

Throws: XQException if the connection is no longer valid

isUserDefinedXMLSchemaTypeSupported

public boolean isUserDefinedXMLSchemaTypeSupported()
Check if the user defined XML schema type is supported in this connection. If this method returns true, then XQItemAccessor.instanceOf(XQItemType) must be able to determine if the type of an XQItemAccessor is an instance of the XQItemType even if either of them is a user defined XML schema type which is defined by the non-predefined XML schema. The pre-defined XML Schema refers to the XML schema whose schema URL is "http://www.w3.org/2001/XMLSchema"

Returns: true if the user defined XML schema type is supported in this connection, false otherwise.

Throws: XQException if the connection is no longer valid

isXQueryEncodingDeclSupported

public boolean isXQueryEncodingDeclSupported()
Query if the XQuery encoding declaration is supported by the XQJ implementation.

Returns: true if the XQuery encoding declaration is supported; false otherwise

Throws: XQException if the connection is no longer valid

isXQueryEncodingSupported

public boolean isXQueryEncodingSupported(String encoding)
Query if a character encoding method of the XQuery query text is supported by the XQJ implmentation.

Parameters: encoding String representing the character encoding method of the XQuery query text.

Returns: true if an XQuery query character encoding method is supported, false otherwise

Throws: XQException if (1) the connection is no longer valid, or (2) the specified encoding parameter is null

isXQueryXSupported

public boolean isXQueryXSupported()
Query if XQueryX format is supported in this data source.

Returns: true if so; otherwise false

Throws: XQException if the connection is no longer valid

wasCreatedFromJDBCConnection

public boolean wasCreatedFromJDBCConnection()
Query if this connection was created from a JDBC connection.

Returns: true, if this connection was created from a JDBC connection, false otherwise.

Throws: XQException if the connection is no longer valid