Here is my proposed draft for a data model for BetterGEDCOM (BG). This model is also not complete.
I am also using Adrian's terminaology. It is:
- Entity Types - the types of things that we talk about;
- Entities - the actual, individual things that we talk about;
- Attributes - the properties of the entities;
- Relationships - the ways in which entities may be linked.
The term "Entity" refers to a class of objects, such as automobile is an entity type. A 2010 Kansas City Chiefs red corvette is an actual Entity or also known as an instance.
I would prefer a different term for relationship, but I'd much prefer we develop a commmon ground in terms. Plus, it is trhe standard term in programmer speak.
I don't fear many-to-many relationships in a data model. They can be useful, but any relational data storage will inevitably resolve them .
This is my proposed list (so far):
- stub (sort of). I'm not sure of the usefulness of this. To me it is a place. Maybe we add a field "REPOSITORY" which is true or false to PLACE entity.
Please feel free to mark up this or any of the children pages, and also make comments on it. I'm putting this here to start up the conversation of what is needed by the data model.