http://www.zorba-xquery.com/modules/store/static/collections/ddl

Description

Before using any of the functions below please remember to import the module namespace:

import module namespace cddl = "http://www.zorba-xquery.com/modules/store/static/collections/ddl";
This modules defines a set of functions for managing collections which are declared in the prolog of a module. For example, it provides functions to create, delete, or introspect collections.

This module is part of Zorba's XQuery Data Definition Facility. All the collections managed by this module have to be pre-declared in the prolog of a module. Please refer to the general documentation for more information and examples.

See also

Data Lifecycle

XQuery Data Definition Facility

http://www.zorba-xquery.com/modules/store/static/collections/dml

http://www.zorba-xquery.com/modules/store/static/indexes/ddl

http://www.zorba-xquery.com/modules/store/static/indexes/dml

http://www.zorba-xquery.com/modules/store/static/integrity_constraints/ddl

http://www.zorba-xquery.com/modules/store/static/integrity_constraints/dml

http://www.zorba-xquery.com/errors

Author

Nicolae Brinza, Matthias Brantner, David Graf, Till Westmann, Markos Zaharioudakis

XQuery version and encoding

xquery version "3.0" encoding "utf-8";

Namespaces

cddlhttp://www.zorba-xquery.com/modules/store/static/collections/ddl
verhttp://www.zorba-xquery.com/options/versioning
zerrhttp://www.zorba-xquery.com/errors

Function Summary

 available-collections() as xs:QName* external

The function returns a sequence of QNames of the collections that are statically declared and available.

  create($name as xs:QName) external

The create function is an updating function which creates the collection with the given expanded QName.

  create($name as xs:QName, $content as item()*) external

The create function is an updating function which creates the collection with the given expanded QName.

 declared-collections() as xs:QName* external

The function returns a sequence of QNames representing the collections that have been declared in the prolog of the static context.

  delete($name as xs:QName) external

The delete function is an updating function that deletes the collection with the given expanded QName.

 is-available-collection($name as xs:QName) as xs:boolean external

The function returns true if a collection with the given QName is statically declared and available (i.

 is-declared-collection($name as xs:QName) as xs:boolean external

The function returns true if a collection with the given QName is declared in the prolog of the static context.

Functions

available-collections#0

declare function cddl:available-collections() as xs:QName* external

The function returns a sequence of QNames of the collections that are statically declared and available. The sequence will be empty if there are no such collections.

Returns

  • xs:QName*

    A sequence of QNames, one for each statically declared and available collection, or an emtpy sequence.

create#1

declare updating function cddl:create(
    $name as xs:QName
) as item()* external

The create function is an updating function which creates the collection with the given expanded QName.

Parameters

  • $name as xs:QName
    The QName of the collection to create.

Errors

  • zerr:ZDDY0001 if the expanded QName $name is not equal to any of the declared collections in the static context.
  • zerr:ZDDY0002 if a collection with the given expanded QName already exists.

create#2

declare updating function cddl:create(
    $name as xs:QName,
    $content as item()*
) as item()* external

The create function is an updating function which creates the collection with the given expanded QName. Moreover, it adds copies of the sequence $content to the new collection.

Parameters

  • $name as xs:QName
    The QName of the collection to create.
  • $content as item()
    The sequences of items (nodes and/or json items) that should be added to the new collection.

Errors

  • zerr:ZDDY0001 if the expanded QName $name is not equal to any of the declared collections in the static context.
  • zerr:ZDDY0002 if a collection with the given expanded QName already exists.
  • zerr:ZDTY0001 if $content does not match the expected type (i.e. declared by the collection) according to the rules for SequenceType Matching.

declared-collections#0

declare function cddl:declared-collections() as xs:QName* external

The function returns a sequence of QNames representing the collections that have been declared in the prolog of the static context.

Returns

  • xs:QName*

    A sequence of QNames, one for each created collection, or an emtpy sequence.

delete#1

declare updating function cddl:delete(
    $name as xs:QName
) as item()* external

The delete function is an updating function that deletes the collection with the given expanded QName.

Parameters

  • $name as xs:QName
    The QName of the collection to delete.

Errors

  • zerr:ZDDY0001 if the expanded QName $name is not equal to any of the declared collections in the static context.
  • zerr:ZDDY0003 if the expanded QName $name is not equal to any of the available collections.
  • zerr:ZDDY0015 if any of the in-scope variables references an item that belongs to the collection with QName $name.
  • zerr:ZDDY0013 if the domain or key expression of any of the available indexes access the collection with name $name.

is-available-collection#1

declare function cddl:is-available-collection(
    $name as xs:QName
) as xs:boolean external

The function returns true if a collection with the given QName is statically declared and available (i.e. has been created).

Parameters

  • $name as xs:QName
    The QName of the collection that is being checked.

Returns

  • xs:boolean

    true if the collection is statically declared and available, false otherwise.

is-declared-collection#1

declare function cddl:is-declared-collection(
    $name as xs:QName
) as xs:boolean external

The function returns true if a collection with the given QName is declared in the prolog of the static context.

Parameters

  • $name as xs:QName
    The QName of the collection that is being checked.

Returns

  • xs:boolean

    true if the collection is declared or false otherwise.

blog comments powered by Disqus