Re: LDP interfaces in Java (based on Jena and JAX-RS)

On 8/6/12 4:47 PM, Reza B'Far (Oracle) wrote:
> Folks -
>
> I have to say I'm lost in the intent of the thread.  Why are specific 
> technologies (Jena, Servlets, etc.) or implementation architectures 
> that have been described relevant to standardization effort and 
> charter of group?  I'm sure I'm missing something since I'm new to the 
> WG, but perhaps someone can shed some light on that.
>
> Whatever the standard is at the end, am I assuming correctly that 
> it'll have no mention of Jena, Sesame (reference to OpenRDF), etc. 
> implementation specific architectures, right?

Correct, and sometimes this is where we veer off track. This is why RDF 
and Linked Data separation can be difficult. Old messaging and 
literature from the W3C (in an attempt to promote standards) has ended 
up muddying the waters, inadvertently.

The fundamental goal is architecture for open data connectivity. 
Basically, going beyond open database connectivity as delivered by the 
likes of ODBC and JDBC. In a nutshell, this is about Web Architecture 
variants of OLE-DB and ADO.NET which were doomed as a result of platform 
specificity and zero-webby-ness.


We are basically trying to work out a loosely coupled architecture for 
data object identification, representation, and access via:

1. URIs
2. Structured Data
3. RESTful interaction patterns.


It can't be more than that :-)


Kingsley
>
> Best
>
> On 8/6/12 1:34 PM, Martynas Jusevičius wrote:
>> Jürgen,
>>
>> my interfaces and application are meant for server-side Java, and
>> your's is more of an AJAX application, as far as I understand?
>> Graphity can manage RDF and also serve Linked Data, either as a
>> platform or via user interface. Here's the default one:
>> http://semanticreports.com/?uri=http%3A%2F%2Fwww.turnguard.com%2Fturnguard.rdf
>>
>> In regard to this discussion my thread started (I can't get mail from
>> public-ldp-wg) I think the most important one is the one Andy is
>> making (I think): only RDF-based LDP would allow generic web
>> applications, because there would be no data model conversions in the
>> entire dataflow between the client and the server (vocabulary
>> conversions might be still needed, but XML or JSON has that problem
>> too).
>> This seems to me as an important goal. Not underlining RDF would keep
>> us attached to the Web 2.0 approach.
>>
>> Martynas
>> graphity.org
>>
>> On Mon, Aug 6, 2012 at 11:03 PM, Jürgen Jakobitsch
>> <j.jakobitsch@semantic-web.at>  wrote:
>>> hi,
>>>
>>> that is interesting, because it looks somehow complicated..
>>>
>>> i'm working on a a single servlet, that does all the ldp stuff.
>>> you can see it in action here [1].
>>>
>>> i more or less have only one interface, one that has a method
>>> to return a openrdf sesame repository connection. every request
>>> is supplied with that connection via request.setAttribute.
>>>
>>> now with that connection it is just a matter of doing content
>>> negotiation (which is real easy with sesame, i get an appropriate writer
>>> for every serialization format) and running queries.
>>> with my openrdf-jsp-writer i have a whole template engine.
>>>
>>> with this technique i am currently writing a skos:thesaurus management
>>> tool with ease. one very simple webapp can be seen here [2]. if you
>>> trace through the sourcecode of the page, you'll realize that i'm went
>>> away from programming huge apis with controllers, services, spring,
>>> struts and all that.
>>> the page is simply based on events that trigger sparql queries, the
>>> results of which are displayed using jsp templates.
>>> do i need more, eh .. nope...
>>>
>>> please note that i'm especially writing such apps that organize data
>>> into projects (like a skos thesaurus or sioc spaces) because i think
>>> such things are a little underrepresented (contrary to huge datasets).
>>>
>>> wkr turnguard
>>>
>>> [1]http://www.turnguard.com/turnguard
>>> [2]http://business.turnguard.com/html/
>>>
>>> On Sun, 2012-08-05 at 18:05 +0300, Martynas Jusevičius wrote:
>>>> Hey all,
>>>>
>>>> I think it would be fair to say that Linked Data is a juxtaposition of
>>>> RDF and REST, and therefore a Linked Data platform has to implement
>>>> specifications from both worlds.
>>>>
>>>> I have been hacking a prototype LDP for a while now, and have
>>>> distilled generic interfaces that describe it. With this I mean not
>>>> some abstract specification, but concrete Java interfaces combining
>>>> and reusing interfaces from Jena and JAX-RS, which are main Java
>>>> frameworks for RDF and REST, respectively. Here's the base one:
>>>>
>>>> @Consumes({MediaType.APPLICATION_RDF_XML + "; charset=UTF-8",
>>>> MediaType.TEXT_TURTLE + "; charset=UTF-8"})
>>>> @Produces({MediaType.APPLICATION_RDF_XML + "; charset=UTF-8",
>>>> MediaType.TEXT_TURTLE + "; charset=UTF-8"})
>>>> public interface Resource extends LinkedDataResource
>>>> {
>>>>      @GET Response getResponse();
>>>>
>>>>      @POST Response post(Model model);
>>>>
>>>>      @PUT Response put(Model model);
>>>>
>>>>      @DELETE Response delete();
>>>>
>>>>      EntityTag getEntityTag();
>>>>
>>>> }
>>>>
>>>> Source:https://github.com/Graphity/graphity-browser/blob/master/src/main/java/org/graphity/ldp/model/Resource.java
>>>>
>>>> This might or might not be useful when defining an abstract
>>>> specification, but I already have multiple web applications
>>>> successfully implementing this.
>>>> Feedback is very welcome.
>>>>
>>>> Martynas
>>>> graphity.org
>>>>
>>> --
>>> | Jürgen Jakobitsch,
>>> | Software Developer
>>> | Semantic Web Company GmbH
>>> | Mariahilfer Straße 70 / Neubaugasse 1, Top 8
>>> | A - 1070 Wien, Austria
>>> | Mob +43 676 62 12 710 | Fax +43.1.402 12 35 - 22
>>>
>>> COMPANY INFORMATION
>>> | web       :http://www.semantic-web.at/
>>> | foaf      :http://company.semantic-web.at/person/juergen_jakobitsch
>>> PERSONAL INFORMATION
>>> | web       :http://www.turnguard.com
>>> | foaf      :http://www.turnguard.com/turnguard
>>> | g+        :https://plus.google.com/111233759991616358206/posts
>>> | skype     : jakobitsch-punkt
>>> | xmlns:tg  ="http://www.turnguard.com/turnguard#"
>


-- 

Regards,

Kingsley Idehen 
Founder & CEO
OpenLink Software
Company Web: http://www.openlinksw.com
Personal Weblog: http://www.openlinksw.com/blog/~kidehen
Twitter/Identi.ca handle: @kidehen
Google+ Profile: https://plus.google.com/112399767740508618350/about
LinkedIn Profile: http://www.linkedin.com/in/kidehen

Received on Monday, 6 August 2012 21:04:27 UTC