- From: David Powell <djpowell@djpowell.net>
- Date: Mon, 2 Apr 2007 13:56:57 +0100
- To: semantic-web@w3.org
Some properties in vcard can take very different values. Eg, AGENT can be a text string, an embedded vCard, or a URL. What is the best practice? a) As in the current rdf schema, a single property, with no defined range: [] rdf:type ex:Vcard ; ex:agent "Description of some person" ; [] rdf:type ex:Vcard ; ex:agent _:vc ; [] rdf:type ex:Vcard ; ex:agent <http://example.com/person> ; This requires consumers to examine the type of RDF node to understand its meaning. This seems a bit low-level. b) Multiple properties: [] rdf:type ex:Vcard ; ex:agentText "Description of some person" ; [] rdf:type ex:Vcard ; ex:agentVcard _:vc ; [] rdf:type ex:Vcard ; ex:agentUrl <http://example.com/person> ; ... with a schema that defines ex:agentUrl, ex:agentVcard, and ex:agentText to be sub properties of an 'abstract' base property. The sub-properties can all have appropriate rdfs:range properties. c) introduce indirection via a bnode and have an explicit property to indicate the value type. This seems a bit verbose. I prefer b). -- Dave
Received on Monday, 2 April 2007 12:57:37 UTC