Summer of Code
The following is a list of ideas for potential new projects:
Modules
- WebServices libraries Design and implement XQuery libraries to Google, Facebook, Twitter, LinkedIn and others web-services.
- Socket Module Socket module for building server and clients in XQuery: web, debugger, websockets (node.js, sockets).
- Logging Library log4xq, a logging library like Apache Logging Services for XQuery.
- Complete UUID Implementation Replace Zorba UUID implementation with a new improved one.
- Zip module Implement/improve expath zip spec.
Interoperability of XQuery with other programming languages
- 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.
- Execution portability Automatic generation of execution plans on other platforms (Javascript, JVM, .Net). Allow execution of queries on other platforms.
XQDT tools
- XQDT extensions Navigating between symbol definitions and references, refactoring, auto-formatting.
Ease of XQuery application development
- App Helper From simpler Entity Relationship formalism generate XML Schema ( written in XQuery).
- App Helper From XML Schema + annotations generate Zorba DDL module (written in XQuery).
- App Helper From XML Schema generate XML Forms to introduce data (written in XQuery).
- App Helper From Zorba DDL module(s) generate HTML to display/view/modify collections.
Performance
- Zorba Profiller Find out how much time different parts of your query is takeing.
- OpenCL Integrate OpenCL into Zorba, push heavy calculations onto OpenCL.
XQuery in disconnected mode
- Disconected mode Library of XQuery code for PUL manipulation.
XQuery in the browser
- JQuery/XQuery Implementing JQuery functions in XQuery.
- MXQuery/Zorba Align MXQuery API with Zorba API for any use cases where both can be used interchangeable.