Lossless GEDCOM Export

From Gramps
Revision as of 22:59, 10 October 2019 by Nick H (talk | contribs) (Note)
Jump to: navigation, search

Introduction

This page has been created to explore the custom tags necessary to create a lossless GEDCOM export. It is a work in progress.

Person

Add:

+1 <<EVENT_LINK>>                             {0:M}
+1 _PRIV Y                                    {0:1}
 PERSONAL_NAME_PIECES:=
 n NPFX <NAME_PIECE_PREFIX>                    {0:1}
 n GIVN <NAME_PIECE_GIVEN>                     {0:1}
 n NICK <NAME_PIECE_NICKNAME>                  {0:1}
 n SPFX <NAME_PIECE_SURNAME_PREFIX>            {0:1}
 n SURN <NAME_PIECE_SURNAME>                   {0:M} *
   +1 _TYPE <NAME_PIECE_ORIGIN_TYPE>           {0:1} *
   +1 _SPFX <NAME_PIECE_SURNAME_PREFIX>        {0:1} *
   +1 _SSFX <NAME_PIECE_SURNAME_SUFFIX>        {0:1} *
   +1 _SCON <NAME_PIECE_SURNAME_CONNECTOR>     {0:1} *
 n NSFX <NAME_PIECE_SUFFIX>                    {0:1}
 n _RUFNAME                                    {0:1} *
 n _FAMNICK                                    {0:1} *
 n _GROUP_AS                                   {0:1} *
 n _SORT_AS                                    {0:1} *
 n _DISPLAY_AS                                 {0:1} *
 n _DATE                                       {0:1} *
 n _PRIV Y                                     {0:1} *
 n <<NOTE_STRUCTURE>>                          {0:M}
 n <<SOURCE_CITATION>>                         {0:M}
 CHILD_TO_FAMILY_LINK:=
 n FAMC <XREF:FAM>				{1:1}
   +1 PEDI <PEDIGREE_LINKAGE_TYPE>		{0:1}
   +1 <<NOTE_STRUCTURE>>			{0:M}
   +1 _FREL					(0:1} *
   +1 _MREL					(0:1} *
   +1 _PRIV Y					{0:1} *
   +1 <<SOURCE_CITATION>>			{0:M} *

Event

 ATTRIBUTE_STRUCTURE:=
 n _ATTR <ATTRIBUTE_VALUE>                     {1:1}
   +1 TYPE <ATTRIBUTE_VALUE>                   {0:1}
   +1 <<NOTE_STRUCTURE>>                       {0:M}
   +1 <<SOURCE_CITATION>>                      {0:M}
   +1 _PRIV Y                                  {0:1}
 EVENT_RECORD:=
 n <XREF:_EVNT> _EVNT				{1:1}
   +1 <<EVENT_DETAIL>>				{0:1}
   +1 <<ATTRIBUTE_STRUCTURE>>			{0:M}
   +1 <<CHANGE_DATE>>				{0:1}
   +1 _PRIV Y					{0:1}
 EVENT_LINK:=
 n _EVNT <XREF:_EVNT>				{1:1}
   +1 ROLE <ROLE_IN_EVENT>			{1:1}
   +1 <<ATTRIBUTE_STRUCTURE>>			{0:M}
   +1 <<NOTE_STRUCTURE>>			{0:M}
   +1 _PRIV Y					{0:1}

Family

Add:

 +1 <<EVENT_LINK>>                             {0:M}
 +1 <<ATTRIBUTE_STRUCTURE>>                    {0:M}
 +1 _PRIV Y                                    {0:1}

Place

Use the _LOC structure defined in the GEDCOM-L specification.

Media

 MULTIMEDIA_RECORD:=
 n <XREF:OBJE> OBJE                            {1:1}
   +1 FILE <MULTIMEDIA_FILE_REFERENCE>         {1:1}
     +2 FORM <MULTIMEDIA_FORMAT>               {1:1}
       +3 TYPE <SOURCE_MEDIA_TYPE>             {0:1}
     +2 TITL <DESCRIPTIVE_TITLE>               {0:1}
   +1 REFN <USER_REFERENCE_NUMBER>             {0:M}
     +2 TYPE <USER_REFERENCE_TYPE>             {0:1}
   +1 RIN <AUTOMATED_RECORD_ID>                {0:1}
   +1 <<NOTE_STRUCTURE>>                       {0:M}
   +1 <<SOURCE_CITATION>>                      {0:M}
   +1 <<CHANGE_DATE>>                          {0:1}
   +1 <<ATTRIBUTE_STRUCTURE>>                  {0:M} *
   +1 _PRIV Y                                  {0:1} *
 MULTIMEDIA_LINK:=
 n OBJE <XREF:OBJE>                            {1:1}
   +1 _RECT x1 y1 x2 y2                        {0:1} *
   +1 <<ATTRIBUTE_STRUCTURE>>                  {0:M} *
   +1 <<NOTE_STRUCTURE>>                       {0:M} *
   +1 <<SOURCE_CITATION>>                      {0:M} *
   +1 _PRIV Y                                  {0:1} *

Note

 NOTE_RECORD:=
 n <XREF:NOTE> NOTE <USER_TEXT>                {1:1}
   +1 REFN <USER_REFERENCE_NUMBER>             {0:M}
     +2 TYPE <USER_REFERENCE_TYPE>             {0:1}
   +1 RIN <AUTOMATED_RECORD_ID>                {0:1}
   +1 <<SOURCE_CITATION>>                      {0:M}
   +1 <<CHANGE_DATE>>                          {0:1}
   +1 _TYPE <NOTE_TYPE>                        {0:1} *
   +1 _STYLE <STYLE_TYPE>                      {0:M} *
     +2 _VALUE <STYLE_VALUE>                   {0:1} *
     +2 _RANGE <STYLE_RANGE>                   {1:1} *
   +1 _PREFORMAT Y                             {0:1} *
   +1 _PRIV Y                                  {0:1} *