This talk was given at the London Semantic Web Meetup on September 27th 2011 at SkillsMatter
The slides give brief notes on the tools but the bulk of the talk was demos, please see http://skillsmatter.com/podcast/home/dotnetrdf/js-2678 for full video of the talk
Microservices, Docker deploy and Microservices source code in C#
Everyday Tools for the Semantic Web Developer
1. Everyday Tools for the Semantic Web Developer Rob Vesse rvesse@dotnetrdf.org University of Southampton
2. About Me Currently writing up my PhD Thesis “Link Integrity for the Semantic Web” Run the dotNetRDF Project Started January 2009 Current Releases 0.5.0 Beta (API) 0.3.0 Alpha (Toolkit) 27/9/2011 http://www.dotnetrdf.org 2
3. My Life as a Semantic Web Developer Constantly working with different data sources, formats, vocabularies etc. Was frustrated by limited tooling around conversion, query and editing Especially the *nix/Java bias of available tooling Seemed pointless to keep writing tiny Java/.Net programs to do everyday tasks 27/9/2011 http://www.dotnetrdf.org 3
4. Tools All free to use/open source All of which I’ve used at one stage or another Some of which I use on a daily basis Demos I’ll demo as many of these I can get through skipping over a few of the lesser used/duplicate tools 27/9/2011 http://www.dotnetrdf.org 4
5. Tools – Data Conversion Often you get data in format X but you need it in format Y These utilities can convert between formats Examples rapper rdfcopy rdfconvert 27/9/2011 http://www.dotnetrdf.org 5
6. rapper Part of the Redland family of tooling by Dave Beckett http://librdf.org/raptor/rapper.html *nix based – needs cygwin on Windows Example Usage: rapper –g –o turtle input.rdf > output.ttl 27/9/2011 http://www.dotnetrdf.org 6
7. rdfcopy Part of the Jena family of tooling http://jena.sourceforge.net/javadoc/jena/rdfcopy.html Example Usage: rdfcopy.bat input.rdf RDF/XML N3 > output.n3 27/9/2011 http://www.dotnetrdf.org 7
8. rdfConvert Part of the dotNetRDF Toolkit http://www.dotnetrdf.org/content.asp?pageID=rdfConvert .Net Based – needs Mono on *nix Example Usage: rdfConvertinput.rdf –out:output.rj Has a rapper compatibility mode: rdfConvert –rapper –g –o turtle input.rdf > output.ttl 27/9/2011 http://www.dotnetrdf.org 8
9. Tools - Editing There are very few pure text editors for RDF Most are over complex and overpowered for just editing a few triples by hand e.gTopBraid Suite, Protege Examples rdfEditor 27/9/2011 http://www.dotnetrdf.org 9
10. rdfEditor Part of the dotNetRDF Toolkit http://www.dotnetrdf.org/content.asp?pageID=rdfEditor Windows only – Mono does not support the required APIs currently Notepad replacement for RDF Editing with syntax highlighting, auto-complete and validation capabilities 27/9/2011 http://www.dotnetrdf.org 10
11. Tools - Query You don’t want to have to create a SPARQL endpoint/write code just to test out some simple queries Examples arq.query SparqlGUI Twinkle 27/9/2011 http://www.dotnetrdf.org 11
12. arq Part of the Jena family of tooling http://jena.sourceforge.net/ARQ/cmds.html Provides a command line interface to the Jena ARQ query library – probably the most mature and complete SPARQL 1.1 engine available Example Usage: arq.bat --query query.rq --data data.ttl 27/9/2011 http://www.dotnetrdf.org 12
13. SparqlGUI Part of the dotNetRDF Toolkit http://www.dotnetrdf.org/content.asp?pageID=SparqlGUI .Net Based – needs Mono on *nix GUI Interface for quickly testing queries 27/9/2011 http://www.dotnetrdf.org 13
14. Twinkle GUI Interface for SPARQL queries built by Leigh Dodds (Talis) http://www.ldodds.com/projects/twinkle/ Note – AFAIK no longer actively developed and used out-dated version of ARQ so doesn’t support SPARQL 1.1 fully 27/9/2011 http://www.dotnetrdf.org 14
15. Tools – Storage and Management Most Stores require a lot of setup to use For simple prototypes this is overkill Most Stores have web based interface or custom client No standard user experience Custom clients often contain arcane and specialist features that aren’t relevant to average user Examples Fuseki Sesame Windows Client Store Manager 27/9/2011 http://www.dotnetrdf.org 15
16. Fuseki Part of the family of Jena Tooling http://openjena.org/wiki/Fuseki Provides a HTTP server for SPARQL Query and Update runnable from the command line Can use persistent TDB storage (Jena’s native triple store) Example Usage: java –jar fuseki-sys.jar --update --loc=DB 27/9/2011 http://www.dotnetrdf.org 16
17. Sesame Windows Client Developed by JeenBroekstra and Anton Andreev http://sourceforge.net/projects/sesamewinclient/ .Net Based – needs Mono on *nix GUI Interface primarily for Sesame though supports a limited range of other triple stores 27/9/2011 http://www.dotnetrdf.org 17
18. Store Manager Part of the dotNetRDF Toolkit http://www.dotnetrdf.org/content.asp?pageID=Store%20Manager .Net Based – needs Mono on *nix GUI for working with a variety of Triple Stores through a standard interface 27/9/2011 http://www.dotnetrdf.org 18