JBoss ModeShape
JBoss ModeShape is a descendent of JBoss DNA, a JCR product. It is itself a JCR product with a slew of additional services and functionality, including a REST/HTTP API, additional query languages (including full-text search), clustering and federation, and automatic disassembly of ingested content into repository nodes.
From the ModeShape website:
ModeShape is a distributed, hierarchical, transactional, and consistent data store with support for queries, full-text search, events, versioning, references, and flexible and dynamic schemas. It is very fast, highly available, extremely scalable, and it is 100% open source and written in Java. Clients use the (JSR-283) standard Java API for content repositories (aka, JCR) or ModeShape's REST API, and can query content through JDBC and SQL.
Pro/Con Overview:
Pro: | Con: |
---|---|
Supports JCR semantics (including optional functionality) | Commits us to JCR semantics or a superset |
Offered by JBoss as a product with several years of history | Not clear how far community extends beyond JBoss |
Due to JCR semantics, could persist content as well as relationships | |
Has many beyond-JCR functionalities that could be useful to FF | Additional functionalities are unique to ModeShape |
Open source (code hosted on GitHub) | Not clear what kind of licensing complexities exist given (LGPL v2.1) licensing |
Fully streaming persistence | But not asynchronous access to that persistence |
Offers prebuilt HTTP/REST API | Which doesn't take account in any way of the Fedora object model |
Relies entirely on JBoss Infinispan for persistence, which is well-supported technology | But would limit FF to Infinispan-supported persistence options |