Post on 20-Aug-2015
a division of Publishing Technology
Twinkle: A SPARQL Query Tool
Leigh Dodds, Oxford SWIG, March 2008
Photo Credit: Glen Bowman
a division of Publishing Technology
What Is It?
A GUI for writing and running SPARQL queries
a division of Publishing Technology
a division of Publishing Technology
Data Sources
Local FilesRemote Files
Jena DatabasesAny combination of these
a division of Publishing Technology
SPARQL Endpoints
Complete SPARQL ClientUseful pre-configured sources, e.g. DBPedia
a division of Publishing Technology
But Wait, There’s More
RDFS and OWL InferencingJena Rules Engine
And any combination
a division of Publishing Technology
a division of Publishing Technology
Demonstration
(Where It All Goes Wrong)
a division of Publishing Technology
The Secret Sauce
ARQ SPARQL query engineThe Jena Assembler API
a division of Publishing Technology
Jena Assembler API
Declaratively describe how to build a Jena ModelURIs, Databases
Add default contentApply schemas, reasoning
a division of Publishing Technology
:periodicTable a ja:MemoryModel
; ja:content [
ja:externalContent
<http://www.daml.org/2003/01/periodictable/PeriodicTable.owl>
]
; rdfs:label "Periodic Table"
.
Config Example
a division of Publishing Technology
:nlm ja:modelName "nlm-data"
; ja:connection :nlm-connection
; rdfs:label "NLM Data"
.
:nlm-connection
ja:dbURL <jdbc:mysql://127.0.0.1:3306/facet>
; ja:dbClass "com.mysql.jdbc.Driver"
; ja:dbType "MySQL"
; ja:dbUser "facet"
; ja:dbPassword “*********"
Config Example (2)
a division of Publishing Technology
<http://dbpedia.org/sparql> a sources:Endpoint
; sources:defaultGraph "http://dbpedia.org"
; rdfs:label "DBpedia.org".
<http://www.rdfabout.com/sparql> a sources:Endpoint
; rdfs:label "GovTrack.us".
Config Example (3)
a division of Publishing Technology
Where It All Goes
etc\config.n3
Describe (and label) modelsPrefix Mappings
a division of Publishing Technology
Prefix Mappings
Quickly add PREFIX statement to queryPre configured vocabularies
Add your own…
a division of Publishing Technology
Prefix Mappings
:foaf a ja:PrefixMapping
; rdfs:label "FOAF"
; ja:prefix "foaf"
; ja:namespace "http://xmlns.com/foaf/0.1/"
.
a division of Publishing Technology
Demonstration (2)
a division of Publishing Technology
…And Yet More
ARQ Function & Property LibraryARQ Extensions (e.g. COUNT, GROUP BY)
a division of Publishing Technology
Future Plans
Documentation!SPARQL Endpoint Access Control
Model CachingSyntax Highlighting
More Eye CandyMove to Google Code(Your Feature Here)
a division of Publishing Technology
Questions?
Twinkle HomepageAnnotated Screenshots
http://www.slideshare.net/ldodds/twinkle-a-sparql-query-tool/