Summer of Code

Summer of Code

The following is a list of ideas for potential new projects:

Modules

  1. WebServices libraries Design and implement XQuery libraries to Google, Facebook, Twitter, LinkedIn and others web-services.
  2. Socket Module Socket module for building server and clients in XQuery: web, debugger, websockets (node.js, sockets).
  3. Logging Library log4xq, a logging library like Apache Logging Services for XQuery.
  4. Complete UUID Implementation Replace Zorba UUID implementation with a new improved one.
  5. Zip module Implement/improve expath zip spec.

Interoperability of XQuery with other programming languages

  1. External functions Automatic generation of wrappers for libraries written in other languages (JavaScript, Java, C#). Allow Zorba users to write external functions in other languages, so the user could reuse his already written code.
  2. Execution portability Automatic generation of execution plans on other platforms (Javascript, JVM, .Net). Allow execution of queries on other platforms.

XQDT tools

  1. XQDT extensions Navigating between symbol definitions and references, refactoring, auto-formatting.

Ease of XQuery application development

  1. App Helper From simpler Entity Relationship formalism generate XML Schema ( written in XQuery).
  2. App Helper From XML Schema + annotations generate Zorba DDL module (written in XQuery).
  3. App Helper From XML Schema generate XML Forms to introduce data (written in XQuery).
  4. App Helper From Zorba DDL module(s) generate HTML to display/view/modify collections.

Performance

  1. Zorba Profiller Find out how much time different parts of your query is takeing.
  2. OpenCL Integrate OpenCL into Zorba, push heavy calculations onto OpenCL.

XQuery in disconnected mode

  1. Disconected mode Library of XQuery code for PUL manipulation.

XQuery in the browser

  1. JQuery/XQuery Implementing JQuery functions in XQuery.
  2. MXQuery/Zorba Align MXQuery API with Zorba API for any use cases where both can be used interchangeable.