227
edits
(→Ideas) |
|||
Line 5: | Line 5: | ||
== Character Relations Graph (2. Approach) == | == Character Relations Graph (2. Approach) == | ||
'''Note''': This model may not be | '''Note''': This model may not be project-able to the current model in use. | ||
The idea presented here tries to represent character relations completely text based without the help of any images which contain graphs. | The idea presented here tries to represent character relations completely text based without the help of any images which contain graphs. | ||
Instead of trying to generate a simple view over the complete dataset, this approach will use many simple views. | Instead of trying to generate a simple view over the complete dataset, this approach will use many simple views. | ||
Line 19: | Line 20: | ||
* If graph simple enough, fallback to different simpler view? | * If graph simple enough, fallback to different simpler view? | ||
=== Global View === | ==== Global View ==== | ||
* Layered: Each relation type is displayed in one (separate) layer | * Layered: Each relation type is displayed in one (separate) layer | ||
* Each layer has a (can) have a more specialized model/view | * Each layer has a (can) have a more specialized model/view | ||
* Prefer small graphs, i.e. A family view should only contain its immediate Members (Parents, Children, etc.) | |||
** Some entities have to shown more than once | |||
=== Local View === | ==== Local View ==== | ||
* Convert each relation model to a single graph | * Convert each relation model to a single graph | ||
* A cursor which moves upon that graph | * A cursor which moves upon that graph | ||
Line 29: | Line 32: | ||
* Switching cursor position replaces the selected items and with the new cursor entity | * Switching cursor position replaces the selected items and with the new cursor entity | ||
=== Models === | |||
* Each relation type has exactly one model | |||
* The model is used to describe the relationtype as concise as possible | |||
* Model also has to define how its data is (de)serialized | |||
** Relational Database as storage (Anime_EntityEntityRelation.RelationId as Primary Key) | |||
* Avoid complex structures | |||
** No reference to other models allowed | |||
=== Prerequisites === | |||
(Assumed) Global DB Tables: | |||
* Anime(<u>Id</u>, ...) | |||
* Entity(<u>Id</u>, EntityType, GuiseId, Name, ...) | |||
** ⊇ Character(<u>Id</u>, Gender, DateOfBirth, DateOfDeath, Age, ...) | |||
** ⊇ Organisation(<u>Id</u>, ...) | |||
** ⊇ Vessel(<u>Id</u>, ...) | |||
** ⊇ Mecha(<u>Id</u>, ...) | |||
* EntityGuise(<u>EgoId</u>, <u>GuiseOfId</u>) | |||
* Anime_EntityEntityRelation(<u>AId</u>, <u>RelationType</u>, RelationId) | |||
** Anime_EntityEntityRelation.RelationId as Primary Key for Relation Models | |||
** Each model has its own tables | |||
** The usage is defined by each model/view pair | |||
== Character Relations Graph (Abandoned) == | == Character Relations Graph (Abandoned) == |
edits