Changes

Jump to: navigation, search

Gramps XML

1,884 bytes added, 17:52, 22 September 2022
m
See also
{{languages|Gramps XML}}
'''Gramps XML''' is the '''Extensible Markup Language ''' ([http://en.wikipedia.org/wiki/XML XML] ) format designed for storing Gramps data. The goal is to have a fully portable, human- and machine-readable XML format so that the data can be read and written without any loss. In addition, XML format allows for smaller files (if '''compressed''') and for using the version control system for tracking the changes (if '''uncompressed''').
The reason XML is not used by Gramps as the working database ("internal") format is performance, specifically memory considerations.
==Gramps XML Resources==
{{man note|Starting with Gramps XML 1.0, each |Each revision of Gramps XML has its own resource page, with references to that version's [https://en.wikipedia.org/wiki/Document_type_definition DTD ] and [https://en.wikipedia.org/wiki/RELAX_NG RELAX NG ] schema. <br />The resource pages are listed at [http://www.gramps-project.org/xml/ http://www.gramps-project.org/xml/].}}
{| class="wikitable sortable"
!Gramps release
!XML version schema!Imports XML versionschema
!Database
!Example
!Changes/Note
|-
| trunk/master/unstable| Unreleased ''1.6''<br />[http://sourceforge.net/p/gramps/source/ci/master/tree/data/grampsxmlno change against 4.dtd grampsxml.dtd]2 yet| Unreleased <br />''>= 1.0.0 - best 1.5.0''7| 1719| Unreleased <br />[http:{{Code Browser}}//sourceforge.net/p/gramps/source/citree/master/tree/example/gramps/example.gramps example.gramps]
| Unreleased
|}
{{man note|Note: |Commencing with Gramps 3.1.2 all official versions of Gramps XML files can be imported. However, a warning will be given on import of 1.0.0 xmlXML.[http://sourceforge.net/mailarchivep/gramps/mailman/message.php?msg_id=/23262334/<br /><br />'''Note: ''' For versions of Gramps earlier than 3.1.1 refer to and the consult the table below to decide which version to use to import a specific version of the xml, consult the table belowXML.}}
{| class="wikitable sortable"
!Gramps release
!XML version schema!Imports XML versionschema
!Database
!Example
!Changes/Note
|-
| 5.1.x
| 1.7.0 - 1.7.1
| >= 1.0.0 - 1.7
| 19
|[{{Code Browser}}/tree/maintenance/gramps51/example/gramps/example.gramps]
|
* DB-API (SQLite) is default backend
* BSDDB is Legacy backend
|-
| 5.0.x
| 1.7.0 - 1.7.1
| >= 1.0.0 - 1.7
| 19
|[{{Code Browser}}/tree/maintenance/gramps50/example/gramps/example.gramps]
|
* Database backends become plugins
* BSDDB is default, convert default handle (metadata) to str
* DB-API (SQLite) is tested as viable replacement
|-
| 4.2.x
| 1.7.0 - 1.7.1
| >= 1.0.0 - 1.7
| 18
|[{{Code Browser}}/tree/maintenance/gramps42/example/gramps/example.gramps]
|
* Added PlaceNames (with Date and Language) Place
|-
| 4.1.x
| 1.6.0
| >= 1.0.0 - best 1.5.0'1
| 17
| [http:{{Code Browser}}/tree/sourceforge.net/p/grampsmaintenance/source/ci/master/treegramps41/example/gramps/example.gramps]
|
* added Tags to Event, Place, Repository, Source, and Citation
* Source/Citation.data became SourceAttributes
* added optional support for checksum on Media object
* added PlaceRef and Place Hierarchies
|-
|4.0.x
|1.5.0 - 1.5.1
| >= 1.0.0 - best 1.4.0
|16
|[http:{{Code Browser}}//svn.code.sf.net/p/gramps/code/branchestree/maintenance/gramps40/example/gramps/example.gramps]|-
|-
|3.4.x
|1.5.0- 1.5.1
| >= 1.0.0 - best 1.4.0
|16
|[http://svn.code.sf.net{{Code Browser}}/p/gramps/code/branchestree/maintenance/gramps34/example/gramps/example.gramps]|* Citations support<br />* Gramps XML is now idempotent[http://en.wikipedia.org/wiki/Idempotence].{{bug|4365}}<br />* Exporter does not change records order any more, making it easier to look at differences between versions/revisions.
|-
|3.3.x
| >= 1.0.0 - best 1.3.0
|15
|[http:{{Code Browser}}//svn.code.sf.net/p/gramps/code/branchestree/maintenance/gramps33/example/gramps/example.gramps]|[http:* Added new field "locality" to the Place schema* Added surnames to the Name schema (surnames is a list of surnames /prefix and patronymic are moved to the surname)* Replaced Markers with Tags ( marker removed from all /www.gramps-project.orgtags added to Person, Media, Family, and Notes)* Transaction* Merging* Improvements on Import/wiki/index.php?title=Export file formats (vcard, gedcom, xml)* [[Gramps_3.3_Wiki_Manual_-_What%27s_new%3F#Database Changes]]
|-
|3.1.x
| >= 1.0.0 - best 1.1.0
|15
|[http:{{Code Browser}}//svn.code.sf.net/p/gramps/code/branchestree/maintenance/gramps31/example/gramps/example.gramps]
|
* Added lat/long to places
|-
|3.0.x
| >= 1.1.0
|14
|[http:{{Code Browser}}//svn.code.sf.net/p/gramps/code/branchestree/maintenance/gramps30/example/gramps/example.gramps]| * added newyear to Dates<br />* Replace plain text with StyledText in Notes
|-
|2.2.x
|1.1.0-1.1.4
| >= 0.0.0
|13|[http:{{Code Browser}}//svn.code.sf.net/p/gramps/code/branchestree/maintenance/gramps22/example/gramps/data.gramps]
|
|-
| >= 0.0.0
|13
|[http:{{Code Browser}}//svn.code.sf.net/p/gramps/code/branchestree/maintenance/gramps20/gramps2/example/gramps/data.gramps]| * changed name formats
|-
|1.0.x
| -
|
|[http://svn.code.sf.net/p{{Code Browser}}/gramps/code/branchestree/maintenance/gramps10/example/gramps/data.gramps]|(Install [https://github.com/gramps-project/gramps/releases/tag/v2.2.10 Gramps 2.2.10] to import and convert old beta Gramps XML backups - see [[Gramps_Old_database]] & issue {{bug|6129}})
|-
|0.0.x
|}
{{man note|Note: |To convert an old Gramps XML file you could use VirtualBox or Vmware and the old lgenealogy images from: <br><code>http://ftp.gwdg.de/pub/linux/gramps/</code>}}
===DTD generation===
===RELAX NG generation===
Tools like [http://code.google.com/p/jing-trang/ trang] or [http://people.apache.org/~andyc/neko/doc/dtd/index.html NekoDTD] could help to convert a Gramps DTD file to a RELAX NG file.
Some others tools and up-to-date informations (''2010-09-19'') are listed on this [http://www.relaxng.org/ page].
==Validating Gramps XML file==
xmllint --noout filename.gramps
{{man warn|If the Gramps XML file does not validate, |this indicates an error in either the DTD or the XML Writer. <br>'''Please file the bug report at http://bugs.gramps-project.org in that case.'''}}
==Parsing Gramps XML file==
* [[Xsl|XSLT]] scripts: [http://www.gramps-project.org/grampsExhibit/0.0.2/grampsexhibit.xsl gramps exhibit] (Michiel Nauta), [[media:Ancestors.xsl.gz|Ancestors.xsl]], [[media:Birthday.xsl.gz|Birthday.xsl]] (Gramps 1.x), [[media:Tellico.tar.gz|Tellico scripts]], [[Lxml_GrampletAddon:Lxml Gramplet|lxml gramplet]], [http://sourceforge.net/mailarchive/message.php?msg_id=28108782 Print Notes], etc ... see [[media:Xpaths.gz|XPaths]].
* A [http://svn.code.sf.net/p/gramps-addons/code/trunk/contrib/DescendantsLines/ft.py sample of standalone script] (Adam Sampson) which parses a Gramps XML file for drawing a family tree.
* [[Other_genealogy_tools#Gramps-php-exporter|Gramps-php-exporter]]
* A [http://sourceforge.net/projects/joomlagen/ Joomla! component/module] for uploading the Gramps XML database and for showing genealogical information and overviews.
* [http://www.phpgedview.net PhpGedView] supports [http://phpgedview.svn.sourceforge.net/viewvc/phpgedview/trunk/phpGedView/includes/classes/class_grampsexport.php simple output to Gramps XML file format] for the Clippings Cart and has an option to download entire Gedcom in Gramps XML form as well as being able to retrieve raw data from the SOAP web service in Gramps XML format. Still a [http://sourceforge.net/projects/phpgedview/forums/forum/185166/topic/5177979 partial support on version 4.3.0].
* [http://en.wikipedia.org/wiki/Greasemonkey Greasemonkey] scripts (Michiel Nauta)* GrampsXMLview was a number of PHP scripts in combination with a Gramps XML database (Sjoerd van Staveren). [https://web.archive.org/web/20120220103003/http://www.gramps.van-staveren.net/ GrampsXMLview2012 www.gramps.van-staveren.net Internet Archive]* [https://github.com/claws/gramps2gource gramps2gource] is a number of PHP scripts in combination with a Gramps XML databasefor blurring the line between Genealogy and Software Configuration Management visualisation.
* ...
==See also==
* [https://gramps.discourse.group/t/auxiliary-xml-format-documentation/2800 Auxiliary XML files in Gramps]:
** filters: custom_filters.xml
** report settings: report_options.xml
** Books: books.xml
** holiday sets or country calendars: [[Calendar_tools_holidays#format_of_holidays.xml|holidays.xml]]
* [[Generate XML]]
* Tutorial: [[Customize_reports_with_XML_tool|Customize reports with XML tool]]
* [[GEDCOM]]
* [[Gramps and GEDCOM]]
* [[Database_Formats]]
* [[Gramps Old database]]
* [[Previous releases of Gramps]]
[[Category:Developers/Reference]]
[[Category:Developers/General]]
4,529
edits

Navigation menu