Marbles Linked Data Browser
Marbles is a server-side application that formats Semantic Web content for XHTML clients using By performing all formatting, data retrieval and storage activities on the server side rather than on a potentially thinly equipped client, the view generation can touch on large amounts of data and requests can be answered relatively quickly. Marbles provides display and database capabilities for DBpedia Mobile.
1. Screenshots
A full details view of Beijing Capital Airport that includes data from DBpedia, GeoNames and the flickr wrappr.
2. Try it out!
3. Views
Apart from a full details view that lists all known properties for a resource, Marbles allows for the generation of
Fresnel-based views that are complemented by corresponding CSS stylesheets.
There are currently two views in use, which were designed for DBpedia Mobile:
- The summary view features a short text describing the resource and optionally an image, a link to the resource's foaf:homepage and reviews from the
Revyu rating site if existent.
- The photo view provides photos for a given resource. These are often provided by DBpedia, FOAF data the
flickr wrappr.
4. Data retrieval
Data is retrieved from multiple sources and integrated into a single graph that is persisted across user sessions. When provided with the URI of a resource to display, Marbles tries to dereference it. In parallel, it queries
Sindice for datasources that contain information about the given resource, and
Revyu for reviews.
In a similar manner as the
Semantic Web Client Library, Marbles follows specific predicates found in retrieved data such as owl:sameAs and rdfs:seeAlso in order to gain more information about a resource and to obtain human-friendly resource labels.
5. SPARQL Endpoint
Marbles can act as a SPARQL Endpoint and supports the SELECT, CONSTRUCT and DESCRIBE forms. The endpoint URL of the demo service is
http://beckr.org/marbles – please handle with care!
6. REST services
The service at
http://beckr.org/marbles currently supports the following commands via HTTP GET or POST:
view
Discovers an URI (see below) and renders a given view.
Parameters:
- do = view
- uri = The URI of interest (urlencoded)
- purpose = abstractPurpose | defaultPurpose | photoPurpose (optional)
- lang = ISO language code (optional, defaults to en)
discover
Tries to dereference the URI and queries Sindice and Revyu for data; then follows known predicates.
Parameters:
- do = discover
- uri = The URI of interest (urlencoded)
load
(Re)loads an URL into the cache
Parameters:
- do = load
- url = The URL to load (urlencoded)
clear
Removes an URL from the cache
Parameters:
- do = clear
- url = The URL to remove (urlencoded)
7. Credits
Marbles uses the following components:
-
Sesame 2.1 with MySQL Storage for the browser's data model and storage of cached data; tweaked to support inference
-
SIMILE Fresnel Engine and
IsaViz FSL; both were tweaked to support provenance and performant access to large graphs.
-
SAXON XSLT and XQuery Processor to generate XHTML representations of the rendered Fresnel trees
- The dereferencer is partially based on the
Semantic Web Client Library and makes use of the
Apache Commons HTTP Client for optimized retrieval
8. References
Christian Becker, Christian Bizer: DBpedia Mobile: A Location-Enabled Linked Data Browser. 1st Workshop about Linked Data on the Web (LDOW2008), Beijing, China, April 2008.
Paper
Slides
Information
Last Modification:
2008-05-15 15:45:39 by Christian Becker
