GEDCOM Worked example
This document is not following the process. Before proposing a micro(or 'mini')format, please research examples in the wild and derive and implied schema. -- RyanKing
Actually this document is part of the genealogy exploration process. This is a work in progress. think of it as an extended public brainfart if it helps. It is simple exploring some ideas from that discussion. --
Example GEDCOM file
0 HEAD 1 SOUR TESTAPP 2 VERS V0.1 2 CORP Test Data 1 DEST REUNION 1 DATE 18 APR 2007 1 FILE Master Database 1 GEDC 2 VERS 5.01 1 CHAR ASCII 0 @I1@ INDI 1 NAME Edward Sean /Hayes/ 1 SEX M 1 BIRT 2 DATE 1 DEC 1961 2 PLAC Royal Free Hospital London 1 OCCU Program Manager 1 EDUC Westfield College 1 FAMS @F1@ 1 CHAN 2 DATE 18 APR 2007 0 @I2@ INDI 1 NAME Tamsin Clare /Hayes/ 1 SEX F 1 BIRT 2 DATE 25 JUL 1963 2 PLAC London 1 OCCU Therapist 1 EDUC School 1 RELI None 1 FAMS @F1@ 1 CHAN 2 DATE 18 APR 2007 0 @I3@ INDI 1 NAME Alice Rose /Hayes/ 1 SEX F 1 BIRT 2 DATE 17 FEB 1986 2 PLAC Park Royal, London 1 RELI None 1 FAMC @F1@ 1 CHAN 2 DATE 18 APR 2007 0 @I4@ INDI 1 NAME Megan Christine /Hayes/ 1 SEX F 1 BIRT 2 DATE 21 NOV 1986 2 PLAC Bristol 1 RELI None 1 FAMC @F1@ 1 CHAN 2 DATE 18 APR 2007 0 @F1@ FAM 1 HUSB @I1@ 1 WIFE @I2@ 1 CHIL @I3@ 1 CHIL @I4@ 1 MARR 2 DATE 25 SEP 1985 2 PLAC London 0 TRLR
Possible microformat
The below is a pretty literal translation of the above. GEDCOM uses a hierachical record structure, which maps to XML relatively easily, and also uses links which map reasonably well to id and <a> in HTML. I've done a simple styling here which positions the family grouping. I'll try and get this up on a webserver somewhere soon. This is not really a proposal at this stage, but an exploration to see if a GEDCOM microformat even makes sense.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Enter the title of your XHTML document here</title>
<style type="text/css">
.CHAN { display:none }
.HEAD { display:none }
.INDI { font-family:'Arial'; font-size:7pt; position: absolute; width:20em; height:14; left: 0; text-align: Center; border: 1pt solid black;margin-top: 0pt; margin-bottom: 1pt } .MARR { font-family:'Arial'; font-size:7pt; position: absolute; left:21em; top:4.5em; width:9.7em; height:14; text-align: Center; border: 1pt solid black;margin-top: 0pt; margin-bottom: 1pt }
.FAM { font-family:'Arial'; font-size:7pt; position: absolute; text-align: Center; border: 1pt solid black;margin-top: 0pt; margin-bottom: 1pt }
.FAMS { font-family:'Arial'; font-size:6pt; padding-left: 20em; }
</style>
</head>
<body>
<div class="gedcom">
<div class="HEAD">
<a class="SOUR" href="www.seanhayes.tv/geneaology/testapp">TESTAPP</a>
<span class="VERS"> V0.1</span>
<a class="CORP" href="www.seanhayes.tv/geneaology">Test Data</a>
<a class="DEST" href="www.seanhayes.tv/geneaology/reunion">REUNION</a>
<div class="DATE">18 APR 2007</div>
<div class="FILE">Master Database</div>
<div class="GEDC">
<span class="VERS">5.01 </span>
<span class="CHAR">ASCII </span>
</div>
</div>
<div id="I1" class="INDI" style="left:10em; top:10em">
<div class="NAME">
Edward Sean
<span class="FAML">Hayes</span>
<div class="SEX">M</div>
<div class="BIRT">
<div class="DATE"> 1 DEC 1961</div>
<div class="PLAC"> Royal Free Hospital London</div>
</div>
<div class="OCCU"> Program Manager</div>
<div class="EDUC"> Westfield College</div>
<a class="FAMS" href="#F1">@F1@</a>
<div class="CHAN">
<div class="DATE"> 18 APR 2007</div>
</div>
</div>
</div>
<div id="I2" class="INDI" style="left:40em; top:10em">
<div class="NAME">
Tamsin Clare <span class="FAML">Hayes</span>
<div class="SEX">F</div>
<div class="BIRT">
<div class="DATE">25 JUL 1963</div>
<div class="PLAC">London</div>
</div>
<div class="OCCU">Therapist</div>
<div class="EDUC">School</div>
<a class="FAMS" href="#F1">@F1@</a>
<div class="CHAN">
<div class="DATE"> 18 APR 2007</div>
</div>
</div>
</div>
<div id="I3" class="INDI" style="left:10em; top:30em">
<div class="NAME">
Alice Rose <span class="FAML">Hayes</span>
<div class="SEX">F</div>
<div class="BIRT">
<div class="DATE">17 FEB 1986</div>
<div class="PLAC">Park Royal Hospital London</div>
</div>
<div class="OCCU">Student</div>
<div class="EDUC">BristolCollege</div>
<a class="FAMS" href="#F1">@F1@</a>
<div class="CHAN">
<div class="DATE"> 18 APR 2007</div>
</div>
</div>
</div>
<div id="I4" class="INDI" style="left:40em; top:30em">
<div class="NAME">
Megan Christine <span class="FAML">Hayes</span>
<div class="SEX">F</div>
<div class="BIRT">
<div class="DATE">21 NOV 1988</div>
<div class="PLAC">Southmead Hospital Bristol</div>
</div>
<div class="OCCU">Student</div>
<div class="EDUC">Bristol College</div>
<a class="FAMS" href="#F1">@F1@</a>
<div class="CHAN">
<div class="DATE"> 18 APR 2007</div>
</div>
</div>
</div>
<div class="FAM" id="F1" style="left:9em; top:8em; width:52em; height:32em; ">
<a class="HUSB" href="#I1"> @I1@</a>
<a class="WIFE" href="#I2"> @I2@</a>
<a class="CHIL" href="#I3"> @I3@</a>
<a class="CHIL" href="#I4"> @I4@</a>
<div class="MARR">
<div class="DATE"> 25 SEP 1985</div>
<div class="PLAC"> London</div>
</div>
</div>
</div>
</body>
</html>
Notes
- The INDI records could be replaced by hCard records. Need to look at a tag by tag mapping here.
- This example doesnt use EVENt tags, which might map to hCalendar
- The FAM records are the graph structure. This is really what is needed over and above an hCard, along with the more specialised SOURce records which record documentaiton (hCite?).
- It's basically a linkage structure, made slightly more complicated by the fact that an INDIvidual can appear in more than one FAMily record. e.g. if they remarry. rather than a specific geneaology microformat, maybe a general hGraph structure might be appropriate?