[Versa] Issue 3

Uche Ogbuji uche.ogbuji at fourthought.com
Tue Aug 16 10:16:22 MDT 2005


On Tue, 2005-08-16 at 10:06 -0600, Michael Olson wrote:
> >
> > A - B -> * was syntactically attractive when it represented a traversal
> > of a path from one end to another.  It loses its attraction to me if we
> > change it to return statements so that you have to wrap it in  
> > subject(),
> > object(), etc.
> >
> 
> I agree.  Currently, I'm leaning towards keeping the traversal/filter  
> syntax and result types as is.  I think then we can add a function
> statements(filter_expression,filter_expression,filter_expression)
> 
> or maybe statements(filter_expression)
> 
> That returns a list of statements.  After all, getting the statement  
> results is used a lot less.....
> 
> We can still support subject(),predicate(),object() on a set of  
> statements.  Even extensions scope(), etc.

OK.  That was actually what I was proposing with my {SPF, SPF, SPF}
proposal, not a replacement for traversal expressions, but rather a new
syntax.  But I agree that a simple function might be a better approach.



> > It also pushed Versa more from a pathy language to an aggregate-type
> > language such as SPARQL.  I would like to maintain separate syntax for
> > path traversals versus statement pattern aggregations.  I think they  
> > are
> > conceptually very different.
> >
> 
> Agreed
> 
> > I worry that this entire discussion is taking us a big step backwards  
> > to
> > 4RDF "complete".
> >
> 
> I don't know if that is horrible, as long as we keep what we have.  I  
> think the current traversals and filters are great.  I also think the  
> flexibility of a function like complete is powerful (and thus does not  
> require us to come up with a syntax for every possible permutation of  
> the result sets).  Maybe we rename the "statements" function I talk  
> about above to be "complete"?

OK.  We're on the same page, then.  I think "statements" is better than
"complete", which sounds a bit academic.


> > My experience is the opposite.  Moving from triples-oriented to
> > path-oriented, I've found that I'm a lot more productive, my queries  
> > are
> > easier to compose and follow, and that it's easier to see where
> > optimization goes.  So even though pathy queries might be slower the
> > first time I write them, it's a lot easier to touch things up so that  
> > my
> > use case is optimized (as well as similar, future use cases).
> >
> 
> I agree for large queries.  My use cases have been more from the realm  
> of implementing say OWL DL.
> 
> "give me all of the sub properties of this property"
> 
> This being a simple example of a query that works will in complete and  
> versa.
> 
> However, what I also need to ask is "give me all of the statements on  
> this node".  This works very well in a complete type of method, but not  
> in versa.

I agree.

> So....why not both?
> 
> either as "complete()" or "{}"

I think it was just a misunderstanding, but I should first check whether
Chime also concurs.

Chime?

Others?


-- 
Uche Ogbuji                               Fourthought, Inc.
http://uche.ogbuji.net                    http://fourthought.com
http://copia.ogbuji.net                   http://4Suite.org
Use CSS to display XML, part 2 - http://www-128.ibm.com/developerworks/edu/x-dw-x-xmlcss2-i.html
XML Output with 4Suite & Amara - http://www.xml.com/pub/a/2005/04/20/py-xml.html
Use XSLT to prepare XML for import into OpenOffice Calc - http://www.ibm.com/developerworks/xml/library/x-oocalc/
Schema standardization for top-down semantic transparency - http://www-128.ibm.com/developerworks/xml/library/x-think31.html




More information about the Versa mailing list