See "NewCollectionsPattern" for a newer version.

This is a proposal for the restructuring of the Collection pattern from the Lawrence sprint.
This pattern enables the description of a collection, and a strict ordering in a single structure. It also allows for the description of much more complex orderings, including those that can be described only by a set of source and target pairs.

The Relationship class allows for the description of a relation between a Membar (in a Singleton) to all of the Members of a Bag (or the extensions StrictList and Relation). Through nesting, complicated relationships like classification schemes, Parent-Child hierarchies, and full networks can be described. The outermost Relationship class also serves to contain pointers to all of the elements of a collection without having to enumerate them in a separate structure from the relationship structure description.

Namespace URI: 
Color of objects in the uml graph: 


Include in build?: 


A -> x(domain, range)
domain -> singleton
range -> list | bag | x(domain, range)

This "system" is not in EBLF. I still need to ponder that.

It doesn't produce strings in the format that Larry and Dan used. It does seem to produce tuples in the form:

industry, construction, buildings
industry, construction, utilities
industry, construction, streets
industry, manufacturing, food...

With this formalism in mind I am wondering if range shouldn't have a relationship with Relationship.

Package Graph