• Save
JSR 170: The Key to Unlocking Content Repositories
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

JSR 170: The Key to Unlocking Content Repositories

on

  • 4,463 views

 

Statistics

Views

Total Views
4,463
Views on SlideShare
4,443
Embed Views
20

Actions

Likes
4
Downloads
0
Comments
0

2 Embeds 20

http://www.slideshare.net 18
http://www.techgig.com 2

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

JSR 170: The Key to Unlocking Content Repositories Presentation Transcript

  • 1. JSR 170: The Key to Unlocking Content Repositories Originally presented at the XML 2006 Conference by: Joel Amoussou, CEO, Efasoft [email_address]
  • 2. JSR 170 Design Goal “ The API should be a standard, implementation independent, way to access content bi-directionally on a granular level within a content repository.” http://www.jcp.org/en/jsr/detail?id=170
  • 3. The JDBC of Content Repositories RDBMS Content Repositories Analogy Infrastructure & Consolidation Relational SQL JDBC Hierarchical XPath 2.0 JSR 170
  • 4. The Airline Industry Use Case Airline Tech Pubs Portal Airframe Manufacturer RDBMS Engine Manufacturer Native XML DB Component Manufacturer File System JSR 170 JSR 170 JSR 170 JSR 170
  • 5. The Airline Industry Use Case (cont’d)‏ Airline Tech Pubs Portal Airframe Manufacturer RDBMS Engine Manufacturer Native XML DB Component Manufacturer Object DB JSR 170 JSR 170 JSR 170 JSR 170 NEW No rewrite!
  • 6. Enterprise Repository Product Lifecycle Management (PLM)‏ My Customers Content Repositories Learning Management System (LMS)‏ Enterprise Resource Planning (ERP)‏ Enterprise Portals Customer Relationship Management (CRM)‏ MyRepo
  • 7. Interoperable Enterprise CMS Cross-Repository Integration Library Services Observation Exchange Aggre- gation
  • 8. Features WebDAV, RMI, SOAP Open Source Jackrabbit/TCK/Eclipse Hierarchical model (workspace, nodes, and properties)‏ Plug-and-Play Compliant Repository Independent of Persistence Storage Standardized Content Repository API JSR 170
  • 9. Repository Model Description DescriptiveDataModule <dm> … </dm> Illustration Root Procedure Node Property Content Date Content <dm> … </dm> Content 2006-12-06 Creator “ X-Airways” ProceduralDataModule
  • 10. JSR 170 Code Snippet
    • InitialContext ctx = ...
    • Repository repository = (Repository)ctx.lookup(&quot;s1000drepo&quot;);
    • Credentials credentials = new SimpleCredentials(&quot;username&quot;, &quot;password&quot;.toCharArray());
    • Session mySession = repository.login(credentials, &quot;S1000DWorkspace&quot;);
    • Node root = mySession.getRootNode();
    • Node illustration = root.getNode(&quot;Description/Illustration&quot;);
    • Property dateProperty = illustration.getProperty(&quot;Date&quot;);
    • Value dateValue = dateProperty.getValue();
    • date creationDate = dateValue.getDate();
    • Node procedure = (Node) mySession.getItem(&quot;/Procedure&quot;);
    • Node proceduralDM = procedure.addNode(&quot;ProceduralDataModule&quot;);
    • proceduralDM.setProperty(&quot;Creator&quot;, &quot;X-Airways&quot;);
    • mySession.save();
  • 11. JSR 170 Level 1 Credit: Apache Jackrabbit Level1 Read only Simple & Covers a large number of usecases Structured Strong typed information Hierarchical Parent child relationships, Sort order PropertyTypes String, Binary, Numbers, Calendar, ... NodeTypes Introspect complex Content Structures Query (XPath)‏ Search and query the Repository Export Standardized XML Content Export Fine & Coarsegrained Content Items Small to Large
  • 12. JSR 170 Level 2 Credit: Apache Jackrabbit Write Save changes to a repository Unstructured Support for weakly or unstructured Content Import Standardized Finegrained Content Import Referencial Integrity Reference Tracking and Integrity AccessControl Introspection Level 2
  • 13. Optional Features Credit: Apache Jackrabbit Versioning Workspaces, Merge, Update, Label, ... JTA Support (XA) Transactions Observation Monitor changes in the Repository Query (SQL)‏ Search the Content Repeository using SQL Locking Session based and persistant
  • 14. Apache Sling and Chemistry
    • Sling
    • REST access to Jackrabbit
    • Server-side Javascript
    • OSGi
    • Chemistry
    • CMIS on top of Jackrabbit
    • SOAP binding
    • AtomPub binding
  • 15. JSR 283 1
    • Node & Property
    • Shareable nodes
    • Content modeling
    • Metadata
    2
    • Misc
    • Retention & hold
    • Access control
    • Journaled observ.
    • Workspace mgt
    3
    • Query
    • Extension for SQL
    • Prepared queries
  • 16. Thank You ! [email_address]