[Grok-dev] Re: Implementing an N-to-N relationship

Martijn Faassen faassen at startifact.com
Mon May 28 12:44:48 EDT 2007

Luciano Ramalho wrote:
> Kirbi entities include Books and Creators [1].
> [1] http://circulante.incubadora.fapesp.br/portal/about/Entities
> For example, "The Annotated Alice" is an instance of Book, ISBN-13
> 978-0393048476.
> Lewis Carroll, John Tenniel and Martin Gardner are instances of Creator.
> In the case of "The Annotated Alice", Lewis Carroll is the author,
> Martin Garnder is the editor, and John Tenniel is the illustrator.
> Martin Gardner is also the author of "Fads and Fallacies in the Name
> of Science".
> So this is an example of an N-to-N relationship with an annotation
> which defines the role  of the creator (just as string like "author",
> "illustratior" etc.)
> Should I have a CreatorRole class, or is there a more lightweight way
> of doing this with Grok?

We don't have a relationship system for Grok. Yet. This is something I'm 
personally quite interested in as well. If this is going to come up a 
lot with your project, I'd be happy if you did some work on this. :)

Concerning references, we have Vidar Svansson in our community, who is 
currently on a summer of code project writing a meta-model for, among 
others, Grok (in the context of Genesis, the next-gen ArchGenXML). I 
invite Vidar to say something about his ideas of what references could 
look like.

We should also definitely look at the zc.relationship package. It's a 
very powerful package that can do a lot of references work. It's low 
level but we should definitely consider this as a basis for any grok 
reference implementation.

Finally, there is RDF. It makes sense if you took a look at how RDF 
models relationships. Not because we want RDF support any time soon, but 
to check whether we aren't leaving out something important.



More information about the Grok-dev mailing list