Typing faux-literals
In conversation this evening in #swig there was some discussion of representing types of phone number. In vCard a number can be a cell, home, or work number.The natural way I would do this in RDF is to make three subproperties of foaf:phone. In fact, as I mentioned to Chris Murphy, the correct way to model it is to make explicit the smushed information in the vCard entry — a person doesn't have numbers, places and things have numbers* (possibly excepting mobile phones in some simplified models, which might be regarded as personal), and people are associated with those locations (and thus might be contacted at them). So really a person would be linked to their place of work, which has a number (in the contact vocabulary, perhaps), and their home, which likewise might have a landline. We observed an interesting potential solution: foaf:phone expects a tel: URI, so phone numbers are not literals. This means they can be typed — as vcard:cell and so on. This seems quite elegant, and it fits in with my way of doing things. Furthermore, it avoids having to use a bnode and rdf:value, which is rather lacking in semantics.
The same applies to any literal-like URI, like mailto:s in FOAF, ISBNs, and the like. The possibilities are endless….
Hmmm, a blog post with some value to the reader. I shouldn't make a habit of this.
* Well, there are even more thorough models, but this is a reasonably correct one! Accurately, external telephone numbers are entities, controlled by the telephone company, that are temporarily associated with some conceptual endpoint, usually associated with some point in space… or are they? Hehehe.
Posted at 2005-06-12 15:59:43 by Richard • Link to Typing faux-litera…
Comments, trackbacks.







