BaseX
   HOME

TheInfoList



OR:

BaseX is a native and light-weight XML database management system and
XQuery XQuery (XML Query) is a query and functional programming language that queries and transforms collections of structured and unstructured data, usually in the form of XML, text and with vendor-specific extensions for other data formats (JSON, b ...
processor, developed as a community project on GitHub.GitHub: BaseX
/ref> It is specialized in storing, querying, and visualizing large XML documents and collections. BaseX is platform-independent and distributed under the BSD-3-Clause license. In contrast to other document-oriented databases, XML databases provide support for standardized query languages such as
XPath XPath (XML Path Language) is an expression language designed to support the query or transformation of XML documents. It was defined by the World Wide Web Consortium (W3C) and can be used to compute values (e.g., strings, numbers, or Boolean v ...
and
XQuery XQuery (XML Query) is a query and functional programming language that queries and transforms collections of structured and unstructured data, usually in the form of XML, text and with vendor-specific extensions for other data formats (JSON, b ...
. BaseX is highly conformant to
World Wide Web Consortium The World Wide Web Consortium (W3C) is the main international standards organization for the World Wide Web. Founded in 1994 and led by Tim Berners-Lee, the consortium is made up of member organizations that maintain full-time staff working ...
(W3C) specifications and the official Update and Full Text extensions. The included GUI enables users to interactively search, explore and analyze their data, and evaluate XPath/XQuery expressions in realtime (i.e., while the user types).


Technologies

*
XPath XPath (XML Path Language) is an expression language designed to support the query or transformation of XML documents. It was defined by the World Wide Web Consortium (W3C) and can be used to compute values (e.g., strings, numbers, or Boolean v ...
query language *
XQuery XQuery (XML Query) is a query and functional programming language that queries and transforms collections of structured and unstructured data, usually in the form of XML, text and with vendor-specific extensions for other data formats (JSON, b ...
3.1 ** XQuery Update (W3C) ** XQuery Full Text (W3C) * Support for most EXPath/EXQuery modules and packaging system * Client-Server architecture with user and transaction management and logging facilities * APIs: RESTXQ,
REST Rest or REST may refer to: Relief from activity * Sleep ** Bed rest * Kneeling * Lying (position) * Sitting * Squatting position Structural support * Structural support ** Rest (cue sports) ** Armrest ** Headrest ** Footrest Arts and enter ...
ful API,
WebDAV WebDAV (Web Distributed Authoring and Versioning) is a set of extensions to the Hypertext Transfer Protocol (HTTP), which allows user agents to collaboratively author contents ''directly'' in an HTTP web server by providing facilities for con ...
, XML:DB, XQJ; Java, C#, Perl, PHP, Python and others * Supported data formats:
XML Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing arbitrary data. It defines a set of rules for encoding documents in a format that is both human-readable and machine-readable ...
,
HTML The HyperText Markup Language or HTML is the standard markup language for documents designed to be displayed in a web browser. It can be assisted by technologies such as Cascading Style Sheets (CSS) and scripting languages such as JavaSc ...
, JSON, CSV,
Text Text may refer to: Written word * Text (literary theory), any object that can be read, including: **Religious text, a writing that a religious tradition considers to be sacred **Text, a verse or passage from scripture used in expository preachin ...
, binary data *
GUI The GUI ( "UI" by itself is still usually pronounced . or ), graphical user interface, is a form of user interface that allows users to interact with electronic devices through graphical icons and audio indicator such as primary notation, inste ...
including several visualizations:
Treemap In information visualization and computing, treemapping is a method for displaying hierarchical data using nested figures, usually rectangles. Treemaps display hierarchical ( tree-structured) data as a set of nested rectangles. Each branch of ...
, table view,
tree view In botany, a tree is a perennial plant with an elongated stem, or trunk, usually supporting branches and leaves. In some usages, the definition of a tree may be narrower, including only woody plants with secondary growth, plants that are u ...
, scatter plot


Database layout

BaseX uses a tabular representation of XML tree structures to store XML documents. The database acts as a container for a single document or a collection of documents. The XPath Accelerator encoding scheme and Staircase Join Operator have been taken as inspiration for speeding up XPath location steps. Additionally, BaseX provides several types of indices to improve the performance of path operations, attribute lookups, text comparisons and full-text searches.


History

BaseX was started by Christian Grün at the
University of Konstanz The University of Konstanz (german: Universität Konstanz) is a university in the city of Konstanz in Baden-Württemberg, Germany. Its main campus was opened on the Gießberg in 1972 after being founded in 1966. The university is Germany's ...
in 2005. In 2007, BaseX went open source and has been under the BSD-3-Clause license since then.


Supported systems

The BaseX server is a pure Java 1.8 application and thus runs on any system that provides a suitable Java implementation. It has been tested on Windows, Mac OS X, Linux and OpenBSD. In particular, packages are available for Debian and
Ubuntu Ubuntu ( ) is a Linux distribution based on Debian and composed mostly of free and open-source software. Ubuntu is officially released in three editions: '' Desktop'', ''Server'', and ''Core'' for Internet of things devices and robots. All ...
.


Further reading


BaseX Talk at LinuxTag Berlin, 2011


References


External links

* {{Official website, http://basex.org XML Free database management systems XML databases XQuery processors Free software programmed in Java (programming language) Database-related software for Linux Software using the BSD license