Nicolas, I suggest you also take a look at Graphity Client: https://github.com/Graphity/graphity-client
You don't really need an object layer representing your RDF classes above Jena, it is a bottleneck. You can express both the webapp structure and the instance data as RDF, and define a mapping from HTTP access to RDF state changes over SPARQL. Here's an example of how that structure (sitemap ontology) looks like: http://lists.w3.org/Archives/Public/public-declarative-apps/2015Jan/0000.html Here's an example of an editing interface: http://linkeddatahub.com/bibframe/instances?mode=http%3A%2F%2Fgraphity.org%2Fgc%23CreateMode Disclaimer: I'm the main developer. Martynas graphityhq.com On Mon, Jan 5, 2015 at 9:07 PM, Nicolas Paris <[email protected]> wrote: > Thanks for answers ! > > - About http://callimachusproject.org/ : interesting but I have to > create application from scratch, because very specific > > - About PA4RDF : It seems very interessant. Any other tutorial, > related post or tip ? > Olivier, what do you exactly mean by "a bean <-> graph mapper" ? > I generate an OWL ontology, that is my structure of data. I will > modelise beans inspiring this structure. Say owl properties will be > java class properties. And RDF class's inheritance will be mapped to > java inheritance. Do you agree ? > However, it appears that the POJO class of PA4RDF limits the inheritance. > The example here > http://pa4rdf.sourceforge.net/examples/concreteClassSubject.html > could feet with user <- student inheritance ? Or will I have to > duplicate code for Teacher & Student as they inherite from User ? > > Thanks again for this link Olivier ! > Nicolas PARIS > > > 2015-01-05 15:44 GMT+01:00 Olivier Rossel <[email protected]>: >> There was a discussion some weeks ago about PA4RDF. >> It might be a good starting point, in you think a bean <-> graph mapper >> could be useful in your case. >> >> Also http://callimachusproject.org/ could be another interesting >> project to investigate in your case. >> >> On Mon, Jan 5, 2015 at 2:41 PM, Nicolas Paris <[email protected]> wrote: >>> Hello, >>> >>> I am creating a web semantic application, were persistant data is all >>> stored in triple store (TDB). >>> I mean, users(foaf), parameters etc. >>> This application is an e-learning application, with exercices >>> proposition based on reasonners. >>> >>> I want to use a classic MVC design pattern (jsp / servlets / javabeans). >>> So a javabeans user, teacher, and student with heritage. >>> My naïve aproach would be to initialise jbeans from TDB, using jena >>> model getInstance etc. Or Sparql Querys with ARQ >>> and my setters will do both : >>> - set jbeans propertys >>> - modify triple (dataset jena setProperty ; dataset commit , OR SPARQL >>> querys) >>> >>> Example bad pseudo-code: >>> Class student extends user { >>> private Integer age; >>> private Ressource student = myModel.getIndividual( >>> "http://www.myexample.com/mySchema#student1" ); >>> >>> public void setAge(Integer age){ >>> this.age = age; //modify jbeans property >>> student.setPropertyValue("http://www.myexample.com/mySchema#age","1^^integer") >>> # modify TDB valyue >>> } >>> >>> } >>> >>> >>> 1) Are there good practice or some DAO to design ? >>> 2) In term of performances, is it better to use ARQ (sparql) OR jena >>> ontologie API ? >>> (3) is it a good choice to store all in a triple store ? (versus >>> traditional relational databases) ) >>> >>> Thanks a lot >>> >>> >>> >>> Nicolas PARIS
