Difference between revisions of "Clients"

From BaseX Documentation
Jump to navigation Jump to search
Line 19: Line 19:
 
: [https://github.com/BaseXdb/basex-api/tree/master/src/main/haskell Haskell] (contributed by Leo Wörteler)  
 
: [https://github.com/BaseXdb/basex-api/tree/master/src/main/haskell Haskell] (contributed by Leo Wörteler)  
 
   
 
   
Most of the interfaces contain at least the following six files:
+
Many of the interfaces contain the following files:
 
* <code>BaseXClient</code> contains the actual code for creating a session, sending and executing commands and receiving results. Furthermore there is an inner class called <code>query</code> which offers the evaluation of queries in an iterative manner.  
 
* <code>BaseXClient</code> contains the actual code for creating a session, sending and executing commands and receiving results. Furthermore there is an inner class called <code>query</code> which offers the evaluation of queries in an iterative manner.  
 
* <code>Example</code> demonstrates how to send database commands.
 
* <code>Example</code> demonstrates how to send database commands.
Line 26: Line 26:
 
* <code>CreateExample</code> shows how new databases can be created by using streams.
 
* <code>CreateExample</code> shows how new databases can be created by using streams.
 
* <code>AddExample</code> shows how documents can be added to a database by using streams.
 
* <code>AddExample</code> shows how documents can be added to a database by using streams.
 
+
* <code>EventExample</code> demonstrates how to watch and unwatch [[Events]].
The interfaces Java and C# also support [[Events]]:
 
* <code>EventExample</code> demonstrates how to watch and unwatch events.
 
 
   
 
   
 
Please check out [https://github.com/BaseXdb/basex-api/blob/master/src/main/readme.txt readme.txt]
 
Please check out [https://github.com/BaseXdb/basex-api/blob/master/src/main/readme.txt readme.txt]

Revision as of 13:59, 18 September 2011

BaseX can be used from numerous programming languages. With the following light-weight bindings, you will be able to connect to a running BaseX server instance, execute database commands, perform queries or listen to events.

  • Standard Mode: connecting to a server, sending commands
  • Query Mode: defining queries, binding variables, iterative evaluation

Currently, we offer bindings for the following programming languages (bindings for other languages are welcome):

Imperative
C
Object oriented
C#, VB, Java, Scala
Qt (contributed by Hendrik Strobelt)
Scripting
PHP, Python, Perl, Ruby
Rebol (contributed by Sabu Francis)
Functional
Lisp (contributed by Andy Chambers)
Haskell (contributed by Leo Wörteler)

Many of the interfaces contain the following files:

  • BaseXClient contains the actual code for creating a session, sending and executing commands and receiving results. Furthermore there is an inner class called query which offers the evaluation of queries in an iterative manner.
  • Example demonstrates how to send database commands.
  • QueryExample shows you how to evaluate queries in an iterative manner.
  • QueryBindExample shows you how to bind a variable to your query and evaluates the query in an iterative manner.
  • CreateExample shows how new databases can be created by using streams.
  • AddExample shows how documents can be added to a database by using streams.
  • EventExample demonstrates how to watch and unwatch Events.

Please check out readme.txt for more information on the client/server protocol.