Re: REST Web services role in Jena and Semantic web

2015-09-10 Thread Rob Walpole
Hi Kumar,

The DRI Catalogue used at the UK National Archives uses a RESTful web
service built on top of the Jena stack to - exactly as John says - provide
access to the information held in RDF without the user (or application in
this case) needing to know anything at all about the underlying technology
or its data structures. It means that should the need arise, the underlying
technology can be replaced without users (or applications) needing to know.

You can read more about this approach here
https://www.nationalarchives.gov.uk/documents/information-management/xml-london-tna-rw.pdf

Rob


On Wed, Sep 9, 2015 at 7:40 PM, kumar rohit  wrote:

> Yes John, I want examples of REST web services which site on top a Jena
> implementation which contains data in owl/rdf. If I do not use JSP, how can
> I achieve it via Rest web services.
>
> On Wed, Sep 9, 2015 at 7:27 PM, John A. Fereira  wrote:
>
> > Are you looking for specific use cases or examples of REST web services
> > which site on top a Jena implementation which contains data in owl/rdf?
> >
> > I can point to a few of them but in general,  a use of a Restful web
> > services could be to provide access to data represented in owl/rdf
> without
> > the requirement of knowing anything about owl, rdf, or other semantic web
> > technologies.
> >
> > -Original Message-
> > From: kumar rohit [mailto:kumar.en...@gmail.com]
> > Sent: Wednesday, September 9, 2015 2:09 PM
> > To: users@jena.apache.org
> > Subject: REST Web services role in Jena and Semantic web
> >
> > Hello what are the uses of Restful web services and AJAX in developing
> > semantic web applications. I mean if I have an owl file/ontology in Jena,
> > where is the role of the Restful web services and Ajax tool then?
> >
>


Re: REST Web services role in Jena and Semantic web

2015-09-10 Thread John A. Fereira
I wasn’t sure that this topic really fit into the purpose of the mailing list 
but since this was posted I’ll mention a couple of other RESTful web services 
built on top of a Jena stack.

Elda is a java implementation of the Linked Data API which exposes a set of 
RESTful URLs that sit on top of the Jena stack. The RESTful URLs are translated 
into sparql queries and an endpoint (typically implemented using Fuseki).  It’s 
a pretty slick system that seems to have a lot of active development.  It’s 
available on github here:  https://github.com/epimorphics/elda and 
documentation can be found here: 
http://epimorphics.github.io/elda/current/index.html

I have been doing some testing on something called Skosmos.  It’s a web 
application written in PHP that provides a REST API with a lot of features for 
accessing controlled vocabularies (represented as SKOS).  The vocabularies are 
stored in a Jena TDB with a Jena-Fuseki sparql endpoint configured to use 
jena_text (using either Lucene or Solr).  In this case, all of the front end 
code is in PHP (no jsps).  I have been using a Autotagging service that I 
developed based on a project called KEA that does entity extraction from 
documents and automatically assigns keyword tags from a controlled vocabulary 
that are added to the metadata.  KEA uses the jena TDB to store the 
vocabularies. My tagging service is being used to tag about 480K documents (all 
are PDFs) and the metadata is indexed using Solr index used by a Ruby on Rails 
application called Blacklight.  The Blacklight application doesn’t know 
anything about Owl or RDF.  I am looking at possibly replacing the KEA based 
implementation with Skosmos.

One of the project I spend a lot of time on is something called VIVO.  It’s an 
open source Semantic Web application that is being used in dozens of 
universities and other organizations worldwide (including a couple of US 
government agencies).  It uses jena extensively throughout the application.  It 
primarily is used in academic institutions store data about researchers, their 
affiliations, publications, grants, etc.  At my institution most of the faculty 
have user profiles in VIVO which accessible through the VIVO user interface.  
However, we also have many departmental web sites which use a variety of 
technologies (e.g. Drupal) to create their site and they’d like to show a list 
of their faculty with a detailed profile.  Each of these department sites also 
has their own branding and they don’t want users to just follow a link to the 
VIVO site (which has a completely different theme).  So I developed a service 
which is basically a repository of sparql queries addressable with a Rest 
“style” URL.  The client site can basically say, “give me a list of all faculty 
members in the Chemistry department and I want to results as XML (or JSON, 
XMTML, or RDF)” or “give me detailed profile information for the faculty member 
with JoeBob123 as their user id”.  The service uses a specified sparql query 
and uses jena fuseki to query the triple store in VIVO, does some post 
processing of the results, and returns the data in the requested format.  Many 
of those client sites are developed with a proprietary content management 
system based on Cold Fusion that doesn’t understand OWL/RDF but can do an XSLT 
transformation with data represented as XML.  A Drupal site might want JSON 
instead.  The latest versions of VIVO support a configurable triple store so it 
would be the VIVO instance could switch from Jena SDB to Jena TDB or even 
Virtuoso and the client would never know it because it’s just calling a 
persistent Rest style URL. 







On 9/10/15, 8:42 AM, "Rob Walpole"  wrote:

>Hi Kumar,
>
>The DRI Catalogue used at the UK National Archives uses a RESTful web
>service built on top of the Jena stack to - exactly as John says - provide
>access to the information held in RDF without the user (or application in
>this case) needing to know anything at all about the underlying technology
>or its data structures. It means that should the need arise, the underlying
>technology can be replaced without users (or applications) needing to know.
>
>You can read more about this approach here
>https://www.nationalarchives.gov.uk/documents/information-management/xml-london-tna-rw.pdf
>
>Rob
>
>
>On Wed, Sep 9, 2015 at 7:40 PM, kumar rohit  wrote:
>
>> Yes John, I want examples of REST web services which site on top a Jena
>> implementation which contains data in owl/rdf. If I do not use JSP, how can
>> I achieve it via Rest web services.
>>
>> On Wed, Sep 9, 2015 at 7:27 PM, John A. Fereira  wrote:
>>
>> > Are you looking for specific use cases or examples of REST web services
>> > which site on top a Jena implementation which contains data in owl/rdf?
>> >
>> > I can point to a few of them but in general,  a use of a Restful web
>> > services could be to provide access to data represented in