Tag: RDF

Generating Clojure from an Ontology

I’ve been fascinated with RDF for years, but I always end up frustrated when I try to use it. How do you read/write/manipulate RDF data in code? Sure, there are lots of libraries, but they all represent RDF data as its primitive structures: statements, resources, literals, etc. Working with data through these APIs feels like…

Read the full article

Antidenormalizationism

When storing any large collection of data, one of the most critical decisions one has to make is when to normalize and when to denormalize. Normalized data is good for flexibility — you can write queries to recombine things in any combination. Denormalized data is more efficient when you know, in advance, what the queries…

Read the full article

Whither RDF?

RDF is seductive. I can’t get away from it. Something about the ability to represent anything and everything in one consistent model just tugs at my engineer’s heartstrings. The problem with RDF, as I’ve discovered through painful experience, is that the ability to represent everything sacrifices the ability to represent anything efficiently. Certainly that is…

Read the full article

URI Templates for RDF

There’s a school of thought that URIs should be opaque identifiers with no inherent meaning or structure. I think this is clearly a bad idea on the human-facing web, but it is more reasonable for computer-facing web services. However, I’ve been generating a lot of RDF lately, trying to organize piles of metadata in AltLaw.…

Read the full article

All Your Base

Let’s have the database models strut down the runway: Relational (SQL): Data consist of rows in tables. Each row has multiple columns. Each column has a fixed type. Queries use filters and joins. Fixed schema is defined separately from the data. User-defined indexes improve query performance. Robust transaction/data-integrity support. Graph (RDF): Data consist of nodes…

Read the full article