RE: Confusion about Collections

> From: Frank Manola [mailto:fmanola@mitre.org]
> Sent: Monday, November 25, 2002 12:57 PM
> To: Shelley Powers
> Cc: www-rdf-comments@w3.org
> Subject: Re: Confusion about Collections
>
>
> Shelley Powers wrote:
> >
> > > Actually, if they read front-to-back, they'll see
> collections, and then
> > > read about Collections.  However, I take your point (Collections were
> > > added after most of that earlier stuff was written, and you run out of
> > > synonyms after a while).  How does "group" strike you for the generic
> > > term (can't use "set";  can't use "Bag")?
> > >
> > > >
> > > > I would strongly recommend that the Primer author consider
> using another
> > > > term, and also add additional material about Collections. I
> would also
> > > > recommend additional coverage of Collection within the Syntax
> > > document to
> > > > bring it more closely inline with the coverage of same in
> > > Semantics and in
> > > > Vocabulary.
> > >
> > > I'll fix the terminology.  As it happens, I'm working on the
> Collections
> > > material right now.  What additional material about Collections would
> > > you suggest?
> >
> > Clarification on this, Frank: there is a strong mapping between
> the RDF/XML
> > of the Container and the generated graph, but almost no mapping at all
> > between the Collection RDF/XML and the generated graph. One
> could say that
> > the Collection is the ultimate RDF shortcut. This is going to cause
> > confusion, particularly as people try and figure how to programmatically
> > access a 'Collection'. (N-Triples of the graph might help with that.)
> >
> > Wouldn't be a good idea to show the 'long form' of the Collection, as
> > tedious as it is, in addition to the short form? With this,
> then people can
> > see for themselves the mapping. They'll be able to take the
> steps that get
> > them from Point A to Point B.
> >
> > This isn't necessary for experienced RDF/XML people, but I think is
> > essential to newbies.
>
> I need some clarification about your clarification.  I understand what
> you say about the mapping between the RDF/XML of the collection and the
> generated graph (there is one;  it's described in the Syntax
> specification, but reading it isn't for the faint of heart), and I'm
> concocting some words to try to describe it.  However, I'm not sure I
> understand what you mean by the "long form" of the Collection.  It seems
> to me that the graph is the "long form" (that is, it shows the consed
> list, in all its "glory"), and there's a drawn graph in the Primer.  Are
> you saying that a *triples* version of that graph would be clearer, and
> would help people more than the drawing (he asked in astonishment)?  If
> so, do you mean in addition to or instead of the drawing?
>
> --Frank
>

You're talking about the productions. I wouldn't recommend that for the
Primer, or as you say, for the faint of heart or only for those intensely
interested.

People will programmatically access RDF as triples. And there is no mapping
between the RDF/XML and the triples if I read the graph correctly.
Containers are represented by a bnode, with a type of bag and a listing of
the resources. One can see this fairly simply just by looking at the two.
However, collections are a different beastie altogether.

A bag can be duplicated with:

<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
         xmlns:s="http://example.edu/students/vocab#">

   <rdf:Description rdf:about="http://example.edu/courses/6.001">
      <s:students>
         <s:student_bag>
            <s:student rdf:resource="http://example.edu/students/Amy"/>
            <s:student rdf:resource="http://example.edu/students/Tim"/>
            <s:student rdf:resource="http://example.edu/students/John"/>
            <s:student rdf:resource="http://example.edu/students/Mary"/>
            <s:student rdf:resource="http://example.edu/students/Sue"/>
         </s:student_bag>
      </s:students>
   </rdf:Description>
</rdf:RDF>

You don't have to use rdf:Bag or rdf:li. This is really a short cut for a
typed node and repeating properties that are resources. Really.

But what is Collection? It seems to introduce all sorts of RDF statement
types. It's a group of bnodes that each have a specific type, and each
points to one and only one resource, with some kind of attaached
relationship between the bnodes.

And you get all that with parseType="collection".

I think it would help if you displayed the N-Tripes for the graph in
addition to the graph. I think you also need to walk through each aspect of
the graph and explain what it means, and if there is an alternate syntax for
same (as there is with rdf:Bag).

Also -- "Up to applications to interpret it". That's enough to ensure I will
never use Collections in my vocabularies. What a nightmare. This is the same
as relying on user agent's interpretation of <P> in the original HTML.

Also, you introduced the term 'consed-pair' in the document to reflect
Collections. This does need definition, it's not used anywhere else in any
of the documents.

Shelley

Received on Monday, 25 November 2002 14:15:42 UTC