Reading through the internet’s definition of bigotry, I find myself nodding along as I make a comparison to my views on the Web Ontology Language.  Unfortunately, the definition of bigotry I found makes no mention of weakly-grounded intolerance, which is how I’d describe my own feelings.

There’s clearly nothing wrong with OWL (or OWL-2) as a logical system.  I’ve nothing against disjoint unions, datatype properties, or n-ary datatypes.  There are plenty of reasoners that cater to OWL semantics, and many IDEs (e.g. Protege and TopBraid Composer) weave OWL reasoning right into the developer’s workflow. It’s even defined in the RDF framework, so that using OWL is only a namespace declaration away.

My problem is that I never use OWL.  When working with data, I’ll often write an ontology to hold the semantics I’m adding to a model.  However, that ontology will virtually always be based on RDF/S – classes, domains, ranges, labels, and sequences constitute a pretty powerful palette.  When I want something over and above this, what I usually need is a rule system like Jena rules, SPIN, Common Logic, or RIF.

Bigotry may not be the word I’m looking for – the wiki page in fact makes an interesting suggestion that I may be suffering from RDF Purism.  Indeed, I do feel inexplicably better if I manage to express my ontology using only RDF/S.  Perhaps this is the same kind of irrational tendency that drives some people to prefer hammers to nail guns, others to write Lisp instead of Java, and a few to favor kites over model rockets – a tendency towards simplicity.

I’ve no idea how I’d write a knock-down argument for simplicity in semantic tooling, and it probably comes down to personal preference.  Lots of people like RDF/XML, TopBraid Composer, and Java, and I’d never suggest anything to be wrong with this tool kit.  Me, I like Turtle, Notepad++, Clojure, and a REPL.

Advertisements