Difference between revisions of "Gramps Data Model"

From Gramps
Jump to: navigation, search
m (validate 4.1 model for 5.1 version)
m (See also)
(7 intermediate revisions by 4 users not shown)
Line 6: Line 6:
 
* https://docs.python.org/3/library/pickle.html
 
* https://docs.python.org/3/library/pickle.html
  
Below is a diagram of the Gramps data model (v4.1). As of October 2020, this model is reported to be valid for the v5.1 of Gramps. However, the v5.2 is expected to change from strings in `PlaceName` objects to contain a string, language code and date range.
+
Below is a diagram of the Gramps data model (v4.1). As of October 2020, this model is reported to be valid for the v5.1 of Gramps. However, there is a minor `PlaceName` objects change in 4.2 to contain a string, language code and date range.  
  
Primary objects are coloured blue.  Secondary objects are coloured black.  The dotted lines enclose object hierarchies that are stored in
+
The [[GEPS_045:_Place_Model_Enhancements|Places Model Enhancements]] planned for v5.2 are expected to have deeper changes.  [[GEPS_045:_Place_Model_Enhancements#Documentation|One target for that Gramps Proposal]] includes this documentation.
the database tables.
+
 
 +
Primary objects are coloured blue.  Secondary objects are coloured black.  The dotted lines enclose object hierarchies that are stored in the database tables.
  
  
Line 15: Line 16:
  
 
== See also ==
 
== See also ==
* [[Using database API|Prgrammer's Introduction to the Gramps database API]]
+
* [[Using database API|Programmer's Introduction to the Gramps database API]]
 
** [https://gramps-project.org/wiki/images/2/2e/API.svg  UML (svg) diagram for Gramps 4.1.x API]
 
** [https://gramps-project.org/wiki/images/2/2e/API.svg  UML (svg) diagram for Gramps 4.1.x API]
 +
*** Created using the following command: <code>pyreverse -A -S $HOME/gramps/tree/master/gramps/gen/lib/*.py -o jpeg</code>
 
* [https://sourceforge.net/p/gramps/mailman/message/32882646/ Gramps data model] - discussion
 
* [https://sourceforge.net/p/gramps/mailman/message/32882646/ Gramps data model] - discussion
 
* [[GEPS_013:_Gramps_Webapp#Model_overview|GEPS_013: Gramps Django Webapp:Model overview]]
 
* [[GEPS_013:_Gramps_Webapp#Model_overview|GEPS_013: Gramps Django Webapp:Model overview]]
 
* {{bug|10851}} : Gramps Data Model - Polish Version - Gramps 5.0.0
 
* {{bug|10851}} : Gramps Data Model - Polish Version - Gramps 5.0.0
 +
* More graphs available, see [https://gramps.discourse.group/t/core-classes-in-gramps-gen-lib/2241 posts on discourse].
  
 
[[Category:Developers/General]]
 
[[Category:Developers/General]]
 
[[Category:Developers/Reference]]
 
[[Category:Developers/Reference]]
 
[[Category:GEPS]]
 
[[Category:GEPS]]

Revision as of 08:39, 19 February 2022

Gramps-notes.png
Gramps data model (v4.1)

Gramps uses the pickle module to serialise object hierarchies and store them in the database.

Details of the pickle module can be found here:

Below is a diagram of the Gramps data model (v4.1). As of October 2020, this model is reported to be valid for the v5.1 of Gramps. However, there is a minor `PlaceName` objects change in 4.2 to contain a string, language code and date range.

The Places Model Enhancements planned for v5.2 are expected to have deeper changes. One target for that Gramps Proposal includes this documentation.

Primary objects are coloured blue. Secondary objects are coloured black. The dotted lines enclose object hierarchies that are stored in the database tables.


GrampsDataModel.svg

See also