Skip to content

Latest commit

 

History

History
446 lines (432 loc) · 15.7 KB

Processing-Gedcomx-Record.md

File metadata and controls

446 lines (432 loc) · 15.7 KB

Processing a GEDCOM X Record

This document explains how to process a GEDCOM X record. A single GEDCOM X record can be represented as a GEDCOM X document or you can find multiple records in a GEDCOM X record set. For more information on record sets, see [Section 4] (https://github.com/FamilySearch/gedcomx-record/blob/master/specifications/record-specification.md#recordset) of the GEDCOM X record specification.

The following example shows how to find the title of a record in a single record represented as a GEDCOM X document.

  <thead>
  <tr>
    <th>To find:</th>
    <th>Do this:</th>
  </tr>
  </thead>

  <tbody>
  <tr>
    <td>Record Title</td>
    <td>
      <ol>
        <li>
          Find the description of the record.
          <ul>
            <li>The record's <code>description</code> property will contain a reference. Resolve this reference to the <code>id</code> of the <code>sourceDescription</code>.</li>
          </ul>
        </li>
        <li>Look at the <code>title</code> property of the <code>sourceDescription</code>.</li>
      </ol>
      <h4>Example</h4>
      <pre>

<gedcomx xmlns= "http://gedcomx.org/v1/" description="#7"> ... <sourceDescription ... id="7"> <title>Record 7</title> </sourceDescription> ... </gedcomx>

The examples below show records as they would appear in a record set file. Each record in the record set will include a source description, a person (for each persona in the record), relationships and image URLs. The following table outlines some examples of elements you may need to find as you consume the data.

Process the record file

  <thead>
  <tr>
    <th>To find:</th>
    <th>Do this:</th>
  </tr>
  </thead>

  <tbody>
  <tr>
    <td>Record Title</td>
    <td>
      <ol>
        <li>
          Find the description of the record.
          <ul>
            <li>The record's <code>description</code> property will contain a reference. Resolve this reference to the <code>id</code> of the <code>sourceDescription</code>.</li>
          </ul>
        </li>
        <li>Look at the <code>title</code> property of the <code>sourceDescription</code>.</li>
      </ol>
      <h4>Example</h4>
      <pre>

<record description="#7"> ... <sourceDescription ... id="7"> <title>Record 7</title> </sourceDescription> ... </record>

Collection Title
  1. Find the description of the record.
    • The record's description property will contain a reference. Resolve this reference to the sourceDescription id.
  2. The source's componentOf property will contain a description reference to the description of a collection. Resolve this reference to the sourceDescription.
  3. Look at the title property of the sourceDescription.

Example

<record description="#7">
...
<sourceDescription ... id="7">
<componentOf description="#6"/>
...
</sourceDescription>
...
<sourceDescription ... id="6">
<title>Collection 1</title> </sourceDescription> ... </record>
Gender of the Principal Person
  1. Find the principal person.
    • The principal person is the person where the principal value is set to "true".
  2. Look at the gender property of the principal person.

Example

<record description="#s1">
<person id="p_1" ... principal="true">
...
<gender type="http://gedcomx.org/Female"> ... </record>
Original text of the Gender of the Principal Person as stated on the record
  1. Find the principal person.
    • The principal person is the person where the principal value is set to "true".
  2. Find the gender property.
  3. Find the field property of type "http://gedcomx.org/Gender".
  4. Find the value property of type "http://gedcomx.org/Original".
  5. Look at the text property of that value property.

Example

<record description="#s1">
  <person id="p_1" ... principal="true">
  ...   
   <gender type="http://gedcomx.org/Female">
    <field type="http://gedcomx.org/Gender">
     <value type="http://gedcomx.org/Original" ...>
      <text>F</text>
  ...
</record>
    
Interpreted text of the Gender of the Principal Person as stated on the record
  1. Find the principal person.
    • The principal person is the person where the principal value is set to "true".
  2. Find the gender property.
  3. Find the field property of type "http://gedcomx.org/Gender".
  4. Find the value property of type "http://gedcomx.org/Interpreted".
  5. Look at the text property of that value property.

Example

<record description="#s1">
  <person id="p_1" ... principal="true">
  ...   
   <gender type="http://gedcomx.org/Female">
    <field type="http://gedcomx.org/Gender">
     <value type="http://gedcomx.org/Interpreted" ...>
      <text>Female</text>
  ...
</record>
          
Persistent Identifier (ARK) for the Principal Person
  1. Find the principal person.
    • The principal person is the person where the principal value is set to "true".
  2. Look at the identifier property of the principal person.

Example

<record description="#s1">
  <person id="p_1" ... principal="true">
  ...   
   <identifier type=" ... /Persistent">https://familysearch.org/ ... </identifier>
  ...
</record>
          
Residence Place of the Principal Person
  1. Find the principal person.
    • The principal person is the person where the principal value is set to "true".
  2. Find the Residence fact of the principal person.
  3. Find the place property of the Residence fact.
  4. Look at the original property to find the residence of the principal person.

Example

<record description="#s1">
  <person id="p_1" ... principal="true">
  ...   
   <fact type="http://gedcomx.org/Residence" ... 
    <place>
     <original>Blandford-Forum, Blandford,Forum, Dorset, England</original>
  ...
</record>
          
Birth Date of the Principal Person
  1. Find the principal person.
    • The principal person is the person where the principal value is set to "true".
  2. Find the Birth fact of the principal person.
  3. Find the date property of the Birth fact.
  4. Look at the original property to find the birth date of the principal person.

Example

<record description="#s1">
  <person id="p_1" ... principal="true">
  ...   
   <fact type="http://gedcomx.org/Birth" ... >
    <date>
     <original>1763</original>
  ...
</record>
          
Surname of the Principal Person
  1. Find the principal person.
    • The principal person is the person where the principal value is set to "true".
  2. Find the name property of the principal person.
  3. Find the part property with a field value of "http://gedcomx.org/Surname".
  4. Find the value property of type "http://gedcomx.org/Original".
  5. Look at the text property of that value property to find the surname of the principal person.

Example

<record description="#s1">
  <person id="p_1"> ... principal="true">
  ...   
   <name type="http://gedcomx.org/BirthName">
    <part type=" ... ">
      <field type="http://gedcomx.org/Surname">
       <value type="http://gedcomx.org/Original" ... >
        <text>Baker</text>
  ...
</record>
          
Marriage Place of a Couple
  1. Find the relationship type that has a value of "http://gedcomx.org/Couple".
    • The relationship type's resource property will contain two references. Resolve each reference to the person id.
  2. Find the Marriage fact.
  3. Find the place property of the Marriage fact.
  4. Look at the original property to find the marriage place of a couple.

Example

<record description="#s29">
  <relationship type="http://gedcomx.org/Couple">
   <person1 resource="#p_61"/>
   <person2 resource="#p_62"/>  
   <fact type="http://gedcomx.org/Marriage" ... >
    <place>
     <original>Bridport, Bridport, Dorset, England</original>
  ...
</record>
          
Image URL
  1. Find the description of the record.
    • The record's description property will contain a reference. Resolve this reference to the sourceDescription id.
  2. The source description's source property will contain a description reference to the image. Resolve this reference to the sourceDescription.
  3. Look at the about property of the sourceDescription to find the image URL.

Example

<record description="#7">
  ...
  <sourceDescription ... id="7">
    <source description="#src_s1"/>
  ...
  </sourceDescription>
  ...
  <sourceDescription about="https://familysearch.org/ark:/61903/3:1:S3HY-DH44-3CM?cc=1747615"
resourceType="http://gedcomx.org/DigitalArtifact" id="src_s1"> </sourceDescription> ... </record>

Process the metadata file

  <thead>
  <tr>
    <th>To find:</th>
    <th>Do this:</th>
  </tr>
  </thead>

  <tbody>
  <tr>
    <td>Time Span of Collection</td>
    <td>
      <ol>
        <li>Find the description of the metadata.
        <ul>
          <li>The metadata's <code>description</code> property will contain a reference. Resolve this reference to the <code>sourceDescription id</code>.</li>
        </ul></li>
        <li>Find the <code>coverage</code> property.</li>
        <li>Look at the <code>original</code> or <code>formal</code> value(s) of the <code>temporal</code> property to find the time span of the collection. (For more information on date formats, see the GEDCOM X date format <a href="https://github.com/FamilySearch/gedcomx/blob/master/specifications/date-format-specification.md">spec</a>.)</li>
      </ol>
      <h4>Example</h4>
      <pre>

<metadata description="#src_1"> ... <sourceDescription ... id="src_1"> <coverage> <temporal> <original>1538/1910</original> <formal>+1538/+1910</formal> </temporal> </coverage> </sourceDescription> ... </metadata>

Geographic Location of Collection
  1. Find the description of the metadata.
    • The metadata's description property will contain a reference. Resolve this reference to the sourceDescription id.
  2. Find the coverage property.
  3. Find the spatial description property.
    • The metadata's spatial description property will contain a reference. Resolve this reference to the place id.
  4. Look at the name value of that property to find the geographic location of the collection.

Example

<metadata description="#src_1">
...
<sourceDescription ... id="src_1"&gt
<coverage>
<spatial description = "#place_1986340-1927925">
...
</spatial>
</coverage>
<place id="place_1986340-1927925">
...
<name xml:lang="en-US">Dorset, England</name>
</place>
</sourceDescription>
...
</metadata>
Japanese label for the "PR_NAME" field
  1. Find the recordDescriptor ID of the metadata.
  2. Find the field property with a value type of "http://gedcomx.org/Interpreted".
  3. Look at the value of the xml:lang="ja" label.

Example

<recordDescriptor id="rd_1910806">
<field>
<value type="http://gedcomx.org/Interpreted" ... >
<label xml:lang="ja">名前</label>
...
</recordDescriptor>