in the XQuery module repository, and how new packages are built and deployed.
==MotivationIntroduction==
One of the reasons why languages such as Java or Perl have been so successful is the vast amount of libraries that are available to developers.
As XQuery is a Turing complete language, but it just provides around 100 comes with only 150 pre-defined functions, which cannot meet all requirements. This , there is why some need for additional libraries arise library modules – such as [http://www.xqueryfunctions.com/ FunctX] – that extend the language with new features.
BaseX offers the following mechanisms to make packages modules accessible to the XQuery processor:
# XQuery modules can be manually copied to the repository directory.
# The [[#EXPath Packaging|EXPath Packaging]] system provides a generic mechanism for adding XQuery modules to query processors. A package is defined as a {{Code|.xar}} archive, which encapsulates one or more extension libraries.
All modules are stored in the ''repository''. The repository is a directory named {{Code|BaseXRepo}} or {{Code|repo}}, which resides in your [[Configuration#Home Directory|home directory]]. If modules have been placed in the repositorythis directory, there will be no need to add locations to the XQuery {{Code||import module}} statement.
==REPO CommandUsage==
All packages are stored in the ''repository''. The repository is a directory named {{Code|BaseXRepo}} or {{Code|repo}}, which resides in your [[Configuration#Home Directory|home directory]]. BaseX provides three commands for interaction with the package repository: <code>[[Commands#REPO_INSTALL|REPO INSTALL]]</code>, <code>[[Commands#REPO_DELETE|REPO DELETE]]</code>, and <code>[[Commands#REPO_LIST|REPO LIST]]</code>. Packages can also be managed from within XQuery, using the [[Repository Module]].
===Installation===