- From: Richard Newman <r.newman@reading.ac.uk>
- Date: Wed, 1 Sep 2004 13:01:22 +0100
- To: "Hammond, Tony" <T.Hammond@nature.com>
- Cc: "'www-rdf-interest@w3.org'" <www-rdf-interest@w3.org>
One way could be to make the two things you're trying to union subclasses of something else, and mark that as the range. :thingy a rdfs:Class . rdfs:Literal rdfs:subClassOf :thingy . :AuthorityReference rdfs:subClassOf :thingy . :category rdfs:range :thingy . This, however, means that something marked as a category is a :thingy, and nothing more (because it's not defined as equivalent to a union). Because RDFS isn't for constraints, only for inferences, there's really no point in doing this. I would just leave the range blank, or specify it in OWL (as that would then be ignored by non-OWL engines). -Richard On 1 Sep 2004, at 12:19, Hammond, Tony wrote: > > Hi: > > I seem to have a problem with modelling rdfs:ranges in the PRISM RDF > schema > - see http://www.prismstandard.org/resources/prism.rdfs (and thanks to > Victor at SchemaWeb for pointing this out). > > The PRISM spec > (http://www.prismstandard.org/specifications/Prism1[1].2RFC.pdf) > defines a > small number of parameter entities for use in content models, e.g. > > %AuthorityReference; > > which is a URI in a controlled vocab. > > Now for a given element, prism:category, say it defines a content > model of > either > > rdf:resource=%AuthorityReference; i.e. rdf:resource=URI > > if an %AuthorityReference; URI is available or if no > %AuthorityReference; > URI is available then the prism:category element content is #PCDATA. > > I attempted to model this as > > <!-- "AuthorityReference" class --> > <rdfs:Class rdf:ID="AuthorityReference"> > <rdfs:label xml:lang="en-US">AuthorityReference</rdfs:label> > <rdfs:comment xml:lang="en-US">Resource used for PRISM content models > with a > parameter entity %AuthorityReference; whose value is a URI referring > to a > term in a controlled vocabulary.</rdfs:comment> > <rdfs:subClassOf rdf:resource="#ResourceReference"/> > </rdfs:Class> > > <!-- prism:category --> > <rdf:Property rdf:about="category"> > <rdfs:label xml:lang="en-US">category</rdfs:label> > <rdfs:comment xml:lang="en-US">The nature or genre of a resources > intellectual content.</rdfs:comment> > <rdfs:isDefinedBy rdf:resource=""/> > <rdfs:range rdf:resource="#AuthorityReference"/> > <rdfs:range > rdf:resource="http://www.w3.org/TR/2000/CR-rdf-schema > -20000327#Literal"/> > </rdf:Property> > > That is, I supplied two range elements - one for an > %AuthorityReference; URI > and the other for #PCDATA. As Victor points out from the RDFS spec: > > "Where P has more than one rdfs:range property, then the resources > denoted by the objects of triples with predicate P are instances of > all the > classes stated by the rdfs:range properties. > > http://www.w3.org/TR/rdf-schema/#ch_range" > > So looks like a property can have multiple ranges but they are AND'ed > instead of OR'ed. (Oh he also pointed out that I'm using the old schema > namespace - I'll upgrade that.) Question is, how do I model this > optional > range constraint in RDFS without necessarily jumping up to OWL? > > Thanks, > > Tony > > > > Tony Hammond > > New Technology, Nature Publishing Group > 4 Crinan Street, London N1 9XW, UK > > tel:+44-20-7843-4659 > mailto:t.hammond@nature.com > > > > > *********************************************************************** > ********* > DISCLAIMER: This e-mail is confidential and should not be used by > anyone who is not the original intended recipient. If you have > received this e-mail in error please inform the sender and delete it > from your mailbox or any other storage mechanism. Neither Macmillan > Publishers Limited nor any of its agents accept liability for any > statements made which are clearly the sender's own and not expressly > made on behalf of Macmillan Publishers Limited or one of its agents. > Please note that neither Macmillan Publishers Limited nor any of its > agents accept any responsibility for viruses that may be contained in > this e-mail or its attachments and it is your responsibility to scan > the e-mail and attachments (if any). No contracts may be concluded on > behalf of Macmillan Publishers Limited or its agents by means of > e-mail communication. Macmillan Publishers Limited Registered in > England and Wales with registered number 785998 Registered Office > Brunel Road, Houndmills, Basingstoke RG21 6XS > *********************************************************************** > ********* > >
Received on Wednesday, 1 September 2004 12:02:16 UTC