[eluser]xwero[/eluser]
Colin don't you agree in spite of many ways to come to a solution the base of the solution is the same. The problem now if you want to go from one solution to another you have to change tables wouldn't it be better you are able to salvage the data that is already gathered to make the new solution work.
I can understand your view that a contribution should be as flexible as possible but there are things you can't solve by having a flexible api because the solutions are too different. If you create a base structure, which as a developer you can honour or not, can make it easier for others to come up with other solutions or go from one solution to another.
If i follow your train of though then there shouldn't be abstract classes and interfaces in php, or any other programming language.