11# Model configuration
2- In ** config/model** are the configuration files which are responsible for
3- model relations, display, forms and similar. The main motivation for this
4- approach is to speed up development and make it easier to understand the
5- system.
2+
3+ Within the OpenAtlas source code configuration files, which determine model
4+ relations, display, forms and the like, can be found in ** config/model** .
5+ The main motivation for this approach is to speed up development and make
6+ it easier to understand the system.
67
78Changes can be made to test different setups, but we strongly advice against
89implementing changes for productive environments because:
910
10- * There may be conflicts with future OpenAtlas versions, especially because
11- this approach is relatively new and will be subject to changes.
11+ * There may be conflicts with future OpenAtlas versions, as this approach is
12+ relatively new and will be subject to changes.
1213* Currently, there are no check or validation functions for the configuration
13- * Even if changes appear to work, they might cause unwanted
14- side effects in the application, API or presentation sites.
14+ * Even if changes appear to work, they might cause unwanted side effects in
15+ the application, API or presentation sites.
1516
16- A better approach would be to test needed changes and then tell us about
17- it. In case we implement suggested changes, it would mitigate the
18- issues mentioned above.
17+ A better approach would be to test needed changes and then tell us about it.
18+ In case we implement suggested changes, it would mitigate the issues mentioned
19+ above.
1920
2021# Functionality
21- With changes in the config files it is possible to:
22- * Add, change or remove entity classes and their relations
23- * Determine modes of linking, e.g. if relations are edited directly at an
24- entity form or via tabs
22+
23+ Changes in the config files allow you to:
24+
25+ * Add, change, or remove entity classes and their relations
2526* Change display details like labels and the order of shown items, e.g. tabs
2627
2728# Limitations
28- * It is not possible to add new classes via the config alone. This would also
29- require database adaptions.
30- * Although it is possible to define none CIDOC conform relations they will fail
31- because of additional checks in the user interface.
29+
30+ * It is not possible to add new classes via the config alone, as this requires
31+ database adaptations. * Non- CIDOC-conformant relations can be defined in the
32+ file, but they will fail because of additional user- interface checks .
3233
3334# File structure
35+
3436* ** class_groups.py** - configuration for grouping classes, e.g. person and
3537group will be displayed together in "actor" sections at overviews
3638* ** model.py** - used for class instantiation
3739* ** classes** folder - detailed configuration of individual OpenAtlas classes
3840
39- # Class configuration structure
41+ # ** Class configuration structure**
42+
4043Description of the structure for classes used in the classes directory.
44+
4145* ** label** - optional (default = class name)
4246* ** attributes**
4347 * ** values** : name, alias, dates, location, description
4448 * ** options** : label, required, annotated (only for description)
4549* ** relations** - the order affects display of entity views and forms
4650 * ** label** - optional (default = relation name)
4751 * ** classes** - a list of related OpenAtlas classes
48- * ** property** - the CIDOC property used to link them
52+ * ** property** - the CIDOC property used to link classes
4953 * ** inverse** - link direction (default = False)
50- * ** required** - if possible to remove (default = False)
54+ * ** required** - if link is required (default = False)
5155 * ** multiple** - if multiple connections are possible (default = False)
5256 * ** mode**
5357 * ** direct** - editable at the entity form
5458 * ** tab** - editable via tabs (default)
55- * ** add_dynamic** - if types can be added dynamically (default = False)
59+ * ** add_dynamic** - determines if types can be added dynamically
60+ (default = False)
5661 * ** type** - special case to add a type to the link, e.g. involvement
5762 * ** additional_fields** - special cases to add link information
5863 * ** dates**
5964 * ** description**
6065 * ** page** - like description, used for references
6166 * ** tooltip** - shown in entity form if mode is direct
6267 * ** tab** - display options if shown via tabs
63- * ** columns** - columns shown for related entities,
64- optional (default = standard columns)
68+ * ** columns** - columns shown for related entities, optional
69+ (default = standard columns)
6570 * ** buttons**
6671 * ** link** - link to existing entities
6772 * ** insert** - insert a new entity and link automatically
@@ -80,13 +85,13 @@ Description of the structure for classes used in the classes directory.
8085 * ** insert_continue_human_remains** - continue with entering human remains
8186 * ** additional_tabs**
8287 * ** note** - possibility to add notes
83- * ** person_place** - special function to show event places at an actor
84- * ** place_person** - special function to show actors of events at a place
88+ * ** person_place** - show event places at an actor view
89+ * ** place_person** - show involved actors of events at a place view
8590 * ** additional_information** - labels can be set optionally
8691 * ** file_size** - used for files
8792 * ** file_extension** - used for files
88- * ** type_information** - show additional infor for types, e.g. the id for
89- imports and if selectable
93+ * ** type_information** - show additional information for types, e.g. the id
94+ for imports and if selectable
9095 * ** network_color** - color of entities in the backend network visualisation
9196* ** extra**
9297 * ** reference_system** - possibility to configure to add external reference
0 commit comments