Thea was presented at the Thessaloniki Semantic Web meetup on March 23. The presentation is available here
Archive for the ‘Thea’ Category
Thea presentation
Tuesday, April 6th, 2010Thea Open Calais Prolog wrapper library
Wednesday, February 10th, 2010Introduction
Open Calais is a Web service provided by Thomson Reuters. Open Calais analyses content using NLP and semantic tecniques and returns an RDF based response containing entities and relationships identified in the source and associated metadata.
thea_opencalais is a Prolog wrapper for accessing Open Calais and process the results. It is an application of Thea Prolog library for OWL2 Ontologies. thea_opencalais uses the Open Calais ontology and parses the service response first into Ontology axioms and finally into prolog terms and predicates, accessible from within a Prolog program.
Example
- Get your Open Calais license key and assert it as a Prolog fact:
:- assert(thea_opencalais:open_calais(license('Your open calais license key'))). - Load the Open Calais Ontology into Prolog using Thea.
:- owl_parse_rdf('owl.opencalais-4.3.xml.owl',[imports(false),clear(complete)]).The Ontology in this example has been already downloaded in the working directory. Originaly it can be found here
- Post the content of a Wikipeadia page about papal visits to the Open Calais REST service
:- oc_rest(http('http://en.wikipedia.org/wiki/List_of_journeys_of_Pope_Benedict_XVI'),'',_X). - Use Prolog provided prolog predicates to examine Markup Elements (Entities and Relationships) in the result
c_entity(A,B,C,E,D).
A = 'http://d.opencalais.com/genericHasher-1/f545c2a6-ccd3-3095-adb0-c1c8dda96624',
B = 'http://s.opencalais.com/1/type/em/e/Anniversary',
C = ['http://s.opencalais.com/1/pred/name'=literal('the 500th anniversary of Catholic...')],
E = [instance_info('http://d.opencalais.com/dochash-1/2d1827f8-c251-36b1-bfe6-043a4a.....
D = [] - You can also write custom predicates to query the resulted database of Markup Elements e.g.
quotation(Person,Quotation) :- oc_relation(_I,'http://s.opencalais.com/1/type/em/r/Quotation',PVList), pv_attr('http://s.opencalais.com/1/pred/person',PVList,Person), pv_attr('http://s.opencalais.com/1/pred/quote',PVList,Quotation).
Download and use
Thea and thea_opencalais are open source licensed under GPL and are hosted on github. thea_opencalais module and examples can be found in apps/opencalais folder