Thank Peter. 
I did a write up on IndexedRelationships on the Github wiki: 
https://github.com/peterneubauer/graph-collections/wiki/Indexed-relationships
That one needs to be updated to reflect property-indexed-relationships.
SortedTree, PropertySortedTree, IndexedRelationship all implement Iterable and 
all methods that return a "collection" return an Iterable, so everything can be 
accessed lazily. 
Any eagerly evaluated tree would defeat the entire purpose of having a 
index-tree in the first place. 
The remainder of the classes and interfaces are auxiliary, there is a 
IndexedRelationshipExpander that implements the RelationshipExpander interface 
and supports IndexedRelationships, there are a bunch of classes that define 
PropertyTypes (lightweight wrappers around property names that preserve type 
information about the data type used and that can compare a value to a property 
value and compare the values of the same property on two nodes).
These wrappers are needed to ask questions such as, give me all nodes of this 
collection of relationships that have a node attached with a property value 
equal (greater than or less than) a certain value. (the greater than and less 
than methods I still have to implement).
Another todo is IndexedRelations that are indexed by a property value of the 
relationship. Now PropertySortedTree sorts nodes by some property value of the 
related Node, it should also be possible to sort nodes based on a property 
value of the relationship created.
I'd like to make the work complete before looking into further documentation, 
something I'd gladly write before moving things to neo4j repo. It would be nice 
to have RTree in as well, before moving to repo.
Niels

> 
> Now, a good question is how to document this. Are the interfaces all
> like normal collections? Maybe we could write some introductory text
> and pull code from the tests into the docs. Have you been able to get
> the manual buidl working at your machine, see
> https://github.com/neo4j/manual ?
> 
> Upon moving this to the neo4j repo, it would be cool to be able to add
> a section in the manual for this.
> 
> Cheers,
> 
> /peter neubauer
> 
> GTalk:      neubauer.peter
> Skype       peter.neubauer
> Phone       +46 704 106975
> LinkedIn   http://www.linkedin.com/in/neubauer
> Twitter      http://twitter.com/peterneubauer
> 
> http://www.neo4j.org               - Your high performance graph database.
> http://startupbootcamp.org/    - Ă–resund - Innovation happens HERE.
> http://www.thoughtmade.com - Scandinavia's coolest Bring-a-Thing party.
> 
> 
> 
> On Wed, Jul 20, 2011 at 10:04 PM, Niels Hoogeveen
> <[email protected]> wrote:
> >
> > To simplify the use of IndexedRelationships, I added support for the use 
> > case where relationships are placed in an index based on the value of a 
> > property of the node added.
> > Hereto, I added wrappers for property types for all data types supported.
> > There is also a specialized version of SortedTree (PropertySortedTree) that 
> > supports this use case.
> >
> > Code can be found in https://github.com/peterneubauer/graph-collections
> > Niels
> > _______________________________________________
> > Neo4j mailing list
> > [email protected]
> > https://lists.neo4j.org/mailman/listinfo/user
> >
> _______________________________________________
> Neo4j mailing list
> [email protected]
> https://lists.neo4j.org/mailman/listinfo/user
                                          
_______________________________________________
Neo4j mailing list
[email protected]
https://lists.neo4j.org/mailman/listinfo/user

Reply via email to