Re: New syntax spec

>>>Rick Jelliffe said:
> From: "Dave Beckett" <dave.beckett@bristol.ac.uk>
> 
> > > Do you mean this:
> > > [attributes]=set(idAboutAttr?, bagIdAttr?, typeAttr?, propAttr* )
> > 
> > True (and this is a bit better) but since propAttr also matches
> > "rdf:type", how do I express that when rdf:type is seen, typeAttr
> > should be accepted in priority to propAttr.
> 
> What does "priority" mean? Do you mean
> [attributes]=set(idAboutAttr?, bagIdAttr?, (typeAttr | propAttr*)? )
yes - | has a left-to-right priority where the first matching term is
taken, in the notation
 http://www.w3.org/TR/2001/WD-rdf-syntax-grammar-20010906/#section-Infoset-Grammar-Notation
That might be a better way to express it i.e. replacing propertyAttr* 
with (typeAttr | propAttr*)? throughout. 
Another alternative might be to define a term propertyAttrs and use
that like this:
 element(....
 [attributes]=set(idAboutAttr?, bagIdAttr?, propertyAttrs)
 ...)
 propertyAttrs := (typeAttr | propAttr*)?
so that it is precisely clear what are the attributes that generate
properties.
This is rather a mess. Removing typeAttr completely is tempting but
that would loose the constraint that the attribute always takes a
URI-ref value, which would have to be expressed in some other way.
Dave

Received on Thursday, 13 September 2001 09:32:12 UTC

AltStyle によって変換されたページ (->オリジナル) /