Hi all,

I provided the implementation of bidirectional mapping between JCR/CMIS content repositories and RDF data. Also updated HTML interface of CMS Adapter accordingly.

I tried to implement this mechanism based on our earlier discussions with Rupert.

First I determined a simple CMS vocabulary. UriRef declarations that are used in this mapping process are at the bottom of this class at [1]. Then, I implemented mapper classes [2][3][4] ,for JCR and CMIS repositories, parsing the CMS vocabulary annotated RDF and updates the content repository or generates a CMS vocabulary annotated RDF from content repository.

To be able to map an RDF like the following one to content repository in a hierarchical manner,

|<node1> rdf:type vCard:Event
<node1> rdfs:label "Community Workshop Paris"
<node1> vCard:participant <node2>
<node1> dbp-prop:location "Paris"
<node2> rdf:type vCard:Agent
<node2> rdfs:label "Participant"

|I have developed an RDF bridge interface and a default implementation for it [5][6]. The default implementation provides some configurations:

-To identify which resources are going to be mapped to the content repository.
(rdf:type > vCard:Event)
-To specify resource that is going to be used to determine name of the objects/nodes in the repository
(rdfs:label)
-To identify which resources represent the children of resources to be mapped and what will be the name of the children
(vCard:participant > participant)
-To specify the content repository path in which mapped objects will be created.

I tried to give a detailed explanation about configurations in the Felix configuration panel. Most of them are used in a reverse manner i.e to insert annotations into the RDF for each content repository object while mapping repository to RDF.

I have also implemented an HTML interface at [7] where these mapping functionalities can be used.

I would be glad to hear your feedbacks and further suggestions.

Best,
Suat



[1] http://svn.apache.org/repos/asf/incubator/stanbol/trunk/cmsadapter/servicesapi/src/main/java/org/apache/stanbol/cmsadapter/servicesapi/helper/CMSAdapterVocabulary.java [2] http://svn.apache.org/repos/asf/incubator/stanbol/trunk/cmsadapter/servicesapi/src/main/java/org/apache/stanbol/cmsadapter/servicesapi/mapping/RDFMapper.java [3] http://svn.apache.org/repos/asf/incubator/stanbol/trunk/cmsadapter/jcr/src/main/java/org/apache/stanbol/cmsadapter/jcr/repository/JCRRDFMapper.java [4] http://svn.apache.org/repos/asf/incubator/stanbol/trunk/cmsadapter/cmis/src/main/java/org/apache/stanbol/cmsadapter/cmis/repository/CMISRDFMapper.java [5] http://svn.apache.org/repos/asf/incubator/stanbol/trunk/cmsadapter/servicesapi/src/main/java/org/apache/stanbol/cmsadapter/servicesapi/mapping/RDFBridge.java [6] http://svn.apache.org/repos/asf/incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/mapping/DefaultRDFBridgeImpl.java [7] http://svn.apache.org/repos/asf/incubator/stanbol/trunk/cmsadapter/web/src/main/java/org/apache/stanbol/cmsadapter/web/resources/RDFMapperResource.java

Reply via email to