Re: RDF Containers in XUL Trees
Neil Stansbury <[email protected]>
| Newsgroups | gmane.comp.mozilla.devel.rdf |
|---|---|
| Organization | Another Netscape Collabra Server User |
| Message-ID | <[email protected]> |
Aha - the light it shines brightly in my eyes! Thanks R_O_O_K, I did actually see your post but I have only now understood it's consequences. Though why doesn't it inherit that property when declaring an "instanceOf". I was under the impression that that was the whole point of the RDF type inheritance. Thanks for this, I guess I'll stick with the standard containers rather than defining my own then. Cheers, Neil R_O_O_K wrote: > Hi! > > The trick is that writing > <rdf:Seq ...> > implicitly adds a rdf:nextVal predicate and thus > it is equal to sth like this > > <rdf:Description rdf:nextVal="1"> > <rdf:instanceOf > rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Seq"> > </rdf:Description> > > Without this "nextVal" the template builder simply doesn't build the > tree. I posted a comment on this at > http://www.xulplanet.com/tutorials/mozsdk/rdfsyntax.php > some time ago. Maybe it's high time it got into the RDF tutorial, > it seems to confuse many people. > > (Anyone on the XULPlanet team reading this post?) > > Best regards! > Michal Ziemski > > Dnia 2005-01-10 21:16, Użytkownik Neil Stansbury napisał: > >> Hi Axel, >> >> Thanks for this, >> >>> You can use containment or whatever the attribute is actually called >>> on the template to add arcs to iterate over. What you do is hardly >>> going to do alot useful, though. >> >> >> >> No but it will allow me to test whether a resource has the property of >> 'my:Container' rather than just the generic 'rdf:Seq'. It just seemed >> to make more sense semantically. >> >>> You could use plain containers, and use a instanceOf in the enum to >>> add a new class. Or you go without it completely. Mixing rdf:li with >>> other parents is likely to achieve brokeness. >> >> >> >> If I use the following RDF the tree doesn't build: >> >> <my:Container rdf:about="level1" my:name="Parent"> >> <rdf:instanceOf >> rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Seq"/> >> <rdf:li rdf:resource="level2"/> >> </my:Container> >> >> <my:Container rdf:about="level2" my:name="Child"> >> <rdf:instanceOf >> rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Seq"/> >> <rdf:li rdf:resource="level3"/> >> </my:Container> >> >> If I swap the 'my:Container' class for 'rdf:Seq' it builds fine. >> >> I take it this is what you mean by: >> >> > Mixing rdf:li with other parents is likely to achieve brokeness. >> >> So in theory at least, how does the tree consider an assertion a >> container? >> >>> There is no such thing as a non-standard rdf container. >> >> >> >> As in rdf:Seq, rdf:Bag, rdf:Alt >> >> >> Cheers, >> >> >>