Posts Tagged ‘ultrawrap’

The Business Value of Reasoning with Ontologies

[Editor’s note: this guest post was co-written by Héctor Pérez-Urbina (Clark & Parsia) and Juan Sequeda (Capsenta)]

Image of a human brain with computer data overlay.Important enterprise business logic is often buried deep within a complex ecosystem of applications. Domain constraints and assumptions, as well as the main actors and the relations with one another, exist only implicitly in thousands of lines of code distributed across the enterprise.

Sure, there might be some complex UML diagrams somewhere accompanied by hundreds of pages of use case descriptions; but there is no common global representation of the domain that can be effectively shared by enterprise applications. When the domain inevitably evolves, applications must be updated one by one, forcing developers to dive into long-forgotten code to try to make sense of what needs to be done. Maintenance in this kind of environment is time-consuming, error-prone, and expensive.

The suite of semantic technologies, including OWL, allows the creation of rich domain models (a.k.a., ontologies) where business logic can be captured and maintained. Crucially, unlike UML diagrams, OWL ontologies are machine-processable so they can be directly exploited by applications.

Read more

Highlights from WWW 2012 Conference

Juan Sequeda photoThis year was the 21st World Wide Web Conference located in Lyon, France. This conference is a unique forum for discussion about how the Web is evolving. There were hundreds of talks over 3 days. Let me summarize some Semantic Web presentations I was able to attend.

NautiLOD

Programmers daily use the wget tool to specify and retrieve data on the Web. However, wget is limited since it cannot dig into the semantics of Web data to do the job. What if you were to add semantics to wget? This is the question that Valeria Fionda, Claudio Gutierrez and Giuseppe Pirró asked themselves. They took that question to the next level: imagine a semantic wget on top of Linked Data. They wanted to create a language to declaratively specify portions of the Web of Data, define routes and instruct agents that can do things for you on the Web. All this by exploiting the semantics of information (RDF data) found in online data sources. For example, find all the Wikipedia pages of directors that have been influenced by Stanley Kubrick and send them to my email; retrieving information about David Lynch from different information providers only gives a hint of what can be done. The researchers developed a simple, generic declarative language, NautiLOD and implemented it in swget (semantic wget). swget comes in two flavors: a simple command line tool (to give the Web back to users) and a GUI. This is not a fantasy anymore. Check it our for yourself (http://swget.wordpress.com).

Read more

Introduction to: SPARQL

Hello, my name is SPARQL
SPARQL is the standardized query language for RDF, the same way SQL is the standardized query language for relational databases. If this is the first time you look at SPARQL, but you’re familiar with SQL, you will see some similarities because it shares several keywords such as SELECTWHERE, etc. It also has new keywords that you have never seen if you come from a SQL world such as OPTIONALFILTER and much more.

Recall that RDF is a triple comprised of a subject, predicate and object. A SPARQL query consists of a set of triples where the subject, predicate and/or object can consist of variables. The idea is to match the triples in the SPARQL query with the existing RDF triples and find solutions to the variables. A SPARQL query is executed on a RDF dataset, which can be a native RDF database, or on a Relational Database to RDF (RDB2RDF) system, such as Ultrawrap.  These databases have SPARQL endpoints which accept queries and return results via HTTP.

A basic example

Read more