How is this module different from Nodehierarchy, and CCK Nodereference, as discussed at http://drupal.org/node/189583 ?

Comments

Steve Lockwood’s picture

There are several modules doing this job and they all do it slightly differently.

My requirement was to be able to create a linked set of nodes in order to deliver training material.
Course 101:
- Module 101-01
- - Page
- - Page
- Module 101-02
etc

Node Relativity did not appear to have a stable version for Drupal 6 (and was looking for maintainers). The other problem with Relativity is that the child nodes did not seem to be ordered, which is important if you are delivering learning material.

Node Hierarchy is much closer to my requirement:
- it is more flexible with the relationships
- the user interface is nice - nice input screens and the breadcrumb trail looks very good
The big disadvantage (for me) was that a child could have only one parent. Ie all relationships are 1-many. I wanted to be able to have many-many (eg where a module is used on more than one course).

I haven't looked at CCK Nodereference.

Node2Node is a bit stricter than Node Hierarchy in some ways and more flexible in others:
- Defining relationships: N2N lets you specify a relationship between specific node types. NH lets you says that a node type can be a parent (of anything that can be a child). NRel is also very specific about node types.
- Cardinality (is that the right word?): N2N allows many-many. NH allows 1-many. NRel is even more specific, letting you specify 1:1, 1-many, many-many etc
- Sequence: N2N and NH both allow to you to put the child nodes in a specific order. NRel does not seem to specify order.
- Display: N2N displays the parent and child nodes on the View screen. NH puts the parent node in the breadcrumb and the child nodes in a separate tab. (Not sure about NRel)
- Edit: N2N integrates the editing of relationships into the main Edit screen. NH uses a separate tab. (Have to say I'm still working on this and may add other ways of creating relationships later.) (Not sure about NRel.)
- Named relationships: N2N relationships are named (Parent "owns" Child, Child "belongs to" Parent) - you can configure the names for each relationship. Don't think the others have this feature.

So that's your answer - they are all the same, but different!

I hope this helps. I'd be interested in your views - while I have a specific requirement in mind and that has to take priority, I would be open to extending the functionality if it's of use to others.

Steve

add1sun’s picture

You should put this description up on the project page to help people out.

Steve Lockwood’s picture

Status: Active » Fixed

Good point

Anonymous’s picture

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for two weeks with no activity.

ckng’s picture

Just some notes on NRel which are inaccurate

- Sequence: NRel can specify order through the Advance Setting local task (admin/settings/relativity/advanced)

- Display: NRel can customize its parent & children display Display Setting local task (admin/settings/relativity/display), has rendering options for title and body (for both parent & children)

- Edit: NRel edit relationship through its admin screen. Default editing of children node types is through Link Operation. Editing/adding nodes together with their children node types is possible through Related Subform.

- Named relationships: NRel can configure the names for relationship globally, not for each relationship.