Difference between revisions of "Gramps Data Model"

From Gramps
(as per Nick http://gramps.1791082.n4.nabble.com/Serialize-and-Pickle-tp4675852p4675864.html)
m (languages bar)
 
(23 intermediate revisions by 7 users not shown)
Line 1: Line 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 4: 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)
+
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.  
  
Primary objects are coloured blue.  Secondary objects are coloured black.  The dotted lines enclose object hierarchies that are stored in
+
Primary objects are coloured blue.  Secondary objects are coloured black.  The dotted lines enclose object hierarchies that are stored in the database tables.
the database tables.
 
  
  
[[File:GrampsDataModel.svg|1024px]]
+
[[File:GrampsDataModel_03.svg|1024px]]
  
 
== See also ==
 
== See also ==
* [http://gramps.1791082.n4.nabble.com/Gramps-data-model-td4667350.html Gramps data model] - discussion
+
* [[Using database API|Programmer's Introduction to the Gramps database API]]
* [[Using database API|Using Gramps database API]]
+
** [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) 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]<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
 
* [[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
 +
* More graphs available, see [https://gramps.discourse.group/t/core-classes-in-gramps-gen-lib/2241 posts on discourse].
 +
* [[History_of_Gramps|History of Gramps]]
 +
* [[Database_Formats|Database formats]]
  
 
[[Category:Developers/General]]
 
[[Category:Developers/General]]
 +
[[Category:Developers/Reference]]
 
[[Category:GEPS]]
 
[[Category:GEPS]]

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