1 /* 2 * "GEDKeeper", the personal genealogical database editor. 3 * Copyright (C) 2009-2019 by Sergey V. Zhdanovskih. 4 * 5 * This file is part of "GEDKeeper". 6 * 7 * This program is free software: you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License as published by 9 * the Free Software Foundation, either version 3 of the License, or 10 * (at your option) any later version. 11 * 12 * This program is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Public License for more details. 16 * 17 * You should have received a copy of the GNU General Public License 18 * along with this program. If not, see <http://www.gnu.org/licenses/>. 19 */ 20 21 namespace GDModel.Providers.GEDCOM 22 { 23 public enum GEDCOMTagType 24 { 25 Unknown, 26 27 // Record's tags (don't change the order of the items, because its used to cast) 28 INDI, // Individual [std] 29 FAM, // Family [std] 30 NOTE, // Note [std] 31 OBJE, // Multimedia [std] 32 SOUR, // Source [std] 33 REPO, // Repository [std] 34 _GROUP, // Group [GK] 35 _RESEARCH, // Research [GK] 36 _TASK, // Task [GK] 37 _COMM, // Communication [GK] 38 _LOC, // Location [GEDCOM 5.5EL] 39 SUBN, // Submission [std] 40 SUBM, // Submitter [std] 41 42 // Other tags 43 ABBR, 44 ADDR, 45 ADOP, // INDI.EVEN 46 ADR1, 47 ADR2, 48 ADR3, 49 AFN, // AncestralFileNumber 50 AGNC, 51 ALIA, 52 ANCE, 53 ANCI, 54 ANUL, // FAM.EVEN 55 ASSO, 56 AUTH, 57 BAPL, 58 BAPM, // INDI.EVEN 59 BARM, // INDI.EVEN 60 BASM, // INDI.EVEN 61 BIRT, // INDI.EVEN 62 BLES, // INDI.EVEN 63 BURI, // INDI.EVEN 64 CAST, // INDI.ATTR 65 CAUS, 66 CENS, 67 CHAN, 68 CHAR, 69 CHIL, 70 CHR, // INDI.EVEN 71 CHRA, // INDI.EVEN 72 CITY, 73 CONC, 74 CONF, // INDI.EVEN 75 CONL, 76 CONT, 77 COPR, 78 CORP, 79 CREM, // INDI.EVEN 80 CTRY, 81 DATA, 82 DATE, 83 DEAT, // INDI.EVEN 84 DESC, 85 DESI, 86 DEST, 87 DIV, // FAM.EVEN 88 DIVF, // FAM.EVEN 89 DSCR, // INDI.ATTR 90 EDUC, // INDI.ATTR 91 ENDL, 92 EVEN, 93 EMAIL, 94 EMIG, // INDI.EVEN 95 ENGA, // FAM.EVEN 96 FACT, // INDI.ATTR 97 FAMC, 98 FAMF, 99 FAMS, 100 FAX, 101 FCOM, // INDI.EVEN 102 FILE, 103 FONE, 104 FORM, 105 FROM, 106 GEDC, 107 GIVN, 108 GRAD, // INDI.EVEN 109 HEAD, 110 HUSB, 111 IDNO, // INDI.ATTR 112 IMMI, // INDI.EVEN 113 INT, 114 LANG, 115 LATI, 116 LONG, 117 MAP, 118 MARB, // FAM.EVEN 119 MARC, // FAM.EVEN 120 MARL, // FAM.EVEN 121 MARR, // FAM.EVEN 122 MARS, // FAM.EVEN 123 MEDI, 124 NAME, 125 NATI, // INDI.ATTR 126 NATU, // INDI.EVEN 127 NCHI, // INDI.ATTR 128 NICK, 129 NMR, // INDI.ATTR 130 NPFX, 131 NSFX, 132 OCCU, // INDI.ATTR 133 ORDI, 134 ORDN, // INDI.EVEN 135 PAGE, 136 PEDI, 137 PHON, 138 PLAC, 139 POST, 140 PROB, // INDI.EVEN 141 PROP, // INDI.ATTR 142 PUBL, 143 QUAY, 144 REFN, 145 RELA, 146 RELI, // INDI.ATTR 147 RESI, 148 RESN, // Restriction 149 RETI, // INDI.EVEN 150 RFN, // PermanentRecordFileNumber 151 RIN, // AutomatedRecordID 152 ROMN, 153 SEX, 154 SLGC, 155 SLGS, 156 SPFX, 157 SSN, // INDI.ATTR 158 STAE, 159 STAT, 160 SURN, 161 TEMP, 162 TEXT, 163 TIME, 164 TITL, // INDI.ATTR 165 TO, 166 TRLR, 167 TYPE, 168 VERS, 169 WIFE, 170 WILL, // INDI.EVEN 171 WWW, 172 173 // non-standard extended tags 174 _AWARD, // [???] INDI.ATTR 175 _BGRO, // [MyFamilyTree] INDI.ATTR 176 _BOOKMARK, // [GK] 177 _CENN, // Census Name [BKW6] 178 _ELEC, // Election [???] INDI.ATTR 179 _EXCM, // Excommunication [???] INDI.ATTR 180 _EYES, // [Gen] INDI.ATTR 181 _FOLDER, // [GK] 182 _GOAL, // [GK] 183 _GRP, // Group record [Genney] 184 _HAIR, // [BKW6, PAF] INDI.ATTR 185 _HOBBY, // [???] INDI.ATTR 186 _LANG, // [GK], outdated, replaced by LANG 187 _MARN, // Married Surname [BKW6] 188 _MARNM, // Married Surname [AQ3, PAF5, Geni] 189 _MDCL, // Medical condition [???] INDI.ATTR 190 _MDNA, // [MyFamilyTree] INDI.ATTR 191 _MEMBER, // [GK] 192 _MIDN, // Middle Name [WikiTree] 193 _MILI, // [GK] INDI.ATTR 194 _MILI_DIS, // [GK] INDI.ATTR 195 _MILI_IND, // [GK] INDI.ATTR 196 _MILI_RANK, // [GK] INDI.ATTR 197 _OBIT, // Obituary [???] INDI.ATTR 198 _PATN, // Patronymic Name 199 _PATRIARCH, // [GK] 200 _PERCENT, // [GK] 201 _PLAC, // Place/Location record [Family Historian] 202 _PLC, // Place/Location record [Genney] 203 _POSITION, 204 _PRIM, // [PhpGedView, AQ3, PAF5, FO7] 205 _PRIM_CUTOUT, // [FTB] 206 _PRIORITY, // [GK] 207 _RELN, // Religious Name [BKW6] 208 _REV, // [GK] 209 _STARTDATE, // [GK] 210 _STAT, 211 _STATUS, // [GK] 212 _STOPDATE, // [GK] 213 _TRAVEL, // [GK] INDI.ATTR 214 _UID, // 215 _YDNA, // [MyFamilyTree] INDI.ATTR 216 217 // non-standard convertible tags 218 _FREL, // [Ages, FTM/FTW, Legacy, Family Tree Maker] 219 _MREL, // [Ages, FTM/FTW, Legacy, Family Tree Maker] 220 } 221 222 public static class GEDCOMTagName 223 { 224 public const string ABBR = "ABBR"; 225 public const string ADDR = "ADDR"; 226 public const string ADOP = "ADOP"; 227 public const string ADR1 = "ADR1"; 228 public const string ADR2 = "ADR2"; 229 public const string ADR3 = "ADR3"; 230 public const string AFN = "AFN"; // AncestralFileNumber 231 public const string AGNC = "AGNC"; 232 public const string ALIA = "ALIA"; 233 public const string ANCE = "ANCE"; 234 public const string ANCI = "ANCI"; 235 public const string ANUL = "ANUL"; 236 public const string ASSO = "ASSO"; 237 public const string AUTH = "AUTH"; 238 public const string BAPL = "BAPL"; 239 public const string BAPM = "BAPM"; 240 public const string BARM = "BARM"; 241 public const string BASM = "BASM"; 242 public const string BIRT = "BIRT"; 243 public const string BLES = "BLES"; 244 public const string BURI = "BURI"; 245 public const string CAST = "CAST"; 246 public const string CAUS = "CAUS"; 247 public const string CENS = "CENS"; 248 public const string CHAN = "CHAN"; 249 public const string CHAR = "CHAR"; 250 public const string CHIL = "CHIL"; 251 public const string CHR = "CHR"; 252 public const string CHRA = "CHRA"; 253 public const string CITY = "CITY"; 254 public const string CONC = "CONC"; 255 public const string CONF = "CONF"; 256 public const string CONL = "CONL"; 257 public const string CONT = "CONT"; 258 public const string COPR = "COPR"; 259 public const string CORP = "CORP"; 260 public const string CREM = "CREM"; 261 public const string CTRY = "CTRY"; 262 public const string DATA = "DATA"; 263 public const string DATE = "DATE"; 264 public const string DEAT = "DEAT"; 265 public const string DESC = "DESC"; 266 public const string DESI = "DESI"; 267 public const string DEST = "DEST"; 268 public const string DIV = "DIV"; 269 public const string DIVF = "DIVF"; 270 public const string DSCR = "DSCR"; 271 public const string EDUC = "EDUC"; 272 public const string ENDL = "ENDL"; 273 public const string EVEN = "EVEN"; 274 public const string EMAIL = "EMAIL"; 275 public const string EMIG = "EMIG"; 276 public const string ENGA = "ENGA"; 277 public const string FACT = "FACT"; 278 public const string FAM = "FAM"; 279 public const string FAMC = "FAMC"; 280 public const string FAMF = "FAMF"; 281 public const string FAMS = "FAMS"; 282 public const string FAX = "FAX"; 283 public const string FCOM = "FCOM"; 284 public const string FILE = "FILE"; 285 public const string FONE = "FONE"; 286 public const string FORM = "FORM"; 287 public const string FROM = "FROM"; 288 public const string GEDC = "GEDC"; 289 public const string GIVN = "GIVN"; 290 public const string GRAD = "GRAD"; 291 public const string HEAD = "HEAD"; 292 public const string HUSB = "HUSB"; 293 public const string IDNO = "IDNO"; 294 public const string IMMI = "IMMI"; 295 public const string INDI = "INDI"; // IndividualRecord 296 public const string INT = "INT"; 297 public const string LANG = "LANG"; 298 public const string LATI = "LATI"; 299 public const string LONG = "LONG"; 300 public const string MAP = "MAP"; 301 public const string MARB = "MARB"; 302 public const string MARC = "MARC"; 303 public const string MARL = "MARL"; 304 public const string MARR = "MARR"; 305 public const string MARS = "MARS"; 306 public const string MEDI = "MEDI"; 307 public const string NAME = "NAME"; 308 public const string NATI = "NATI"; 309 public const string NATU = "NATU"; 310 public const string NCHI = "NCHI"; 311 public const string NICK = "NICK"; 312 public const string NMR = "NMR"; 313 public const string NOTE = "NOTE"; 314 public const string NPFX = "NPFX"; 315 public const string NSFX = "NSFX"; 316 public const string OBJE = "OBJE"; 317 public const string OCCU = "OCCU"; 318 public const string ORDI = "ORDI"; 319 public const string ORDN = "ORDN"; 320 public const string PAGE = "PAGE"; 321 public const string PEDI = "PEDI"; 322 public const string PHON = "PHON"; 323 public const string PLAC = "PLAC"; 324 public const string POST = "POST"; 325 public const string PROB = "PROB"; 326 public const string PROP = "PROP"; 327 public const string PUBL = "PUBL"; 328 public const string QUAY = "QUAY"; 329 public const string REFN = "REFN"; 330 public const string RELA = "RELA"; 331 public const string RELI = "RELI"; 332 public const string REPO = "REPO"; 333 public const string RESI = "RESI"; 334 public const string RESN = "RESN"; // Restriction 335 public const string RETI = "RETI"; 336 public const string RFN = "RFN"; // PermanentRecordFileNumber 337 public const string RIN = "RIN"; // AutomatedRecordID 338 public const string ROMN = "ROMN"; 339 public const string SEX = "SEX"; 340 public const string SLGC = "SLGC"; 341 public const string SLGS = "SLGS"; 342 public const string SOUR = "SOUR"; 343 public const string SPFX = "SPFX"; 344 public const string SSN = "SSN"; 345 public const string STAE = "STAE"; 346 public const string STAT = "STAT"; 347 public const string SUBM = "SUBM"; 348 public const string SUBN = "SUBN"; 349 public const string SURN = "SURN"; 350 public const string TEMP = "TEMP"; 351 public const string TEXT = "TEXT"; 352 public const string TIME = "TIME"; 353 public const string TITL = "TITL"; 354 public const string TO = "TO"; 355 public const string TRLR = "TRLR"; 356 public const string TYPE = "TYPE"; 357 public const string VERS = "VERS"; 358 public const string WIFE = "WIFE"; 359 public const string WILL = "WILL"; 360 public const string WWW = "WWW"; 361 362 // non-standard extended tags (other applications) 363 public const string _AWARD = "_AWARD"; 364 public const string _BGRO = "_BGRO"; // [MyFamilyTree] 365 public const string _CENN = "_CENN"; // Census Name [BKW6] 366 public const string _ELEC = "_ELEC"; // Election [???] 367 public const string _EXCM = "_EXCM"; // Excommunication [???] 368 public const string _EYES = "_EYES"; // [Gen] 369 public const string _GRP = "_GRP"; // Group record [Genney] 370 public const string _HAIR = "_HAIR"; // [BKW6, PAF] 371 public const string _HOBBY = "_HOBBY"; 372 public const string _LOC = "_LOC"; // [GEDCOM 5.5EL] 373 public const string _MARN = "_MARN"; // Married Surname [BKW6] 374 public const string _MDCL = "_MDCL"; // Medical condition [???] 375 public const string _MDNA = "_MDNA"; // [MyFamilyTree] 376 public const string _OBIT = "_OBIT"; // Obituary [???] 377 public const string _PATN = "_PATN"; // Patronymic Name 378 public const string _PLAC = "_PLAC"; // Place/Location record [Family Historian] 379 public const string _PLC = "_PLC"; // Place/Location record [Genney] 380 public const string _POSITION = "_POSITION"; 381 public const string _PRIM = "_PRIM"; // [PhpGedView, AQ3, PAF5, FO7] 382 public const string _PRIM_CUTOUT = "_PRIM_CUTOUT"; // [FTB] 383 public const string _RELN = "_RELN"; // Religious Name [BKW6] 384 public const string _STAT = "_STAT"; 385 public const string _TRAVEL = "_TRAVEL"; 386 public const string _UID = "_UID"; // 387 public const string _YDNA = "_YDNA"; // [MyFamilyTree] 388 389 // import only 390 public const string _MARNM = "_MARNM"; // Married Surname [AQ3, PAF5, Geni] 391 public const string _MIDN = "_MIDN"; // Middle Name [WikiTree] 392 393 // non-standard extended tags (GEDKeeper) 394 public const string _BOOKMARK = "_BOOKMARK"; 395 public const string _COMM = "_COMM"; 396 public const string _FOLDER = "_FOLDER"; 397 public const string _GOAL = "_GOAL"; 398 public const string _GROUP = "_GROUP"; 399 public const string _LANG = "_LANG"; // [GK], outdated, replaced by LANG 400 public const string _MEMBER = "_MEMBER"; 401 public const string _MILI = "_MILI"; 402 public const string _MILI_DIS = "_MILI_DIS"; 403 public const string _MILI_IND = "_MILI_IND"; 404 public const string _MILI_RANK = "_MILI_RANK"; 405 public const string _PATRIARCH = "_PATRIARCH"; 406 public const string _PERCENT = "_PERCENT"; 407 public const string _PRIORITY = "_PRIORITY"; 408 public const string _RESEARCH = "_RESEARCH"; 409 public const string _REV = "_REV"; 410 public const string _STARTDATE = "_STARTDATE"; 411 public const string _STOPDATE = "_STOPDATE"; 412 public const string _STATUS = "_STATUS"; 413 public const string _TASK = "_TASK"; 414 415 // non-standard convertible tags 416 public const string _FREL = "_FREL"; 417 public const string _MREL = "_MREL"; 418 } 419 } 420