[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