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). -- DaveReceived on Monday, 2 April 2007 12:57:37 UTC
This archive was generated by hypermail 2.4.0 : Tuesday, 5 July 2022 08:45:00 UTC