Difference between revisions of "Gramps Data Model"

From Gramps
m (See also)
m (languages bar)
 
(6 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{man note|Gramps data model (v4.1)}}
+
{{languages|Gramps Data Model}}
 +
{{man note|Gramps data model (v5.2)}}
  
 
Gramps uses the pickle module to serialise object hierarchies and store them in the database.
 
Gramps uses the pickle module to serialise object hierarchies and store them in the database.
Line 6: Line 7:
 
* 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, there is a minor `PlaceName` objects change in 4.2 to contain a string, language code and date range.
+
The [[GEPS_045:_Place_Model_Enhancements|Places Model Enhancements]] planned for v5.3 are expected to have deeper changes.  [[GEPS_045:_Place_Model_Enhancements#Documentation|One target for that Gramps Proposal]] includes this documentation.  
 
 
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.  
 
  
 
Primary objects are coloured blue.  Secondary objects are coloured black.  The dotted lines enclose object hierarchies that are stored in 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.
  
  
[[File:GrampsDataModel.svg|1024px]]
+
[[File:GrampsDataModel_03.svg|1024px]]
  
 
== See also ==
 
== See also ==
 
* [[Using database API|Programmer'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]<br />[[File:API.svg|3 revisions]] Created using the following command: <code>pyreverse -A -S $HOME/gramps/tree/master/gramps/gen/lib/*.py -o jpeg</code>
+
** [https://gramps-project.org/wiki/index.php/File:GrampsDataModel.svg 4.1 version of this Gramps Data Model] (2014)
 +
** [https://gramps-project.org/wiki/images/2/2e/API.svg  UML (svg) diagram for Gramps 4.1.x API]<br />[[File:API.svg|3 revisions]] Created using the following [https://pylint.readthedocs.io/en/latest/pyreverse.html PyLint] 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]]

Latest revision as of 01:48, 28 September 2024

Gramps-notes.png
Gramps data model (v5.2)

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

Details of the pickle module can be found here:

The Places Model Enhancements planned for v5.3 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 03.svg

See also