- From: Brian McBride <bwm@hplb.hpl.hp.com>
- Date: Fri, 31 Jan 2003 05:57:01 +0000
- To: "Stephen K. Rhoads" <rhoads@thrupoint.net>, <www-rdf-interest@w3.org>
Stephen, A few remarks in addition to Peter's. If you wish to stay just with RDFS: It might be worth thinking about what the domain/range statements might be used for. Possible answers include: - validating data - inferring the types of things from their properties - adaptive user interfaces (only showing options that are appropriate to type) As you point out, sometimes one can have properties that are pretty general in nature. Lets take name as an example. One option is, for each such property, is to define a class for its domain, say Nameable. Then you, or anyone else, can define, each class that can take a name to be a subclass of Nameable. This approach can support data validation and adaptive user interfaces, but its not much good for inferring types of things from their properties. An alternative which is better for type inference, is as you suggest, define different properties for each class, such as directorsName, songName etc. You can define an appropriate domain for each such property, which would allow an RDFS reasoner to make more meaningful type deductions about resources with those properties. It may also be useful to make each such property a subproperty a subproperty of a more general property, say name, so one can, for example query for all names. Brian These might defeat your desire for simplicity. Brian At 17:42 30/01/2003 -0500, Stephen K. Rhoads wrote: >So, given the new "conjunctive" rule governing domain and range constraints, >I'm running into problems in the production of my very first >(read newbie) RDF schema. In particular, I find that I have many predicates >which apply equally to seemingly disparate types of classes. > >Here are some examples: > >-- Predicate "name" could be applied to both "Person" and "ContentProvider" > >-- Predicate "directedBy" could be applied to the classes "Movie" and >"TelevisionProgram", but not to "Song", even though all are subclasses of >"Content" > >I do have an appreciation for the fact that the new rule forces you to think >harder about classification of objects, and that in the above >examples there is likely some (obscure) superclass to which the predicates >can be safely applied (eg "ObjectsWithNames" ... "DirectedContent"). But in >the interest of encouraging adoption for this nascent protocol, I want to >keep it very simple. > >What are my options (short of copping out and using, for example, >"movieDirectedBy" / "programDirectedBy" or "personName" / "providerName")? > >--- Stephen
Received on Friday, 31 January 2003 00:55:56 UTC