create a SemWebProxy bundle
---------------------------

                 Key: CLEREZZA-463
                 URL: https://issues.apache.org/jira/browse/CLEREZZA-463
             Project: Clerezza
          Issue Type: New Feature
            Reporter: Henry Story
            Assignee: Henry Story


A Semantic Web CMS like Clerezza is all going to be about fetching data from 
the web and using it to create interesting services. Fetching remote graphs 
should therefore be a simple and very reliable service. The service should act 
as a semantic web proxy/cache service. It should

- be able to fetch a remote resource
- return a local cached version if the remote resource has not been update
  (this implies it should understand the logic of HTTP etags, valid-until, and 
so on)
- keep track of redirects
- of which resources are information resources and which not (eg 
http://xmlns.com/foaf/0.1/knows is not an information resource, but a relation, 
and so redirects to the ontology)
- allow the user to specify if he wants a clean version to be fetched remotely, 
or force the usage of local version
- return a graph of that remote resource
- also return a message if the resource does not exist, or is unavailable

Longer term:

- be able to return graphs for how resources were in the past
- fetch graphs as a user - so that it can authenticate with WebID to remote 
resources and get additional information
- know how to get GRDDL transforms to make any xml easily transformable into 
graphs

In my latest 'mistaken' checkin ( r1081290 which should have been a development 
branch really, but it's easier  to fix now than  to undo) this role is taken by 
the org.apache.clerezza.platform.users.WebDescriptionProvider, as a large part 
of this was correctly done there by reto. So the proposal is that the proxy 
part of the WebDescriptionProvider should be moved to its own module, and that 
the WebDescriptionProvider should use that proxy service.

This service will be needed for fetching web pages on the web. It should be 
built to be efficient and parallellisable. Perhaps Scala Actors are the right 
thing to user here (I am looking into this).

Since this service should be useable by SSPs that need to use remote data, it 
should have a class containing  a fetch() method that implements the 
WebRendering function https://issues.apache.org/jira/browse/CLEREZZA-356








--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to