Good morning, I am trying to use grids instead of lists to represent hierarchical data.
Lists have the defect of not displaying the name of the fields and this limits them in representing non-self explanatory data. Typically, fields representing numbers create obvious and ineradicable confusion (height, width, length for example). Going over the cell with the mouse makes the field name explicit, but it is an inconvenient solution.
Tables, as is well known, are a flat structure unsuitable for representing hierarchical data.
You have opted for a grid object, more advanced and complex than a table, which is a kind of hybrid between a table and a list and which in theory should represent hierarchies without running into the limitations of lists, that is, displaying field names and thus solving the problem of the lack of clarity of lists.
In reality this is not the case.
Let us take two databases: books and book references. The two databases have different fields. For the books database we have: title (name), author, publisher, language, year of publication, format, number of pages, and we are already at 7 fields, but many more can be added. For the book reference database we have: title (name), and this first field is superimposable on the book title field (i.e., it is in the same column), topic, importance, reliability, difficulty, start page, end page, and we are already at 7 fields different from the book database.
Where do we put the 7 fields in the second database?
From left to right do we put the fields from the book database and then on the tail those from the child database references?
But doing it this way doesn’t fit! I am sorry but that is not the solution.
Here are the two databases represented with lists:
And here instead is the representation with grids:
As you can see between the two options, the first one, although unsatisfactory, is preferable and all in all more readable, once you know the names of the fields (by mousing over the ones you don’t understand).
Then let’s not talk about adding additional child databases, which is absolutely impractical with grids.
The only case where grids win is with self-joins, so hierarchical databases where the child database and the parent database are the same. It works because the fields are the same and the highlighted problem is not created.
What solution should you adopt to solve the flaw that lists have? I remember last year suggesting this. The most viable solution is the one pioneered in Microsoft Access of sub-sheets in tables, nesting the data. It is the only one that can work. I couldn’t tell you if there are web objects that replicate this functionality.
Here is an example taken from the web.
Regards.