From e852375ffa6474073ecd9712c15aa19f401a3393 Mon Sep 17 00:00:00 2001 From: Luther Tychonievich Date: Fri, 30 Jan 2026 16:30:26 -0600 Subject: [PATCH 1/7] Redesign for mixed URI prefixes in 7.1 Closes #727 Unblocks #722 and #723 There's a lot going on here, and I spent several weeks trying to minimize this PR, split it into pieces, etc, but couldn't find a way that worked. So here's an outline of what's changed. 1. In the spec, many tables (notably enumsets) now have an explicit URI entry. I made the URIs their own column, not the two-line cells used for URIs of events and attributes earlier, mostly because I thought we have space. We can refactor that into using
if we prefer. 2. I re-wrote `build/uri-def.py` from the ground up as `build/extract-yaml-tsv.py`. `uri-def.py` was a 50-line script I wrote that I slowly changed into a 500-line monstristy that I find almost impossible to read or maintain. And it had many assumptions about the spec's format not only in its code (that's inevitable when parsing human text into machine-readable files) ubt also in its design. Trying to add the more versatile URIs was such a headache I decided to use it as an excuse for a long-verdue re-write. `extract-yaml-tsv.py` uses classes to have the code mirror the files it is designed to produce. It uses type annotations (which pass `mypy`) to avoid various typing bugs. It tries to do one thing in one place instead of doing all things possible everywhere. It's 100 lines longer than `uri-def.py` but faster to run and easier to maintain. I spent some effort to match ideosynracies of `uri-def.py`, like when to use `strings`, `'strings'`, or `"strings"` in the emitted YAML; but sometimes dong that was not possible without replicating `uri-def.py`'s worse parts, so there are some trivial changes (notably in the order of lists) in the files it creates. 3. I (accidentally) fixed various bugs of omission. `uri-def.py` was sloppy in how it handled the textual explantions in sections that had either gedstruct rules with alternatives or tables. Fixing that with a more principled approach means adding extra `specification:` entries for around half of all YAML files. 4. I tried but failed to match the sorting of the various .tsv files from `uri-def.py`, which was based on some kind of sorting of structures before they were used to generate multiple lines each. I was tempted to scrap that and simply sort the final lines, which is easy and well-defined, but this commit does not do that, instead doing a half-hearted effort at mimickiing the old sorting. I did all this on 7.1 because that was the original motivation, but if we like it I can port it back to the 7.0 branch (either by adding explicit URIs to the 7.0 spec or by adding special-case handling of tag-to-URI) with relative ease. --- build/Makefile | 5 +- build/extract-yaml-tsv.py | 599 ++++++++++++++++++ build/uri-def.py | 545 ---------------- extracted-files/cardinalities.tsv | 96 +-- extracted-files/enumerations.tsv | 8 +- extracted-files/enumerationsets.tsv | 92 +-- extracted-files/payloads.tsv | 108 ++-- extracted-files/substructures.tsv | 110 ++-- extracted-files/tags/ADOP | 25 +- extracted-files/tags/ADR1 | 2 +- extracted-files/tags/ADR2 | 2 +- extracted-files/tags/ADR3 | 2 +- extracted-files/tags/AGE | 1 + extracted-files/tags/AGNC | 8 + extracted-files/tags/ANCI | 4 +- extracted-files/tags/ANUL | 19 +- extracted-files/tags/BAPL | 5 +- extracted-files/tags/BAPM | 25 +- extracted-files/tags/BARM | 24 +- extracted-files/tags/BASM | 24 +- extracted-files/tags/BIRT | 25 +- extracted-files/tags/BLES | 25 +- extracted-files/tags/BURI | 25 +- extracted-files/tags/CAST | 15 +- extracted-files/tags/CAUS | 8 + extracted-files/tags/CHR | 25 +- extracted-files/tags/CHRA | 25 +- extracted-files/tags/CONF | 25 +- extracted-files/tags/CONL | 5 +- extracted-files/tags/CREM | 25 +- extracted-files/tags/DEAT | 25 +- extracted-files/tags/DESI | 4 +- extracted-files/tags/DIV | 19 +- extracted-files/tags/DIVF | 19 +- extracted-files/tags/DSCR | 15 +- extracted-files/tags/EDUC | 15 +- extracted-files/tags/EMAIL | 8 + extracted-files/tags/EMIG | 25 +- extracted-files/tags/ENDL | 5 +- extracted-files/tags/ENGA | 19 +- extracted-files/tags/EXID | 18 + extracted-files/tags/FAM-CENS | 19 +- extracted-files/tags/FAM-EVEN | 17 + extracted-files/tags/FAM-FACT | 12 + extracted-files/tags/FAM-NCHI | 14 +- extracted-files/tags/FAM-RESI | 14 +- extracted-files/tags/FAX | 8 + extracted-files/tags/FCOM | 25 +- extracted-files/tags/GIVN | 24 + extracted-files/tags/GRAD | 25 +- extracted-files/tags/HEAD-SOUR-DATA | 14 +- extracted-files/tags/HUSB | 1 + extracted-files/tags/IDNO | 15 +- extracted-files/tags/IMMI | 25 +- extracted-files/tags/INDI-CENS | 25 +- extracted-files/tags/INDI-EVEN | 23 + extracted-files/tags/INDI-FACT | 13 + extracted-files/tags/INDI-NCHI | 15 +- extracted-files/tags/INDI-RELI | 15 +- extracted-files/tags/INDI-RESI | 15 +- extracted-files/tags/INDI-TITL | 15 +- extracted-files/tags/INIL | 5 +- extracted-files/tags/MARB | 19 +- extracted-files/tags/MARC | 19 +- extracted-files/tags/MARL | 19 +- extracted-files/tags/MARR | 19 +- extracted-files/tags/MARS | 19 +- extracted-files/tags/NATI | 15 +- extracted-files/tags/NATU | 25 +- extracted-files/tags/NICK | 24 + extracted-files/tags/NMR | 15 +- extracted-files/tags/NOTE | 13 + extracted-files/tags/NPFX | 24 + extracted-files/tags/NSFX | 24 + extracted-files/tags/OCCU | 15 +- extracted-files/tags/ORDN | 25 +- extracted-files/tags/PHON | 8 + extracted-files/tags/PROB | 25 +- extracted-files/tags/PROP | 15 +- extracted-files/tags/REFN | 18 + extracted-files/tags/RELI | 8 + extracted-files/tags/REPO | 2 +- extracted-files/tags/RESN | 8 + extracted-files/tags/RETI | 25 +- extracted-files/tags/SDATE | 8 + extracted-files/tags/SLGC | 5 +- extracted-files/tags/SLGS | 2 +- extracted-files/tags/SNOTE | 15 +- extracted-files/tags/SOUR | 2 +- extracted-files/tags/SPFX | 24 + extracted-files/tags/SSN | 15 +- extracted-files/tags/SUBM | 4 +- extracted-files/tags/SURN | 24 + extracted-files/tags/TEMP | 3 + extracted-files/tags/UID | 26 + extracted-files/tags/WIFE | 1 + extracted-files/tags/WILL | 25 +- extracted-files/tags/WWW | 8 + extracted-files/tags/cal-FRENCH_R | 30 +- extracted-files/tags/cal-GREGORIAN | 30 +- extracted-files/tags/cal-HEBREW | 30 +- extracted-files/tags/cal-JULIAN | 2 +- extracted-files/tags/enum-ADOP-HUSB | 2 +- extracted-files/tags/enum-ADOP-WIFE | 2 +- extracted-files/tags/enum-BIRTH | 3 +- extracted-files/tags/enumset-ADOP | 2 + extracted-files/tags/enumset-EVEN | 30 +- extracted-files/tags/enumset-EVENATTR | 50 +- extracted-files/tags/enumset-FAMC-STAT | 18 + extracted-files/tags/enumset-MEDI | 4 +- extracted-files/tags/enumset-NAME-TYPE | 4 +- extracted-files/tags/enumset-PEDI | 33 +- extracted-files/tags/enumset-QUAY | 14 + extracted-files/tags/enumset-RESN | 36 ++ extracted-files/tags/enumset-ROLE | 10 +- extracted-files/tags/enumset-SEX | 12 +- extracted-files/tags/enumset-ord-STAT | 27 +- extracted-files/tags/month-ADR | 2 +- extracted-files/tags/month-ADS | 2 +- extracted-files/tags/ord-STAT | 3 + extracted-files/tags/record-REPO | 5 +- extracted-files/tags/record-SNOTE | 5 +- extracted-files/tags/record-SOUR | 5 +- extracted-files/tags/record-SUBM | 5 +- extracted-files/tags/type-Age | 2 + extracted-files/tags/type-Date | 2 + extracted-files/tags/type-Date-exact | 2 + extracted-files/tags/type-Date-period | 2 + extracted-files/tags/type-Enum | 2 + extracted-files/tags/type-FilePath | 2 + extracted-files/tags/type-Latitude | 2 + extracted-files/tags/type-List-Enum | 2 + extracted-files/tags/type-List-Text | 2 + extracted-files/tags/type-Longitude | 2 + extracted-files/tags/type-Name | 2 + extracted-files/tags/type-TagDef | 2 + extracted-files/tags/type-Time | 2 + .../gedcom-3-structures-3-meaning.md | 4 + .../gedcom-3-structures-4-enumerations.md | 212 +++---- specification/gedcom-6-appendix-calendars.md | 92 ++- 140 files changed, 2591 insertions(+), 1073 deletions(-) create mode 100644 build/extract-yaml-tsv.py delete mode 100644 build/uri-def.py diff --git a/build/Makefile b/build/Makefile index 1f2e057b..fbd54c82 100644 --- a/build/Makefile +++ b/build/Makefile @@ -20,8 +20,9 @@ $(PDF_FILE): $(HTML_FILE) $(HTML_FILE): hyperlink-code.py GEDCOM-tmp.html python3 hyperlink-code.py GEDCOM-tmp.html $(HTML_FILE) -$(TAGDEFS): $(MD_FILES) $(TERMS_FILES) uri-def.py - python3 uri-def.py $(MD_FILES) $(TAGDEFS) +$(TAGDEFS): $(MD_FILES) $(TERMS_FILES) $(EXTDIR)grammar.gedstruct extract-yaml-tsv.py + python3 extract-yaml-tsv.py --spec=$(SPECDIR) --dest=$(EXTDIR) + rsync -au $(TERMS_FILES) $(EXTDIR)tags touch $(TAGDEFS) $(EXTDIR)grammar.abnf: $(MD_FILES) extract-grammars.py diff --git a/build/extract-yaml-tsv.py b/build/extract-yaml-tsv.py new file mode 100644 index 00000000..1803b076 --- /dev/null +++ b/build/extract-yaml-tsv.py @@ -0,0 +1,599 @@ +import re +import typing + +verbose:bool = False + + +def tidy_markdown(md, indent, width=79): + r""" + The markdown files in the specification directory use the following Markdown dialect: + + Part of GFM: + + - setext headers with classes like `{.unnumbered}`, unlisting marks like `{-}`, and anchors like `{#container}` + - language-specific code blocks both \`\`\`gedcom and \`\`\` {.gedstruct .long} headers + - markdown inside HTML between lines `
` and `
` (only inside lists) and between definition list tags `
`, `
`, and `
` (only in acknowledgements) + - code blocks with no leading blank line + - tables with `|---|:--|` format + - tables with `--- | --- | ---` format + + Not part of GFM: + + - YAML front matter + - divs with `:::class` headers and `:::` footers + - automatic links with `[name of section to link to]` + - inline code with class `1 NO MARR`{.gedcom} (used only once) + + pip install mdformat-gfm + """ + for k,v in pfx.items(): + md = re.sub(rf'\b{k}', v, md) + + # ignoring YAML frontmatter + md = re.sub(r':::(\S+)', r'
\n', md) # convert ::: divs to
s + md = re.sub(r':::', '\n
', md) # convert ::: divs to
s + md = re.sub(r'\]\([^\)]*\)({[^}]*})?', ']', md) # remove links + md = re.sub(r'`{\.\S+\}', '`', md) # remove inline code classes + + import mdformat + out = mdformat.text(md, extensions={"gfm"}, options={"number":True, "wrap":width}) + + out.count('[') + + return out.rstrip().replace('\n','\n'+' '*indent).replace(r'\[','[').replace(r'\]',']') + +def yaml_str_helper(pfx, md, width=79): + txt = tidy_markdown(md, len(pfx), width) + if ('\n'+' '*len(pfx)+'\n') in txt: return pfx + '|\n' + ' '*len(pfx) + txt + if ': ' in txt or txt.startswith('@'): + if '"' in txt: return pfx + '|\n' + ' '*len(pfx) + txt + else: return pfx+'"' + txt + '"' + return pfx + txt + + + +class CheckedDict[Key,Value](dict[Key,Value]): + """A helper to make it easier to ensure there's not conflicts in the input files""" + def add(self, key:Key, value:Value): + """Ensures that self[key] == value, + either by inserting the key or by asserting that that's its value""" + if key in self: assert self[key] == value, f'Cannot change value of {key!r}' + else: self[key] = value + + +class Concept: + """A class embodying the "concepts" described by YAML files as defined in https://gedcom.io/terms/format + Only the fields that are generated by the standard are included here; extension-specific like `extension tags` + and not in the standard like `translated from` and `help text` are excluded for brevity.""" + + lang: str + type: typing.Literal["structure", "enumeration", "enumeration set", "calendar", "month", "data type"] # uri also allowed, but not provided in spec + uri: str + + abnf_production: str|None + calendars: list[str] + enumeration_values: list[str] + epochs: list[str] + label: str|None + months: list[str] + spec: list[str] + standard: bool|None + tag: str|None + subsumes: list[str] + value_of: list[str] + deprecated: bool + + def __init__(self, type, uri): + self.lang = 'en-US' + self.type = type + self.uri = uri + + self.abnf_production = None + self.calendars = [] + self.enumeration_values = [] + self.epochs = [] + self.label = None + self.months = [] + self.spec = [] + self.standard = (self.type == 'enumeration set') + self.tag = None + self.subsumes = [] + self.value_of = [] + self.deprecated = False + + def set(self, name:str, value:str): + """A helper to verify that information that has only one value is givne consistently across all instances.""" + assert name in self.__dict__, "Can only set known attributes" + if self.__dict__[name] is None: self.__dict__[name] = value + else: assert self.__dict__[name] == value, f"Only one value allowed for {name!r} of {self.uri}; was {self.__dict__[name]!r}, now {value!r}" + + + def __str__(self) -> str: + """Manual readable YAML generation. pyYAML doesn't have enough control to get the format we like so we do it manually.""" + ans = [ + '%YAML 1.2\n---\nlang: '+self.lang, + 'type: '+self.type, + 'uri: '+self.uri, + ] + + if self.tag is not None: ans.append('standard tag: '+repr(self.tag)) + + if self.abnf_production is not None: ans.append('abnf production: '+self.abnf_production) + + if len(self.spec) >= 0: + spec = 'specification:' + for i,entry in enumerate(self.spec): + if self.spec.index(entry) < i: continue # remove duplicates + spec += '\n'+yaml_str_helper(' - ', entry) + if len(spec) > len('specification:'): ans.append(spec) + + if self.label is not None: + if self.deprecated: ans.append('label: '+repr('(deprecated) '+self.label)) + else: ans.append('label: '+repr(self.label)) + + ans.extend(self.type_specific()) + + if any('/v7.1/' in item for item in ans): + ans.append('prerelease: true') + + ans.append('contact: "https://gedcom.io/community/"\n...') + return '\n\n'.join(ans) + + def type_specific(self) -> list[str]: + ans = [] + + simple = { # all lists or strings, no dicts + 'calendars': self.type == 'month', + 'enumeration_values': self.type == 'enumeration set', + 'months': self.type == 'calendar', + 'epochs': self.type == 'calendar', + 'standard': self.type == 'enumeration set', + 'subsumes':False, + 'value_of': self.type == 'enumeration', + } + for key,req in simple.items(): + val = self.__dict__[key] + key = key.replace('_',' ') + if not val and not req: continue + if val is None: ans.append(key+': null') + elif val == [] or isinstance(val, bool): ans.append(key+': '+str(val).lower()) + elif isinstance(val, str): + assert '"' not in val and '\n' not in val, f"Simplified serialization failed for {uri}'s {key}" + ans.append(key+': "'+val+'"') + else: + entry = key+':' + for v in (sorted(val) if key != 'months' else val): + assert '"' not in v and '\n' not in v, f"Simplified serialization failed for {uri}'s {key}" + entry += '\n - "'+v+'"' + ans.append(entry) + + return ans + + +class StructData(Concept): + """Information about one structure type""" + sub: CheckedDict[str,str] # URI:cardinality + sup: CheckedDict[str,str] # URI:cardinality + pay: str|None + enumset: str|None + + def __init__(self, uri): + super().__init__('structure', uri) + self.sub = CheckedDict() + self.sup = CheckedDict() + self.pay = None + self.enumset = None + + def type_specific(self) -> list[str]: + ans = [] + + if self.pay is None: ans.append('payload: null') + elif self.pay[0] == '@': ans.append('payload: "'+self.pay+'"') + else: ans.append('payload: '+self.pay) + + if self.enumset is not None: ans.append('enumeration set: "'+self.enumset+'"') # quoted to match older version; other URI values are unquoted + + if len(self.sub) == 0: ans.append('substructures: {}') + else: ans.append('substructures:\n "' + '"\n "'.join(k+'": "'+v for k,v in sorted(self.sub.items()))+'"') + + if len(self.sup) == 0: ans.append('superstructures: {}') + else: ans.append('superstructures:\n "' + '"\n "'.join(k+'": "'+v for k,v in sorted(self.sup.items()))+'"') + + ans.extend(super().type_specific()) + + return ans + + +class StructSet: + """Information about many structures""" + data: dict[str,StructData] + + def __init__(self): + self.data = {} + + def __getitem__(self, uri:str) -> StructData: + """Returns (and creates if necessary) a StructData for the given URI""" + if uri not in self.data: + self.data[uri] = StructData(uri) + return self.data[uri] + + def subsup(self, sub:str, sup:str, card:str) -> None: + """Helper to record substructure/superstructure relationships""" + self[sub].sup.add(sup, card) + self[sup].sub.add(sub, card) + + def parse_gedstruct(self, gs:str, pfx:dict[str,str]={}) -> None: + """Given the concatenated gedstruct data (see extract-grammars.py), + populates this StructSet with all of those structures. + + Populates only data available from gedstruct: tag, sub- and super-structure, abbreviated uri, + and the payload type strings in gedstruct (e.g. not that URI of that). + """ + + def mix_card(c1,c2): + """Combines cardinalities: if I have {1:M} of something that is {0:1}, I actually have {0:M}, and so on.""" + return min(c1[:2],c2[:2]) + max(c1[2:], c2[2:]) + + def do_pfx(uri): + """Expands URI prefixes""" + if not uri: return uri + for short,long in pfx.items(): + if uri.startswith(short): return uri.replace(short, long, count=1) + return uri + + # find top-level rules + xrefs : dict[str,str] = {} # e.g. {"INDI":"g7:record-INDI"} because @XREF:INDI@ is for that record URI + becomes : dict[str,dict[str,str]] = {} # e.g. {"NOTE_STRUTURE": {"g7:NOTE":"{1:1}"}} + for m in re.finditer(r'(\S+) *:=\s*(\[\s*)?((?:^[^=]*$)*)', gs, flags=re.M): + becomes[m[1]] = {} + base_card = '{0:1}' if m[2] else '{1:1}' # handles [|] under the assumption that never realized as "either/or but not both" + for m2 in re.finditer(r'^[0n] (?:@XREF:(\S+)@ )?(\S+)[^{}]*({.:.})(?: *(\S+))?', m[3], flags=re.M): + becomes[m[1]][do_pfx(m2[4]) or m2[2]] = mix_card(base_card, m2[3]) + if m2[1]: xrefs[m2[1]] = do_pfx(m2[4]) + # resolve chains like EVENT_DETAIL -> <> + for iterations in range(2): # longest chain is Dataset → <> → <>, 2 steps + for key in becomes: + for name in [k for k in becomes[key] if k.startswith('<<')]: + c = becomes[key].pop(name) + becomes[key].update({k:mix_card(c,v) for k,v in becomes[name[2:-2]].items()}) + + # parse main gedstruct content + stack : list[str] = [] # the smaller-level structures on the path to this line + lines = re.split(r'[\r\n]+', gs) + for line in lines: + if ':=' in line: continue # header lines like "RECORD :=" handled as top-level rule above + tok = line.strip().split() + if len(tok) < 3: continue # blank line or one of [, |, ]: skip + level = 0 if tok[0] == 'n' else int(tok[0]) + stack = stack[:level] + if tok[1].startswith('@'): del tok[1] # remove the @XREF:INDI@ bits to make other parts line up + + if tok[1].startswith('<<'): # reference like +1 <> {0:M} + if level > 0: + c = tok[-1] + for uri,card in becomes[tok[1][2:-2]].items(): + self.subsup(uri, stack[-1], mix_card(c, card)) + + else: # structure like +1 TRAN {1:M} g7:NAME-TRAN + uri = do_pfx(tok[-1]) + self[uri].tag = tok[1] + if level > 0: + self.subsup(uri, stack[-1], tok[-2]) + if len(tok) == 5: # level tag cardinality uri + if tok[2].startswith('@@' + elif tok[2] == '[Y|]': + self[uri].pay = 'Y|' + else: + self[uri].pay = tok[2] + stack.append(uri) + + +def all_tables(txt:str) -> dict[str,list[dict[str,str]]]: + """Finds all tables in the input + Returns a dict {"section header text":[row, row, row]} + where each row is {"header text":"cell entry"}. + If the header has a
then so must the entries, and they'll be split as if separate columns. + + Assumes there will be at most one table per section + """ + sect:str + rowh:list[str]|None = None + hcount = 0 + ans:dict[str,list[dict[str,str]]] = {} + # for each section header or table row + for m in re.finditer(r'^#+\s*([^\n]*)|(^[^\n]*\|[^\n]*\|[^\n]*)', txt, re.M): + if m[1]: # section header + sect = m[1] + if '{' in sect: sect = sect[:sect.find('{')].strip() + rowh = None + hcount = 0 + elif rowh is None and m[2]: # first table row, and hence a header + rowh = [s.strip() for s in m[2].strip('|').split('|')] + else: # not-first table row + cells = [s.strip() for s in m[2].strip('|').split('|')] + if all(len(s.strip(' -:')) == 0 for s in cells): # header/body separator + hcount += 1 + if verbose and hcount != 1: + print('Section', sect, 'table number',hcount,'assumed to continue previous table') + continue + assert rowh is not None and len(cells) == len(rowh) # sanity check, ensure row length matches header + entry = {k:v for k,v in zip(rowh,cells)} + for k in (k for k in rowh if '', k), re.split(r'
', v))}) + ans.setdefault(sect,[]).append(entry) + return ans + + +def all_uri_section_text(txt:str, pfx:dict[str,str], data:dict[str,Concept]) -> tuple[dict[str,str], dict[str,list[str]]]: + """Finds all sections that are headed by a URI or URI-paired values. + Adds them to the provided dict + and returns + - a dict from datatype names (like List:Enum) to their URIs + - a dict from table lables "event" and "attribute" to enumeration set URIs (like g7:enumset-EVENATTR) that include them + """ + + def do_pfx(uri:str) -> str: + """Expands URI prefixes""" + for short,long in pfx.items(): + if uri.startswith(short): return uri.replace(short, long, count=1) + return uri + + types:dict[str,str] = {} # {"": "g7:type-List#Enum"} + enum_has:dict[str,list[str]] = {} # {"event": ["g7:enumset-EVENATTR", "g7:enumset-EVEN"]} + aux:dict[str,str] = {} # {"TRAN": text of the section about all TRAN-taged structures} + + # Loop through each markdown section + bits = re.split(r'\s*^#+ *([^\n{]*)[^\n]*\s*', txt, flags=re.M) + for header, section in zip(bits[1::2], bits[2::2]): + # tidy up for easier regex: + header = header.strip() # remove extra spaces + #section = re.sub(r'\[([^\[\]]*)\](?:\([^()]*\))?(?:{[^{}]*})?', r'\1', section) # remove hyperlinks and classes + + # sections defining a structure have headers like `TAG` (label) `uri` + stm = re.fullmatch(r'`([^`]*)`\s*\(([^\)]*)\)\s*(?:`([^`]*)`)?', header) + if stm: + tag, label, uri = stm.groups() + if uri is None: # A generic section applying to several related URIs, like TRAN + aux[tag] = section + else: + uri = do_pfx(uri) + assert uri in data, f"A section defines {uri} but it's not in a gedstruct block" + assert isinstance(data[uri], StructData), f"A section defines {uri} as a struct, but it's a {data[uri].type} already" + data[uri].set('tag', tag) + data[uri].set('label', label) + data[uri].spec.append(label) + data[uri].spec.append(section) + if tag in aux: + data[uri].spec.append(aux[tag]) + enumset = re.search(r'enumerated values? from set `([^`]+)`', section) + if enumset: + data[uri].set('enumset', do_pfx(enumset[1])) + if re.search(r':::deprecation\s+[^\n]*should not be added to new files', section): + data[uri].deprecated = True + + # sections defining a major structure have headers like `LONG_NAME` := + elif header.strip().endswith(':=') and header.strip().startswith('`'): + rulename = header.strip('` :=') + gedstruct = re.match(r'\s*```[^\n]*gedstruct[^\n]*([\s\S]*?)```+', section) + assert gedstruct is not None, f'Expected section {repr(header)} to start with a gedstruct block' + text = section[gedstruct.end():] + for leveln in re.finditer(r'^n[^\n]+} +(\S+:\S+)', gedstruct[1], re.M): + uri = do_pfx(leveln[1]) + assert uri in data, f"A section defines {uri} with a gedstruct block but it was missed in earlier gedstruct parsing" + data[uri].spec.append(text) + + # sections defining a datatype have the text The URI (of|for) the `NAME` data type is `uri`. + elif re.search(r'The URI[^\n`]*`([^`]*)` data types? is `([^`]*)`', section): + for dtd in re.finditer(r'The URI[^\n`]*`([^`]*)` data types? is `([^`]*)`', section): + typename, uri = dtd[1], do_pfx(dtd[2]) + types['<'+typename+'>'] = uri + if not uri.startswith('https://gedcom.io'): continue # not ours to define + if uri not in data: data[uri] = Concept('data type', uri) + data[uri].set('label', header) + if re.search(f'^{typename.replace(':','-')} +=', section, flags=re.M): + data[uri].set('abnf_production', typename.replace(':','-')) + data[uri].spec.append(section) + + # sections defining a calendar have the text The URI for this calendar is `uri`. + elif 'The URI for this calendar is' in section: + tag = header.strip('` ') + epochs = re.findall(r'The epoch marker `([^`]+)` is permitted', section) + uri = do_pfx(re.search(r'The URI for this calendar is `([^`]+)`', section)[1]) # type: ignore[index] + if uri not in data: data[uri] = Concept('calendar', uri) + data[uri].set('tag', tag) + data[uri].epochs.extend(epochs) + data[uri].spec.append(section) + name = re.search(r'The ([^\n]*?) calendar', section) + if name: data[uri].set('label', name[1]) + + # sections defining an enumset have the headers like `uri` where the uri has enumset- in it + elif re.fullmatch(r'\s*`[^`]*enumset-[^`]*`\s*', header): + uri = do_pfx(header.strip('` ')) + if uri not in data: data[uri] = Concept('enumeration set', uri) + asenum_line = re.search(r'^A[^\n]*-type tag name', section) + if asenum_line: + for word in re.findall(r'([a-z]*)-', asenum_line[0]): + enum_has.setdefault(word,[]).append(uri) + without_tables = re.sub(r'^\|[^\n]*\|$', '', section, flags=re.M).strip() + if len(without_tables): data[uri].spec.append(without_tables) + + elif verbose: + print('No URI defined in section:', header) + + return types, enum_has + + +if __name__ == '__main__': + # configuration + from pathlib import Path + import argparse + args_parser = argparse.ArgumentParser(description='Extracts YAML and TSV files from the specification markdown and the grammar.gedstruct generated by extract-grammars.py') + args_parser.add_argument('-s', '--spec', default=Path('../specification'), type=Path, help='Directory containing gedcom*.md files') + args_parser.add_argument('-d', '--dest', default=Path('../extracted-files'), type=Path, help='Directory in which to put payloads.tsv, tags/HEAD, and so on') + args = args_parser.parse_args() + + # step 1: read the files + src_gedstruct = open(Path(args.dest, 'grammar.gedstruct')).read() + src_markdown = '\n\n'.join(open(s).read().replace('\xA0',' ') for s in args.spec.glob('gedcom*.md')) + + # step 2: find all tables and convert them to {section header: [{column header: column value}]} + tables = all_tables(src_markdown) + + # step 3: extract the URI prefixes from the spec and make a function to expand them + pfx = {row['Short Prefix'].strip('`')+':':row['URI Prefix'].strip('`') for row in tables['URIs and Prefix Notation']} + def do_pfx(uri:str) -> str: + """Expands URI prefixes""" + for short,long in pfx.items(): + if uri.startswith(short): return uri.replace(short, long, count=1) + return uri + + # step 4: parse everything we can from the gedstruct blocks + structs = StructSet() + structs['https://gedcom.io/terms/v7/CONT'].tag = 'CONT' + structs.parse_gedstruct(src_gedstruct, pfx) + data:dict[str,Concept] = {} + data.update(structs.data) # copy, not alias, because `structs` will break if other Concepts included + + # step 5: parse the big blocks of text and non-structure URI definitions from the spec + types, enum_has = all_uri_section_text(src_markdown, pfx, data) + + # step 6: beause we did 4 before 5 (which made both steps easier), we need to change payload types to URIs + for s in data.values(): + if isinstance(s, StructData): + if s.pay in types: + s.pay = types[s.pay] + elif s.pay is not None: + assert s.pay == 'Y|' or s.pay.startswith('@'): meaning = meaning[:-5] - pfx = tail.split('`')[1] - meaning = hard_code.get(pfx,meaning) - if len(header) > 2: - h1 = sect.rfind('\n',0,entry.start()) - h2 = sect.find('\n',h1+1) - row = [_.strip() for _ in sect[h1:h2].strip('| \n').split('|')] - assert len(row) == len(header) - meaning = [(header[i]+': '+row[i] - if header[i] not in ('Meaning','Name') - else row[i]) for i in range(1,len(header))] - else: - meaning = [meaning] - if pfx in cats and meaning != cats[pfx]: - raise Exception('Concatenated URI '+pfx+' has multiple definitions:' - + '\n '+cats[pfx] - + '\n '+meaning - ) - if 'enum-' in pfx: - yamltype = 'enumeration' - k1 = sect.find('`', sect.rfind('\n#', 0, entry.start())) - k2 = sect.rfind('`', 0, sect.find('\n', k1)) - key = sect[k1:k2].replace('`','').replace('.','-') - if pfx not in enums.get(key,[]): enums.setdefault(key,[]).append(pfx) - elif 'month-' in pfx: - yamltype = 'month' - label = re.sub(r'(,| \().*', '', meaning[0]) - k1 = sect.find('`', sect.find('URI for this calendar is', entry.start()))+1 - k2 = sect.find('`', k1) - cal = sect[k1:k2] - calendars.setdefault(cal,[]).append(pfx) - calendars.setdefault(pfx,[]).append(cal) - if 'GREGORIAN' in cal: ## <- hack for JULIAN - c2 = cal.replace('GREGORIAN','JULIAN') - calendars.setdefault(c2,[]).append(pfx) - calendars.setdefault(pfx,[]).append(c2) - - else: - raise Exception("unexpected enumeration URI prefix "+repr(pfx)) - if pfx not in cats: - cats[pfx] = meaning - if pfx.startswith('g7:') or pfx.startswith('g7.1:'): - slug = pfx[pfx.find(':')+1:] - if slug in g7: - raise Exception(pfx+' defined as an enumeration and a '+g7[slug][0]) - if label: - g7[slug] = (yamltype, meaning, None, label) - else: - g7[slug] = (yamltype, meaning) - return enums, calendars - -def find_calendars(txt, g7): - """Looks for sections defining a `g7:cal-` URI""" - for bit in re.finditer(r'#+ `[^`]*`[^\n]*\n+((?:\n+(?!#)|[^\n])*is `g7(?:\.1)?:(cal-[^`]*)`(?:\n+(?!#)|[^\n#])*)', txt): - m = re.search('The epoch markers? ([`_A-Z0-9, and]+) (is|are) permitted', bit.group(1)) - marker = [] if not m else re.findall(r'[A-Z0-9_]+', m[1]) - m = re.match(r'^The ([A-Z][A-Za-z]* )+calendar', bit.group(1)) - if m: - g7[bit.group(2)] = ('calendar',[bit.group(1)], marker, m.group(0)[4:-9]) - else: - g7[bit.group(2)] = ('calendar',[bit.group(1)], marker) - - -def joint_card(c1,c2): - """Given two cardinalities, combine them.""" - return '{' + ('1' if c1[1] == c2[1] == '1' else '0') + ':' + ('1' if c1[3] == c2[3] == '1' else 'M') + '}' - -def parse_rules(txt): - """returns {rule:[(card,uri),(card,uir),...] for each level-n - production of the rule, even if indirect (via another rule), - regardless of if alternation or set.""" - # Find gedstruct context - rule_becomes = {} - rule_becomes_rule = {} - for rule,block,notes in re.findall(r'# *`([A-Z_0-9]+)` *:=\s+```+[^\n]*\n([^`]*)``+[^\n]+((?:[^\n]|\n(?!#))*)', txt): - for card, uri in re.findall(r'^n [A-Z@][^\n]*(\{.:.\}) *(\S+:\S+)', block, re.M): - rule_becomes.setdefault(rule,[]).append((card, uri)) - for r2, card in re.findall(r'^n <<([^>]*)>>[^\n]*(\{.:.\})', block, re.M): - rule_becomes_rule.setdefault(rule,[]).append((card, r2)) - # Fixed-point rule-to-rule resolution - again = True - while again: - again = False - for r1,rset in tuple(rule_becomes_rule.items()): - flat = True - for c,r2 in rset: - if r2 in rule_becomes_rule: - flat = False - if flat: - for c,r2 in rset: - rule_becomes.setdefault(r1,[]).extend((joint_card(c,c2),uri) for (c2,uri) in rule_becomes[r2]) - del rule_becomes_rule[r1] - else: - again = True - return rule_becomes - -def new_key(val, d, *keys, msg=''): - """Helper method to add to a (nested) dict and raise if present""" - for k in keys[:-1]: - d = d.setdefault(k, {}) - if keys[-1] in d: - if d[keys[-1]] != val: - raise Exception(msg+'Duplicate key: '+str(keys)) - else: d[keys[-1]] = val - -def parse_gedstruct(txt, rules, dtypes): - """Reads through all gedstruct blocks to find payloads, substructures, and superstructures""" - sup,sub,payload = {'g7:CONT':[]}, {}, {} - for block in re.findall(r'```[^\n]*gedstruct[^\n]*\n([^`]*)\n```', txt): - stack = [] - for line in block.split('\n'): - parts = line.strip().split() - if len(parts) < 3: - if line not in ('[','|',']'): - raise Exception('Invalid gedstruct line: '+repr(line)) - continue - if parts[1].startswith('@'): del parts[1] - if parts[0] == 'n': stack = [] - else: - n = int(parts[0]) - while n < len(stack): stack.pop() - if parts[1].startswith('<'): - card = parts[2] - if len(stack): - for c,u in rules[parts[1][2:-2]]: - new_key(joint_card(card,c), sup, u, stack[-1], msg='rule sup: ') - new_key(joint_card(card,c), sub, stack[-1], u, msg='rule sub: ') - else: - uri = parts[-1] - card = parts[-2] - if len(parts) > 4: - p = ' '.join(parts[2:-2])[1:-1] - if p.startswith('': pass - else: p = dtypes[p] - else: p = None - new_key(p, payload, uri, msg='payload: ') - if len(stack): - new_key(card, sup, uri, stack[-1], msg='line sup: ') - new_key(card, sub, stack[-1], uri, msg='line sub: ') - stack.append(uri) - return {k:{'sub':sub.get(k,[]),'sup':sup.get(k,[]),'pay':payload.get(k)} for k in sub.keys()|sup.keys()|payload.keys()} - -def find_descriptions(txt, g7, ssp): - """Collects structure definitions as follows: - - - Sections '#+ TAG (Name) `g7:FULL.TAG`' - - Sections '#+ `RULE` :=' with only one level-n struct - - Rows in tables 'Tag | Name
URI | Description' - - Returns a {section header:[list,of,uris]} mapping - """ - - # structure sections - for name,uri,desc in re.findall(r'#+ `[^`]*`[^\n]*\(([^)]*)\)[^\n]*`([^:`\n]*:[^`\n]*)`[^\n]*\n+((?:\n+(?!#)|[^\n])*)', txt): - if uri not in ssp: - raise Exception('Found section for '+uri+' but no gedstruct') - if uri.startswith('g7:') or uri.startswith('g7.1:'): - slug = uri[uri.find(':')+1:] - g7.setdefault(slug,('structure',[],ssp[uri],name.strip()))[1].extend(( - name.strip(), - desc.strip() - )) - for other in re.findall(r'[Aa] type of `(\S*)`', desc): - m = re.search('^#+ +`'+other+r'`[^\n`]*\n((?:[^\n]+|\n+(?!#))*)', txt, re.M) - if m: - g7[uri[uri.find(':')+1:]][1].append(m.group(1).strip()) - - # error check that gedstruct and sections align - for uri in ssp: - if uri.startswith('g7:') and uri[3:] not in g7: - raise Exception('Found gedstruct for '+uri+' but no section') - if uri.startswith('g7.1:') and uri[5:] not in g7: - raise Exception('Found gedstruct for '+uri+' but no section') - - # gedstruct sections - for uri, desc in re.findall(r'#+ *`[^`]*` *:=[^\n]*\n+`+[^\n]*\n+n [^\n]*\} *(\S+:\S+) *(?:\n [^\n]*)*\n`+[^\n]*\n+((?:[^\n]|\n(?!#))*)', txt): - g7[uri[uri.find(':')+1:]][1].append(desc.strip()) - - tagsets = {} - # tag tables - for table in re.finditer(r'\n#+ (\S[-A-Za-z0-9 ]*[a-z0-9])[^#]*?Tag *\| *Name[^|\n]*\| *Description[^\n]*((?:\n[^\n|]*\|[^\n|]*\|[^\n]*)*)', txt): - pfx = '' - header = table.group(1) - if header.startswith('Fam'): pfx = 'FAM-' - if header.startswith('Indi'): pfx = 'INDI-' - for tag, name, desc in re.findall(r'`([A-Z_0-9]+)` *\| *([^|\n]*?) *\| *([^|\n]*[^ |\n]) *', table.group(2)): - if '\`\`\`gedcom and \`\`\` {.gedstruct .long} headers - - markdown inside HTML between lines `
` and `
` (only inside lists) and between definition list tags `
`, `
`, and `
` (only in acknowledgements) - - code blocks with no leading blank line - - tables with `|---|:--|` format - - tables with `--- | --- | ---` format - - Not part of GFM: - - - YAML front matter - - divs with `:::class` headers and `:::` footers - - automatic links with `[name of section to link to]` - - inline code with class `1 NO MARR`{.gedcom} (used only once) - - pip install mdformat-gfm - """ - global prefixes - for k,v in prefixes.items(): - md = re.sub(r'\b'+k+':', v, md) - - # for now ignoring YAML frontmatter - md = re.sub(r':::(\S+)', r'
\n', md) # convert ::: divs to
s - md = re.sub(r':::', '\n
', md) # convert ::: divs to
s - md = re.sub(r'\]\([^\)]*\)({[^}]*})?', ']', md) # remove links - md = re.sub(r'`{\.\S+\}', '`', md) # remove inline code classes - - import mdformat - out = mdformat.text(md, extensions={"gfm"}, options={"number":True, "wrap":width}) - - return out.rstrip().replace('\n','\n'+' '*indent).replace('\[','[').replace('\]',']') - -def yaml_str_helper(pfx, md, width=79): - txt = tidy_markdown(md, len(pfx), width) - if ('\n'+' '*len(pfx)+'\n') in txt: return pfx + '|\n' + ' '*len(pfx) + txt - if ': ' in txt or txt.startswith('@'): - if '"' in txt: return pfx + '|\n' + ' '*len(pfx) + txt - else: return pfx+'"' + txt + '"' - return pfx + txt - -def expand_prefix(txt, prefixes): - global prerelease - for key in sorted(prefixes.keys(), key=lambda x:-len(x)): - k = key+':' - if txt.startswith(k): - uri = prefixes[key] + txt[len(k):] - if 'https://gedcom.io/terms/v7.1/' in uri: - prerelease = True - return uri - if 'https://gedcom.io/terms/v7.1/' in txt: - prerelease = True - return txt - -if __name__ == '__main__': - # URI definitions - g7 = {} - specs, dest = get_paths() - txt = get_text(specs) - - prefixes = get_prefixes(txt) - prefix_of = {} # generally {tag: 'g7'} or {"record-REPO":"g7.1"} but sometimes {"month-":"g7"} for a set of values - for [pfx,slug] in re.findall('('+'|'.join(prefixes)+r'):([^\s`<>]+)', txt): - assert prefix_of.get(slug,pfx) == pfx, f"Multiple prefixes for {slug}: {prefix_of[slug]} and {pfx}" - prefix_of[slug] = pfx - def addpfx(tag): - if tag in prefix_of: return prefix_of[tag]+':'+tag - if '-' in tag: - lead = tag[:tag.find('-')+1] - if lead in prefix_of: return prefix_of[lead]+':'+tag - assert False, 'no prefix for '+tag+' in '+str(prefix_of) - dtypes = find_data_types(txt, g7) - rules = parse_rules(txt) - ssp = parse_gedstruct(txt, rules, dtypes) - tagsets = find_descriptions(txt, g7, ssp) - enums, calendars = find_cat_tables(txt, g7, tagsets) - find_enum_by_link(txt, enums, tagsets) - for k in enums: - g7[k[k.find(':')+1:]] = ('enumeration set',[]) - enumsets = find_enumsets(txt) - find_calendars(txt, g7) - dtypes_inv = {expand_prefix(v,prefixes):k for k,v in dtypes.items()} - - struct_lookup = [] - enum_lookup = [] - enumset_lookup = [] - payload_lookup = [] - cardinality_lookup = [] - - for tag in g7: - print('outputting', tag, '...', end=' ') - prerelease = False - maybe = join(dirname(specs[0]),'terms',tag) - if exists(maybe): - copyfile(maybe, join(dest,tag)) - print('by copying', maybe, '...', end=' ') - continue - thispath = join(dest,tag.replace('#','-')) - with open(thispath, 'w') as fh: - fh.write('%YAML 1.2\n---\n') - print('lang: en-US', file=fh) - print('\ntype:',g7[tag][0], file=fh) - - uri = expand_prefix(addpfx(tag),prefixes) - print('\nuri:', uri, file=fh) - - if g7[tag][0] in ('structure', 'enumeration', 'calendar', 'month'): - ptag = re.sub(r'.*-', '', re.sub(r'-[A-Z]?[a-z].*', '', tag)) - print('\nstandard tag: '+repr(ptag), file=fh) - - if g7[tag][0] == 'data type': - production = dtypes_inv[uri].replace(':','-') - if any('```abnf' in spec and re.search('^'+production+' *= ', spec, re.M) for spec in g7[tag][1]): - print('\nabnf production:',production, file=fh) - - if len(g7[tag][1]) > 0: - print('\nspecification:', file=fh) - for desc in g7[tag][1]: - print(yaml_str_helper(' - ', desc), file=fh) - - if len(g7[tag]) > 3: - print('\nlabel:',repr(g7[tag][3]), file=fh) - - if g7[tag][0] == 'structure': - d = g7[tag][2] - payload = expand_prefix(d['pay'],prefixes) if d['pay'] is not None else 'null' - if payload[0] == '@' or ': ' in payload: - print('\npayload: "'+payload+'"', file=fh) - else: - print('\npayload:', payload, file=fh) - payload_lookup.append([uri, payload if payload != 'null' else '']) - if d['pay'] and 'Enum' in d['pay']: - setname = expand_prefix(enumsets[addpfx(tag)],prefixes) - print('\nenumeration set: "'+setname+'"', file=fh) - enum_lookup.append([uri,setname]) - # print('\nenumeration values:', file=fh) - # for k in sorted(enums[tag]): - # penum = re.sub(r'.*[-:/]', '', k) - # puri = expand_prefix(k,prefixes) - # print(' -', expand_prefix(k,prefixes), file=fh) - # enum_lookup.append([uri,penum,puri]) - if d['sub']: - print('\nsubstructures:', file=fh) - for k,v in sorted(d['sub'].items()): - print(' "'+expand_prefix(k,prefixes)+'": "'+v+'"', file=fh) - else: print('\nsubstructures: {}', file=fh) - if d['sup']: - print('\nsuperstructures:', file=fh) - for k,v in sorted(d['sup'].items()): - suri = expand_prefix(k,prefixes) - print(' "'+suri+'": "'+v+'"', file=fh) - struct_lookup.append([suri,ptag,uri]) - cardinality_lookup.append([suri,uri,v]) - else: - print('\nsuperstructures: {}', file=fh) - struct_lookup.append(['',ptag,uri]) - elif g7[tag][0] == 'calendar': - print('\nmonths:', file=fh) - for k in calendars[addpfx(tag)]: - print(' - "'+expand_prefix(k, prefixes)+'"', file=fh) - if len(g7[tag][2]) == 0: - print('\nepochs: []', file=fh) - else: - print('\nepochs:', file=fh) - for epoch in g7[tag][2]: - print(' -', epoch, file=fh) - elif g7[tag][0] == 'month': - print('\ncalendars:', file=fh) - for k in calendars[addpfx(tag)]: - print(' - "'+expand_prefix(k, prefixes)+'"', file=fh) - elif g7[tag][0] == 'enumeration set': - print('\nenumeration values:', file=fh) - for k in enums[addpfx(tag)]: - valname = expand_prefix(k, prefixes) - print(' - "'+valname+'"', file=fh) - enumset_lookup.append([uri, valname]) - print('\nstandard: true', file=fh) - - # handle use in enumerations (which can include any tag type) - is_used_by = False - for tag2 in sorted(enums): - if (addpfx(tag)) in enums[tag2]: - if not is_used_by: - print('\nvalue of:', file=fh) - is_used_by = True - print(' - "'+expand_prefix(tag2,prefixes)+'"', file=fh) - - if prerelease: - print('\nprerelease: true', file=fh) - - # manually check for v7.1 subsuming v7.0 - if '/v7.1/' in uri: - res = run(['git','show','main:'+thispath], capture_output=True) - if not res.returncode: - print('\nsubsumes:', uri.replace('/v7.1/','/v7/'), file=fh) - - print('\ncontact: "https://gedcom.io/community/"', file=fh) - fh.write('...\n') - - print('done') - - for path in glob(join(dirname(specs[0]),'terms','*')): - tag = basename(path) - if tag not in g7: - print('copying', tag, '...', end=' ') - copyfile(path, join(dest,tag)) - print('done') - - if dest.endswith('/'): dest=dest[:-1] - base = dirname(dest) - for data,name in [ - (struct_lookup, join(base,'substructures.tsv')), - (enum_lookup, join(base,'enumerations.tsv')), - (enumset_lookup, join(base,'enumerationsets.tsv')), - (payload_lookup, join(base,'payloads.tsv')), - (cardinality_lookup, join(base,'cardinalities.tsv')), - ]: - print('outputting', name, '...', end=' ') - with open(name, 'w') as f: - for row in data: - print('\t'.join(row), file=f) - print('done') - diff --git a/extracted-files/cardinalities.tsv b/extracted-files/cardinalities.tsv index f72df913..eb7d3099 100644 --- a/extracted-files/cardinalities.tsv +++ b/extracted-files/cardinalities.tsv @@ -54,7 +54,7 @@ https://gedcom.io/terms/v7/RETI https://gedcom.io/terms/v7/ADDR {0:1} https://gedcom.io/terms/v7/SSN https://gedcom.io/terms/v7/ADDR {0:1} https://gedcom.io/terms/v7/WILL https://gedcom.io/terms/v7/ADDR {0:1} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/ADOP {0:M} -https://gedcom.io/terms/v7/ADOP-FAMC https://gedcom.io/terms/v7/FAMC-ADOP {0:1} +https://gedcom.io/terms/v7/ADOP https://gedcom.io/terms/v7/ADOP-FAMC {0:1} https://gedcom.io/terms/v7/ADDR https://gedcom.io/terms/v7/ADR1 {0:1} https://gedcom.io/terms/v7/ADDR https://gedcom.io/terms/v7/ADR2 {0:1} https://gedcom.io/terms/v7/ADDR https://gedcom.io/terms/v7/ADR3 {0:1} @@ -266,8 +266,6 @@ https://gedcom.io/terms/v7/PROP https://gedcom.io/terms/v7/CAUS {0:1} https://gedcom.io/terms/v7/RETI https://gedcom.io/terms/v7/CAUS {0:1} https://gedcom.io/terms/v7/SSN https://gedcom.io/terms/v7/CAUS {0:1} https://gedcom.io/terms/v7/WILL https://gedcom.io/terms/v7/CAUS {0:1} -https://gedcom.io/terms/v7/record-FAM https://gedcom.io/terms/v7/FAM-CENS {0:M} -https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/INDI-CENS {0:M} https://gedcom.io/terms/v7.1/record-REPO https://gedcom.io/terms/v7/CHAN {0:1} https://gedcom.io/terms/v7.1/record-SNOTE https://gedcom.io/terms/v7/CHAN {0:1} https://gedcom.io/terms/v7.1/record-SOUR https://gedcom.io/terms/v7/CHAN {0:1} @@ -276,8 +274,8 @@ https://gedcom.io/terms/v7/record-FAM https://gedcom.io/terms/v7/CHAN {0:1} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/CHAN {0:1} https://gedcom.io/terms/v7/record-OBJE https://gedcom.io/terms/v7/CHAN {0:1} https://gedcom.io/terms/v7/record-FAM https://gedcom.io/terms/v7/CHIL {0:M} -https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/CHRA {0:M} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/CHR {0:M} +https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/CHRA {0:M} https://gedcom.io/terms/v7/ADDR https://gedcom.io/terms/v7/CITY {0:1} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/CONF {0:M} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/CONL {0:M} @@ -295,8 +293,8 @@ https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/CREM {0:M} https://gedcom.io/terms/v7/OBJE https://gedcom.io/terms/v7/CROP {0:1} https://gedcom.io/terms/v7/ADDR https://gedcom.io/terms/v7/CTRY {0:1} https://gedcom.io/terms/v7.1/record-SOUR https://gedcom.io/terms/v7/DATA {0:1} -https://gedcom.io/terms/v7/SOUR https://gedcom.io/terms/v7/SOUR-DATA {0:1} -https://gedcom.io/terms/v7/HEAD-SOUR https://gedcom.io/terms/v7/HEAD-SOUR-DATA {0:1} +https://gedcom.io/terms/v7/DATA https://gedcom.io/terms/v7/DATA-EVEN {0:M} +https://gedcom.io/terms/v7/DATA-EVEN https://gedcom.io/terms/v7/DATA-EVEN-DATE {0:1} https://gedcom.io/terms/v7/ADOP https://gedcom.io/terms/v7/DATE {0:1} https://gedcom.io/terms/v7/ANUL https://gedcom.io/terms/v7/DATE {0:1} https://gedcom.io/terms/v7/BAPL https://gedcom.io/terms/v7/DATE {0:1} @@ -359,14 +357,11 @@ https://gedcom.io/terms/v7/CHAN https://gedcom.io/terms/v7/DATE-exact {1:1} https://gedcom.io/terms/v7/CREA https://gedcom.io/terms/v7/DATE-exact {1:1} https://gedcom.io/terms/v7/HEAD-SOUR-DATA https://gedcom.io/terms/v7/DATE-exact {0:1} https://gedcom.io/terms/v7/ord-STAT https://gedcom.io/terms/v7/DATE-exact {1:1} -https://gedcom.io/terms/v7/HEAD https://gedcom.io/terms/v7/HEAD-DATE {0:1} -https://gedcom.io/terms/v7/NO https://gedcom.io/terms/v7/NO-DATE {0:1} -https://gedcom.io/terms/v7/DATA-EVEN https://gedcom.io/terms/v7/DATA-EVEN-DATE {0:1} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/DEAT {0:M} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/DESI {0:M} https://gedcom.io/terms/v7/HEAD https://gedcom.io/terms/v7/DEST {0:1} -https://gedcom.io/terms/v7/record-FAM https://gedcom.io/terms/v7/DIVF {0:M} https://gedcom.io/terms/v7/record-FAM https://gedcom.io/terms/v7/DIV {0:M} +https://gedcom.io/terms/v7/record-FAM https://gedcom.io/terms/v7/DIVF {0:M} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/DSCR {0:M} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/EDUC {0:M} https://gedcom.io/terms/v7.1/record-REPO https://gedcom.io/terms/v7/EMAIL {0:M} @@ -426,10 +421,6 @@ https://gedcom.io/terms/v7/WILL https://gedcom.io/terms/v7/EMAIL {0:M} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/EMIG {0:M} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/ENDL {0:M} https://gedcom.io/terms/v7/record-FAM https://gedcom.io/terms/v7/ENGA {0:M} -https://gedcom.io/terms/v7/record-FAM https://gedcom.io/terms/v7/FAM-EVEN {0:M} -https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/INDI-EVEN {0:M} -https://gedcom.io/terms/v7/DATA https://gedcom.io/terms/v7/DATA-EVEN {0:M} -https://gedcom.io/terms/v7/SOUR https://gedcom.io/terms/v7/SOUR-EVEN {0:1} https://gedcom.io/terms/v7.1/record-REPO https://gedcom.io/terms/v7/EXID {0:M} https://gedcom.io/terms/v7.1/record-SNOTE https://gedcom.io/terms/v7/EXID {0:M} https://gedcom.io/terms/v7.1/record-SOUR https://gedcom.io/terms/v7/EXID {0:M} @@ -438,13 +429,19 @@ https://gedcom.io/terms/v7/PLAC https://gedcom.io/terms/v7/EXID {0:M} https://gedcom.io/terms/v7/record-FAM https://gedcom.io/terms/v7/EXID {0:M} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/EXID {0:M} https://gedcom.io/terms/v7/record-OBJE https://gedcom.io/terms/v7/EXID {0:M} +https://gedcom.io/terms/v7/EXID https://gedcom.io/terms/v7/EXID-TYPE {0:1} +https://gedcom.io/terms/v7/record-FAM https://gedcom.io/terms/v7/FAM-CENS {0:M} +https://gedcom.io/terms/v7/record-FAM https://gedcom.io/terms/v7/FAM-EVEN {0:M} https://gedcom.io/terms/v7/record-FAM https://gedcom.io/terms/v7/FAM-FACT {0:M} -https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/INDI-FACT {0:M} -https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/INDI-FAMC {0:M} +https://gedcom.io/terms/v7/record-FAM https://gedcom.io/terms/v7/FAM-HUSB {0:1} +https://gedcom.io/terms/v7/record-FAM https://gedcom.io/terms/v7/FAM-NCHI {0:M} +https://gedcom.io/terms/v7/record-FAM https://gedcom.io/terms/v7/FAM-RESI {0:M} +https://gedcom.io/terms/v7/record-FAM https://gedcom.io/terms/v7/FAM-WIFE {0:1} https://gedcom.io/terms/v7/BIRT https://gedcom.io/terms/v7/FAMC {0:1} https://gedcom.io/terms/v7/CHR https://gedcom.io/terms/v7/FAMC {0:1} https://gedcom.io/terms/v7/SLGC https://gedcom.io/terms/v7/FAMC {1:1} -https://gedcom.io/terms/v7/ADOP https://gedcom.io/terms/v7/ADOP-FAMC {0:1} +https://gedcom.io/terms/v7/ADOP-FAMC https://gedcom.io/terms/v7/FAMC-ADOP {0:1} +https://gedcom.io/terms/v7/INDI-FAMC https://gedcom.io/terms/v7/FAMC-STAT {0:1} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/FAMS {0:M} https://gedcom.io/terms/v7.1/record-REPO https://gedcom.io/terms/v7/FAX {0:M} https://gedcom.io/terms/v7.1/record-SUBM https://gedcom.io/terms/v7/FAX {0:M} @@ -502,14 +499,20 @@ https://gedcom.io/terms/v7/SSN https://gedcom.io/terms/v7/FAX {0:M} https://gedcom.io/terms/v7/WILL https://gedcom.io/terms/v7/FAX {0:M} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/FCOM {0:M} https://gedcom.io/terms/v7/record-OBJE https://gedcom.io/terms/v7/FILE {1:M} +https://gedcom.io/terms/v7/FILE https://gedcom.io/terms/v7/FILE-TRAN {0:M} https://gedcom.io/terms/v7/FILE https://gedcom.io/terms/v7/FORM {1:1} https://gedcom.io/terms/v7/FILE-TRAN https://gedcom.io/terms/v7/FORM {1:1} -https://gedcom.io/terms/v7/PLAC https://gedcom.io/terms/v7/PLAC-FORM {0:1} -https://gedcom.io/terms/v7/HEAD-PLAC https://gedcom.io/terms/v7/HEAD-PLAC-FORM {1:1} https://gedcom.io/terms/v7/HEAD https://gedcom.io/terms/v7/GEDC {1:1} +https://gedcom.io/terms/v7/GEDC https://gedcom.io/terms/v7/GEDC-VERS {1:1} https://gedcom.io/terms/v7/INDI-NAME https://gedcom.io/terms/v7/GIVN {0:M} https://gedcom.io/terms/v7/NAME-TRAN https://gedcom.io/terms/v7/GIVN {0:M} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/GRAD {0:M} +https://gedcom.io/terms/v7/HEAD https://gedcom.io/terms/v7/HEAD-DATE {0:1} +https://gedcom.io/terms/v7/HEAD https://gedcom.io/terms/v7/HEAD-LANG {0:1} +https://gedcom.io/terms/v7/HEAD https://gedcom.io/terms/v7/HEAD-PLAC {0:1} +https://gedcom.io/terms/v7/HEAD-PLAC https://gedcom.io/terms/v7/HEAD-PLAC-FORM {1:1} +https://gedcom.io/terms/v7/HEAD https://gedcom.io/terms/v7/HEAD-SOUR {0:1} +https://gedcom.io/terms/v7/HEAD-SOUR https://gedcom.io/terms/v7/HEAD-SOUR-DATA {0:1} https://gedcom.io/terms/v7/CROP https://gedcom.io/terms/v7/HEIGHT {0:1} https://gedcom.io/terms/v7/ANUL https://gedcom.io/terms/v7/HUSB {0:1} https://gedcom.io/terms/v7/DIV https://gedcom.io/terms/v7/HUSB {0:1} @@ -525,9 +528,17 @@ https://gedcom.io/terms/v7/MARC https://gedcom.io/terms/v7/HUSB {0:1} https://gedcom.io/terms/v7/MARL https://gedcom.io/terms/v7/HUSB {0:1} https://gedcom.io/terms/v7/MARR https://gedcom.io/terms/v7/HUSB {0:1} https://gedcom.io/terms/v7/MARS https://gedcom.io/terms/v7/HUSB {0:1} -https://gedcom.io/terms/v7/record-FAM https://gedcom.io/terms/v7/FAM-HUSB {0:1} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/IDNO {0:M} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/IMMI {0:M} +https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/INDI-CENS {0:M} +https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/INDI-EVEN {0:M} +https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/INDI-FACT {0:M} +https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/INDI-FAMC {0:M} +https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/INDI-NAME {0:M} +https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/INDI-NCHI {0:M} +https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/INDI-RELI {0:M} +https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/INDI-RESI {0:M} +https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/INDI-TITL {0:M} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/INIL {0:M} https://gedcom.io/terms/v7.1/record-SNOTE https://gedcom.io/terms/v7/LANG {0:1} https://gedcom.io/terms/v7/NAME-TRAN https://gedcom.io/terms/v7/LANG {1:1} @@ -536,8 +547,6 @@ https://gedcom.io/terms/v7/NOTE-TRAN https://gedcom.io/terms/v7/LANG {0:1} https://gedcom.io/terms/v7/PLAC https://gedcom.io/terms/v7/LANG {0:1} https://gedcom.io/terms/v7/PLAC-TRAN https://gedcom.io/terms/v7/LANG {1:1} https://gedcom.io/terms/v7/TEXT https://gedcom.io/terms/v7/LANG {0:1} -https://gedcom.io/terms/v7/HEAD https://gedcom.io/terms/v7/HEAD-LANG {0:1} -https://gedcom.io/terms/v7.1/record-SUBM https://gedcom.io/terms/v7/SUBM-LANG {0:M} https://gedcom.io/terms/v7/MAP https://gedcom.io/terms/v7/LATI {1:1} https://gedcom.io/terms/v7/CROP https://gedcom.io/terms/v7/LEFT {0:1} https://gedcom.io/terms/v7/MAP https://gedcom.io/terms/v7/LONG {1:1} @@ -556,16 +565,16 @@ https://gedcom.io/terms/v7/TEXT https://gedcom.io/terms/v7/MIME {0:1} https://gedcom.io/terms/v7.1/record-REPO https://gedcom.io/terms/v7/NAME {1:1} https://gedcom.io/terms/v7.1/record-SUBM https://gedcom.io/terms/v7/NAME {1:1} https://gedcom.io/terms/v7/HEAD-SOUR https://gedcom.io/terms/v7/NAME {0:1} -https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/INDI-NAME {0:M} +https://gedcom.io/terms/v7/INDI-NAME https://gedcom.io/terms/v7/NAME-TRAN {0:M} +https://gedcom.io/terms/v7/INDI-NAME https://gedcom.io/terms/v7/NAME-TYPE {0:1} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/NATI {0:M} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/NATU {0:M} -https://gedcom.io/terms/v7/record-FAM https://gedcom.io/terms/v7/FAM-NCHI {0:M} -https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/INDI-NCHI {0:M} https://gedcom.io/terms/v7/INDI-NAME https://gedcom.io/terms/v7/NICK {0:M} https://gedcom.io/terms/v7/NAME-TRAN https://gedcom.io/terms/v7/NICK {0:M} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/NMR {0:M} https://gedcom.io/terms/v7/record-FAM https://gedcom.io/terms/v7/NO {0:M} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/NO {0:M} +https://gedcom.io/terms/v7/NO https://gedcom.io/terms/v7/NO-DATE {0:1} https://gedcom.io/terms/v7.1/record-REPO https://gedcom.io/terms/v7/NOTE {0:M} https://gedcom.io/terms/v7.1/record-SOUR https://gedcom.io/terms/v7/NOTE {0:M} https://gedcom.io/terms/v7.1/record-SUBM https://gedcom.io/terms/v7/NOTE {0:M} @@ -640,6 +649,8 @@ https://gedcom.io/terms/v7/WILL https://gedcom.io/terms/v7/NOTE {0:M} https://gedcom.io/terms/v7/record-FAM https://gedcom.io/terms/v7/NOTE {0:M} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/NOTE {0:M} https://gedcom.io/terms/v7/record-OBJE https://gedcom.io/terms/v7/NOTE {0:M} +https://gedcom.io/terms/v7.1/record-SNOTE https://gedcom.io/terms/v7/NOTE-TRAN {0:M} +https://gedcom.io/terms/v7/NOTE https://gedcom.io/terms/v7/NOTE-TRAN {0:M} https://gedcom.io/terms/v7/INDI-NAME https://gedcom.io/terms/v7/NPFX {0:M} https://gedcom.io/terms/v7/NAME-TRAN https://gedcom.io/terms/v7/NPFX {0:M} https://gedcom.io/terms/v7/INDI-NAME https://gedcom.io/terms/v7/NSFX {0:M} @@ -833,7 +844,8 @@ https://gedcom.io/terms/v7/SLGC https://gedcom.io/terms/v7/PLAC {0:1} https://gedcom.io/terms/v7/SLGS https://gedcom.io/terms/v7/PLAC {0:1} https://gedcom.io/terms/v7/SSN https://gedcom.io/terms/v7/PLAC {0:1} https://gedcom.io/terms/v7/WILL https://gedcom.io/terms/v7/PLAC {0:1} -https://gedcom.io/terms/v7/HEAD https://gedcom.io/terms/v7/HEAD-PLAC {0:1} +https://gedcom.io/terms/v7/PLAC https://gedcom.io/terms/v7/PLAC-FORM {0:1} +https://gedcom.io/terms/v7/PLAC https://gedcom.io/terms/v7/PLAC-TRAN {0:M} https://gedcom.io/terms/v7/ADDR https://gedcom.io/terms/v7/POST {0:1} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/PROB {0:M} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/PROP {0:M} @@ -897,7 +909,7 @@ https://gedcom.io/terms/v7/PROP https://gedcom.io/terms/v7/RELI {0:1} https://gedcom.io/terms/v7/RETI https://gedcom.io/terms/v7/RELI {0:1} https://gedcom.io/terms/v7/SSN https://gedcom.io/terms/v7/RELI {0:1} https://gedcom.io/terms/v7/WILL https://gedcom.io/terms/v7/RELI {0:1} -https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/INDI-RELI {0:M} +https://gedcom.io/terms/v7.1/record-SOUR https://gedcom.io/terms/v7/REPO {0:M} https://gedcom.io/terms/v7.1/record-REPO https://gedcom.io/terms/v7/RESN {0:1} https://gedcom.io/terms/v7.1/record-SNOTE https://gedcom.io/terms/v7/RESN {0:1} https://gedcom.io/terms/v7.1/record-SOUR https://gedcom.io/terms/v7/RESN {0:1} @@ -956,9 +968,6 @@ https://gedcom.io/terms/v7/WILL https://gedcom.io/terms/v7/RESN {0:1} https://gedcom.io/terms/v7/record-FAM https://gedcom.io/terms/v7/RESN {0:1} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/RESN {0:1} https://gedcom.io/terms/v7/record-OBJE https://gedcom.io/terms/v7/RESN {0:1} -https://gedcom.io/terms/v7.1/record-SOUR https://gedcom.io/terms/v7/REPO {0:M} -https://gedcom.io/terms/v7/record-FAM https://gedcom.io/terms/v7/FAM-RESI {0:M} -https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/INDI-RESI {0:M} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/RETI {0:M} https://gedcom.io/terms/v7/ASSO https://gedcom.io/terms/v7/ROLE {1:1} https://gedcom.io/terms/v7/SOUR-EVEN https://gedcom.io/terms/v7/ROLE {0:1} @@ -1156,21 +1165,16 @@ https://gedcom.io/terms/v7/WILL https://gedcom.io/terms/v7/SOUR {0:M} https://gedcom.io/terms/v7/record-FAM https://gedcom.io/terms/v7/SOUR {0:M} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/SOUR {0:M} https://gedcom.io/terms/v7/record-OBJE https://gedcom.io/terms/v7/SOUR {0:M} -https://gedcom.io/terms/v7/HEAD https://gedcom.io/terms/v7/HEAD-SOUR {0:1} +https://gedcom.io/terms/v7/SOUR https://gedcom.io/terms/v7/SOUR-DATA {0:1} +https://gedcom.io/terms/v7/SOUR https://gedcom.io/terms/v7/SOUR-EVEN {0:1} https://gedcom.io/terms/v7/INDI-NAME https://gedcom.io/terms/v7/SPFX {0:M} https://gedcom.io/terms/v7/NAME-TRAN https://gedcom.io/terms/v7/SPFX {0:M} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/SSN {0:M} https://gedcom.io/terms/v7/ADDR https://gedcom.io/terms/v7/STAE {0:1} -https://gedcom.io/terms/v7/BAPL https://gedcom.io/terms/v7/ord-STAT {0:1} -https://gedcom.io/terms/v7/CONL https://gedcom.io/terms/v7/ord-STAT {0:1} -https://gedcom.io/terms/v7/ENDL https://gedcom.io/terms/v7/ord-STAT {0:1} -https://gedcom.io/terms/v7/INIL https://gedcom.io/terms/v7/ord-STAT {0:1} -https://gedcom.io/terms/v7/SLGC https://gedcom.io/terms/v7/ord-STAT {0:1} -https://gedcom.io/terms/v7/SLGS https://gedcom.io/terms/v7/ord-STAT {0:1} -https://gedcom.io/terms/v7/INDI-FAMC https://gedcom.io/terms/v7/FAMC-STAT {0:1} https://gedcom.io/terms/v7/HEAD https://gedcom.io/terms/v7/SUBM {0:1} https://gedcom.io/terms/v7/record-FAM https://gedcom.io/terms/v7/SUBM {0:M} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/SUBM {0:M} +https://gedcom.io/terms/v7.1/record-SUBM https://gedcom.io/terms/v7/SUBM-LANG {0:M} https://gedcom.io/terms/v7/INDI-NAME https://gedcom.io/terms/v7/SURN {0:M} https://gedcom.io/terms/v7/NAME-TRAN https://gedcom.io/terms/v7/SURN {0:M} https://gedcom.io/terms/v7/SCHMA https://gedcom.io/terms/v7/TAG {0:M} @@ -1189,13 +1193,7 @@ https://gedcom.io/terms/v7/SDATE https://gedcom.io/terms/v7/TIME {0:1} https://gedcom.io/terms/v7.1/record-SOUR https://gedcom.io/terms/v7/TITL {0:1} https://gedcom.io/terms/v7/FILE https://gedcom.io/terms/v7/TITL {0:1} https://gedcom.io/terms/v7/OBJE https://gedcom.io/terms/v7/TITL {0:1} -https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/INDI-TITL {0:M} https://gedcom.io/terms/v7/CROP https://gedcom.io/terms/v7/TOP {0:1} -https://gedcom.io/terms/v7/INDI-NAME https://gedcom.io/terms/v7/NAME-TRAN {0:M} -https://gedcom.io/terms/v7/PLAC https://gedcom.io/terms/v7/PLAC-TRAN {0:M} -https://gedcom.io/terms/v7.1/record-SNOTE https://gedcom.io/terms/v7/NOTE-TRAN {0:M} -https://gedcom.io/terms/v7/NOTE https://gedcom.io/terms/v7/NOTE-TRAN {0:M} -https://gedcom.io/terms/v7/FILE https://gedcom.io/terms/v7/FILE-TRAN {0:M} https://gedcom.io/terms/v7/ADOP https://gedcom.io/terms/v7/TYPE {0:1} https://gedcom.io/terms/v7/ANUL https://gedcom.io/terms/v7/TYPE {0:1} https://gedcom.io/terms/v7/BAPM https://gedcom.io/terms/v7/TYPE {0:1} @@ -1248,8 +1246,6 @@ https://gedcom.io/terms/v7/REFN https://gedcom.io/terms/v7/TYPE {0:1} https://gedcom.io/terms/v7/RETI https://gedcom.io/terms/v7/TYPE {0:1} https://gedcom.io/terms/v7/SSN https://gedcom.io/terms/v7/TYPE {0:1} https://gedcom.io/terms/v7/WILL https://gedcom.io/terms/v7/TYPE {0:1} -https://gedcom.io/terms/v7/INDI-NAME https://gedcom.io/terms/v7/NAME-TYPE {0:1} -https://gedcom.io/terms/v7/EXID https://gedcom.io/terms/v7/EXID-TYPE {0:1} https://gedcom.io/terms/v7.1/record-REPO https://gedcom.io/terms/v7/UID {0:M} https://gedcom.io/terms/v7.1/record-SNOTE https://gedcom.io/terms/v7/UID {0:M} https://gedcom.io/terms/v7.1/record-SOUR https://gedcom.io/terms/v7/UID {0:M} @@ -1309,7 +1305,6 @@ https://gedcom.io/terms/v7/record-FAM https://gedcom.io/terms/v7/UID {0:M} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/UID {0:M} https://gedcom.io/terms/v7/record-OBJE https://gedcom.io/terms/v7/UID {0:M} https://gedcom.io/terms/v7/HEAD-SOUR https://gedcom.io/terms/v7/VERS {0:1} -https://gedcom.io/terms/v7/GEDC https://gedcom.io/terms/v7/GEDC-VERS {1:1} https://gedcom.io/terms/v7/CROP https://gedcom.io/terms/v7/WIDTH {0:1} https://gedcom.io/terms/v7/ANUL https://gedcom.io/terms/v7/WIFE {0:1} https://gedcom.io/terms/v7/DIV https://gedcom.io/terms/v7/WIFE {0:1} @@ -1325,7 +1320,6 @@ https://gedcom.io/terms/v7/MARC https://gedcom.io/terms/v7/WIFE {0:1} https://gedcom.io/terms/v7/MARL https://gedcom.io/terms/v7/WIFE {0:1} https://gedcom.io/terms/v7/MARR https://gedcom.io/terms/v7/WIFE {0:1} https://gedcom.io/terms/v7/MARS https://gedcom.io/terms/v7/WIFE {0:1} -https://gedcom.io/terms/v7/record-FAM https://gedcom.io/terms/v7/FAM-WIFE {0:1} https://gedcom.io/terms/v7/record-INDI https://gedcom.io/terms/v7/WILL {0:M} https://gedcom.io/terms/v7.1/record-REPO https://gedcom.io/terms/v7/WWW {0:M} https://gedcom.io/terms/v7.1/record-SUBM https://gedcom.io/terms/v7/WWW {0:M} @@ -1381,3 +1375,9 @@ https://gedcom.io/terms/v7/PROP https://gedcom.io/terms/v7/WWW {0:M} https://gedcom.io/terms/v7/RETI https://gedcom.io/terms/v7/WWW {0:M} https://gedcom.io/terms/v7/SSN https://gedcom.io/terms/v7/WWW {0:M} https://gedcom.io/terms/v7/WILL https://gedcom.io/terms/v7/WWW {0:M} +https://gedcom.io/terms/v7/BAPL https://gedcom.io/terms/v7/ord-STAT {0:1} +https://gedcom.io/terms/v7/CONL https://gedcom.io/terms/v7/ord-STAT {0:1} +https://gedcom.io/terms/v7/ENDL https://gedcom.io/terms/v7/ord-STAT {0:1} +https://gedcom.io/terms/v7/INIL https://gedcom.io/terms/v7/ord-STAT {0:1} +https://gedcom.io/terms/v7/SLGC https://gedcom.io/terms/v7/ord-STAT {0:1} +https://gedcom.io/terms/v7/SLGS https://gedcom.io/terms/v7/ord-STAT {0:1} diff --git a/extracted-files/enumerations.tsv b/extracted-files/enumerations.tsv index 59b9aaec..291913f1 100644 --- a/extracted-files/enumerations.tsv +++ b/extracted-files/enumerations.tsv @@ -1,13 +1,13 @@ -https://gedcom.io/terms/v7/FAMC-ADOP https://gedcom.io/terms/v7/enumset-ADOP https://gedcom.io/terms/v7/DATA-EVEN https://gedcom.io/terms/v7/enumset-EVENATTR -https://gedcom.io/terms/v7/SOUR-EVEN https://gedcom.io/terms/v7/enumset-EVENATTR +https://gedcom.io/terms/v7/FAMC-ADOP https://gedcom.io/terms/v7/enumset-ADOP +https://gedcom.io/terms/v7/FAMC-STAT https://gedcom.io/terms/v7/enumset-FAMC-STAT https://gedcom.io/terms/v7/MEDI https://gedcom.io/terms/v7/enumset-MEDI +https://gedcom.io/terms/v7/NAME-TYPE https://gedcom.io/terms/v7/enumset-NAME-TYPE https://gedcom.io/terms/v7/NO https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/PEDI https://gedcom.io/terms/v7/enumset-PEDI https://gedcom.io/terms/v7/QUAY https://gedcom.io/terms/v7/enumset-QUAY https://gedcom.io/terms/v7/RESN https://gedcom.io/terms/v7/enumset-RESN https://gedcom.io/terms/v7/ROLE https://gedcom.io/terms/v7/enumset-ROLE https://gedcom.io/terms/v7/SEX https://gedcom.io/terms/v7/enumset-SEX +https://gedcom.io/terms/v7/SOUR-EVEN https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/ord-STAT https://gedcom.io/terms/v7/enumset-ord-STAT -https://gedcom.io/terms/v7/FAMC-STAT https://gedcom.io/terms/v7/enumset-FAMC-STAT -https://gedcom.io/terms/v7/NAME-TYPE https://gedcom.io/terms/v7/enumset-NAME-TYPE diff --git a/extracted-files/enumerationsets.tsv b/extracted-files/enumerationsets.tsv index 3eb80a8f..fb2e696f 100644 --- a/extracted-files/enumerationsets.tsv +++ b/extracted-files/enumerationsets.tsv @@ -1,8 +1,8 @@ https://gedcom.io/terms/v7/enumset-ADOP https://gedcom.io/terms/v7/enum-ADOP-HUSB https://gedcom.io/terms/v7/enumset-ADOP https://gedcom.io/terms/v7/enum-ADOP-WIFE https://gedcom.io/terms/v7/enumset-ADOP https://gedcom.io/terms/v7/enum-BOTH -https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/enum-CENS https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/ADOP +https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/ANUL https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/BAPM https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/BARM https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/BASM @@ -14,70 +14,73 @@ https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/CHRA https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/CONF https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/CREM https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/DEAT +https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/DIV +https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/DIVF https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/EMIG +https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/ENGA https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/FCOM https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/GRAD https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/IMMI -https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/NATU -https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/ORDN -https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/PROB -https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/RETI -https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/WILL -https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/ANUL -https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/DIV -https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/DIVF -https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/ENGA https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/MARB https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/MARC https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/MARL https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/MARR https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/MARS -https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/enum-CENS -https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/enum-NCHI -https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/enum-RESI -https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/enum-FACT -https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/enum-EVEN +https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/NATU +https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/ORDN +https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/PROB +https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/RETI +https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/WILL +https://gedcom.io/terms/v7/enumset-EVEN https://gedcom.io/terms/v7/enum-CENS https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/ADOP +https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/ANUL https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/BAPM https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/BARM https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/BASM https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/BIRT https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/BLES https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/BURI +https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/CAST https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/CHR https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/CHRA https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/CONF https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/CREM https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/DEAT +https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/DIV +https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/DIVF +https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/DSCR +https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/EDUC https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/EMIG +https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/ENGA https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/FCOM https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/GRAD +https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/IDNO https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/IMMI -https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/NATU -https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/ORDN -https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/PROB -https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/RETI -https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/WILL -https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/ANUL -https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/DIV -https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/DIVF -https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/ENGA +https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/INDI-RELI +https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/INDI-TITL https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/MARB https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/MARC https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/MARL https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/MARR https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/MARS -https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/CAST -https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/DSCR -https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/EDUC -https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/IDNO https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/NATI +https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/NATU https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/NMR https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/OCCU +https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/ORDN +https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/PROB https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/PROP -https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/INDI-RELI +https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/RETI https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/SSN -https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/INDI-TITL +https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/WILL +https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/enum-CENS +https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/enum-EVEN +https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/enum-FACT +https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/enum-NCHI +https://gedcom.io/terms/v7/enumset-EVENATTR https://gedcom.io/terms/v7/enum-RESI +https://gedcom.io/terms/v7/enumset-FAMC-STAT https://gedcom.io/terms/v7/enum-CHALLENGED +https://gedcom.io/terms/v7/enumset-FAMC-STAT https://gedcom.io/terms/v7/enum-DISPROVEN +https://gedcom.io/terms/v7/enumset-FAMC-STAT https://gedcom.io/terms/v7/enum-PROVEN https://gedcom.io/terms/v7/enumset-MEDI https://gedcom.io/terms/v7/enum-AUDIO https://gedcom.io/terms/v7/enumset-MEDI https://gedcom.io/terms/v7/enum-BOOK https://gedcom.io/terms/v7/enumset-MEDI https://gedcom.io/terms/v7/enum-CARD @@ -88,15 +91,22 @@ https://gedcom.io/terms/v7/enumset-MEDI https://gedcom.io/terms/v7/enum-MAGAZINE https://gedcom.io/terms/v7/enumset-MEDI https://gedcom.io/terms/v7/enum-MANUSCRIPT https://gedcom.io/terms/v7/enumset-MEDI https://gedcom.io/terms/v7/enum-MAP https://gedcom.io/terms/v7/enumset-MEDI https://gedcom.io/terms/v7/enum-NEWSPAPER +https://gedcom.io/terms/v7/enumset-MEDI https://gedcom.io/terms/v7/enum-OTHER https://gedcom.io/terms/v7/enumset-MEDI https://gedcom.io/terms/v7/enum-PHOTO https://gedcom.io/terms/v7/enumset-MEDI https://gedcom.io/terms/v7/enum-TOMBSTONE https://gedcom.io/terms/v7/enumset-MEDI https://gedcom.io/terms/v7/enum-VIDEO -https://gedcom.io/terms/v7/enumset-MEDI https://gedcom.io/terms/v7/enum-OTHER +https://gedcom.io/terms/v7/enumset-NAME-TYPE https://gedcom.io/terms/v7/enum-AKA +https://gedcom.io/terms/v7/enumset-NAME-TYPE https://gedcom.io/terms/v7/enum-BIRTH +https://gedcom.io/terms/v7/enumset-NAME-TYPE https://gedcom.io/terms/v7/enum-IMMIGRANT +https://gedcom.io/terms/v7/enumset-NAME-TYPE https://gedcom.io/terms/v7/enum-MAIDEN +https://gedcom.io/terms/v7/enumset-NAME-TYPE https://gedcom.io/terms/v7/enum-MARRIED +https://gedcom.io/terms/v7/enumset-NAME-TYPE https://gedcom.io/terms/v7/enum-OTHER +https://gedcom.io/terms/v7/enumset-NAME-TYPE https://gedcom.io/terms/v7/enum-PROFESSIONAL https://gedcom.io/terms/v7/enumset-PEDI https://gedcom.io/terms/v7/enum-ADOPTED https://gedcom.io/terms/v7/enumset-PEDI https://gedcom.io/terms/v7/enum-BIRTH https://gedcom.io/terms/v7/enumset-PEDI https://gedcom.io/terms/v7/enum-FOSTER -https://gedcom.io/terms/v7/enumset-PEDI https://gedcom.io/terms/v7/enum-SEALING https://gedcom.io/terms/v7/enumset-PEDI https://gedcom.io/terms/v7/enum-OTHER +https://gedcom.io/terms/v7/enumset-PEDI https://gedcom.io/terms/v7/enum-SEALING https://gedcom.io/terms/v7/enumset-QUAY https://gedcom.io/terms/v7/enum-0 https://gedcom.io/terms/v7/enumset-QUAY https://gedcom.io/terms/v7/enum-1 https://gedcom.io/terms/v7/enumset-QUAY https://gedcom.io/terms/v7/enum-2 @@ -114,34 +124,24 @@ https://gedcom.io/terms/v7/enumset-ROLE https://gedcom.io/terms/v7/enum-MOTH https://gedcom.io/terms/v7/enumset-ROLE https://gedcom.io/terms/v7/enum-MULTIPLE https://gedcom.io/terms/v7/enumset-ROLE https://gedcom.io/terms/v7/enum-NGHBR https://gedcom.io/terms/v7/enumset-ROLE https://gedcom.io/terms/v7/enum-OFFICIATOR +https://gedcom.io/terms/v7/enumset-ROLE https://gedcom.io/terms/v7/enum-OTHER https://gedcom.io/terms/v7/enumset-ROLE https://gedcom.io/terms/v7/enum-PARENT https://gedcom.io/terms/v7/enumset-ROLE https://gedcom.io/terms/v7/enum-SPOU https://gedcom.io/terms/v7/enumset-ROLE https://gedcom.io/terms/v7/enum-WIFE https://gedcom.io/terms/v7/enumset-ROLE https://gedcom.io/terms/v7/enum-WITN -https://gedcom.io/terms/v7/enumset-ROLE https://gedcom.io/terms/v7/enum-OTHER -https://gedcom.io/terms/v7/enumset-SEX https://gedcom.io/terms/v7/enum-M https://gedcom.io/terms/v7/enumset-SEX https://gedcom.io/terms/v7/enum-F -https://gedcom.io/terms/v7/enumset-SEX https://gedcom.io/terms/v7/enum-X +https://gedcom.io/terms/v7/enumset-SEX https://gedcom.io/terms/v7/enum-M https://gedcom.io/terms/v7/enumset-SEX https://gedcom.io/terms/v7/enum-U -https://gedcom.io/terms/v7/enumset-FAMC-STAT https://gedcom.io/terms/v7/enum-CHALLENGED -https://gedcom.io/terms/v7/enumset-FAMC-STAT https://gedcom.io/terms/v7/enum-DISPROVEN -https://gedcom.io/terms/v7/enumset-FAMC-STAT https://gedcom.io/terms/v7/enum-PROVEN +https://gedcom.io/terms/v7/enumset-SEX https://gedcom.io/terms/v7/enum-X https://gedcom.io/terms/v7/enumset-ord-STAT https://gedcom.io/terms/v7/enum-BIC https://gedcom.io/terms/v7/enumset-ord-STAT https://gedcom.io/terms/v7/enum-CANCELED https://gedcom.io/terms/v7/enumset-ord-STAT https://gedcom.io/terms/v7/enum-CHILD https://gedcom.io/terms/v7/enumset-ord-STAT https://gedcom.io/terms/v7/enum-COMPLETED -https://gedcom.io/terms/v7/enumset-ord-STAT https://gedcom.io/terms/v7/enum-EXCLUDED https://gedcom.io/terms/v7/enumset-ord-STAT https://gedcom.io/terms/v7/enum-DNS https://gedcom.io/terms/v7/enumset-ord-STAT https://gedcom.io/terms/v7/enum-DNS_CAN +https://gedcom.io/terms/v7/enumset-ord-STAT https://gedcom.io/terms/v7/enum-EXCLUDED https://gedcom.io/terms/v7/enumset-ord-STAT https://gedcom.io/terms/v7/enum-INFANT https://gedcom.io/terms/v7/enumset-ord-STAT https://gedcom.io/terms/v7/enum-PRE_1970 https://gedcom.io/terms/v7/enumset-ord-STAT https://gedcom.io/terms/v7/enum-STILLBORN https://gedcom.io/terms/v7/enumset-ord-STAT https://gedcom.io/terms/v7/enum-SUBMITTED https://gedcom.io/terms/v7/enumset-ord-STAT https://gedcom.io/terms/v7/enum-UNCLEARED -https://gedcom.io/terms/v7/enumset-NAME-TYPE https://gedcom.io/terms/v7/enum-AKA -https://gedcom.io/terms/v7/enumset-NAME-TYPE https://gedcom.io/terms/v7/enum-BIRTH -https://gedcom.io/terms/v7/enumset-NAME-TYPE https://gedcom.io/terms/v7/enum-IMMIGRANT -https://gedcom.io/terms/v7/enumset-NAME-TYPE https://gedcom.io/terms/v7/enum-MAIDEN -https://gedcom.io/terms/v7/enumset-NAME-TYPE https://gedcom.io/terms/v7/enum-MARRIED -https://gedcom.io/terms/v7/enumset-NAME-TYPE https://gedcom.io/terms/v7/enum-PROFESSIONAL -https://gedcom.io/terms/v7/enumset-NAME-TYPE https://gedcom.io/terms/v7/enum-OTHER diff --git a/extracted-files/payloads.tsv b/extracted-files/payloads.tsv index 702dec89..f05d1046 100644 --- a/extracted-files/payloads.tsv +++ b/extracted-files/payloads.tsv @@ -1,14 +1,18 @@ +https://gedcom.io/terms/v7.1/record-REPO +https://gedcom.io/terms/v7.1/record-SNOTE http://www.w3.org/2001/XMLSchema#string +https://gedcom.io/terms/v7.1/record-SOUR +https://gedcom.io/terms/v7.1/record-SUBM https://gedcom.io/terms/v7/ABBR http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/ADDR http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/ADOP Y| -https://gedcom.io/terms/v7/FAMC-ADOP https://gedcom.io/terms/v7/type-Enum +https://gedcom.io/terms/v7/ADOP-FAMC @@ https://gedcom.io/terms/v7/ADR1 http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/ADR2 http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/ADR3 http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/AGE https://gedcom.io/terms/v7/type-Age https://gedcom.io/terms/v7/AGNC http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/ALIA @@ -https://gedcom.io/terms/v7/ANCI @@ +https://gedcom.io/terms/v7/ANCI @@ https://gedcom.io/terms/v7/ANUL Y| https://gedcom.io/terms/v7/ASSO @@ https://gedcom.io/terms/v7/AUTH http://www.w3.org/2001/XMLSchema#string @@ -22,12 +26,10 @@ https://gedcom.io/terms/v7/BURI Y| https://gedcom.io/terms/v7/CALN http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/CAST http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/CAUS http://www.w3.org/2001/XMLSchema#string -https://gedcom.io/terms/v7/FAM-CENS Y| -https://gedcom.io/terms/v7/INDI-CENS Y| https://gedcom.io/terms/v7/CHAN https://gedcom.io/terms/v7/CHIL @@ -https://gedcom.io/terms/v7/CHRA Y| https://gedcom.io/terms/v7/CHR Y| +https://gedcom.io/terms/v7/CHRA Y| https://gedcom.io/terms/v7/CITY http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/CONF Y| https://gedcom.io/terms/v7/CONL @@ -39,56 +41,65 @@ https://gedcom.io/terms/v7/CREM Y| https://gedcom.io/terms/v7/CROP https://gedcom.io/terms/v7/CTRY http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/DATA -https://gedcom.io/terms/v7/SOUR-DATA -https://gedcom.io/terms/v7/HEAD-SOUR-DATA http://www.w3.org/2001/XMLSchema#string +https://gedcom.io/terms/v7/DATA-EVEN https://gedcom.io/terms/v7/type-List#Enum +https://gedcom.io/terms/v7/DATA-EVEN-DATE https://gedcom.io/terms/v7/type-Date#period https://gedcom.io/terms/v7/DATE https://gedcom.io/terms/v7/type-Date https://gedcom.io/terms/v7/DATE-exact https://gedcom.io/terms/v7/type-Date#exact -https://gedcom.io/terms/v7/HEAD-DATE https://gedcom.io/terms/v7/type-Date#exact -https://gedcom.io/terms/v7/NO-DATE https://gedcom.io/terms/v7/type-Date#period -https://gedcom.io/terms/v7/DATA-EVEN-DATE https://gedcom.io/terms/v7/type-Date#period https://gedcom.io/terms/v7/DEAT Y| -https://gedcom.io/terms/v7/DESI @@ +https://gedcom.io/terms/v7/DESI @@ https://gedcom.io/terms/v7/DEST http://www.w3.org/2001/XMLSchema#string -https://gedcom.io/terms/v7/DIVF Y| https://gedcom.io/terms/v7/DIV Y| +https://gedcom.io/terms/v7/DIVF Y| https://gedcom.io/terms/v7/DSCR http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/EDUC http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/EMAIL http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/EMIG Y| https://gedcom.io/terms/v7/ENDL https://gedcom.io/terms/v7/ENGA Y| -https://gedcom.io/terms/v7/FAM-EVEN http://www.w3.org/2001/XMLSchema#string -https://gedcom.io/terms/v7/INDI-EVEN http://www.w3.org/2001/XMLSchema#string -https://gedcom.io/terms/v7/DATA-EVEN https://gedcom.io/terms/v7/type-List#Enum -https://gedcom.io/terms/v7/SOUR-EVEN https://gedcom.io/terms/v7/type-Enum https://gedcom.io/terms/v7/EXID http://www.w3.org/2001/XMLSchema#string -https://gedcom.io/terms/v7/record-FAM +https://gedcom.io/terms/v7/EXID-TYPE http://www.w3.org/2001/XMLSchema#anyURI +https://gedcom.io/terms/v7/FAM-CENS Y| +https://gedcom.io/terms/v7/FAM-EVEN http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/FAM-FACT http://www.w3.org/2001/XMLSchema#string -https://gedcom.io/terms/v7/INDI-FACT http://www.w3.org/2001/XMLSchema#string -https://gedcom.io/terms/v7/INDI-FAMC @@ +https://gedcom.io/terms/v7/FAM-HUSB @@ +https://gedcom.io/terms/v7/FAM-NCHI http://www.w3.org/2001/XMLSchema#nonNegativeInteger +https://gedcom.io/terms/v7/FAM-RESI http://www.w3.org/2001/XMLSchema#string +https://gedcom.io/terms/v7/FAM-WIFE @@ https://gedcom.io/terms/v7/FAMC @@ -https://gedcom.io/terms/v7/ADOP-FAMC @@ +https://gedcom.io/terms/v7/FAMC-ADOP https://gedcom.io/terms/v7/type-Enum +https://gedcom.io/terms/v7/FAMC-STAT https://gedcom.io/terms/v7/type-Enum https://gedcom.io/terms/v7/FAMS @@ https://gedcom.io/terms/v7/FAX http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/FCOM Y| https://gedcom.io/terms/v7/FILE https://gedcom.io/terms/v7/type-FilePath +https://gedcom.io/terms/v7/FILE-TRAN https://gedcom.io/terms/v7/type-FilePath https://gedcom.io/terms/v7/FORM http://www.w3.org/ns/dcat#mediaType -https://gedcom.io/terms/v7/PLAC-FORM https://gedcom.io/terms/v7/type-List#Text -https://gedcom.io/terms/v7/HEAD-PLAC-FORM https://gedcom.io/terms/v7/type-List#Text https://gedcom.io/terms/v7/GEDC +https://gedcom.io/terms/v7/GEDC-VERS http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/GIVN http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/GRAD Y| https://gedcom.io/terms/v7/HEAD +https://gedcom.io/terms/v7/HEAD-DATE https://gedcom.io/terms/v7/type-Date#exact +https://gedcom.io/terms/v7/HEAD-LANG http://www.w3.org/2001/XMLSchema#Language +https://gedcom.io/terms/v7/HEAD-PLAC +https://gedcom.io/terms/v7/HEAD-PLAC-FORM https://gedcom.io/terms/v7/type-List#Text +https://gedcom.io/terms/v7/HEAD-SOUR http://www.w3.org/2001/XMLSchema#string +https://gedcom.io/terms/v7/HEAD-SOUR-DATA http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/HEIGHT http://www.w3.org/2001/XMLSchema#nonNegativeInteger https://gedcom.io/terms/v7/HUSB -https://gedcom.io/terms/v7/FAM-HUSB @@ https://gedcom.io/terms/v7/IDNO http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/IMMI Y| -https://gedcom.io/terms/v7/record-INDI +https://gedcom.io/terms/v7/INDI-CENS Y| +https://gedcom.io/terms/v7/INDI-EVEN http://www.w3.org/2001/XMLSchema#string +https://gedcom.io/terms/v7/INDI-FACT http://www.w3.org/2001/XMLSchema#string +https://gedcom.io/terms/v7/INDI-FAMC @@ +https://gedcom.io/terms/v7/INDI-NAME https://gedcom.io/terms/v7/type-Name +https://gedcom.io/terms/v7/INDI-NCHI http://www.w3.org/2001/XMLSchema#nonNegativeInteger +https://gedcom.io/terms/v7/INDI-RELI http://www.w3.org/2001/XMLSchema#string +https://gedcom.io/terms/v7/INDI-RESI http://www.w3.org/2001/XMLSchema#string +https://gedcom.io/terms/v7/INDI-TITL http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/INIL https://gedcom.io/terms/v7/LANG http://www.w3.org/2001/XMLSchema#Language -https://gedcom.io/terms/v7/HEAD-LANG http://www.w3.org/2001/XMLSchema#Language -https://gedcom.io/terms/v7/SUBM-LANG http://www.w3.org/2001/XMLSchema#Language https://gedcom.io/terms/v7/LATI https://gedcom.io/terms/v7/type-Latitude https://gedcom.io/terms/v7/LEFT http://www.w3.org/2001/XMLSchema#nonNegativeInteger https://gedcom.io/terms/v7/LONG https://gedcom.io/terms/v7/type-Longitude @@ -101,19 +112,19 @@ https://gedcom.io/terms/v7/MARS Y| https://gedcom.io/terms/v7/MEDI https://gedcom.io/terms/v7/type-Enum https://gedcom.io/terms/v7/MIME http://www.w3.org/ns/dcat#mediaType https://gedcom.io/terms/v7/NAME http://www.w3.org/2001/XMLSchema#string -https://gedcom.io/terms/v7/INDI-NAME https://gedcom.io/terms/v7/type-Name +https://gedcom.io/terms/v7/NAME-TRAN https://gedcom.io/terms/v7/type-Name +https://gedcom.io/terms/v7/NAME-TYPE https://gedcom.io/terms/v7/type-Enum https://gedcom.io/terms/v7/NATI http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/NATU Y| -https://gedcom.io/terms/v7/FAM-NCHI http://www.w3.org/2001/XMLSchema#nonNegativeInteger -https://gedcom.io/terms/v7/INDI-NCHI http://www.w3.org/2001/XMLSchema#nonNegativeInteger https://gedcom.io/terms/v7/NICK http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/NMR http://www.w3.org/2001/XMLSchema#nonNegativeInteger https://gedcom.io/terms/v7/NO https://gedcom.io/terms/v7/type-Enum +https://gedcom.io/terms/v7/NO-DATE https://gedcom.io/terms/v7/type-Date#period https://gedcom.io/terms/v7/NOTE http://www.w3.org/2001/XMLSchema#string +https://gedcom.io/terms/v7/NOTE-TRAN http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/NPFX http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/NSFX http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/OBJE @@ -https://gedcom.io/terms/v7/record-OBJE https://gedcom.io/terms/v7/OCCU http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/ORDN Y| https://gedcom.io/terms/v7/PAGE http://www.w3.org/2001/XMLSchema#string @@ -121,7 +132,8 @@ https://gedcom.io/terms/v7/PEDI https://gedcom.io/terms/v7/type-Enum https://gedcom.io/terms/v7/PHON http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/PHRASE http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/PLAC https://gedcom.io/terms/v7/type-List#Text -https://gedcom.io/terms/v7/HEAD-PLAC +https://gedcom.io/terms/v7/PLAC-FORM https://gedcom.io/terms/v7/type-List#Text +https://gedcom.io/terms/v7/PLAC-TRAN https://gedcom.io/terms/v7/type-List#Text https://gedcom.io/terms/v7/POST http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/PROB Y| https://gedcom.io/terms/v7/PROP http://www.w3.org/2001/XMLSchema#string @@ -129,12 +141,8 @@ https://gedcom.io/terms/v7/PUBL http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/QUAY https://gedcom.io/terms/v7/type-Enum https://gedcom.io/terms/v7/REFN http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/RELI http://www.w3.org/2001/XMLSchema#string -https://gedcom.io/terms/v7/INDI-RELI http://www.w3.org/2001/XMLSchema#string +https://gedcom.io/terms/v7/REPO @@ https://gedcom.io/terms/v7/RESN https://gedcom.io/terms/v7/type-List#Enum -https://gedcom.io/terms/v7/REPO @@ -https://gedcom.io/terms/v7.1/record-REPO -https://gedcom.io/terms/v7/FAM-RESI http://www.w3.org/2001/XMLSchema#string -https://gedcom.io/terms/v7/INDI-RESI http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/RETI Y| https://gedcom.io/terms/v7/ROLE https://gedcom.io/terms/v7/type-Enum https://gedcom.io/terms/v7/SCHMA @@ -142,39 +150,31 @@ https://gedcom.io/terms/v7/SDATE https://gedcom.io/terms/v7/type-Date https://gedcom.io/terms/v7/SEX https://gedcom.io/terms/v7/type-Enum https://gedcom.io/terms/v7/SLGC https://gedcom.io/terms/v7/SLGS -https://gedcom.io/terms/v7/SNOTE @@ -https://gedcom.io/terms/v7.1/record-SNOTE http://www.w3.org/2001/XMLSchema#string -https://gedcom.io/terms/v7/SOUR @@ -https://gedcom.io/terms/v7.1/record-SOUR -https://gedcom.io/terms/v7/HEAD-SOUR http://www.w3.org/2001/XMLSchema#string +https://gedcom.io/terms/v7/SNOTE @@ +https://gedcom.io/terms/v7/SOUR @@ +https://gedcom.io/terms/v7/SOUR-DATA +https://gedcom.io/terms/v7/SOUR-EVEN https://gedcom.io/terms/v7/type-Enum https://gedcom.io/terms/v7/SPFX http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/SSN http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/STAE http://www.w3.org/2001/XMLSchema#string -https://gedcom.io/terms/v7/ord-STAT https://gedcom.io/terms/v7/type-Enum -https://gedcom.io/terms/v7/FAMC-STAT https://gedcom.io/terms/v7/type-Enum -https://gedcom.io/terms/v7/SUBM @@ -https://gedcom.io/terms/v7.1/record-SUBM +https://gedcom.io/terms/v7/SUBM @@ +https://gedcom.io/terms/v7/SUBM-LANG http://www.w3.org/2001/XMLSchema#Language https://gedcom.io/terms/v7/SURN http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/TAG https://gedcom.io/terms/v7/type-TagDef https://gedcom.io/terms/v7/TEMP http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/TEXT http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/TIME https://gedcom.io/terms/v7/type-Time https://gedcom.io/terms/v7/TITL http://www.w3.org/2001/XMLSchema#string -https://gedcom.io/terms/v7/INDI-TITL http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/TOP http://www.w3.org/2001/XMLSchema#nonNegativeInteger -https://gedcom.io/terms/v7/NAME-TRAN https://gedcom.io/terms/v7/type-Name -https://gedcom.io/terms/v7/PLAC-TRAN https://gedcom.io/terms/v7/type-List#Text -https://gedcom.io/terms/v7/NOTE-TRAN http://www.w3.org/2001/XMLSchema#string -https://gedcom.io/terms/v7/FILE-TRAN https://gedcom.io/terms/v7/type-FilePath https://gedcom.io/terms/v7/TRLR https://gedcom.io/terms/v7/TYPE http://www.w3.org/2001/XMLSchema#string -https://gedcom.io/terms/v7/NAME-TYPE https://gedcom.io/terms/v7/type-Enum -https://gedcom.io/terms/v7/EXID-TYPE http://www.w3.org/2001/XMLSchema#anyURI https://gedcom.io/terms/v7/UID http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/VERS http://www.w3.org/2001/XMLSchema#string -https://gedcom.io/terms/v7/GEDC-VERS http://www.w3.org/2001/XMLSchema#string https://gedcom.io/terms/v7/WIDTH http://www.w3.org/2001/XMLSchema#nonNegativeInteger https://gedcom.io/terms/v7/WIFE -https://gedcom.io/terms/v7/FAM-WIFE @@ https://gedcom.io/terms/v7/WILL Y| https://gedcom.io/terms/v7/WWW http://www.w3.org/2001/XMLSchema#string +https://gedcom.io/terms/v7/ord-STAT https://gedcom.io/terms/v7/type-Enum +https://gedcom.io/terms/v7/record-FAM +https://gedcom.io/terms/v7/record-INDI +https://gedcom.io/terms/v7/record-OBJE diff --git a/extracted-files/substructures.tsv b/extracted-files/substructures.tsv index a98f385b..de840cb0 100644 --- a/extracted-files/substructures.tsv +++ b/extracted-files/substructures.tsv @@ -1,3 +1,7 @@ + REPO https://gedcom.io/terms/v7.1/record-REPO + SNOTE https://gedcom.io/terms/v7.1/record-SNOTE + SOUR https://gedcom.io/terms/v7.1/record-SOUR + SUBM https://gedcom.io/terms/v7.1/record-SUBM https://gedcom.io/terms/v7.1/record-SOUR ABBR https://gedcom.io/terms/v7/ABBR https://gedcom.io/terms/v7.1/record-REPO ADDR https://gedcom.io/terms/v7/ADDR https://gedcom.io/terms/v7.1/record-SUBM ADDR https://gedcom.io/terms/v7/ADDR @@ -54,7 +58,7 @@ https://gedcom.io/terms/v7/RETI ADDR https://gedcom.io/terms/v7/ADDR https://gedcom.io/terms/v7/SSN ADDR https://gedcom.io/terms/v7/ADDR https://gedcom.io/terms/v7/WILL ADDR https://gedcom.io/terms/v7/ADDR https://gedcom.io/terms/v7/record-INDI ADOP https://gedcom.io/terms/v7/ADOP -https://gedcom.io/terms/v7/ADOP-FAMC ADOP https://gedcom.io/terms/v7/FAMC-ADOP +https://gedcom.io/terms/v7/ADOP FAMC https://gedcom.io/terms/v7/ADOP-FAMC https://gedcom.io/terms/v7/ADDR ADR1 https://gedcom.io/terms/v7/ADR1 https://gedcom.io/terms/v7/ADDR ADR2 https://gedcom.io/terms/v7/ADR2 https://gedcom.io/terms/v7/ADDR ADR3 https://gedcom.io/terms/v7/ADR3 @@ -266,8 +270,6 @@ https://gedcom.io/terms/v7/PROP CAUS https://gedcom.io/terms/v7/CAUS https://gedcom.io/terms/v7/RETI CAUS https://gedcom.io/terms/v7/CAUS https://gedcom.io/terms/v7/SSN CAUS https://gedcom.io/terms/v7/CAUS https://gedcom.io/terms/v7/WILL CAUS https://gedcom.io/terms/v7/CAUS -https://gedcom.io/terms/v7/record-FAM CENS https://gedcom.io/terms/v7/FAM-CENS -https://gedcom.io/terms/v7/record-INDI CENS https://gedcom.io/terms/v7/INDI-CENS https://gedcom.io/terms/v7.1/record-REPO CHAN https://gedcom.io/terms/v7/CHAN https://gedcom.io/terms/v7.1/record-SNOTE CHAN https://gedcom.io/terms/v7/CHAN https://gedcom.io/terms/v7.1/record-SOUR CHAN https://gedcom.io/terms/v7/CHAN @@ -276,8 +278,8 @@ https://gedcom.io/terms/v7/record-FAM CHAN https://gedcom.io/terms/v7/CHAN https://gedcom.io/terms/v7/record-INDI CHAN https://gedcom.io/terms/v7/CHAN https://gedcom.io/terms/v7/record-OBJE CHAN https://gedcom.io/terms/v7/CHAN https://gedcom.io/terms/v7/record-FAM CHIL https://gedcom.io/terms/v7/CHIL -https://gedcom.io/terms/v7/record-INDI CHRA https://gedcom.io/terms/v7/CHRA https://gedcom.io/terms/v7/record-INDI CHR https://gedcom.io/terms/v7/CHR +https://gedcom.io/terms/v7/record-INDI CHRA https://gedcom.io/terms/v7/CHRA https://gedcom.io/terms/v7/ADDR CITY https://gedcom.io/terms/v7/CITY https://gedcom.io/terms/v7/record-INDI CONF https://gedcom.io/terms/v7/CONF https://gedcom.io/terms/v7/record-INDI CONL https://gedcom.io/terms/v7/CONL @@ -296,8 +298,8 @@ https://gedcom.io/terms/v7/record-INDI CREM https://gedcom.io/terms/v7/CREM https://gedcom.io/terms/v7/OBJE CROP https://gedcom.io/terms/v7/CROP https://gedcom.io/terms/v7/ADDR CTRY https://gedcom.io/terms/v7/CTRY https://gedcom.io/terms/v7.1/record-SOUR DATA https://gedcom.io/terms/v7/DATA -https://gedcom.io/terms/v7/SOUR DATA https://gedcom.io/terms/v7/SOUR-DATA -https://gedcom.io/terms/v7/HEAD-SOUR DATA https://gedcom.io/terms/v7/HEAD-SOUR-DATA +https://gedcom.io/terms/v7/DATA EVEN https://gedcom.io/terms/v7/DATA-EVEN +https://gedcom.io/terms/v7/DATA-EVEN DATE https://gedcom.io/terms/v7/DATA-EVEN-DATE https://gedcom.io/terms/v7/ADOP DATE https://gedcom.io/terms/v7/DATE https://gedcom.io/terms/v7/ANUL DATE https://gedcom.io/terms/v7/DATE https://gedcom.io/terms/v7/BAPL DATE https://gedcom.io/terms/v7/DATE @@ -360,14 +362,11 @@ https://gedcom.io/terms/v7/CHAN DATE https://gedcom.io/terms/v7/DATE-exact https://gedcom.io/terms/v7/CREA DATE https://gedcom.io/terms/v7/DATE-exact https://gedcom.io/terms/v7/HEAD-SOUR-DATA DATE https://gedcom.io/terms/v7/DATE-exact https://gedcom.io/terms/v7/ord-STAT DATE https://gedcom.io/terms/v7/DATE-exact -https://gedcom.io/terms/v7/HEAD DATE https://gedcom.io/terms/v7/HEAD-DATE -https://gedcom.io/terms/v7/NO DATE https://gedcom.io/terms/v7/NO-DATE -https://gedcom.io/terms/v7/DATA-EVEN DATE https://gedcom.io/terms/v7/DATA-EVEN-DATE https://gedcom.io/terms/v7/record-INDI DEAT https://gedcom.io/terms/v7/DEAT https://gedcom.io/terms/v7/record-INDI DESI https://gedcom.io/terms/v7/DESI https://gedcom.io/terms/v7/HEAD DEST https://gedcom.io/terms/v7/DEST -https://gedcom.io/terms/v7/record-FAM DIVF https://gedcom.io/terms/v7/DIVF https://gedcom.io/terms/v7/record-FAM DIV https://gedcom.io/terms/v7/DIV +https://gedcom.io/terms/v7/record-FAM DIVF https://gedcom.io/terms/v7/DIVF https://gedcom.io/terms/v7/record-INDI DSCR https://gedcom.io/terms/v7/DSCR https://gedcom.io/terms/v7/record-INDI EDUC https://gedcom.io/terms/v7/EDUC https://gedcom.io/terms/v7.1/record-REPO EMAIL https://gedcom.io/terms/v7/EMAIL @@ -427,10 +426,6 @@ https://gedcom.io/terms/v7/WILL EMAIL https://gedcom.io/terms/v7/EMAIL https://gedcom.io/terms/v7/record-INDI EMIG https://gedcom.io/terms/v7/EMIG https://gedcom.io/terms/v7/record-INDI ENDL https://gedcom.io/terms/v7/ENDL https://gedcom.io/terms/v7/record-FAM ENGA https://gedcom.io/terms/v7/ENGA -https://gedcom.io/terms/v7/record-FAM EVEN https://gedcom.io/terms/v7/FAM-EVEN -https://gedcom.io/terms/v7/record-INDI EVEN https://gedcom.io/terms/v7/INDI-EVEN -https://gedcom.io/terms/v7/DATA EVEN https://gedcom.io/terms/v7/DATA-EVEN -https://gedcom.io/terms/v7/SOUR EVEN https://gedcom.io/terms/v7/SOUR-EVEN https://gedcom.io/terms/v7.1/record-REPO EXID https://gedcom.io/terms/v7/EXID https://gedcom.io/terms/v7.1/record-SNOTE EXID https://gedcom.io/terms/v7/EXID https://gedcom.io/terms/v7.1/record-SOUR EXID https://gedcom.io/terms/v7/EXID @@ -439,14 +434,19 @@ https://gedcom.io/terms/v7/PLAC EXID https://gedcom.io/terms/v7/EXID https://gedcom.io/terms/v7/record-FAM EXID https://gedcom.io/terms/v7/EXID https://gedcom.io/terms/v7/record-INDI EXID https://gedcom.io/terms/v7/EXID https://gedcom.io/terms/v7/record-OBJE EXID https://gedcom.io/terms/v7/EXID - FAM https://gedcom.io/terms/v7/record-FAM +https://gedcom.io/terms/v7/EXID TYPE https://gedcom.io/terms/v7/EXID-TYPE +https://gedcom.io/terms/v7/record-FAM CENS https://gedcom.io/terms/v7/FAM-CENS +https://gedcom.io/terms/v7/record-FAM EVEN https://gedcom.io/terms/v7/FAM-EVEN https://gedcom.io/terms/v7/record-FAM FACT https://gedcom.io/terms/v7/FAM-FACT -https://gedcom.io/terms/v7/record-INDI FACT https://gedcom.io/terms/v7/INDI-FACT -https://gedcom.io/terms/v7/record-INDI FAMC https://gedcom.io/terms/v7/INDI-FAMC +https://gedcom.io/terms/v7/record-FAM HUSB https://gedcom.io/terms/v7/FAM-HUSB +https://gedcom.io/terms/v7/record-FAM NCHI https://gedcom.io/terms/v7/FAM-NCHI +https://gedcom.io/terms/v7/record-FAM RESI https://gedcom.io/terms/v7/FAM-RESI +https://gedcom.io/terms/v7/record-FAM WIFE https://gedcom.io/terms/v7/FAM-WIFE https://gedcom.io/terms/v7/BIRT FAMC https://gedcom.io/terms/v7/FAMC https://gedcom.io/terms/v7/CHR FAMC https://gedcom.io/terms/v7/FAMC https://gedcom.io/terms/v7/SLGC FAMC https://gedcom.io/terms/v7/FAMC -https://gedcom.io/terms/v7/ADOP FAMC https://gedcom.io/terms/v7/ADOP-FAMC +https://gedcom.io/terms/v7/ADOP-FAMC ADOP https://gedcom.io/terms/v7/FAMC-ADOP +https://gedcom.io/terms/v7/INDI-FAMC STAT https://gedcom.io/terms/v7/FAMC-STAT https://gedcom.io/terms/v7/record-INDI FAMS https://gedcom.io/terms/v7/FAMS https://gedcom.io/terms/v7.1/record-REPO FAX https://gedcom.io/terms/v7/FAX https://gedcom.io/terms/v7.1/record-SUBM FAX https://gedcom.io/terms/v7/FAX @@ -504,15 +504,21 @@ https://gedcom.io/terms/v7/SSN FAX https://gedcom.io/terms/v7/FAX https://gedcom.io/terms/v7/WILL FAX https://gedcom.io/terms/v7/FAX https://gedcom.io/terms/v7/record-INDI FCOM https://gedcom.io/terms/v7/FCOM https://gedcom.io/terms/v7/record-OBJE FILE https://gedcom.io/terms/v7/FILE +https://gedcom.io/terms/v7/FILE TRAN https://gedcom.io/terms/v7/FILE-TRAN https://gedcom.io/terms/v7/FILE FORM https://gedcom.io/terms/v7/FORM https://gedcom.io/terms/v7/FILE-TRAN FORM https://gedcom.io/terms/v7/FORM -https://gedcom.io/terms/v7/PLAC FORM https://gedcom.io/terms/v7/PLAC-FORM -https://gedcom.io/terms/v7/HEAD-PLAC FORM https://gedcom.io/terms/v7/HEAD-PLAC-FORM https://gedcom.io/terms/v7/HEAD GEDC https://gedcom.io/terms/v7/GEDC +https://gedcom.io/terms/v7/GEDC VERS https://gedcom.io/terms/v7/GEDC-VERS https://gedcom.io/terms/v7/INDI-NAME GIVN https://gedcom.io/terms/v7/GIVN https://gedcom.io/terms/v7/NAME-TRAN GIVN https://gedcom.io/terms/v7/GIVN https://gedcom.io/terms/v7/record-INDI GRAD https://gedcom.io/terms/v7/GRAD HEAD https://gedcom.io/terms/v7/HEAD +https://gedcom.io/terms/v7/HEAD DATE https://gedcom.io/terms/v7/HEAD-DATE +https://gedcom.io/terms/v7/HEAD LANG https://gedcom.io/terms/v7/HEAD-LANG +https://gedcom.io/terms/v7/HEAD PLAC https://gedcom.io/terms/v7/HEAD-PLAC +https://gedcom.io/terms/v7/HEAD-PLAC FORM https://gedcom.io/terms/v7/HEAD-PLAC-FORM +https://gedcom.io/terms/v7/HEAD SOUR https://gedcom.io/terms/v7/HEAD-SOUR +https://gedcom.io/terms/v7/HEAD-SOUR DATA https://gedcom.io/terms/v7/HEAD-SOUR-DATA https://gedcom.io/terms/v7/CROP HEIGHT https://gedcom.io/terms/v7/HEIGHT https://gedcom.io/terms/v7/ANUL HUSB https://gedcom.io/terms/v7/HUSB https://gedcom.io/terms/v7/DIV HUSB https://gedcom.io/terms/v7/HUSB @@ -528,10 +534,17 @@ https://gedcom.io/terms/v7/MARC HUSB https://gedcom.io/terms/v7/HUSB https://gedcom.io/terms/v7/MARL HUSB https://gedcom.io/terms/v7/HUSB https://gedcom.io/terms/v7/MARR HUSB https://gedcom.io/terms/v7/HUSB https://gedcom.io/terms/v7/MARS HUSB https://gedcom.io/terms/v7/HUSB -https://gedcom.io/terms/v7/record-FAM HUSB https://gedcom.io/terms/v7/FAM-HUSB https://gedcom.io/terms/v7/record-INDI IDNO https://gedcom.io/terms/v7/IDNO https://gedcom.io/terms/v7/record-INDI IMMI https://gedcom.io/terms/v7/IMMI - INDI https://gedcom.io/terms/v7/record-INDI +https://gedcom.io/terms/v7/record-INDI CENS https://gedcom.io/terms/v7/INDI-CENS +https://gedcom.io/terms/v7/record-INDI EVEN https://gedcom.io/terms/v7/INDI-EVEN +https://gedcom.io/terms/v7/record-INDI FACT https://gedcom.io/terms/v7/INDI-FACT +https://gedcom.io/terms/v7/record-INDI FAMC https://gedcom.io/terms/v7/INDI-FAMC +https://gedcom.io/terms/v7/record-INDI NAME https://gedcom.io/terms/v7/INDI-NAME +https://gedcom.io/terms/v7/record-INDI NCHI https://gedcom.io/terms/v7/INDI-NCHI +https://gedcom.io/terms/v7/record-INDI RELI https://gedcom.io/terms/v7/INDI-RELI +https://gedcom.io/terms/v7/record-INDI RESI https://gedcom.io/terms/v7/INDI-RESI +https://gedcom.io/terms/v7/record-INDI TITL https://gedcom.io/terms/v7/INDI-TITL https://gedcom.io/terms/v7/record-INDI INIL https://gedcom.io/terms/v7/INIL https://gedcom.io/terms/v7.1/record-SNOTE LANG https://gedcom.io/terms/v7/LANG https://gedcom.io/terms/v7/NAME-TRAN LANG https://gedcom.io/terms/v7/LANG @@ -540,8 +553,6 @@ https://gedcom.io/terms/v7/NOTE-TRAN LANG https://gedcom.io/terms/v7/LANG https://gedcom.io/terms/v7/PLAC LANG https://gedcom.io/terms/v7/LANG https://gedcom.io/terms/v7/PLAC-TRAN LANG https://gedcom.io/terms/v7/LANG https://gedcom.io/terms/v7/TEXT LANG https://gedcom.io/terms/v7/LANG -https://gedcom.io/terms/v7/HEAD LANG https://gedcom.io/terms/v7/HEAD-LANG -https://gedcom.io/terms/v7.1/record-SUBM LANG https://gedcom.io/terms/v7/SUBM-LANG https://gedcom.io/terms/v7/MAP LATI https://gedcom.io/terms/v7/LATI https://gedcom.io/terms/v7/CROP LEFT https://gedcom.io/terms/v7/LEFT https://gedcom.io/terms/v7/MAP LONG https://gedcom.io/terms/v7/LONG @@ -560,16 +571,16 @@ https://gedcom.io/terms/v7/TEXT MIME https://gedcom.io/terms/v7/MIME https://gedcom.io/terms/v7.1/record-REPO NAME https://gedcom.io/terms/v7/NAME https://gedcom.io/terms/v7.1/record-SUBM NAME https://gedcom.io/terms/v7/NAME https://gedcom.io/terms/v7/HEAD-SOUR NAME https://gedcom.io/terms/v7/NAME -https://gedcom.io/terms/v7/record-INDI NAME https://gedcom.io/terms/v7/INDI-NAME +https://gedcom.io/terms/v7/INDI-NAME TRAN https://gedcom.io/terms/v7/NAME-TRAN +https://gedcom.io/terms/v7/INDI-NAME TYPE https://gedcom.io/terms/v7/NAME-TYPE https://gedcom.io/terms/v7/record-INDI NATI https://gedcom.io/terms/v7/NATI https://gedcom.io/terms/v7/record-INDI NATU https://gedcom.io/terms/v7/NATU -https://gedcom.io/terms/v7/record-FAM NCHI https://gedcom.io/terms/v7/FAM-NCHI -https://gedcom.io/terms/v7/record-INDI NCHI https://gedcom.io/terms/v7/INDI-NCHI https://gedcom.io/terms/v7/INDI-NAME NICK https://gedcom.io/terms/v7/NICK https://gedcom.io/terms/v7/NAME-TRAN NICK https://gedcom.io/terms/v7/NICK https://gedcom.io/terms/v7/record-INDI NMR https://gedcom.io/terms/v7/NMR https://gedcom.io/terms/v7/record-FAM NO https://gedcom.io/terms/v7/NO https://gedcom.io/terms/v7/record-INDI NO https://gedcom.io/terms/v7/NO +https://gedcom.io/terms/v7/NO DATE https://gedcom.io/terms/v7/NO-DATE https://gedcom.io/terms/v7.1/record-REPO NOTE https://gedcom.io/terms/v7/NOTE https://gedcom.io/terms/v7.1/record-SOUR NOTE https://gedcom.io/terms/v7/NOTE https://gedcom.io/terms/v7.1/record-SUBM NOTE https://gedcom.io/terms/v7/NOTE @@ -644,6 +655,8 @@ https://gedcom.io/terms/v7/WILL NOTE https://gedcom.io/terms/v7/NOTE https://gedcom.io/terms/v7/record-FAM NOTE https://gedcom.io/terms/v7/NOTE https://gedcom.io/terms/v7/record-INDI NOTE https://gedcom.io/terms/v7/NOTE https://gedcom.io/terms/v7/record-OBJE NOTE https://gedcom.io/terms/v7/NOTE +https://gedcom.io/terms/v7.1/record-SNOTE TRAN https://gedcom.io/terms/v7/NOTE-TRAN +https://gedcom.io/terms/v7/NOTE TRAN https://gedcom.io/terms/v7/NOTE-TRAN https://gedcom.io/terms/v7/INDI-NAME NPFX https://gedcom.io/terms/v7/NPFX https://gedcom.io/terms/v7/NAME-TRAN NPFX https://gedcom.io/terms/v7/NPFX https://gedcom.io/terms/v7/INDI-NAME NSFX https://gedcom.io/terms/v7/NSFX @@ -704,7 +717,6 @@ https://gedcom.io/terms/v7/SSN OBJE https://gedcom.io/terms/v7/OBJE https://gedcom.io/terms/v7/WILL OBJE https://gedcom.io/terms/v7/OBJE https://gedcom.io/terms/v7/record-FAM OBJE https://gedcom.io/terms/v7/OBJE https://gedcom.io/terms/v7/record-INDI OBJE https://gedcom.io/terms/v7/OBJE - OBJE https://gedcom.io/terms/v7/record-OBJE https://gedcom.io/terms/v7/record-INDI OCCU https://gedcom.io/terms/v7/OCCU https://gedcom.io/terms/v7/record-INDI ORDN https://gedcom.io/terms/v7/ORDN https://gedcom.io/terms/v7/SOUR PAGE https://gedcom.io/terms/v7/PAGE @@ -838,7 +850,8 @@ https://gedcom.io/terms/v7/SLGC PLAC https://gedcom.io/terms/v7/PLAC https://gedcom.io/terms/v7/SLGS PLAC https://gedcom.io/terms/v7/PLAC https://gedcom.io/terms/v7/SSN PLAC https://gedcom.io/terms/v7/PLAC https://gedcom.io/terms/v7/WILL PLAC https://gedcom.io/terms/v7/PLAC -https://gedcom.io/terms/v7/HEAD PLAC https://gedcom.io/terms/v7/HEAD-PLAC +https://gedcom.io/terms/v7/PLAC FORM https://gedcom.io/terms/v7/PLAC-FORM +https://gedcom.io/terms/v7/PLAC TRAN https://gedcom.io/terms/v7/PLAC-TRAN https://gedcom.io/terms/v7/ADDR POST https://gedcom.io/terms/v7/POST https://gedcom.io/terms/v7/record-INDI PROB https://gedcom.io/terms/v7/PROB https://gedcom.io/terms/v7/record-INDI PROP https://gedcom.io/terms/v7/PROP @@ -902,7 +915,7 @@ https://gedcom.io/terms/v7/PROP RELI https://gedcom.io/terms/v7/RELI https://gedcom.io/terms/v7/RETI RELI https://gedcom.io/terms/v7/RELI https://gedcom.io/terms/v7/SSN RELI https://gedcom.io/terms/v7/RELI https://gedcom.io/terms/v7/WILL RELI https://gedcom.io/terms/v7/RELI -https://gedcom.io/terms/v7/record-INDI RELI https://gedcom.io/terms/v7/INDI-RELI +https://gedcom.io/terms/v7.1/record-SOUR REPO https://gedcom.io/terms/v7/REPO https://gedcom.io/terms/v7.1/record-REPO RESN https://gedcom.io/terms/v7/RESN https://gedcom.io/terms/v7.1/record-SNOTE RESN https://gedcom.io/terms/v7/RESN https://gedcom.io/terms/v7.1/record-SOUR RESN https://gedcom.io/terms/v7/RESN @@ -961,10 +974,6 @@ https://gedcom.io/terms/v7/WILL RESN https://gedcom.io/terms/v7/RESN https://gedcom.io/terms/v7/record-FAM RESN https://gedcom.io/terms/v7/RESN https://gedcom.io/terms/v7/record-INDI RESN https://gedcom.io/terms/v7/RESN https://gedcom.io/terms/v7/record-OBJE RESN https://gedcom.io/terms/v7/RESN -https://gedcom.io/terms/v7.1/record-SOUR REPO https://gedcom.io/terms/v7/REPO - REPO https://gedcom.io/terms/v7.1/record-REPO -https://gedcom.io/terms/v7/record-FAM RESI https://gedcom.io/terms/v7/FAM-RESI -https://gedcom.io/terms/v7/record-INDI RESI https://gedcom.io/terms/v7/INDI-RESI https://gedcom.io/terms/v7/record-INDI RETI https://gedcom.io/terms/v7/RETI https://gedcom.io/terms/v7/ASSO ROLE https://gedcom.io/terms/v7/ROLE https://gedcom.io/terms/v7/SOUR-EVEN ROLE https://gedcom.io/terms/v7/ROLE @@ -1097,7 +1106,6 @@ https://gedcom.io/terms/v7/WILL SNOTE https://gedcom.io/terms/v7/SNOTE https://gedcom.io/terms/v7/record-FAM SNOTE https://gedcom.io/terms/v7/SNOTE https://gedcom.io/terms/v7/record-INDI SNOTE https://gedcom.io/terms/v7/SNOTE https://gedcom.io/terms/v7/record-OBJE SNOTE https://gedcom.io/terms/v7/SNOTE - SNOTE https://gedcom.io/terms/v7.1/record-SNOTE https://gedcom.io/terms/v7.1/record-SNOTE SOUR https://gedcom.io/terms/v7/SOUR https://gedcom.io/terms/v7/ADOP SOUR https://gedcom.io/terms/v7/SOUR https://gedcom.io/terms/v7/ANUL SOUR https://gedcom.io/terms/v7/SOUR @@ -1163,23 +1171,16 @@ https://gedcom.io/terms/v7/WILL SOUR https://gedcom.io/terms/v7/SOUR https://gedcom.io/terms/v7/record-FAM SOUR https://gedcom.io/terms/v7/SOUR https://gedcom.io/terms/v7/record-INDI SOUR https://gedcom.io/terms/v7/SOUR https://gedcom.io/terms/v7/record-OBJE SOUR https://gedcom.io/terms/v7/SOUR - SOUR https://gedcom.io/terms/v7.1/record-SOUR -https://gedcom.io/terms/v7/HEAD SOUR https://gedcom.io/terms/v7/HEAD-SOUR +https://gedcom.io/terms/v7/SOUR DATA https://gedcom.io/terms/v7/SOUR-DATA +https://gedcom.io/terms/v7/SOUR EVEN https://gedcom.io/terms/v7/SOUR-EVEN https://gedcom.io/terms/v7/INDI-NAME SPFX https://gedcom.io/terms/v7/SPFX https://gedcom.io/terms/v7/NAME-TRAN SPFX https://gedcom.io/terms/v7/SPFX https://gedcom.io/terms/v7/record-INDI SSN https://gedcom.io/terms/v7/SSN https://gedcom.io/terms/v7/ADDR STAE https://gedcom.io/terms/v7/STAE -https://gedcom.io/terms/v7/BAPL STAT https://gedcom.io/terms/v7/ord-STAT -https://gedcom.io/terms/v7/CONL STAT https://gedcom.io/terms/v7/ord-STAT -https://gedcom.io/terms/v7/ENDL STAT https://gedcom.io/terms/v7/ord-STAT -https://gedcom.io/terms/v7/INIL STAT https://gedcom.io/terms/v7/ord-STAT -https://gedcom.io/terms/v7/SLGC STAT https://gedcom.io/terms/v7/ord-STAT -https://gedcom.io/terms/v7/SLGS STAT https://gedcom.io/terms/v7/ord-STAT -https://gedcom.io/terms/v7/INDI-FAMC STAT https://gedcom.io/terms/v7/FAMC-STAT https://gedcom.io/terms/v7/HEAD SUBM https://gedcom.io/terms/v7/SUBM https://gedcom.io/terms/v7/record-FAM SUBM https://gedcom.io/terms/v7/SUBM https://gedcom.io/terms/v7/record-INDI SUBM https://gedcom.io/terms/v7/SUBM - SUBM https://gedcom.io/terms/v7.1/record-SUBM +https://gedcom.io/terms/v7.1/record-SUBM LANG https://gedcom.io/terms/v7/SUBM-LANG https://gedcom.io/terms/v7/INDI-NAME SURN https://gedcom.io/terms/v7/SURN https://gedcom.io/terms/v7/NAME-TRAN SURN https://gedcom.io/terms/v7/SURN https://gedcom.io/terms/v7/SCHMA TAG https://gedcom.io/terms/v7/TAG @@ -1198,13 +1199,7 @@ https://gedcom.io/terms/v7/SDATE TIME https://gedcom.io/terms/v7/TIME https://gedcom.io/terms/v7.1/record-SOUR TITL https://gedcom.io/terms/v7/TITL https://gedcom.io/terms/v7/FILE TITL https://gedcom.io/terms/v7/TITL https://gedcom.io/terms/v7/OBJE TITL https://gedcom.io/terms/v7/TITL -https://gedcom.io/terms/v7/record-INDI TITL https://gedcom.io/terms/v7/INDI-TITL https://gedcom.io/terms/v7/CROP TOP https://gedcom.io/terms/v7/TOP -https://gedcom.io/terms/v7/INDI-NAME TRAN https://gedcom.io/terms/v7/NAME-TRAN -https://gedcom.io/terms/v7/PLAC TRAN https://gedcom.io/terms/v7/PLAC-TRAN -https://gedcom.io/terms/v7.1/record-SNOTE TRAN https://gedcom.io/terms/v7/NOTE-TRAN -https://gedcom.io/terms/v7/NOTE TRAN https://gedcom.io/terms/v7/NOTE-TRAN -https://gedcom.io/terms/v7/FILE TRAN https://gedcom.io/terms/v7/FILE-TRAN TRLR https://gedcom.io/terms/v7/TRLR https://gedcom.io/terms/v7/ADOP TYPE https://gedcom.io/terms/v7/TYPE https://gedcom.io/terms/v7/ANUL TYPE https://gedcom.io/terms/v7/TYPE @@ -1258,8 +1253,6 @@ https://gedcom.io/terms/v7/REFN TYPE https://gedcom.io/terms/v7/TYPE https://gedcom.io/terms/v7/RETI TYPE https://gedcom.io/terms/v7/TYPE https://gedcom.io/terms/v7/SSN TYPE https://gedcom.io/terms/v7/TYPE https://gedcom.io/terms/v7/WILL TYPE https://gedcom.io/terms/v7/TYPE -https://gedcom.io/terms/v7/INDI-NAME TYPE https://gedcom.io/terms/v7/NAME-TYPE -https://gedcom.io/terms/v7/EXID TYPE https://gedcom.io/terms/v7/EXID-TYPE https://gedcom.io/terms/v7.1/record-REPO UID https://gedcom.io/terms/v7/UID https://gedcom.io/terms/v7.1/record-SNOTE UID https://gedcom.io/terms/v7/UID https://gedcom.io/terms/v7.1/record-SOUR UID https://gedcom.io/terms/v7/UID @@ -1319,7 +1312,6 @@ https://gedcom.io/terms/v7/record-FAM UID https://gedcom.io/terms/v7/UID https://gedcom.io/terms/v7/record-INDI UID https://gedcom.io/terms/v7/UID https://gedcom.io/terms/v7/record-OBJE UID https://gedcom.io/terms/v7/UID https://gedcom.io/terms/v7/HEAD-SOUR VERS https://gedcom.io/terms/v7/VERS -https://gedcom.io/terms/v7/GEDC VERS https://gedcom.io/terms/v7/GEDC-VERS https://gedcom.io/terms/v7/CROP WIDTH https://gedcom.io/terms/v7/WIDTH https://gedcom.io/terms/v7/ANUL WIFE https://gedcom.io/terms/v7/WIFE https://gedcom.io/terms/v7/DIV WIFE https://gedcom.io/terms/v7/WIFE @@ -1335,7 +1327,6 @@ https://gedcom.io/terms/v7/MARC WIFE https://gedcom.io/terms/v7/WIFE https://gedcom.io/terms/v7/MARL WIFE https://gedcom.io/terms/v7/WIFE https://gedcom.io/terms/v7/MARR WIFE https://gedcom.io/terms/v7/WIFE https://gedcom.io/terms/v7/MARS WIFE https://gedcom.io/terms/v7/WIFE -https://gedcom.io/terms/v7/record-FAM WIFE https://gedcom.io/terms/v7/FAM-WIFE https://gedcom.io/terms/v7/record-INDI WILL https://gedcom.io/terms/v7/WILL https://gedcom.io/terms/v7.1/record-REPO WWW https://gedcom.io/terms/v7/WWW https://gedcom.io/terms/v7.1/record-SUBM WWW https://gedcom.io/terms/v7/WWW @@ -1391,3 +1382,12 @@ https://gedcom.io/terms/v7/PROP WWW https://gedcom.io/terms/v7/WWW https://gedcom.io/terms/v7/RETI WWW https://gedcom.io/terms/v7/WWW https://gedcom.io/terms/v7/SSN WWW https://gedcom.io/terms/v7/WWW https://gedcom.io/terms/v7/WILL WWW https://gedcom.io/terms/v7/WWW +https://gedcom.io/terms/v7/BAPL STAT https://gedcom.io/terms/v7/ord-STAT +https://gedcom.io/terms/v7/CONL STAT https://gedcom.io/terms/v7/ord-STAT +https://gedcom.io/terms/v7/ENDL STAT https://gedcom.io/terms/v7/ord-STAT +https://gedcom.io/terms/v7/INIL STAT https://gedcom.io/terms/v7/ord-STAT +https://gedcom.io/terms/v7/SLGC STAT https://gedcom.io/terms/v7/ord-STAT +https://gedcom.io/terms/v7/SLGS STAT https://gedcom.io/terms/v7/ord-STAT + FAM https://gedcom.io/terms/v7/record-FAM + INDI https://gedcom.io/terms/v7/record-INDI + OBJE https://gedcom.io/terms/v7/record-OBJE diff --git a/extracted-files/tags/ADOP b/extracted-files/tags/ADOP index 64d88900..5532b86d 100644 --- a/extracted-files/tags/ADOP +++ b/extracted-files/tags/ADOP @@ -11,9 +11,32 @@ standard tag: 'ADOP' specification: - Adoption - An [Individual Event]. See also `INDIVIDUAL_EVENT_STRUCTURE`. - - adoption + - | + Individual events; see [Individual Events] for descriptions of each individual + event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Individual event structures vary as follows: + + - `INDI`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `INDI`.`EVEN` requires `TYPE`; it's optional for others + - `BIRT` and `CHR` may have a `FAMC` with no substructures; `ADOP` may have a + `FAMC` with an optional `ADOP` substructure; others may not have a `FAMC` + substructure. The `FAMC` substructure can itself have substructures for + source citations and notes related to the child's relationship to parents, + and is the recommended place to store such information. + +
- Creation of a legally approved child-parent relationship that does not exist biologically. + - adoption label: 'Adoption' diff --git a/extracted-files/tags/ADR1 b/extracted-files/tags/ADR1 index 0371a36c..ef5390b0 100644 --- a/extracted-files/tags/ADR1 +++ b/extracted-files/tags/ADR1 @@ -22,7 +22,7 @@ specification:
-label: 'Address Line 1' +label: '(deprecated) Address Line 1' payload: http://www.w3.org/2001/XMLSchema#string diff --git a/extracted-files/tags/ADR2 b/extracted-files/tags/ADR2 index 86b9289a..bc71922b 100644 --- a/extracted-files/tags/ADR2 +++ b/extracted-files/tags/ADR2 @@ -22,7 +22,7 @@ specification:
-label: 'Address Line 2' +label: '(deprecated) Address Line 2' payload: http://www.w3.org/2001/XMLSchema#string diff --git a/extracted-files/tags/ADR3 b/extracted-files/tags/ADR3 index 8a765d19..434ab471 100644 --- a/extracted-files/tags/ADR3 +++ b/extracted-files/tags/ADR3 @@ -22,7 +22,7 @@ specification:
-label: 'Address Line 3' +label: '(deprecated) Address Line 3' payload: http://www.w3.org/2001/XMLSchema#string diff --git a/extracted-files/tags/AGE b/extracted-files/tags/AGE index 9f8ebdd7..64b2fb4a 100644 --- a/extracted-files/tags/AGE +++ b/extracted-files/tags/AGE @@ -12,6 +12,7 @@ specification: - Age at event - The age of the individual at the time an event occurred. It is recommended that this be an age from a cited source document. + - Substructures shared by most individual events and attributes. label: 'Age at event' diff --git a/extracted-files/tags/AGNC b/extracted-files/tags/AGNC index 507a8332..f0d01c02 100644 --- a/extracted-files/tags/AGNC +++ b/extracted-files/tags/AGNC @@ -14,6 +14,14 @@ specification: responsibility for the associated context. Examples are an employer of a person of an associated occupation, or a church that administered rites or events, or an organization responsible for creating or archiving records. + - | + Substructures that may be shared by most individual and family events and + attributes. + + Note that many of these substructures are limited to 1 per event. Conflicting + event information should be represented by placing them in separate event + structures (with appropriate source citations) rather than by placing them + under the same enclosing event. label: 'Responsible agency' diff --git a/extracted-files/tags/ANCI b/extracted-files/tags/ANCI index dd50b7af..1c5954ed 100644 --- a/extracted-files/tags/ANCI +++ b/extracted-files/tags/ANCI @@ -15,12 +15,14 @@ specification: label: 'Ancestor interest' -payload: "@@" +payload: "@@" substructures: {} superstructures: "https://gedcom.io/terms/v7/record-INDI": "{0:M}" +prerelease: true + contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/ANUL b/extracted-files/tags/ANUL index 25dfd80b..332ecc17 100644 --- a/extracted-files/tags/ANUL +++ b/extracted-files/tags/ANUL @@ -11,8 +11,25 @@ standard tag: 'ANUL' specification: - Annulment - A [Family Event]. See also `FAMILY_EVENT_STRUCTURE`. - - annulment + - | + Family events; see [Family Events] for descriptions of each family event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Family event structures vary as follows: + + - `FAM`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `FAM`.`EVEN` requires `TYPE`; it's optional for others + +
- Declaring a marriage void from the beginning (never existed). + - annulment label: 'Annulment' diff --git a/extracted-files/tags/BAPL b/extracted-files/tags/BAPL index 25e5f341..24c8d8f0 100644 --- a/extracted-files/tags/BAPL +++ b/extracted-files/tags/BAPL @@ -11,9 +11,12 @@ standard tag: 'BAPL' specification: - Baptism, Latter-Day Saint - A [Latter-Day Saint Ordinance]. See also `LDS_INDIVIDUAL_ORDINANCE`. - - baptism + - Ordinances performed by members of The Church of Jesus Christ of Latter-day + Saints; see [Latter-day Saint Ordinances] for descriptions of each ordinance + type. - The event of baptism performed at age 8 or later by priesthood authority of The Church of Jesus Christ of Latter-day Saints. (See also [`BAPM`]) + - baptism label: 'Baptism, Latter-Day Saint' diff --git a/extracted-files/tags/BAPM b/extracted-files/tags/BAPM index 5d7c4639..861af69b 100644 --- a/extracted-files/tags/BAPM +++ b/extracted-files/tags/BAPM @@ -11,8 +11,31 @@ standard tag: 'BAPM' specification: - Baptism - An [Individual Event]. See also `INDIVIDUAL_EVENT_STRUCTURE`. - - baptism + - | + Individual events; see [Individual Events] for descriptions of each individual + event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Individual event structures vary as follows: + + - `INDI`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `INDI`.`EVEN` requires `TYPE`; it's optional for others + - `BIRT` and `CHR` may have a `FAMC` with no substructures; `ADOP` may have a + `FAMC` with an optional `ADOP` substructure; others may not have a `FAMC` + substructure. The `FAMC` substructure can itself have substructures for + source citations and notes related to the child's relationship to parents, + and is the recommended place to store such information. + +
- Baptism, performed in infancy or later. (See also [`BAPL`] and `CHR`.) + - baptism label: 'Baptism' diff --git a/extracted-files/tags/BARM b/extracted-files/tags/BARM index 5d4e20e5..d4c4a3d5 100644 --- a/extracted-files/tags/BARM +++ b/extracted-files/tags/BARM @@ -11,7 +11,29 @@ standard tag: 'BARM' specification: - Bar Mitzvah - An [Individual Event]. See also `INDIVIDUAL_EVENT_STRUCTURE`. - - Bar Mitzvah + - | + Individual events; see [Individual Events] for descriptions of each individual + event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Individual event structures vary as follows: + + - `INDI`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `INDI`.`EVEN` requires `TYPE`; it's optional for others + - `BIRT` and `CHR` may have a `FAMC` with no substructures; `ADOP` may have a + `FAMC` with an optional `ADOP` substructure; others may not have a `FAMC` + substructure. The `FAMC` substructure can itself have substructures for + source citations and notes related to the child's relationship to parents, + and is the recommended place to store such information. + +
- The ceremonial event held when a Jewish boy reaches age 13. label: 'Bar Mitzvah' diff --git a/extracted-files/tags/BASM b/extracted-files/tags/BASM index 817948dd..19961691 100644 --- a/extracted-files/tags/BASM +++ b/extracted-files/tags/BASM @@ -11,7 +11,29 @@ standard tag: 'BASM' specification: - Bas Mitzvah - An [Individual Event]. See also `INDIVIDUAL_EVENT_STRUCTURE`. - - Bas Mitzvah + - | + Individual events; see [Individual Events] for descriptions of each individual + event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Individual event structures vary as follows: + + - `INDI`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `INDI`.`EVEN` requires `TYPE`; it's optional for others + - `BIRT` and `CHR` may have a `FAMC` with no substructures; `ADOP` may have a + `FAMC` with an optional `ADOP` substructure; others may not have a `FAMC` + substructure. The `FAMC` substructure can itself have substructures for + source citations and notes related to the child's relationship to parents, + and is the recommended place to store such information. + +
- The ceremonial event held when a Jewish girl reaches age 13, also known as "Bat Mitzvah." diff --git a/extracted-files/tags/BIRT b/extracted-files/tags/BIRT index 91b0e3d5..bd1eb650 100644 --- a/extracted-files/tags/BIRT +++ b/extracted-files/tags/BIRT @@ -11,8 +11,31 @@ standard tag: 'BIRT' specification: - Birth - An [Individual Event]. See also `INDIVIDUAL_EVENT_STRUCTURE`. - - birth + - | + Individual events; see [Individual Events] for descriptions of each individual + event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Individual event structures vary as follows: + + - `INDI`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `INDI`.`EVEN` requires `TYPE`; it's optional for others + - `BIRT` and `CHR` may have a `FAMC` with no substructures; `ADOP` may have a + `FAMC` with an optional `ADOP` substructure; others may not have a `FAMC` + substructure. The `FAMC` substructure can itself have substructures for + source citations and notes related to the child's relationship to parents, + and is the recommended place to store such information. + +
- Entering into life. + - birth label: 'Birth' diff --git a/extracted-files/tags/BLES b/extracted-files/tags/BLES index 42dfed77..8f152bd4 100644 --- a/extracted-files/tags/BLES +++ b/extracted-files/tags/BLES @@ -11,9 +11,32 @@ standard tag: 'BLES' specification: - Blessing - An [Individual Event]. See also `INDIVIDUAL_EVENT_STRUCTURE`. - - blessing + - | + Individual events; see [Individual Events] for descriptions of each individual + event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Individual event structures vary as follows: + + - `INDI`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `INDI`.`EVEN` requires `TYPE`; it's optional for others + - `BIRT` and `CHR` may have a `FAMC` with no substructures; `ADOP` may have a + `FAMC` with an optional `ADOP` substructure; others may not have a `FAMC` + substructure. The `FAMC` substructure can itself have substructures for + source citations and notes related to the child's relationship to parents, + and is the recommended place to store such information. + +
- Bestowing divine care or intercession. Sometimes given in connection with a naming ceremony. + - blessing label: 'Blessing' diff --git a/extracted-files/tags/BURI b/extracted-files/tags/BURI index daf2bb19..52796bf1 100644 --- a/extracted-files/tags/BURI +++ b/extracted-files/tags/BURI @@ -19,8 +19,31 @@ specification: some applications and users. In the absence of a clarifying `TYPE` substructure it is likely, but not guaranteed, that a `BURI` structure refers to a burial rather than another form of depositing remains. - - depositing remains + - | + Individual events; see [Individual Events] for descriptions of each individual + event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Individual event structures vary as follows: + + - `INDI`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `INDI`.`EVEN` requires `TYPE`; it's optional for others + - `BIRT` and `CHR` may have a `FAMC` with no substructures; `ADOP` may have a + `FAMC` with an optional `ADOP` substructure; others may not have a `FAMC` + substructure. The `FAMC` substructure can itself have substructures for + source citations and notes related to the child's relationship to parents, + and is the recommended place to store such information. + +
- Depositing the mortal remains of a deceased person. + - depositing remains label: 'Depositing remains' diff --git a/extracted-files/tags/CAST b/extracted-files/tags/CAST index 028405e1..885eaf35 100644 --- a/extracted-files/tags/CAST +++ b/extracted-files/tags/CAST @@ -11,10 +11,23 @@ standard tag: 'CAST' specification: - Caste - An [Individual Attribute]. See also `INDIVIDUAL_ATTRIBUTE_STRUCTURE`. - - caste + - | + Individual attributes; see [Individual Attributes] for descriptions of each + individual attribute type.. + +
+ + Individual attribute structures vary as follows: + + - `INDI`.`NCHI` and `NMR` have [Integer] payloads; `IDNO` and `SSN` have + [Special] payloads; others have [Text] payloads + - `INDI`.`FACT` and `IDNO` require `TYPE`; it's optional for others + +
- The name of an individual's rank or status in society which is sometimes based on racial or religious differences, or differences in wealth, inherited rank, profession, or occupation. + - caste label: 'Caste' diff --git a/extracted-files/tags/CAUS b/extracted-files/tags/CAUS index 66f62c58..d419f78c 100644 --- a/extracted-files/tags/CAUS +++ b/extracted-files/tags/CAUS @@ -13,6 +13,14 @@ specification: - The reasons which precipitated an event. It is often used subordinate to a death event to show cause of death, such as might be listed on a death certificate. + - | + Substructures that may be shared by most individual and family events and + attributes. + + Note that many of these substructures are limited to 1 per event. Conflicting + event information should be represented by placing them in separate event + structures (with appropriate source citations) rather than by placing them + under the same enclosing event. label: 'Cause' diff --git a/extracted-files/tags/CHR b/extracted-files/tags/CHR index 2dbda0cc..afb915ab 100644 --- a/extracted-files/tags/CHR +++ b/extracted-files/tags/CHR @@ -11,8 +11,31 @@ standard tag: 'CHR' specification: - Christening - An [Individual Event]. See also `INDIVIDUAL_EVENT_STRUCTURE`. - - christening + - | + Individual events; see [Individual Events] for descriptions of each individual + event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Individual event structures vary as follows: + + - `INDI`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `INDI`.`EVEN` requires `TYPE`; it's optional for others + - `BIRT` and `CHR` may have a `FAMC` with no substructures; `ADOP` may have a + `FAMC` with an optional `ADOP` substructure; others may not have a `FAMC` + substructure. The `FAMC` substructure can itself have substructures for + source citations and notes related to the child's relationship to parents, + and is the recommended place to store such information. + +
- Baptism or naming events for a child. + - christening label: 'Christening' diff --git a/extracted-files/tags/CHRA b/extracted-files/tags/CHRA index ce9d2590..3fbb4329 100644 --- a/extracted-files/tags/CHRA +++ b/extracted-files/tags/CHRA @@ -11,8 +11,31 @@ standard tag: 'CHRA' specification: - Christening, adult - An [Individual Event]. See also `INDIVIDUAL_EVENT_STRUCTURE`. - - adult christening + - | + Individual events; see [Individual Events] for descriptions of each individual + event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Individual event structures vary as follows: + + - `INDI`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `INDI`.`EVEN` requires `TYPE`; it's optional for others + - `BIRT` and `CHR` may have a `FAMC` with no substructures; `ADOP` may have a + `FAMC` with an optional `ADOP` substructure; others may not have a `FAMC` + substructure. The `FAMC` substructure can itself have substructures for + source citations and notes related to the child's relationship to parents, + and is the recommended place to store such information. + +
- Baptism or naming events for an adult person. + - adult christening label: 'Christening, adult' diff --git a/extracted-files/tags/CONF b/extracted-files/tags/CONF index 098462a6..b99e8d57 100644 --- a/extracted-files/tags/CONF +++ b/extracted-files/tags/CONF @@ -11,8 +11,31 @@ standard tag: 'CONF' specification: - Confirmation - An [Individual Event]. See also `INDIVIDUAL_EVENT_STRUCTURE`. - - confirmation + - | + Individual events; see [Individual Events] for descriptions of each individual + event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Individual event structures vary as follows: + + - `INDI`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `INDI`.`EVEN` requires `TYPE`; it's optional for others + - `BIRT` and `CHR` may have a `FAMC` with no substructures; `ADOP` may have a + `FAMC` with an optional `ADOP` substructure; others may not have a `FAMC` + substructure. The `FAMC` substructure can itself have substructures for + source citations and notes related to the child's relationship to parents, + and is the recommended place to store such information. + +
- Conferring full church membership. + - confirmation label: 'Confirmation' diff --git a/extracted-files/tags/CONL b/extracted-files/tags/CONL index 4dc9a92f..fd2881a8 100644 --- a/extracted-files/tags/CONL +++ b/extracted-files/tags/CONL @@ -11,9 +11,12 @@ standard tag: 'CONL' specification: - Confirmation, Latter-Day Saint - A [Latter-Day Saint Ordinance]. See also `LDS_INDIVIDUAL_ORDINANCE`. - - confirmation + - Ordinances performed by members of The Church of Jesus Christ of Latter-day + Saints; see [Latter-day Saint Ordinances] for descriptions of each ordinance + type. - The religious event by which a person receives membership in The Church of Jesus Christ of Latter-day Saints. (See also [`CONF`]) + - confirmation label: 'Confirmation, Latter-Day Saint' diff --git a/extracted-files/tags/CREM b/extracted-files/tags/CREM index c80ee449..b44ddf3a 100644 --- a/extracted-files/tags/CREM +++ b/extracted-files/tags/CREM @@ -11,8 +11,31 @@ standard tag: 'CREM' specification: - Cremation - An [Individual Event]. See also `INDIVIDUAL_EVENT_STRUCTURE`. - - cremation + - | + Individual events; see [Individual Events] for descriptions of each individual + event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Individual event structures vary as follows: + + - `INDI`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `INDI`.`EVEN` requires `TYPE`; it's optional for others + - `BIRT` and `CHR` may have a `FAMC` with no substructures; `ADOP` may have a + `FAMC` with an optional `ADOP` substructure; others may not have a `FAMC` + substructure. The `FAMC` substructure can itself have substructures for + source citations and notes related to the child's relationship to parents, + and is the recommended place to store such information. + +
- The act of reducing a dead body to ashes by fire. + - cremation label: 'Cremation' diff --git a/extracted-files/tags/DEAT b/extracted-files/tags/DEAT index 98634631..f3ddaf59 100644 --- a/extracted-files/tags/DEAT +++ b/extracted-files/tags/DEAT @@ -11,8 +11,31 @@ standard tag: 'DEAT' specification: - Death - An [Individual Event]. See also `INDIVIDUAL_EVENT_STRUCTURE`. - - death + - | + Individual events; see [Individual Events] for descriptions of each individual + event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Individual event structures vary as follows: + + - `INDI`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `INDI`.`EVEN` requires `TYPE`; it's optional for others + - `BIRT` and `CHR` may have a `FAMC` with no substructures; `ADOP` may have a + `FAMC` with an optional `ADOP` substructure; others may not have a `FAMC` + substructure. The `FAMC` substructure can itself have substructures for + source citations and notes related to the child's relationship to parents, + and is the recommended place to store such information. + +
- Mortal life terminates. + - death label: 'Death' diff --git a/extracted-files/tags/DESI b/extracted-files/tags/DESI index eb2371e8..191bce9c 100644 --- a/extracted-files/tags/DESI +++ b/extracted-files/tags/DESI @@ -15,12 +15,14 @@ specification: label: 'Descendant Interest' -payload: "@@" +payload: "@@" substructures: {} superstructures: "https://gedcom.io/terms/v7/record-INDI": "{0:M}" +prerelease: true + contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/DIV b/extracted-files/tags/DIV index e34077b3..b59f5fd0 100644 --- a/extracted-files/tags/DIV +++ b/extracted-files/tags/DIV @@ -11,8 +11,25 @@ standard tag: 'DIV' specification: - Divorce - A [Family Event]. See also `FAMILY_EVENT_STRUCTURE`. - - divorce + - | + Family events; see [Family Events] for descriptions of each family event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Family event structures vary as follows: + + - `FAM`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `FAM`.`EVEN` requires `TYPE`; it's optional for others + +
- Dissolving a marriage through civil action. + - divorce label: 'Divorce' diff --git a/extracted-files/tags/DIVF b/extracted-files/tags/DIVF index 51bc166e..f224a7aa 100644 --- a/extracted-files/tags/DIVF +++ b/extracted-files/tags/DIVF @@ -11,8 +11,25 @@ standard tag: 'DIVF' specification: - Divorce filing - A [Family Event]. See also `FAMILY_EVENT_STRUCTURE`. - - divorce filed + - | + Family events; see [Family Events] for descriptions of each family event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Family event structures vary as follows: + + - `FAM`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `FAM`.`EVEN` requires `TYPE`; it's optional for others + +
- Filing for a divorce by a spouse. + - divorce filed label: 'Divorce filing' diff --git a/extracted-files/tags/DSCR b/extracted-files/tags/DSCR index 0aba4b75..3fbf5258 100644 --- a/extracted-files/tags/DSCR +++ b/extracted-files/tags/DSCR @@ -11,8 +11,21 @@ standard tag: 'DSCR' specification: - Description - An [Individual Attribute]. See also `INDIVIDUAL_ATTRIBUTE_STRUCTURE`. - - physical description + - | + Individual attributes; see [Individual Attributes] for descriptions of each + individual attribute type.. + +
+ + Individual attribute structures vary as follows: + + - `INDI`.`NCHI` and `NMR` have [Integer] payloads; `IDNO` and `SSN` have + [Special] payloads; others have [Text] payloads + - `INDI`.`FACT` and `IDNO` require `TYPE`; it's optional for others + +
- The physical characteristics of a person. + - physical description label: 'Description' diff --git a/extracted-files/tags/EDUC b/extracted-files/tags/EDUC index 43a30a35..9a2ed26d 100644 --- a/extracted-files/tags/EDUC +++ b/extracted-files/tags/EDUC @@ -11,8 +11,21 @@ standard tag: 'EDUC' specification: - Education - An [Individual Attribute]. See also `INDIVIDUAL_ATTRIBUTE_STRUCTURE`. - - education + - | + Individual attributes; see [Individual Attributes] for descriptions of each + individual attribute type.. + +
+ + Individual attribute structures vary as follows: + + - `INDI`.`NCHI` and `NMR` have [Integer] payloads; `IDNO` and `SSN` have + [Special] payloads; others have [Text] payloads + - `INDI`.`FACT` and `IDNO` require `TYPE`; it's optional for others + +
- Indicator of a level of education attained. + - education label: 'Education' diff --git a/extracted-files/tags/EMAIL b/extracted-files/tags/EMAIL index 0111846b..aeb1ec25 100644 --- a/extracted-files/tags/EMAIL +++ b/extracted-files/tags/EMAIL @@ -24,6 +24,14 @@ specification: 7.0 and later.
+ - | + Substructures that may be shared by most individual and family events and + attributes. + + Note that many of these substructures are limited to 1 per event. Conflicting + event information should be represented by placing them in separate event + structures (with appropriate source citations) rather than by placing them + under the same enclosing event. label: 'Email' diff --git a/extracted-files/tags/EMIG b/extracted-files/tags/EMIG index 8693b765..d58d8768 100644 --- a/extracted-files/tags/EMIG +++ b/extracted-files/tags/EMIG @@ -11,8 +11,31 @@ standard tag: 'EMIG' specification: - Emigration - An [Individual Event]. See also `INDIVIDUAL_EVENT_STRUCTURE`. - - emigration + - | + Individual events; see [Individual Events] for descriptions of each individual + event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Individual event structures vary as follows: + + - `INDI`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `INDI`.`EVEN` requires `TYPE`; it's optional for others + - `BIRT` and `CHR` may have a `FAMC` with no substructures; `ADOP` may have a + `FAMC` with an optional `ADOP` substructure; others may not have a `FAMC` + substructure. The `FAMC` substructure can itself have substructures for + source citations and notes related to the child's relationship to parents, + and is the recommended place to store such information. + +
- Leaving one's homeland with the intent of residing elsewhere. + - emigration label: 'Emigration' diff --git a/extracted-files/tags/ENDL b/extracted-files/tags/ENDL index 59df8c22..e7614dd7 100644 --- a/extracted-files/tags/ENDL +++ b/extracted-files/tags/ENDL @@ -11,10 +11,13 @@ standard tag: 'ENDL' specification: - Endowment, Latter-Day Saint - A [Latter-Day Saint Ordinance]. See also `LDS_INDIVIDUAL_ORDINANCE`. - - endowment + - Ordinances performed by members of The Church of Jesus Christ of Latter-day + Saints; see [Latter-day Saint Ordinances] for descriptions of each ordinance + type. - A religious event where an endowment ordinance for an individual was performed by priesthood authority in a temple of The Church of Jesus Christ of Latter-day Saints. + - endowment label: 'Endowment, Latter-Day Saint' diff --git a/extracted-files/tags/ENGA b/extracted-files/tags/ENGA index 35cfbabc..4a5ba9ab 100644 --- a/extracted-files/tags/ENGA +++ b/extracted-files/tags/ENGA @@ -11,8 +11,25 @@ standard tag: 'ENGA' specification: - Engagement - A [Family Event]. See also `FAMILY_EVENT_STRUCTURE`. - - engagement + - | + Family events; see [Family Events] for descriptions of each family event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Family event structures vary as follows: + + - `FAM`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `FAM`.`EVEN` requires `TYPE`; it's optional for others + +
- Recording or announcing an agreement between 2 people to become married. + - engagement label: 'Engagement' diff --git a/extracted-files/tags/EXID b/extracted-files/tags/EXID index 09f5b59d..3a0f8f37 100644 --- a/extracted-files/tags/EXID +++ b/extracted-files/tags/EXID @@ -24,6 +24,24 @@ specification: `EXID` identifiers are expected to be unique. Once assigned, an `EXID` identifier should never be re-used for any other purpose. + - | +
+ + Having an `EXID` without an `EXID`.`TYPE` substructure is deprecated. The + meaning of an `EXID` depends on its `EXID`.`TYPE`. The cardinality of + `EXID`.`TYPE` will be changed to `{1:1}` in version 8.0. + +
+ + Each of these provides an identifier for a structure or its subject, and each + is different in purpose: + + - `REFN` is a user-generated identifier for a structure. + + - `UID` is a globally-unique identifier for a structure. + + - `EXID` is an identifier maintained by an external authority that applies to + the subject of the structure. label: 'External Identifier' diff --git a/extracted-files/tags/FAM-CENS b/extracted-files/tags/FAM-CENS index f7b67250..cd7c91be 100644 --- a/extracted-files/tags/FAM-CENS +++ b/extracted-files/tags/FAM-CENS @@ -11,9 +11,26 @@ standard tag: 'CENS' specification: - Census - An [Family Event]. - - census + - | + Family events; see [Family Events] for descriptions of each family event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Family event structures vary as follows: + + - `FAM`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `FAM`.`EVEN` requires `TYPE`; it's optional for others + +
- Periodic count of the population for a designated locality, such as a national or state census. + - census label: 'Census' diff --git a/extracted-files/tags/FAM-EVEN b/extracted-files/tags/FAM-EVEN index 10a18fac..74f4be5c 100644 --- a/extracted-files/tags/FAM-EVEN +++ b/extracted-files/tags/FAM-EVEN @@ -11,6 +11,23 @@ standard tag: 'EVEN' specification: - Event - See `https://gedcom.io/terms/v7/INDI-EVEN`. + - | + Family events; see [Family Events] for descriptions of each family event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Family event structures vary as follows: + + - `FAM`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `FAM`.`EVEN` requires `TYPE`; it's optional for others + +
label: 'Event' diff --git a/extracted-files/tags/FAM-FACT b/extracted-files/tags/FAM-FACT index 909ec13c..becfa528 100644 --- a/extracted-files/tags/FAM-FACT +++ b/extracted-files/tags/FAM-FACT @@ -11,6 +11,18 @@ standard tag: 'FACT' specification: - Fact - See `https://gedcom.io/terms/v7/INDI-FACT`. + - | + Family attributes; see [Family Attributes] for descriptions of each family + attribute type. + +
+ + Family attribute structures vary as follows: + + - `FAM`.`NCHI` has an [Integer] payload; others have [Text] payloads + - `FAM`.`FACT` requires `TYPE`; it's optional for others + +
label: 'Fact' diff --git a/extracted-files/tags/FAM-NCHI b/extracted-files/tags/FAM-NCHI index 2423c556..c783401e 100644 --- a/extracted-files/tags/FAM-NCHI +++ b/extracted-files/tags/FAM-NCHI @@ -11,8 +11,20 @@ standard tag: 'NCHI' specification: - Number of children - A [Family Attribute]. See also `FAMILY_ATTRIBUTE_STRUCTURE`. - - number of children + - | + Family attributes; see [Family Attributes] for descriptions of each family + attribute type. + +
+ + Family attribute structures vary as follows: + + - `FAM`.`NCHI` has an [Integer] payload; others have [Text] payloads + - `FAM`.`FACT` requires `TYPE`; it's optional for others + +
- The number of children that belong to this family. + - number of children label: 'Number of children' diff --git a/extracted-files/tags/FAM-RESI b/extracted-files/tags/FAM-RESI index 3bd04d1e..d6f05399 100644 --- a/extracted-files/tags/FAM-RESI +++ b/extracted-files/tags/FAM-RESI @@ -15,8 +15,20 @@ specification: See `https://gedcom.io/terms/v7/INDI-RESI` for comments on the use of payload strings in `RESI` structures. - - residence + - | + Family attributes; see [Family Attributes] for descriptions of each family + attribute type. + +
+ + Family attribute structures vary as follows: + + - `FAM`.`NCHI` has an [Integer] payload; others have [Text] payloads + - `FAM`.`FACT` requires `TYPE`; it's optional for others + +
- An address or place of residence where a family resided. + - residence label: 'Residence' diff --git a/extracted-files/tags/FAX b/extracted-files/tags/FAX index 7e40a85e..676d41c7 100644 --- a/extracted-files/tags/FAX +++ b/extracted-files/tags/FAX @@ -12,6 +12,14 @@ specification: - Facsimile - A fax telephone number appropriate for sending data facsimiles. See `PHON` for additional comments on telephone numbers. + - | + Substructures that may be shared by most individual and family events and + attributes. + + Note that many of these substructures are limited to 1 per event. Conflicting + event information should be represented by placing them in separate event + structures (with appropriate source citations) rather than by placing them + under the same enclosing event. label: 'Facsimile' diff --git a/extracted-files/tags/FCOM b/extracted-files/tags/FCOM index 7ec28b87..52cf7b66 100644 --- a/extracted-files/tags/FCOM +++ b/extracted-files/tags/FCOM @@ -11,8 +11,31 @@ standard tag: 'FCOM' specification: - First communion - An [Individual Event]. See also `INDIVIDUAL_EVENT_STRUCTURE`. - - first communion + - | + Individual events; see [Individual Events] for descriptions of each individual + event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Individual event structures vary as follows: + + - `INDI`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `INDI`.`EVEN` requires `TYPE`; it's optional for others + - `BIRT` and `CHR` may have a `FAMC` with no substructures; `ADOP` may have a + `FAMC` with an optional `ADOP` substructure; others may not have a `FAMC` + substructure. The `FAMC` substructure can itself have substructures for + source citations and notes related to the child's relationship to parents, + and is the recommended place to store such information. + +
- The first act of sharing in the Lord's supper as part of church worship. + - first communion label: 'First communion' diff --git a/extracted-files/tags/GIVN b/extracted-files/tags/GIVN index 28d43ab4..ed69d940 100644 --- a/extracted-files/tags/GIVN +++ b/extracted-files/tags/GIVN @@ -11,6 +11,30 @@ standard tag: 'GIVN' specification: - Given name - A given or earned name used for official identification of a person. + - | + Optional isolated name parts; see `PERSONAL_NAME_STRUCTURE` for more details. + +
+ + "Lt. Cmndr. Joseph Allen jr.” might be presented as + + ```gedcom + 1 NAME Lt. Cmndr. Joseph /Allen/ jr. + 2 NPFX Lt. Cmndr. + 2 GIVN Joseph + 2 SURN Allen + 2 NSFX jr. + ``` + +
+ + This specification does not define how the meaning of multiple parts with the + same tag differs from the meaning of a single part with a concatenated larger + payload. However, some applications allow the user to chose whether to combine + or split name parts, meaning the tag quantity should be treated as expressing + at least a user preference. Even when multiple `SURN` tags are used, the + `PersonalName` data type identifies a single surname substring between its + slashes. label: 'Given name' diff --git a/extracted-files/tags/GRAD b/extracted-files/tags/GRAD index 13985b8c..9808e7d6 100644 --- a/extracted-files/tags/GRAD +++ b/extracted-files/tags/GRAD @@ -11,8 +11,31 @@ standard tag: 'GRAD' specification: - Graduation - An [Individual Event]. See also `INDIVIDUAL_EVENT_STRUCTURE`. - - graduation + - | + Individual events; see [Individual Events] for descriptions of each individual + event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Individual event structures vary as follows: + + - `INDI`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `INDI`.`EVEN` requires `TYPE`; it's optional for others + - `BIRT` and `CHR` may have a `FAMC` with no substructures; `ADOP` may have a + `FAMC` with an optional `ADOP` substructure; others may not have a `FAMC` + substructure. The `FAMC` substructure can itself have substructures for + source citations and notes related to the child's relationship to parents, + and is the recommended place to store such information. + +
- Awarding educational diplomas or degrees to individuals. + - graduation label: 'Graduation' diff --git a/extracted-files/tags/HEAD-SOUR-DATA b/extracted-files/tags/HEAD-SOUR-DATA index ddd98ff9..f3986141 100644 --- a/extracted-files/tags/HEAD-SOUR-DATA +++ b/extracted-files/tags/HEAD-SOUR-DATA @@ -10,12 +10,20 @@ standard tag: 'DATA' specification: - Data - - The database, electronic data source, or digital repository from which this + - | + The database, electronic data source, or digital repository from which this dataset was exported. The payload is the name of the database, electronic data source, or digital repository, with substructures providing additional details about it (not about the export). - -label: 'Data' + +
+ + `HEAD`.`SOUR`.`DATA` should not be added to new files; see `HEADER` for more + details. + +
+ +label: '(deprecated) Data' payload: http://www.w3.org/2001/XMLSchema#string diff --git a/extracted-files/tags/HUSB b/extracted-files/tags/HUSB index 9aaec539..819b4b40 100644 --- a/extracted-files/tags/HUSB +++ b/extracted-files/tags/HUSB @@ -31,6 +31,7 @@ specification: ``` + - Substructures shared by most family events and attributes. label: 'Husband' diff --git a/extracted-files/tags/IDNO b/extracted-files/tags/IDNO index dca83b54..1b598049 100644 --- a/extracted-files/tags/IDNO +++ b/extracted-files/tags/IDNO @@ -11,10 +11,23 @@ standard tag: 'IDNO' specification: - Identification number - An [Individual Attribute]. See also `INDIVIDUAL_ATTRIBUTE_STRUCTURE`. - - identifying number + - | + Individual attributes; see [Individual Attributes] for descriptions of each + individual attribute type.. + +
+ + Individual attribute structures vary as follows: + + - `INDI`.`NCHI` and `NMR` have [Integer] payloads; `IDNO` and `SSN` have + [Special] payloads; others have [Text] payloads + - `INDI`.`FACT` and `IDNO` require `TYPE`; it's optional for others + +
- A number or other string assigned to identify a person within some significant external system. It must have a `TYPE` substructure to define what kind of identification number is being provided. + - identifying number label: 'Identification number' diff --git a/extracted-files/tags/IMMI b/extracted-files/tags/IMMI index 991b2420..088648b1 100644 --- a/extracted-files/tags/IMMI +++ b/extracted-files/tags/IMMI @@ -11,8 +11,31 @@ standard tag: 'IMMI' specification: - Immigration - An [Individual Event]. See also `INDIVIDUAL_EVENT_STRUCTURE`. - - immigration + - | + Individual events; see [Individual Events] for descriptions of each individual + event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Individual event structures vary as follows: + + - `INDI`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `INDI`.`EVEN` requires `TYPE`; it's optional for others + - `BIRT` and `CHR` may have a `FAMC` with no substructures; `ADOP` may have a + `FAMC` with an optional `ADOP` substructure; others may not have a `FAMC` + substructure. The `FAMC` substructure can itself have substructures for + source citations and notes related to the child's relationship to parents, + and is the recommended place to store such information. + +
- Entering into a new locality with the intent of residing there. + - immigration label: 'Immigration' diff --git a/extracted-files/tags/INDI-CENS b/extracted-files/tags/INDI-CENS index f3305bef..3e00ebb7 100644 --- a/extracted-files/tags/INDI-CENS +++ b/extracted-files/tags/INDI-CENS @@ -11,9 +11,32 @@ standard tag: 'CENS' specification: - Census - An [Individual Event]. See also `INDIVIDUAL_EVENT_STRUCTURE`. - - census + - | + Individual events; see [Individual Events] for descriptions of each individual + event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Individual event structures vary as follows: + + - `INDI`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `INDI`.`EVEN` requires `TYPE`; it's optional for others + - `BIRT` and `CHR` may have a `FAMC` with no substructures; `ADOP` may have a + `FAMC` with an optional `ADOP` substructure; others may not have a `FAMC` + substructure. The `FAMC` substructure can itself have substructures for + source citations and notes related to the child's relationship to parents, + and is the recommended place to store such information. + +
- Periodic count of the population for a designated locality, such as a national or state census. + - census label: 'Census' diff --git a/extracted-files/tags/INDI-EVEN b/extracted-files/tags/INDI-EVEN index eafb0aef..33f5a1d8 100644 --- a/extracted-files/tags/INDI-EVEN +++ b/extracted-files/tags/INDI-EVEN @@ -32,6 +32,29 @@ specification: ``` + - | + Individual events; see [Individual Events] for descriptions of each individual + event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Individual event structures vary as follows: + + - `INDI`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `INDI`.`EVEN` requires `TYPE`; it's optional for others + - `BIRT` and `CHR` may have a `FAMC` with no substructures; `ADOP` may have a + `FAMC` with an optional `ADOP` substructure; others may not have a `FAMC` + substructure. The `FAMC` substructure can itself have substructures for + source citations and notes related to the child's relationship to parents, + and is the recommended place to store such information. + +
label: 'Event' diff --git a/extracted-files/tags/INDI-FACT b/extracted-files/tags/INDI-FACT index ae6d48d0..464361ad 100644 --- a/extracted-files/tags/INDI-FACT +++ b/extracted-files/tags/INDI-FACT @@ -28,6 +28,19 @@ specification: 2 TYPE Skills ``` + + - | + Individual attributes; see [Individual Attributes] for descriptions of each + individual attribute type.. + +
+ + Individual attribute structures vary as follows: + + - `INDI`.`NCHI` and `NMR` have [Integer] payloads; `IDNO` and `SSN` have + [Special] payloads; others have [Text] payloads + - `INDI`.`FACT` and `IDNO` require `TYPE`; it's optional for others +
label: 'Fact' diff --git a/extracted-files/tags/INDI-NCHI b/extracted-files/tags/INDI-NCHI index 2f6982a1..35ceaecb 100644 --- a/extracted-files/tags/INDI-NCHI +++ b/extracted-files/tags/INDI-NCHI @@ -11,9 +11,22 @@ standard tag: 'NCHI' specification: - Number of children - An [Individual Attribute]. See also `INDIVIDUAL_ATTRIBUTE_STRUCTURE`. - - number of children + - | + Individual attributes; see [Individual Attributes] for descriptions of each + individual attribute type.. + +
+ + Individual attribute structures vary as follows: + + - `INDI`.`NCHI` and `NMR` have [Integer] payloads; `IDNO` and `SSN` have + [Special] payloads; others have [Text] payloads + - `INDI`.`FACT` and `IDNO` require `TYPE`; it's optional for others + +
- The number of children that this person is known to be the parent of (all marriages). + - number of children label: 'Number of children' diff --git a/extracted-files/tags/INDI-RELI b/extracted-files/tags/INDI-RELI index dcbefbcb..f65eab8f 100644 --- a/extracted-files/tags/INDI-RELI +++ b/extracted-files/tags/INDI-RELI @@ -11,9 +11,22 @@ standard tag: 'RELI' specification: - Religion - An [Individual Attribute]. See also `INDIVIDUAL_ATTRIBUTE_STRUCTURE`. - - religion + - | + Individual attributes; see [Individual Attributes] for descriptions of each + individual attribute type.. + +
+ + Individual attribute structures vary as follows: + + - `INDI`.`NCHI` and `NMR` have [Integer] payloads; `IDNO` and `SSN` have + [Special] payloads; others have [Text] payloads + - `INDI`.`FACT` and `IDNO` require `TYPE`; it's optional for others + +
- A religious denomination to which a person is affiliated or for which a record applies. + - religion label: 'Religion' diff --git a/extracted-files/tags/INDI-RESI b/extracted-files/tags/INDI-RESI index 25b74a5d..c9abc8dc 100644 --- a/extracted-files/tags/INDI-RESI +++ b/extracted-files/tags/INDI-RESI @@ -35,8 +35,21 @@ specification: ``` - - residence + - | + Individual attributes; see [Individual Attributes] for descriptions of each + individual attribute type.. + +
+ + Individual attribute structures vary as follows: + + - `INDI`.`NCHI` and `NMR` have [Integer] payloads; `IDNO` and `SSN` have + [Special] payloads; others have [Text] payloads + - `INDI`.`FACT` and `IDNO` require `TYPE`; it's optional for others + +
- An address or place of residence where an individual resided. + - residence label: 'Residence' diff --git a/extracted-files/tags/INDI-TITL b/extracted-files/tags/INDI-TITL index d16a3e99..e888edbe 100644 --- a/extracted-files/tags/INDI-TITL +++ b/extracted-files/tags/INDI-TITL @@ -11,9 +11,22 @@ standard tag: 'TITL' specification: - Title - An [Individual Attribute]. See also `INDIVIDUAL_ATTRIBUTE_STRUCTURE`. - - title + - | + Individual attributes; see [Individual Attributes] for descriptions of each + individual attribute type.. + +
+ + Individual attribute structures vary as follows: + + - `INDI`.`NCHI` and `NMR` have [Integer] payloads; `IDNO` and `SSN` have + [Special] payloads; others have [Text] payloads + - `INDI`.`FACT` and `IDNO` require `TYPE`; it's optional for others + +
- A formal designation used by an individual in connection with positions of royalty or other social status, such as Grand Duke. + - title label: 'Title' diff --git a/extracted-files/tags/INIL b/extracted-files/tags/INIL index 1e5c106a..14a3b89a 100644 --- a/extracted-files/tags/INIL +++ b/extracted-files/tags/INIL @@ -14,10 +14,13 @@ specification: Previously, GEDCOM versions 3.0 through 5.3 called this `WAC`; it was not part of 5.4 through 5.5.1. FamilySearch GEDCOM 7.0 reintroduced it with the name `INIL` for consistency with `BAPL`, `CONL`, and `ENDL`. - - initiatory + - Ordinances performed by members of The Church of Jesus Christ of Latter-day + Saints; see [Latter-day Saint Ordinances] for descriptions of each ordinance + type. - A religious event where an initiatory ordinance for an individual was performed by priesthood authority in a temple of The Church of Jesus Christ of Latter-day Saints. + - initiatory label: 'Initiatory, Latter-Day Saint' diff --git a/extracted-files/tags/MARB b/extracted-files/tags/MARB index 938a97f3..99c89b84 100644 --- a/extracted-files/tags/MARB +++ b/extracted-files/tags/MARB @@ -11,8 +11,25 @@ standard tag: 'MARB' specification: - Marriage banns - A [Family Event]. See also `FAMILY_EVENT_STRUCTURE`. - - marriage bann + - | + Family events; see [Family Events] for descriptions of each family event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Family event structures vary as follows: + + - `FAM`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `FAM`.`EVEN` requires `TYPE`; it's optional for others + +
- Official public notice given that 2 people intend to marry. + - marriage bann label: 'Marriage banns' diff --git a/extracted-files/tags/MARC b/extracted-files/tags/MARC index edebb250..d93576f3 100644 --- a/extracted-files/tags/MARC +++ b/extracted-files/tags/MARC @@ -11,10 +11,27 @@ standard tag: 'MARC' specification: - Marriage contract - A [Family Event]. See also `FAMILY_EVENT_STRUCTURE`. - - marriage contract + - | + Family events; see [Family Events] for descriptions of each family event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Family event structures vary as follows: + + - `FAM`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `FAM`.`EVEN` requires `TYPE`; it's optional for others + +
- Recording a formal agreement of marriage, including the prenuptial agreement in which marriage partners reach agreement about the property rights of 1 or both, securing property to their children. + - marriage contract label: 'Marriage contract' diff --git a/extracted-files/tags/MARL b/extracted-files/tags/MARL index db98311b..389773b7 100644 --- a/extracted-files/tags/MARL +++ b/extracted-files/tags/MARL @@ -11,8 +11,25 @@ standard tag: 'MARL' specification: - Marriage license - A [Family Event]. See also `FAMILY_EVENT_STRUCTURE`. - - marriage license + - | + Family events; see [Family Events] for descriptions of each family event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Family event structures vary as follows: + + - `FAM`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `FAM`.`EVEN` requires `TYPE`; it's optional for others + +
- Obtaining a legal license to marry. + - marriage license label: 'Marriage license' diff --git a/extracted-files/tags/MARR b/extracted-files/tags/MARR index 3412712c..93c7f9a9 100644 --- a/extracted-files/tags/MARR +++ b/extracted-files/tags/MARR @@ -11,9 +11,26 @@ standard tag: 'MARR' specification: - Marriage - A [Family Event]. See also `FAMILY_EVENT_STRUCTURE`. - - marriage + - | + Family events; see [Family Events] for descriptions of each family event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Family event structures vary as follows: + + - `FAM`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `FAM`.`EVEN` requires `TYPE`; it's optional for others + +
- A legal, common-law, or customary event such as a wedding or marriage ceremony that joins 2 partners to create or extend a family unit. + - marriage label: 'Marriage' diff --git a/extracted-files/tags/MARS b/extracted-files/tags/MARS index 051472ae..5a71b05c 100644 --- a/extracted-files/tags/MARS +++ b/extracted-files/tags/MARS @@ -11,10 +11,27 @@ standard tag: 'MARS' specification: - Marriage settlement - A [Family Event]. See also `FAMILY_EVENT_STRUCTURE`. - - marriage settlement + - | + Family events; see [Family Events] for descriptions of each family event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Family event structures vary as follows: + + - `FAM`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `FAM`.`EVEN` requires `TYPE`; it's optional for others + +
- Creating an agreement between 2 people contemplating marriage, at which time they agree to release or modify property rights that would otherwise arise from the marriage. + - marriage settlement label: 'Marriage settlement' diff --git a/extracted-files/tags/NATI b/extracted-files/tags/NATI index 875f8c57..66b4f402 100644 --- a/extracted-files/tags/NATI +++ b/extracted-files/tags/NATI @@ -11,9 +11,22 @@ standard tag: 'NATI' specification: - Nationality - An [Individual Attribute]. See also `INDIVIDUAL_ATTRIBUTE_STRUCTURE`. - - nationality + - | + Individual attributes; see [Individual Attributes] for descriptions of each + individual attribute type.. + +
+ + Individual attribute structures vary as follows: + + - `INDI`.`NCHI` and `NMR` have [Integer] payloads; `IDNO` and `SSN` have + [Special] payloads; others have [Text] payloads + - `INDI`.`FACT` and `IDNO` require `TYPE`; it's optional for others + +
- An individual's national heritage or origin, or other folk, house, kindred, lineage, or tribal interest. + - nationality label: 'Nationality' diff --git a/extracted-files/tags/NATU b/extracted-files/tags/NATU index dee2c40c..a4e58dbc 100644 --- a/extracted-files/tags/NATU +++ b/extracted-files/tags/NATU @@ -11,8 +11,31 @@ standard tag: 'NATU' specification: - Naturalization - An [Individual Event]. See also `INDIVIDUAL_EVENT_STRUCTURE`. - - naturalization + - | + Individual events; see [Individual Events] for descriptions of each individual + event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Individual event structures vary as follows: + + - `INDI`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `INDI`.`EVEN` requires `TYPE`; it's optional for others + - `BIRT` and `CHR` may have a `FAMC` with no substructures; `ADOP` may have a + `FAMC` with an optional `ADOP` substructure; others may not have a `FAMC` + substructure. The `FAMC` substructure can itself have substructures for + source citations and notes related to the child's relationship to parents, + and is the recommended place to store such information. + +
- Obtaining citizenship. + - naturalization label: 'Naturalization' diff --git a/extracted-files/tags/NICK b/extracted-files/tags/NICK index d3fcd4b4..12384e0d 100644 --- a/extracted-files/tags/NICK +++ b/extracted-files/tags/NICK @@ -26,6 +26,30 @@ specification: without contradicting some existing data. + - | + Optional isolated name parts; see `PERSONAL_NAME_STRUCTURE` for more details. + +
+ + "Lt. Cmndr. Joseph Allen jr.” might be presented as + + ```gedcom + 1 NAME Lt. Cmndr. Joseph /Allen/ jr. + 2 NPFX Lt. Cmndr. + 2 GIVN Joseph + 2 SURN Allen + 2 NSFX jr. + ``` + +
+ + This specification does not define how the meaning of multiple parts with the + same tag differs from the meaning of a single part with a concatenated larger + payload. However, some applications allow the user to chose whether to combine + or split name parts, meaning the tag quantity should be treated as expressing + at least a user preference. Even when multiple `SURN` tags are used, the + `PersonalName` data type identifies a single surname substring between its + slashes. label: 'Nickname' diff --git a/extracted-files/tags/NMR b/extracted-files/tags/NMR index e06d2058..6e1e73e3 100644 --- a/extracted-files/tags/NMR +++ b/extracted-files/tags/NMR @@ -11,9 +11,22 @@ standard tag: 'NMR' specification: - Number of marriages - An [Individual Attribute]. See also `INDIVIDUAL_ATTRIBUTE_STRUCTURE`. - - number of marriages + - | + Individual attributes; see [Individual Attributes] for descriptions of each + individual attribute type.. + +
+ + Individual attribute structures vary as follows: + + - `INDI`.`NCHI` and `NMR` have [Integer] payloads; `IDNO` and `SSN` have + [Special] payloads; others have [Text] payloads + - `INDI`.`FACT` and `IDNO` require `TYPE`; it's optional for others + +
- The number of times this person has participated in a family as a spouse or parent. + - number of marriages label: 'Number of marriages' diff --git a/extracted-files/tags/NOTE b/extracted-files/tags/NOTE index eb6879d3..9d719c1a 100644 --- a/extracted-files/tags/NOTE +++ b/extracted-files/tags/NOTE @@ -17,6 +17,19 @@ specification: When a substructure of `HEAD`, it should describe the contents of the document in terms of "ancestors or descendants of" so that the person receiving the data knows what genealogical information the document contains. + - | + A catch-all location for information that does not fully fit within other + structures. It may include research notes, additional context, alternative + interpretations, reasoning, and so forth. + + Each `NOTE`.`TRAN` must have either a `MIME` or `LANG` substructure, and may + have both. + + See `SHARED_NOTE_RECORD` for advice on choosing between `NOTE` and `SNOTE`. + + A `NOTE_STRUCTURE` can contain a `SOURCE_CITATION`, which in turn can contain a + `NOTE_STRUCTURE`, allowing potentially unbounded nesting of structures. Because + each dataset is finite, this nesting is also guaranteed to be finite. label: 'Note' diff --git a/extracted-files/tags/NPFX b/extracted-files/tags/NPFX index 8bf04b59..982bc166 100644 --- a/extracted-files/tags/NPFX +++ b/extracted-files/tags/NPFX @@ -11,6 +11,30 @@ standard tag: 'NPFX' specification: - Name prefix - Text that appears on a name line before the given and surname parts of a name. + - | + Optional isolated name parts; see `PERSONAL_NAME_STRUCTURE` for more details. + +
+ + "Lt. Cmndr. Joseph Allen jr.” might be presented as + + ```gedcom + 1 NAME Lt. Cmndr. Joseph /Allen/ jr. + 2 NPFX Lt. Cmndr. + 2 GIVN Joseph + 2 SURN Allen + 2 NSFX jr. + ``` + +
+ + This specification does not define how the meaning of multiple parts with the + same tag differs from the meaning of a single part with a concatenated larger + payload. However, some applications allow the user to chose whether to combine + or split name parts, meaning the tag quantity should be treated as expressing + at least a user preference. Even when multiple `SURN` tags are used, the + `PersonalName` data type identifies a single surname substring between its + slashes. label: 'Name prefix' diff --git a/extracted-files/tags/NSFX b/extracted-files/tags/NSFX index ef3253dc..512ec7a8 100644 --- a/extracted-files/tags/NSFX +++ b/extracted-files/tags/NSFX @@ -12,6 +12,30 @@ specification: - Name suffix - Text which appears on a name line after or behind the given and surname parts of a name. + - | + Optional isolated name parts; see `PERSONAL_NAME_STRUCTURE` for more details. + +
+ + "Lt. Cmndr. Joseph Allen jr.” might be presented as + + ```gedcom + 1 NAME Lt. Cmndr. Joseph /Allen/ jr. + 2 NPFX Lt. Cmndr. + 2 GIVN Joseph + 2 SURN Allen + 2 NSFX jr. + ``` + +
+ + This specification does not define how the meaning of multiple parts with the + same tag differs from the meaning of a single part with a concatenated larger + payload. However, some applications allow the user to chose whether to combine + or split name parts, meaning the tag quantity should be treated as expressing + at least a user preference. Even when multiple `SURN` tags are used, the + `PersonalName` data type identifies a single surname substring between its + slashes. label: 'Name suffix' diff --git a/extracted-files/tags/OCCU b/extracted-files/tags/OCCU index 4112f064..5926d6a9 100644 --- a/extracted-files/tags/OCCU +++ b/extracted-files/tags/OCCU @@ -11,8 +11,21 @@ standard tag: 'OCCU' specification: - Occupation - An [Individual Attribute]. See also `INDIVIDUAL_ATTRIBUTE_STRUCTURE`. - - occupation + - | + Individual attributes; see [Individual Attributes] for descriptions of each + individual attribute type.. + +
+ + Individual attribute structures vary as follows: + + - `INDI`.`NCHI` and `NMR` have [Integer] payloads; `IDNO` and `SSN` have + [Special] payloads; others have [Text] payloads + - `INDI`.`FACT` and `IDNO` require `TYPE`; it's optional for others + +
- The type of work or profession of an individual. + - occupation label: 'Occupation' diff --git a/extracted-files/tags/ORDN b/extracted-files/tags/ORDN index 52d32c3d..a070e1f3 100644 --- a/extracted-files/tags/ORDN +++ b/extracted-files/tags/ORDN @@ -11,8 +11,31 @@ standard tag: 'ORDN' specification: - Ordination - An [Individual Event]. See also `INDIVIDUAL_EVENT_STRUCTURE`. - - ordination + - | + Individual events; see [Individual Events] for descriptions of each individual + event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Individual event structures vary as follows: + + - `INDI`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `INDI`.`EVEN` requires `TYPE`; it's optional for others + - `BIRT` and `CHR` may have a `FAMC` with no substructures; `ADOP` may have a + `FAMC` with an optional `ADOP` substructure; others may not have a `FAMC` + substructure. The `FAMC` substructure can itself have substructures for + source citations and notes related to the child's relationship to parents, + and is the recommended place to store such information. + +
- Receiving authority to act in religious matters. + - ordination label: 'Ordination' diff --git a/extracted-files/tags/PHON b/extracted-files/tags/PHON index 5b6e4014..982cbce6 100644 --- a/extracted-files/tags/PHON +++ b/extracted-files/tags/PHON @@ -20,6 +20,14 @@ specification: `+44 20 1234 1234` (UK). See ITU standards [E.123] and [E.164] for more information. + - | + Substructures that may be shared by most individual and family events and + attributes. + + Note that many of these substructures are limited to 1 per event. Conflicting + event information should be represented by placing them in separate event + structures (with appropriate source citations) rather than by placing them + under the same enclosing event. label: 'Phone' diff --git a/extracted-files/tags/PROB b/extracted-files/tags/PROB index c2984335..f0decb2b 100644 --- a/extracted-files/tags/PROB +++ b/extracted-files/tags/PROB @@ -11,9 +11,32 @@ standard tag: 'PROB' specification: - Probate - An [Individual Event]. See also `INDIVIDUAL_EVENT_STRUCTURE`. - - probate + - | + Individual events; see [Individual Events] for descriptions of each individual + event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Individual event structures vary as follows: + + - `INDI`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `INDI`.`EVEN` requires `TYPE`; it's optional for others + - `BIRT` and `CHR` may have a `FAMC` with no substructures; `ADOP` may have a + `FAMC` with an optional `ADOP` substructure; others may not have a `FAMC` + substructure. The `FAMC` substructure can itself have substructures for + source citations and notes related to the child's relationship to parents, + and is the recommended place to store such information. + +
- Judicial determination of the validity of a will. It may indicate several related court activities over several dates. + - probate label: 'Probate' diff --git a/extracted-files/tags/PROP b/extracted-files/tags/PROP index c425cffb..2f1853c2 100644 --- a/extracted-files/tags/PROP +++ b/extracted-files/tags/PROP @@ -11,8 +11,21 @@ standard tag: 'PROP' specification: - Property - An [Individual Attribute]. See also `INDIVIDUAL_ATTRIBUTE_STRUCTURE`. - - property + - | + Individual attributes; see [Individual Attributes] for descriptions of each + individual attribute type.. + +
+ + Individual attribute structures vary as follows: + + - `INDI`.`NCHI` and `NMR` have [Integer] payloads; `IDNO` and `SSN` have + [Special] payloads; others have [Text] payloads + - `INDI`.`FACT` and `IDNO` require `TYPE`; it's optional for others + +
- Pertaining to possessions such as real estate or other property of interest. + - property label: 'Property' diff --git a/extracted-files/tags/REFN b/extracted-files/tags/REFN index 4ae7420d..c2384a32 100644 --- a/extracted-files/tags/REFN +++ b/extracted-files/tags/REFN @@ -19,6 +19,24 @@ specification: This is metadata about the structure itself, not data about its subject. Multiple structures describing different aspects of the same subject must not have the same `REFN` value. + - | +
+ + Having an `EXID` without an `EXID`.`TYPE` substructure is deprecated. The + meaning of an `EXID` depends on its `EXID`.`TYPE`. The cardinality of + `EXID`.`TYPE` will be changed to `{1:1}` in version 8.0. + +
+ + Each of these provides an identifier for a structure or its subject, and each + is different in purpose: + + - `REFN` is a user-generated identifier for a structure. + + - `UID` is a globally-unique identifier for a structure. + + - `EXID` is an identifier maintained by an external authority that applies to + the subject of the structure. label: 'Reference' diff --git a/extracted-files/tags/RELI b/extracted-files/tags/RELI index 9e22c0b0..fe25b141 100644 --- a/extracted-files/tags/RELI +++ b/extracted-files/tags/RELI @@ -12,6 +12,14 @@ specification: - Religion - A religious denomination associated with the event or attribute described by the superstructure. + - | + Substructures that may be shared by most individual and family events and + attributes. + + Note that many of these substructures are limited to 1 per event. Conflicting + event information should be represented by placing them in separate event + structures (with appropriate source citations) rather than by placing them + under the same enclosing event. label: 'Religion' diff --git a/extracted-files/tags/REPO b/extracted-files/tags/REPO index 30fe213b..e962cad9 100644 --- a/extracted-files/tags/REPO +++ b/extracted-files/tags/REPO @@ -20,7 +20,7 @@ specification: label: 'Repository' -payload: "@@" +payload: "@@" substructures: "https://gedcom.io/terms/v7/CALN": "{0:M}" diff --git a/extracted-files/tags/RESN b/extracted-files/tags/RESN index 782cb8b5..8aa96eb4 100644 --- a/extracted-files/tags/RESN +++ b/extracted-files/tags/RESN @@ -23,6 +23,14 @@ specification: must abide by some constraints: see [Removing data] for more details. This is metadata about the structure itself, not data about its subject. + - | + Substructures that may be shared by most individual and family events and + attributes. + + Note that many of these substructures are limited to 1 per event. Conflicting + event information should be represented by placing them in separate event + structures (with appropriate source citations) rather than by placing them + under the same enclosing event. label: 'Restriction' diff --git a/extracted-files/tags/RETI b/extracted-files/tags/RETI index 62a075af..de610b32 100644 --- a/extracted-files/tags/RETI +++ b/extracted-files/tags/RETI @@ -11,9 +11,32 @@ standard tag: 'RETI' specification: - Retirement - An [Individual Event]. See also `INDIVIDUAL_EVENT_STRUCTURE`. - - retirement + - | + Individual events; see [Individual Events] for descriptions of each individual + event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Individual event structures vary as follows: + + - `INDI`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `INDI`.`EVEN` requires `TYPE`; it's optional for others + - `BIRT` and `CHR` may have a `FAMC` with no substructures; `ADOP` may have a + `FAMC` with an optional `ADOP` substructure; others may not have a `FAMC` + substructure. The `FAMC` substructure can itself have substructures for + source citations and notes related to the child's relationship to parents, + and is the recommended place to store such information. + +
- Exiting an occupational relationship with an employer after a qualifying time period. + - retirement label: 'Retirement' diff --git a/extracted-files/tags/SDATE b/extracted-files/tags/SDATE index 0adbf9f6..ad927cb3 100644 --- a/extracted-files/tags/SDATE +++ b/extracted-files/tags/SDATE @@ -27,6 +27,14 @@ specification: effects on sorting. Including a month and day is encouraged to help different applications sort dates the same way, as the relative ordering of dates with different levels of precision is not well defined. + - | + Substructures that may be shared by most individual and family events and + attributes. + + Note that many of these substructures are limited to 1 per event. Conflicting + event information should be represented by placing them in separate event + structures (with appropriate source citations) rather than by placing them + under the same enclosing event. label: 'Sort date' diff --git a/extracted-files/tags/SLGC b/extracted-files/tags/SLGC index 252947ad..00dc17b6 100644 --- a/extracted-files/tags/SLGC +++ b/extracted-files/tags/SLGC @@ -11,9 +11,12 @@ standard tag: 'SLGC' specification: - Sealing, child - A [Latter-Day Saint Ordinance]. See also `LDS_INDIVIDUAL_ORDINANCE`. - - sealing child + - Ordinances performed by members of The Church of Jesus Christ of Latter-day + Saints; see [Latter-day Saint Ordinances] for descriptions of each ordinance + type. - A religious event pertaining to the sealing of a child to his or her parents in a temple ceremony of The Church of Jesus Christ of Latter-day Saints. + - sealing child label: 'Sealing, child' diff --git a/extracted-files/tags/SLGS b/extracted-files/tags/SLGS index a6f63434..3c74402d 100644 --- a/extracted-files/tags/SLGS +++ b/extracted-files/tags/SLGS @@ -14,10 +14,10 @@ specification: - Ordinances performed by members of The Church of Jesus Christ of Latter-day Saints; see [Latter-day Saint Ordinances] for descriptions of each ordinance type. - - sealing spouse - A religious event pertaining to the sealing of a husband and wife in a temple ceremony of The Church of Jesus Christ of Latter-day Saints. (See also [`MARR`]) + - sealing spouse label: 'Sealing, spouse' diff --git a/extracted-files/tags/SNOTE b/extracted-files/tags/SNOTE index 8c170183..0e222d4f 100644 --- a/extracted-files/tags/SNOTE +++ b/extracted-files/tags/SNOTE @@ -12,10 +12,23 @@ specification: - Shared note - A pointer to a note that is shared by multiple structures. See `NOTE_STRUCTURE` for more details. + - | + A catch-all location for information that does not fully fit within other + structures. It may include research notes, additional context, alternative + interpretations, reasoning, and so forth. + + Each `NOTE`.`TRAN` must have either a `MIME` or `LANG` substructure, and may + have both. + + See `SHARED_NOTE_RECORD` for advice on choosing between `NOTE` and `SNOTE`. + + A `NOTE_STRUCTURE` can contain a `SOURCE_CITATION`, which in turn can contain a + `NOTE_STRUCTURE`, allowing potentially unbounded nesting of structures. Because + each dataset is finite, this nesting is also guaranteed to be finite. label: 'Shared note' -payload: "@@" +payload: "@@" substructures: {} diff --git a/extracted-files/tags/SOUR b/extracted-files/tags/SOUR index 2c771e7d..56a1b916 100644 --- a/extracted-files/tags/SOUR +++ b/extracted-files/tags/SOUR @@ -36,7 +36,7 @@ specification: label: 'Source' -payload: "@@" +payload: "@@" substructures: "https://gedcom.io/terms/v7/NOTE": "{0:M}" diff --git a/extracted-files/tags/SPFX b/extracted-files/tags/SPFX index 78398b59..99695df2 100644 --- a/extracted-files/tags/SPFX +++ b/extracted-files/tags/SPFX @@ -11,6 +11,30 @@ standard tag: 'SPFX' specification: - Surname prefix - A name piece used as a non-indexing pre-part of a surname. + - | + Optional isolated name parts; see `PERSONAL_NAME_STRUCTURE` for more details. + +
+ + "Lt. Cmndr. Joseph Allen jr.” might be presented as + + ```gedcom + 1 NAME Lt. Cmndr. Joseph /Allen/ jr. + 2 NPFX Lt. Cmndr. + 2 GIVN Joseph + 2 SURN Allen + 2 NSFX jr. + ``` + +
+ + This specification does not define how the meaning of multiple parts with the + same tag differs from the meaning of a single part with a concatenated larger + payload. However, some applications allow the user to chose whether to combine + or split name parts, meaning the tag quantity should be treated as expressing + at least a user preference. Even when multiple `SURN` tags are used, the + `PersonalName` data type identifies a single surname substring between its + slashes. label: 'Surname prefix' diff --git a/extracted-files/tags/SSN b/extracted-files/tags/SSN index fbe1faa1..290ccb90 100644 --- a/extracted-files/tags/SSN +++ b/extracted-files/tags/SSN @@ -11,9 +11,22 @@ standard tag: 'SSN' specification: - Social security number - An [Individual Attribute]. See also `INDIVIDUAL_ATTRIBUTE_STRUCTURE`. - - social security number + - | + Individual attributes; see [Individual Attributes] for descriptions of each + individual attribute type.. + +
+ + Individual attribute structures vary as follows: + + - `INDI`.`NCHI` and `NMR` have [Integer] payloads; `IDNO` and `SSN` have + [Special] payloads; others have [Text] payloads + - `INDI`.`FACT` and `IDNO` require `TYPE`; it's optional for others + +
- A number assigned by the United States Social Security Administration, used for tax identification purposes. It is a type of `IDNO`. + - social security number label: 'Social security number' diff --git a/extracted-files/tags/SUBM b/extracted-files/tags/SUBM index bc55b002..ddd2f162 100644 --- a/extracted-files/tags/SUBM +++ b/extracted-files/tags/SUBM @@ -15,7 +15,7 @@ specification: label: 'Submitter' -payload: "@@" +payload: "@@" substructures: {} @@ -24,5 +24,7 @@ superstructures: "https://gedcom.io/terms/v7/record-FAM": "{0:M}" "https://gedcom.io/terms/v7/record-INDI": "{0:M}" +prerelease: true + contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/SURN b/extracted-files/tags/SURN index 36773083..e095d365 100644 --- a/extracted-files/tags/SURN +++ b/extracted-files/tags/SURN @@ -11,6 +11,30 @@ standard tag: 'SURN' specification: - Surname - A family name passed on or used by members of a family. + - | + Optional isolated name parts; see `PERSONAL_NAME_STRUCTURE` for more details. + +
+ + "Lt. Cmndr. Joseph Allen jr.” might be presented as + + ```gedcom + 1 NAME Lt. Cmndr. Joseph /Allen/ jr. + 2 NPFX Lt. Cmndr. + 2 GIVN Joseph + 2 SURN Allen + 2 NSFX jr. + ``` + +
+ + This specification does not define how the meaning of multiple parts with the + same tag differs from the meaning of a single part with a concatenated larger + payload. However, some applications allow the user to chose whether to combine + or split name parts, meaning the tag quantity should be treated as expressing + at least a user preference. Even when multiple `SURN` tags are used, the + `PersonalName` data type identifies a single surname substring between its + slashes. label: 'Surname' diff --git a/extracted-files/tags/TEMP b/extracted-files/tags/TEMP index 72e444e8..414853f2 100644 --- a/extracted-files/tags/TEMP +++ b/extracted-files/tags/TEMP @@ -14,6 +14,9 @@ specification: Previous versions recommended using a set of abbreviations for temple names, but the list of abbreviations is no longer published by the Church and using abbreviations is no longer recommended. + - Dates for these ordinances should be in the default (`GREGORIAN`) calendar and + be 1830 or later. These ordinances can be performed posthumously by proxy, and + the date may reflect that posthumous date. label: 'Temple' diff --git a/extracted-files/tags/UID b/extracted-files/tags/UID index 61de1348..047c47cc 100644 --- a/extracted-files/tags/UID +++ b/extracted-files/tags/UID @@ -42,6 +42,32 @@ specification: known. + - | + Substructures that may be shared by most individual and family events and + attributes. + + Note that many of these substructures are limited to 1 per event. Conflicting + event information should be represented by placing them in separate event + structures (with appropriate source citations) rather than by placing them + under the same enclosing event. + - | +
+ + Having an `EXID` without an `EXID`.`TYPE` substructure is deprecated. The + meaning of an `EXID` depends on its `EXID`.`TYPE`. The cardinality of + `EXID`.`TYPE` will be changed to `{1:1}` in version 8.0. + +
+ + Each of these provides an identifier for a structure or its subject, and each + is different in purpose: + + - `REFN` is a user-generated identifier for a structure. + + - `UID` is a globally-unique identifier for a structure. + + - `EXID` is an identifier maintained by an external authority that applies to + the subject of the structure. label: 'Unique Identifier' diff --git a/extracted-files/tags/WIFE b/extracted-files/tags/WIFE index 123e1b41..861b301e 100644 --- a/extracted-files/tags/WIFE +++ b/extracted-files/tags/WIFE @@ -31,6 +31,7 @@ specification: ``` + - Substructures shared by most family events and attributes. label: 'Wife' diff --git a/extracted-files/tags/WILL b/extracted-files/tags/WILL index 5a9836dd..b7c8c063 100644 --- a/extracted-files/tags/WILL +++ b/extracted-files/tags/WILL @@ -11,10 +11,33 @@ standard tag: 'WILL' specification: - Will - An [Individual Event]. See also `INDIVIDUAL_EVENT_STRUCTURE`. - - will + - | + Individual events; see [Individual Events] for descriptions of each individual + event type. + + An event structure may be used to discuss an event even if the event is not + known to have occurred. See [Events] for a discussion of how `DATE`, `PLAC`, + and the optional `Y` payload indicate whether the structure is asserting the + event occurred. See the `NON_EVENT_STRUCTURE` for how to state an event did not + occur. + +
+ + Individual event structures vary as follows: + + - `INDI`.`EVEN` has a [Text] payload; others may have a `Y` payload + - `INDI`.`EVEN` requires `TYPE`; it's optional for others + - `BIRT` and `CHR` may have a `FAMC` with no substructures; `ADOP` may have a + `FAMC` with an optional `ADOP` substructure; others may not have a `FAMC` + substructure. The `FAMC` substructure can itself have substructures for + source citations and notes related to the child's relationship to parents, + and is the recommended place to store such information. + +
- A legal document treated as an event, by which a person disposes of his or her estate. It takes effect after death. The event date is the date the will was signed while the person was alive. (See also `PROB`) + - will label: 'Will' diff --git a/extracted-files/tags/WWW b/extracted-files/tags/WWW index ae756acc..4e527825 100644 --- a/extracted-files/tags/WWW +++ b/extracted-files/tags/WWW @@ -26,6 +26,14 @@ specification: If an invalid or no longer existing web address is present upon import, it should be preserved as-is on export. + - | + Substructures that may be shared by most individual and family events and + attributes. + + Note that many of these substructures are limited to 1 per event. Conflicting + event information should be represented by placing them in separate event + structures (with appropriate source citations) rather than by placing them + under the same enclosing event. label: 'Web address' diff --git a/extracted-files/tags/cal-FRENCH_R b/extracted-files/tags/cal-FRENCH_R index 34719579..36d816a7 100644 --- a/extracted-files/tags/cal-FRENCH_R +++ b/extracted-files/tags/cal-FRENCH_R @@ -17,21 +17,21 @@ specification: Permitted months are - | `stdTag` | Name | - | :------- | :------------------- | - | `VEND` | Vendémiaire | - | `BRUM` | Brumaire | - | `FRIM` | Frimaire | - | `NIVO` | Nivôse | - | `PLUV` | Pluviôse | - | `VENT` | Ventôse | - | `GERM` | Germinal | - | `FLOR` | Floréal | - | `PRAI` | Prairial | - | `MESS` | Messidor | - | `THER` | Thermidor | - | `FRUC` | Fructidor | - | `COMP` | Jour Complémentaires | + | `stdTag` | URI | Name | + | :------- | :-------------------------------------- | :------------------- | + | `VEND` | `https://gedcom.io/terms/v7/month-VEND` | Vendémiaire | + | `BRUM` | `https://gedcom.io/terms/v7/month-BRUM` | Brumaire | + | `FRIM` | `https://gedcom.io/terms/v7/month-FRIM` | Frimaire | + | `NIVO` | `https://gedcom.io/terms/v7/month-NIVO` | Nivôse | + | `PLUV` | `https://gedcom.io/terms/v7/month-PLUV` | Pluviôse | + | `VENT` | `https://gedcom.io/terms/v7/month-VENT` | Ventôse | + | `GERM` | `https://gedcom.io/terms/v7/month-GERM` | Germinal | + | `FLOR` | `https://gedcom.io/terms/v7/month-FLOR` | Floréal | + | `PRAI` | `https://gedcom.io/terms/v7/month-PRAI` | Prairial | + | `MESS` | `https://gedcom.io/terms/v7/month-MESS` | Messidor | + | `THER` | `https://gedcom.io/terms/v7/month-THER` | Thermidor | + | `FRUC` | `https://gedcom.io/terms/v7/month-FRUC` | Fructidor | + | `COMP` | `https://gedcom.io/terms/v7/month-COMP` | Jour Complémentaires | No epoch marker is permitted in this calendar. diff --git a/extracted-files/tags/cal-GREGORIAN b/extracted-files/tags/cal-GREGORIAN index 6b489c05..99cbb5aa 100644 --- a/extracted-files/tags/cal-GREGORIAN +++ b/extracted-files/tags/cal-GREGORIAN @@ -16,20 +16,20 @@ specification: Permitted months are - | `stdTag` | Name | - | :------- | :-------- | - | `JAN` | January | - | `FEB` | February | - | `MAR` | March | - | `APR` | April | - | `MAY` | May | - | `JUN` | June | - | `JUL` | July | - | `AUG` | August | - | `SEP` | September | - | `OCT` | October | - | `NOV` | November | - | `DEC` | December | + | `stdTag` | URI | Name | + | :------- | :------------------------------------- | :-------- | + | `JAN` | `https://gedcom.io/terms/v7/month-JAN` | January | + | `FEB` | `https://gedcom.io/terms/v7/month-FEB` | February | + | `MAR` | `https://gedcom.io/terms/v7/month-MAR` | March | + | `APR` | `https://gedcom.io/terms/v7/month-APR` | April | + | `MAY` | `https://gedcom.io/terms/v7/month-MAY` | May | + | `JUN` | `https://gedcom.io/terms/v7/month-JUN` | June | + | `JUL` | `https://gedcom.io/terms/v7/month-JUL` | July | + | `AUG` | `https://gedcom.io/terms/v7/month-AUG` | August | + | `SEP` | `https://gedcom.io/terms/v7/month-SEP` | September | + | `OCT` | `https://gedcom.io/terms/v7/month-OCT` | October | + | `NOV` | `https://gedcom.io/terms/v7/month-NOV` | November | + | `DEC` | `https://gedcom.io/terms/v7/month-DEC` | December | The epoch marker `BCE` is permitted in this calendar; year *y* BCE indicates a year *y* years before year 1. Thus, there is no year 0; year 1 BCE was followed @@ -54,7 +54,7 @@ months: - "https://gedcom.io/terms/v7/month-DEC" epochs: - - BCE + - "BCE" contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/cal-HEBREW b/extracted-files/tags/cal-HEBREW index ab647bd3..aa725e31 100644 --- a/extracted-files/tags/cal-HEBREW +++ b/extracted-files/tags/cal-HEBREW @@ -16,21 +16,21 @@ specification: (1 Tishrei 1) primarily overlapped with Gregorian 7 September 3761 BCE and Julian 7 October 3761 BCE (starting at sunset on the 6th day of those months). - | `stdTag` | Name | - | :------- | :-------------------------------------------------------------------- | - | `TSH` | Tishrei (תִּשְׁרֵי) | - | `CSH` | Marcheshvan (מַרְחֶשְׁוָן) or Cheshvan (חֶשְׁוָן) | - | `KSL` | Kislev (כִּסְלֵו) | - | `TVT` | Tevet (טֵבֵת) | - | `SHV` | Shevat (שְׁבָט) | - | `ADR` | Adar I, Adar Rishon, First Adar, or Adar Aleph (אדר א׳) | - | `ADS` | Adar (אֲדָר); or Adar II, Adar Sheni, Second Adar, or Adar Bet (אדר ב׳) | - | `NSN` | Nisan (נִיסָן) | - | `IYR` | Iyar (אִייָר) | - | `SVN` | Sivan (סִיוָן) | - | `TMZ` | Tammuz (תַּמּוּז) | - | `AAV` | Av (אָב) | - | `ELL` | Elul (אֱלוּל) | + | `stdTag` | URI | Name | + | :------- | :------------------------------------- | :-------------------------------------------------------------------- | + | `TSH` | `https://gedcom.io/terms/v7/month-TSH` | Tishrei (תִּשְׁרֵי) | + | `CSH` | `https://gedcom.io/terms/v7/month-CSH` | Marcheshvan (מַרְחֶשְׁוָן) or Cheshvan (חֶשְׁוָן) | + | `KSL` | `https://gedcom.io/terms/v7/month-KSL` | Kislev (כִּסְלֵו) | + | `TVT` | `https://gedcom.io/terms/v7/month-TVT` | Tevet (טֵבֵת) | + | `SHV` | `https://gedcom.io/terms/v7/month-SHV` | Shevat (שְׁבָט) | + | `ADR` | `https://gedcom.io/terms/v7/month-ADR` | Adar I, Adar Rishon, First Adar, or Adar Aleph (אדר א׳) | + | `ADS` | `https://gedcom.io/terms/v7/month-ADS` | Adar (אֲדָר); or Adar II, Adar Sheni, Second Adar, or Adar Bet (אדר ב׳) | + | `NSN` | `https://gedcom.io/terms/v7/month-NSN` | Nisan (נִיסָן) | + | `IYR` | `https://gedcom.io/terms/v7/month-IYR` | Iyar (אִייָר) | + | `SVN` | `https://gedcom.io/terms/v7/month-SVN` | Sivan (סִיוָן) | + | `TMZ` | `https://gedcom.io/terms/v7/month-TMZ` | Tammuz (תַּמּוּז) | + | `AAV` | `https://gedcom.io/terms/v7/month-AAV` | Av (אָב) | + | `ELL` | `https://gedcom.io/terms/v7/month-ELL` | Elul (אֱלוּל) | To keep the lunar-based months synchronized with the solar-based years, some years have Adar I and others do not, instead proceeding from Shevat directly to diff --git a/extracted-files/tags/cal-JULIAN b/extracted-files/tags/cal-JULIAN index cb2c7b60..89ab5596 100644 --- a/extracted-files/tags/cal-JULIAN +++ b/extracted-files/tags/cal-JULIAN @@ -42,7 +42,7 @@ months: - "https://gedcom.io/terms/v7/month-DEC" epochs: - - BCE + - "BCE" contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/enum-ADOP-HUSB b/extracted-files/tags/enum-ADOP-HUSB index 1d85e492..afc2903c 100644 --- a/extracted-files/tags/enum-ADOP-HUSB +++ b/extracted-files/tags/enum-ADOP-HUSB @@ -9,7 +9,7 @@ uri: https://gedcom.io/terms/v7/enum-ADOP-HUSB standard tag: 'HUSB' specification: - - Adopted by the `HUSB` of the `FAM` pointed to by `FAMC`. + - Adopted by the `HUSB` of the `FAM` pointed to by `FAMC` value of: - "https://gedcom.io/terms/v7/enumset-ADOP" diff --git a/extracted-files/tags/enum-ADOP-WIFE b/extracted-files/tags/enum-ADOP-WIFE index b8bbcad6..704ff853 100644 --- a/extracted-files/tags/enum-ADOP-WIFE +++ b/extracted-files/tags/enum-ADOP-WIFE @@ -9,7 +9,7 @@ uri: https://gedcom.io/terms/v7/enum-ADOP-WIFE standard tag: 'WIFE' specification: - - Adopted by the `WIFE` of the `FAM` pointed to by `FAMC`. + - Adopted by the `WIFE` of the `FAM` pointed to by `FAMC` value of: - "https://gedcom.io/terms/v7/enumset-ADOP" diff --git a/extracted-files/tags/enum-BIRTH b/extracted-files/tags/enum-BIRTH index 797be13e..3c3a8486 100644 --- a/extracted-files/tags/enum-BIRTH +++ b/extracted-files/tags/enum-BIRTH @@ -9,7 +9,8 @@ uri: https://gedcom.io/terms/v7/enum-BIRTH standard tag: 'BIRTH' specification: - - Associated with birth, such as a birth name or birth parents. + - Family structure at time of birth + - Name given at or near birth. value of: - "https://gedcom.io/terms/v7/enumset-NAME-TYPE" diff --git a/extracted-files/tags/enumset-ADOP b/extracted-files/tags/enumset-ADOP index 2ab0afa0..b4e13791 100644 --- a/extracted-files/tags/enumset-ADOP +++ b/extracted-files/tags/enumset-ADOP @@ -11,5 +11,7 @@ enumeration values: - "https://gedcom.io/terms/v7/enum-ADOP-WIFE" - "https://gedcom.io/terms/v7/enum-BOTH" +standard: true + contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/enumset-EVEN b/extracted-files/tags/enumset-EVEN index dd10cdb4..90ab5f74 100644 --- a/extracted-files/tags/enumset-EVEN +++ b/extracted-files/tags/enumset-EVEN @@ -6,9 +6,17 @@ type: enumeration set uri: https://gedcom.io/terms/v7/enumset-EVEN +specification: + - | + An event-type tag name, but not the generic `EVEN` tag. See [Events]. + + Most values in this enumeration set use the same tag and URI as the + corresponding event, except for tags used with different URIs for `FAM` vs + `INDI`: + enumeration values: - - "https://gedcom.io/terms/v7/enum-CENS" - "https://gedcom.io/terms/v7/ADOP" + - "https://gedcom.io/terms/v7/ANUL" - "https://gedcom.io/terms/v7/BAPM" - "https://gedcom.io/terms/v7/BARM" - "https://gedcom.io/terms/v7/BASM" @@ -20,24 +28,26 @@ enumeration values: - "https://gedcom.io/terms/v7/CONF" - "https://gedcom.io/terms/v7/CREM" - "https://gedcom.io/terms/v7/DEAT" + - "https://gedcom.io/terms/v7/DIV" + - "https://gedcom.io/terms/v7/DIVF" - "https://gedcom.io/terms/v7/EMIG" + - "https://gedcom.io/terms/v7/ENGA" - "https://gedcom.io/terms/v7/FCOM" - "https://gedcom.io/terms/v7/GRAD" - "https://gedcom.io/terms/v7/IMMI" - - "https://gedcom.io/terms/v7/NATU" - - "https://gedcom.io/terms/v7/ORDN" - - "https://gedcom.io/terms/v7/PROB" - - "https://gedcom.io/terms/v7/RETI" - - "https://gedcom.io/terms/v7/WILL" - - "https://gedcom.io/terms/v7/ANUL" - - "https://gedcom.io/terms/v7/DIV" - - "https://gedcom.io/terms/v7/DIVF" - - "https://gedcom.io/terms/v7/ENGA" - "https://gedcom.io/terms/v7/MARB" - "https://gedcom.io/terms/v7/MARC" - "https://gedcom.io/terms/v7/MARL" - "https://gedcom.io/terms/v7/MARR" - "https://gedcom.io/terms/v7/MARS" + - "https://gedcom.io/terms/v7/NATU" + - "https://gedcom.io/terms/v7/ORDN" + - "https://gedcom.io/terms/v7/PROB" + - "https://gedcom.io/terms/v7/RETI" + - "https://gedcom.io/terms/v7/WILL" + - "https://gedcom.io/terms/v7/enum-CENS" + +standard: true contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/enumset-EVENATTR b/extracted-files/tags/enumset-EVENATTR index f93d79f4..ab6be021 100644 --- a/extracted-files/tags/enumset-EVENATTR +++ b/extracted-files/tags/enumset-EVENATTR @@ -6,53 +6,63 @@ type: enumeration set uri: https://gedcom.io/terms/v7/enumset-EVENATTR +specification: + - | + An event- or attribute-type tag name. See [Events] and [Attributes]. + + Most values in this enumeration set use the same tag and URI as the + corresponding event or attribute, except for tags used with different URIs for + `FAM` vs `INDI`: + enumeration values: - - "https://gedcom.io/terms/v7/enum-CENS" - - "https://gedcom.io/terms/v7/enum-NCHI" - - "https://gedcom.io/terms/v7/enum-RESI" - - "https://gedcom.io/terms/v7/enum-FACT" - - "https://gedcom.io/terms/v7/enum-EVEN" - "https://gedcom.io/terms/v7/ADOP" + - "https://gedcom.io/terms/v7/ANUL" - "https://gedcom.io/terms/v7/BAPM" - "https://gedcom.io/terms/v7/BARM" - "https://gedcom.io/terms/v7/BASM" - "https://gedcom.io/terms/v7/BIRT" - "https://gedcom.io/terms/v7/BLES" - "https://gedcom.io/terms/v7/BURI" + - "https://gedcom.io/terms/v7/CAST" - "https://gedcom.io/terms/v7/CHR" - "https://gedcom.io/terms/v7/CHRA" - "https://gedcom.io/terms/v7/CONF" - "https://gedcom.io/terms/v7/CREM" - "https://gedcom.io/terms/v7/DEAT" + - "https://gedcom.io/terms/v7/DIV" + - "https://gedcom.io/terms/v7/DIVF" + - "https://gedcom.io/terms/v7/DSCR" + - "https://gedcom.io/terms/v7/EDUC" - "https://gedcom.io/terms/v7/EMIG" + - "https://gedcom.io/terms/v7/ENGA" - "https://gedcom.io/terms/v7/FCOM" - "https://gedcom.io/terms/v7/GRAD" + - "https://gedcom.io/terms/v7/IDNO" - "https://gedcom.io/terms/v7/IMMI" - - "https://gedcom.io/terms/v7/NATU" - - "https://gedcom.io/terms/v7/ORDN" - - "https://gedcom.io/terms/v7/PROB" - - "https://gedcom.io/terms/v7/RETI" - - "https://gedcom.io/terms/v7/WILL" - - "https://gedcom.io/terms/v7/ANUL" - - "https://gedcom.io/terms/v7/DIV" - - "https://gedcom.io/terms/v7/DIVF" - - "https://gedcom.io/terms/v7/ENGA" + - "https://gedcom.io/terms/v7/INDI-RELI" + - "https://gedcom.io/terms/v7/INDI-TITL" - "https://gedcom.io/terms/v7/MARB" - "https://gedcom.io/terms/v7/MARC" - "https://gedcom.io/terms/v7/MARL" - "https://gedcom.io/terms/v7/MARR" - "https://gedcom.io/terms/v7/MARS" - - "https://gedcom.io/terms/v7/CAST" - - "https://gedcom.io/terms/v7/DSCR" - - "https://gedcom.io/terms/v7/EDUC" - - "https://gedcom.io/terms/v7/IDNO" - "https://gedcom.io/terms/v7/NATI" + - "https://gedcom.io/terms/v7/NATU" - "https://gedcom.io/terms/v7/NMR" - "https://gedcom.io/terms/v7/OCCU" + - "https://gedcom.io/terms/v7/ORDN" + - "https://gedcom.io/terms/v7/PROB" - "https://gedcom.io/terms/v7/PROP" - - "https://gedcom.io/terms/v7/INDI-RELI" + - "https://gedcom.io/terms/v7/RETI" - "https://gedcom.io/terms/v7/SSN" - - "https://gedcom.io/terms/v7/INDI-TITL" + - "https://gedcom.io/terms/v7/WILL" + - "https://gedcom.io/terms/v7/enum-CENS" + - "https://gedcom.io/terms/v7/enum-EVEN" + - "https://gedcom.io/terms/v7/enum-FACT" + - "https://gedcom.io/terms/v7/enum-NCHI" + - "https://gedcom.io/terms/v7/enum-RESI" + +standard: true contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/enumset-FAMC-STAT b/extracted-files/tags/enumset-FAMC-STAT index 0741db74..15d0d43e 100644 --- a/extracted-files/tags/enumset-FAMC-STAT +++ b/extracted-files/tags/enumset-FAMC-STAT @@ -6,10 +6,28 @@ type: enumeration set uri: https://gedcom.io/terms/v7/enumset-FAMC-STAT +specification: + - | + When these enumeration values were introduced in version 5.5.1 it was assumed, + but never specified, that "proven" referred to [the definition provided by the + Board for Certification of Genealogists]. Because that meaning was not + specified and other definitions of "proven" exist, existing files might use + these values in other ways. + +
+ + The structures for representing the strength of and confidence in various + claims are known to be inadequate and are likely to change in a future version + of this specification. + +
+ enumeration values: - "https://gedcom.io/terms/v7/enum-CHALLENGED" - "https://gedcom.io/terms/v7/enum-DISPROVEN" - "https://gedcom.io/terms/v7/enum-PROVEN" +standard: true + contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/enumset-MEDI b/extracted-files/tags/enumset-MEDI index 937dc3d5..01a734b3 100644 --- a/extracted-files/tags/enumset-MEDI +++ b/extracted-files/tags/enumset-MEDI @@ -17,10 +17,12 @@ enumeration values: - "https://gedcom.io/terms/v7/enum-MANUSCRIPT" - "https://gedcom.io/terms/v7/enum-MAP" - "https://gedcom.io/terms/v7/enum-NEWSPAPER" + - "https://gedcom.io/terms/v7/enum-OTHER" - "https://gedcom.io/terms/v7/enum-PHOTO" - "https://gedcom.io/terms/v7/enum-TOMBSTONE" - "https://gedcom.io/terms/v7/enum-VIDEO" - - "https://gedcom.io/terms/v7/enum-OTHER" + +standard: true contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/enumset-NAME-TYPE b/extracted-files/tags/enumset-NAME-TYPE index ef8f4f2d..9656b63a 100644 --- a/extracted-files/tags/enumset-NAME-TYPE +++ b/extracted-files/tags/enumset-NAME-TYPE @@ -12,8 +12,10 @@ enumeration values: - "https://gedcom.io/terms/v7/enum-IMMIGRANT" - "https://gedcom.io/terms/v7/enum-MAIDEN" - "https://gedcom.io/terms/v7/enum-MARRIED" - - "https://gedcom.io/terms/v7/enum-PROFESSIONAL" - "https://gedcom.io/terms/v7/enum-OTHER" + - "https://gedcom.io/terms/v7/enum-PROFESSIONAL" + +standard: true contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/enumset-PEDI b/extracted-files/tags/enumset-PEDI index f7225b9a..0bed35da 100644 --- a/extracted-files/tags/enumset-PEDI +++ b/extracted-files/tags/enumset-PEDI @@ -6,12 +6,43 @@ type: enumeration set uri: https://gedcom.io/terms/v7/enumset-PEDI +specification: + - | +
+ + It is known that some users have interpreted `BIRTH` to mean "genetic parent" + and others to mean "social parent at time of birth". Definitions differ in many + circumstances (infidelity, surrogacy, sperm donation, and so on). Hence, + applications should refrain from asserting it has either meaning in imported + data. + +
+ +
+ + The structures for foster children in particular, and family relationships in + general, are known to have undesirable limitations and are likely to change in + a future version of this specification. + +
+ +
+ + `SEALING` implies that a `SLGC` event was performed, and it is recommended that + this enumeration value only be used when the `SLGC` event is present in the + GEDCOM file. `ADOPTED`, on the other hand, only implies a social relationship + which may or may not have any associated `ADOP` event. + +
+ enumeration values: - "https://gedcom.io/terms/v7/enum-ADOPTED" - "https://gedcom.io/terms/v7/enum-BIRTH" - "https://gedcom.io/terms/v7/enum-FOSTER" - - "https://gedcom.io/terms/v7/enum-SEALING" - "https://gedcom.io/terms/v7/enum-OTHER" + - "https://gedcom.io/terms/v7/enum-SEALING" + +standard: true contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/enumset-QUAY b/extracted-files/tags/enumset-QUAY index 5562c9c9..04518047 100644 --- a/extracted-files/tags/enumset-QUAY +++ b/extracted-files/tags/enumset-QUAY @@ -6,11 +6,25 @@ type: enumeration set uri: https://gedcom.io/terms/v7/enumset-QUAY +specification: + - | + Although the values look like integers, they do not have numeric meaning. + +
+ + The structures for representing the strength of and confidence in various + claims are known to be inadequate and are likely to change in a future version + of this specification. + +
+ enumeration values: - "https://gedcom.io/terms/v7/enum-0" - "https://gedcom.io/terms/v7/enum-1" - "https://gedcom.io/terms/v7/enum-2" - "https://gedcom.io/terms/v7/enum-3" +standard: true + contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/enumset-RESN b/extracted-files/tags/enumset-RESN index b2ff892e..ce2ea68e 100644 --- a/extracted-files/tags/enumset-RESN +++ b/extracted-files/tags/enumset-RESN @@ -6,10 +6,46 @@ type: enumeration set uri: https://gedcom.io/terms/v7/enumset-RESN +specification: + - | + It is recommended that applications allow users to chose how `CONFIDENTIAL` + and/or `PRIVACY` data is handled when interfacing with other users or + applications, for example by allowing them to exclude such data when exporting. + + When a [List] of `RESN` enumeration values are present, all apply. + +
+ + The line `1 RESN CONFIDENTIAL, LOCKED` means the superstructure's data is both + considered confidential *and* read-only. + +
+ + Since `RESN` was introduced in version 5.5 the intent of the `PRIVACY` value + has been interpreted differently by different applications. Known + interpretations include + + - Some assign `PRIVACY` by algorithm or policy, unlike the user-assigned + `CONFIDENTIAL` + - Some use `PRIVACY` to mark records that have already had private data removed + - Some use the English definitions of "privacy" and "confidential" to inform + different restrictions for each + + There may also be applications using `PRIVACY` with interpretations not listed + above. + + Because these different interpretations became widespread before they were + identified, determining which one is meant generally requires knowledge of + which application applied the `PRIVACY` restriction notice. It is anticipated + that a future version will deprecate the `PRIVACY` option and introduce new + values for each of its current use cases. + enumeration values: - "https://gedcom.io/terms/v7/enum-CONFIDENTIAL" - "https://gedcom.io/terms/v7/enum-LOCKED" - "https://gedcom.io/terms/v7/enum-PRIVACY" +standard: true + contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/enumset-ROLE b/extracted-files/tags/enumset-ROLE index d1dfc0c0..b5141f8a 100644 --- a/extracted-files/tags/enumset-ROLE +++ b/extracted-files/tags/enumset-ROLE @@ -6,6 +6,12 @@ type: enumeration set uri: https://gedcom.io/terms/v7/enumset-ROLE +specification: + - These should be interpreted in the context of the recorded event and its + primary participants. For example, if you cite a child’s birth record as the + source of the mother’s name, the value for this field is “`MOTH`.” If you + describe the groom of a marriage, the role is “`HUSB`.” + enumeration values: - "https://gedcom.io/terms/v7/enum-CHIL" - "https://gedcom.io/terms/v7/enum-CLERGY" @@ -17,11 +23,13 @@ enumeration values: - "https://gedcom.io/terms/v7/enum-MULTIPLE" - "https://gedcom.io/terms/v7/enum-NGHBR" - "https://gedcom.io/terms/v7/enum-OFFICIATOR" + - "https://gedcom.io/terms/v7/enum-OTHER" - "https://gedcom.io/terms/v7/enum-PARENT" - "https://gedcom.io/terms/v7/enum-SPOU" - "https://gedcom.io/terms/v7/enum-WIFE" - "https://gedcom.io/terms/v7/enum-WITN" - - "https://gedcom.io/terms/v7/enum-OTHER" + +standard: true contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/enumset-SEX b/extracted-files/tags/enumset-SEX index 44883b69..2de87d8a 100644 --- a/extracted-files/tags/enumset-SEX +++ b/extracted-files/tags/enumset-SEX @@ -6,11 +6,19 @@ type: enumeration set uri: https://gedcom.io/terms/v7/enumset-SEX +specification: + - This can describe an individual’s reproductive or sexual anatomy at birth. + Related concepts of gender identity or sexual preference are not currently + given their own tag. Cultural or personal gender preference may be indicated + using the `FACT` tag. + enumeration values: - - "https://gedcom.io/terms/v7/enum-M" - "https://gedcom.io/terms/v7/enum-F" - - "https://gedcom.io/terms/v7/enum-X" + - "https://gedcom.io/terms/v7/enum-M" - "https://gedcom.io/terms/v7/enum-U" + - "https://gedcom.io/terms/v7/enum-X" + +standard: true contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/enumset-ord-STAT b/extracted-files/tags/enumset-ord-STAT index c7299691..b887b99e 100644 --- a/extracted-files/tags/enumset-ord-STAT +++ b/extracted-files/tags/enumset-ord-STAT @@ -6,19 +6,44 @@ type: enumeration set uri: https://gedcom.io/terms/v7/enumset-ord-STAT +specification: + - | + These values were formerly used by The Church of Jesus Christ of Latter-day + Saints for coordinating between temples and members. They are no longer used in + that way, meaning their interpretation is subject to individual user + interpretation + + The definition of some of these values combined with the official policies of + the church mean that some values only make sense under a subset of [ordinance + structures]. These contexts are identified in the "applies to" column below, + and it is recommended that applications follow those guidelines. These + recommendations were not present when these enumeration values were first + introduced in version 5.3 so uses that do not conform to the "applies to" + guidelines may be encountered; if so, they should be treated by applications + like any other user-specified but semantically-strange data. + + The definition of some of these values combined with the official policies of + the church and the move of the church away from using GEDCOM for handling + ordinance requests make them redundant and/or no longer relevant. If so, that + is indicated in the "status" column below. Like the "applies to" column, the + "status" column is a recommendation, not a requirement, and applications should + be prepared to encounter non-current values. + enumeration values: - "https://gedcom.io/terms/v7/enum-BIC" - "https://gedcom.io/terms/v7/enum-CANCELED" - "https://gedcom.io/terms/v7/enum-CHILD" - "https://gedcom.io/terms/v7/enum-COMPLETED" - - "https://gedcom.io/terms/v7/enum-EXCLUDED" - "https://gedcom.io/terms/v7/enum-DNS" - "https://gedcom.io/terms/v7/enum-DNS_CAN" + - "https://gedcom.io/terms/v7/enum-EXCLUDED" - "https://gedcom.io/terms/v7/enum-INFANT" - "https://gedcom.io/terms/v7/enum-PRE_1970" - "https://gedcom.io/terms/v7/enum-STILLBORN" - "https://gedcom.io/terms/v7/enum-SUBMITTED" - "https://gedcom.io/terms/v7/enum-UNCLEARED" +standard: true + contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/month-ADR b/extracted-files/tags/month-ADR index 0589c513..8bb26316 100644 --- a/extracted-files/tags/month-ADR +++ b/extracted-files/tags/month-ADR @@ -9,7 +9,7 @@ uri: https://gedcom.io/terms/v7/month-ADR standard tag: 'ADR' specification: - - Adar I, Adar Rishon, First Adar, or Adar Aleph (אדר א׳) + - Adar I, Adar Rishon, First Adar, or Adar Aleph (אדר א׳) label: 'Adar I' diff --git a/extracted-files/tags/month-ADS b/extracted-files/tags/month-ADS index 5001a03d..069be074 100644 --- a/extracted-files/tags/month-ADS +++ b/extracted-files/tags/month-ADS @@ -9,7 +9,7 @@ uri: https://gedcom.io/terms/v7/month-ADS standard tag: 'ADS' specification: - - Adar (אֲדָר); or Adar II, Adar Sheni, Second Adar, or Adar Bet (אדר ב׳) + - Adar (אֲדָר); or Adar II, Adar Sheni, Second Adar, or Adar Bet (אדר ב׳) label: 'Adar' diff --git a/extracted-files/tags/ord-STAT b/extracted-files/tags/ord-STAT index 848e24ce..380608ce 100644 --- a/extracted-files/tags/ord-STAT +++ b/extracted-files/tags/ord-STAT @@ -12,6 +12,9 @@ specification: - Status - An enumerated value from set `https://gedcom.io/terms/v7/enumset-ord-STAT` assessing of the state or condition of an ordinance. + - Dates for these ordinances should be in the default (`GREGORIAN`) calendar and + be 1830 or later. These ordinances can be performed posthumously by proxy, and + the date may reflect that posthumous date. label: 'Status' diff --git a/extracted-files/tags/record-REPO b/extracted-files/tags/record-REPO index 60ffc728..852f0a49 100644 --- a/extracted-files/tags/record-REPO +++ b/extracted-files/tags/record-REPO @@ -47,9 +47,10 @@ substructures: superstructures: {} -prerelease: true +subsumes: + - "https://gedcom.io/terms/v7/record-REPO" -subsumes: https://gedcom.io/terms/v7/record-REPO +prerelease: true contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/record-SNOTE b/extracted-files/tags/record-SNOTE index ce85a6d3..c402d041 100644 --- a/extracted-files/tags/record-SNOTE +++ b/extracted-files/tags/record-SNOTE @@ -74,9 +74,10 @@ substructures: superstructures: {} -prerelease: true +subsumes: + - "https://gedcom.io/terms/v7/record-SNOTE" -subsumes: https://gedcom.io/terms/v7/record-SNOTE +prerelease: true contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/record-SOUR b/extracted-files/tags/record-SOUR index 02053731..7c74771c 100644 --- a/extracted-files/tags/record-SOUR +++ b/extracted-files/tags/record-SOUR @@ -58,9 +58,10 @@ substructures: superstructures: {} -prerelease: true +subsumes: + - "https://gedcom.io/terms/v7/record-SOUR" -subsumes: https://gedcom.io/terms/v7/record-SOUR +prerelease: true contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/record-SUBM b/extracted-files/tags/record-SUBM index 5b706355..1f4f03ed 100644 --- a/extracted-files/tags/record-SUBM +++ b/extracted-files/tags/record-SUBM @@ -41,9 +41,10 @@ substructures: superstructures: {} -prerelease: true +subsumes: + - "https://gedcom.io/terms/v7/record-SUBM" -subsumes: https://gedcom.io/terms/v7/record-SUBM +prerelease: true contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/type-Age b/extracted-files/tags/type-Age index 23d557c6..923b68d5 100644 --- a/extracted-files/tags/type-Age +++ b/extracted-files/tags/type-Age @@ -73,5 +73,7 @@ specification: The URI for the `Age` data type is `https://gedcom.io/terms/v7/type-Age`. +label: 'Age' + contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/type-Date b/extracted-files/tags/type-Date index fd393444..3a77282b 100644 --- a/extracted-files/tags/type-Date +++ b/extracted-files/tags/type-Date @@ -125,5 +125,7 @@ specification: The URI for the `DatePeriod` data type is `https://gedcom.io/terms/v7/type-Date#period`. +label: 'Date' + contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/type-Date-exact b/extracted-files/tags/type-Date-exact index b115793a..2a44e625 100644 --- a/extracted-files/tags/type-Date-exact +++ b/extracted-files/tags/type-Date-exact @@ -125,5 +125,7 @@ specification: The URI for the `DatePeriod` data type is `https://gedcom.io/terms/v7/type-Date#period`. +label: 'Date' + contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/type-Date-period b/extracted-files/tags/type-Date-period index dcde4baf..7a9407d6 100644 --- a/extracted-files/tags/type-Date-period +++ b/extracted-files/tags/type-Date-period @@ -125,5 +125,7 @@ specification: The URI for the `DatePeriod` data type is `https://gedcom.io/terms/v7/type-Date#period`. +label: 'Date' + contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/type-Enum b/extracted-files/tags/type-Enum index 82118e50..2d08d4e6 100644 --- a/extracted-files/tags/type-Enum +++ b/extracted-files/tags/type-Enum @@ -53,5 +53,7 @@ specification: The URI for the `Enum` data type is `https://gedcom.io/terms/v7/type-Enum`. +label: 'Enumeration' + contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/type-FilePath b/extracted-files/tags/type-FilePath index a379d19b..18490dbc 100644 --- a/extracted-files/tags/type-FilePath +++ b/extracted-files/tags/type-FilePath @@ -55,5 +55,7 @@ specification: The URI for the `FilePath` data type is `https://gedcom.io/terms/v7/type-FilePath`. +label: 'File Path' + contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/type-Latitude b/extracted-files/tags/type-Latitude index 99df7c1e..3f2c1230 100644 --- a/extracted-files/tags/type-Latitude +++ b/extracted-files/tags/type-Latitude @@ -33,5 +33,7 @@ specification: The URI for the `Latitude` data type is `https://gedcom.io/terms/v7/type-Latitude`. +label: 'Latitude' + contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/type-List-Enum b/extracted-files/tags/type-List-Enum index 8a4300fd..de3e40f3 100644 --- a/extracted-files/tags/type-List-Enum +++ b/extracted-files/tags/type-List-Enum @@ -46,5 +46,7 @@ specification: The URI for the `List:Enum` data type is `https://gedcom.io/terms/v7/type-List#Enum`. +label: 'List' + contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/type-List-Text b/extracted-files/tags/type-List-Text index 3bbb8697..2badea16 100644 --- a/extracted-files/tags/type-List-Text +++ b/extracted-files/tags/type-List-Text @@ -46,5 +46,7 @@ specification: The URI for the `List:Enum` data type is `https://gedcom.io/terms/v7/type-List#Enum`. +label: 'List' + contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/type-Longitude b/extracted-files/tags/type-Longitude index 6108950b..4d5cc4df 100644 --- a/extracted-files/tags/type-Longitude +++ b/extracted-files/tags/type-Longitude @@ -33,5 +33,7 @@ specification: The URI for the `Longitude` data type is `https://gedcom.io/terms/v7/type-Longitude`. +label: 'Longitude' + contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/type-Name b/extracted-files/tags/type-Name index 8d72d42b..c986d0ee 100644 --- a/extracted-files/tags/type-Name +++ b/extracted-files/tags/type-Name @@ -31,5 +31,7 @@ specification: The URI for the `PersonalName` data type is `https://gedcom.io/terms/v7/type-Name`. +label: 'Personal Name' + contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/type-TagDef b/extracted-files/tags/type-TagDef index abc3527e..3b0d600c 100644 --- a/extracted-files/tags/type-TagDef +++ b/extracted-files/tags/type-TagDef @@ -23,5 +23,7 @@ specification: The URI for the `TagDef` data type is `https://gedcom.io/terms/v7/type-TagDef`. +label: 'Tag Definition' + contact: "https://gedcom.io/community/" ... diff --git a/extracted-files/tags/type-Time b/extracted-files/tags/type-Time index 414c7a1f..5acd9cc3 100644 --- a/extracted-files/tags/type-Time +++ b/extracted-files/tags/type-Time @@ -35,5 +35,7 @@ specification: The URI for the `Time` data type is `https://gedcom.io/terms/v7/type-Time`. +label: 'Time' + contact: "https://gedcom.io/community/" ... diff --git a/specification/gedcom-3-structures-3-meaning.md b/specification/gedcom-3-structures-3-meaning.md index 009b1ade..b93cdc8c 100644 --- a/specification/gedcom-3-structures-3-meaning.md +++ b/specification/gedcom-3-structures-3-meaning.md @@ -441,6 +441,10 @@ The database, electronic data source, or digital repository from which this data The payload is the name of the database, electronic data source, or digital repository, with substructures providing additional details about it (not about the export). +:::deprecation +`HEAD`.`SOUR`.`DATA` should not be added to new files; see `HEADER` for more details. +::: + #### `DATE` (Date) `g7:DATE` The principal date of the subject of the superstructure. diff --git a/specification/gedcom-3-structures-4-enumerations.md b/specification/gedcom-3-structures-4-enumerations.md index f5bc9800..4571fbdd 100644 --- a/specification/gedcom-3-structures-4-enumerations.md +++ b/specification/gedcom-3-structures-4-enumerations.md @@ -1,19 +1,15 @@ ## Enumeration Values -Unless otherwise specified in the enumeration description in this section, each enumeration value defined in this section has a URI constructed by concatenating -`g7:enum-` to the enumeration value; -for example, the `HUSB` enumeration value has the URI `http://gedcom.io/terms/v7/enum-HUSB`. - Each set of enumeration values has its own URI. ### `g7:enumset-ADOP` -| Value | Meaning | -| :---- | :------ | -| `HUSB` | Adopted by the `HUSB` of the `FAM` pointed to by `FAMC`.
The URI of this value is `g7:enum-ADOP-HUSB` | -| `WIFE` | Adopted by the `WIFE` of the `FAM` pointed to by `FAMC`.
The URI of this value is `g7:enum-ADOP-WIFE` | -| `BOTH` | Adopted by both `HUSB` and `WIFE` of the `FAM` pointed to by `FAMC` | +| Value | URI | Meaning | +| :---- | :---| :------ | +| `HUSB` | `g7:enum-ADOP-HUSB` | Adopted by the `HUSB` of the `FAM` pointed to by `FAMC` | +| `WIFE` | `g7:enum-ADOP-WIFE` | Adopted by the `WIFE` of the `FAM` pointed to by `FAMC` | +| `BOTH` | `g7:enum-BOTH` | Adopted by both `HUSB` and `WIFE` of the `FAM` pointed to by `FAMC` | ### `g7:enumset-EVEN` @@ -21,13 +17,11 @@ An event-type tag name, but not the generic `EVEN` tag. See [Events]. Most values in this enumeration set use the same tag and URI as the corresponding event, -except for tags used with different URIs for `FAM` vs `INDI`; -these are given generic definitions with URIs constructed by concatenating -`g7:enum-` to the enumeration value: +except for tags used with different URIs for `FAM` vs `INDI`: -| Value | Meaning | -| :----- | :----------------------------------------------------- | -| `CENS` | A census event; either `g7:INDI-CENS` or `g7:FAM-CENS` | +| Value | URI | Meaning | +| :----- | :------------- | :----------------------------------------------------- | +| `CENS` | `g7:enum-CENS` | A census event; either `g7:INDI-CENS` or `g7:FAM-CENS` | ### `g7:enumset-EVENATTR` @@ -36,47 +30,45 @@ An event- or attribute-type tag name. See [Events] and [Attributes]. Most values in this enumeration set use the same tag and URI as the corresponding event or attribute, -except for tags used with different URIs for `FAM` vs `INDI`; -these are given generic definitions with URIs constructed by concatenating -`g7:enum-` to the enumeration value: +except for tags used with different URIs for `FAM` vs `INDI`: -| Value | Meaning | -| :----- | :----------------------------------------------------- | -| `CENS` | A census event; either `g7:INDI-CENS` or `g7:FAM-CENS` | -| `NCHI` | A count of children; either `g7:INDI-NCHI` or `g7:FAM-NCHI` | -| `RESI` | A residence attribute; either `g7:INDI-RESI` or `g7:FAM-RESI` | -| `FACT` | A generic attribute; either `g7:INDI-FACT` or `g7:FAM-FACT` | -| `EVEN` | A generic event; either `g7:INDI-EVEN` or `g7:FAM-EVEN` | +| Value | URI | Meaning | +| :----- | :------------- | :----------------------------------------------------- | +| `CENS` | `g7:enum-CENS` | A census event; either `g7:INDI-CENS` or `g7:FAM-CENS` | +| `NCHI` | `g7:enum-NCHI` | A count of children; either `g7:INDI-NCHI` or `g7:FAM-NCHI` | +| `RESI` | `g7:enum-RESI` | A residence attribute; either `g7:INDI-RESI` or `g7:FAM-RESI` | +| `FACT` | `g7:enum-FACT` | A generic attribute; either `g7:INDI-FACT` or `g7:FAM-FACT` | +| `EVEN` | `g7:enum-EVEN` | A generic event; either `g7:INDI-EVEN` or `g7:FAM-EVEN` | ### `g7:enumset-MEDI` -| Value | Meaning | -| :----------- | :-------------------------------- | -| `AUDIO` | An audio recording | -| `BOOK` | A bound book | -| `CARD` | A card or file entry | -| `ELECTRONIC` | A digital artifact such as a computer file or a scan | -| `FICHE` | Microfiche | -| `FILM` | Microfilm | -| `MAGAZINE` | Printed periodical | -| `MANUSCRIPT` | Written pages | -| `MAP` | Cartographic map | -| `NEWSPAPER` | Printed newspaper | -| `PHOTO` | Photograph | -| `TOMBSTONE` | Burial marker or related memorial | -| `VIDEO` | Motion picture recording | -| `OTHER` | A value not listed here; should have a `PHRASE` substructure | +| Value | URI | Meaning | +| :---------- | :------------------ | :-------------------------------- | +| `AUDIO` | `g7:enum-AUDIO` | An audio recording | +| `BOOK` | `g7:enum-BOOK` | A bound book | +| `CARD` | `g7:enum-CARD` | A card or file entry | +| `ELECTRONIC`| `g7:enum-ELECTRONIC`| A digital artifact such as a computer file or a scan | +| `FICHE` | `g7:enum-FICHE` | Microfiche | +| `FILM` | `g7:enum-FILM` | Microfilm | +| `MAGAZINE` | `g7:enum-MAGAZINE` | Printed periodical | +| `MANUSCRIPT`| `g7:enum-MANUSCRIPT`| Written pages | +| `MAP` | `g7:enum-MAP` | Cartographic map | +| `NEWSPAPER` | `g7:enum-NEWSPAPER` | Printed newspaper | +| `PHOTO` | `g7:enum-PHOTO` | Photograph | +| `TOMBSTONE` | `g7:enum-TOMBSTONE` | Burial marker or related memorial | +| `VIDEO` | `g7:enum-VIDEO` | Motion picture recording | +| `OTHER` | `g7:enum-OTHER` | A value not listed here; should have a `PHRASE` substructure | ### `g7:enumset-PEDI` -| Value | Meaning | -| :-------- | :-------------------------------------------------------- | -| `ADOPTED` | Adoptive parents | -| `BIRTH` | Family structure at time of birth | -| `FOSTER` | The child was included in a foster or guardian family | -| `SEALING` | The child was sealed to parents other than birth parents | -| `OTHER` | A value not listed here; should have a `PHRASE` substructure | +| Value | URI | Meaning | +| :-------- | :---------------- | :-------------------------------------------------------- | +| `ADOPTED` | `g7:enum-ADOPTED` | Adoptive parents | +| `BIRTH` | `g7:enum-BIRTH` | Family structure at time of birth | +| `FOSTER` | `g7:enum-FOSTER` | The child was included in a foster or guardian family | +| `SEALING` | `g7:enum-SEALING` | The child was sealed to parents other than birth parents | +| `OTHER` | `g7:enum-OTHER` | A value not listed here; should have a `PHRASE` substructure | :::note It is known that some users have interpreted `BIRTH` to mean "genetic parent" and others to mean "social parent at time of birth". Definitions differ in many circumstances (infidelity, surrogacy, sperm donation, and so on). Hence, applications should refrain from asserting it has either meaning in imported data. @@ -97,12 +89,12 @@ any associated `ADOP` event. ### `g7:enumset-QUAY` -| Value | Meaning | -| :---- | :---------------------------------- | -| `0` | Unreliable evidence or estimated data | -| `1` | Questionable reliability of evidence (interviews, census, oral genealogies, or potential for bias, such as an autobiography) | -| `2` | Secondary evidence, data officially recorded sometime after the event | -| `3` | Direct and primary evidence used, or by dominance of the evidence | +| Value | URI | Meaning | +| :---- | :-------- | :---------------------------------- | +| `0` | `g7:enum-0` | Unreliable evidence or estimated data | +| `1` | `g7:enum-1` | Questionable reliability of evidence (interviews, census, oral genealogies, or potential for bias, such as an autobiography) | +| `2` | `g7:enum-2` | Secondary evidence, data officially recorded sometime after the event | +| `3` | `g7:enum-3` | Direct and primary evidence used, or by dominance of the evidence | Although the values look like integers, they do not have numeric meaning. @@ -112,11 +104,11 @@ The structures for representing the strength of and confidence in various claims ### `g7:enumset-RESN` -| Value | Meaning | -| :---- | :--------------------------- | -| `CONFIDENTIAL` | This data was marked as confidential by the user. | -| `LOCKED` | Some systems may ignore changes to this data. | -| `PRIVACY` | This data is not to be shared outside of a trusted circle, generally because it contains information about living individuals. This definition is known to admit multiple interpretations, so use of the `PRIVACY` restriction notice is not recommended. | +| Value | URI | Meaning | +| :---- | :-- | :--------------------------- | +| `CONFIDENTIAL` | `g7:enum-CONFIDENTIAL` | This data was marked as confidential by the user. | +| `LOCKED` | `g7:enum-LOCKED` | Some systems may ignore changes to this data. | +| `PRIVACY` | `g7:enum-PRIVACY` | This data is not to be shared outside of a trusted circle, generally because it contains information about living individuals. This definition is known to admit multiple interpretations, so use of the `PRIVACY` restriction notice is not recommended. | It is recommended that applications allow users to chose how `CONFIDENTIAL` and/or `PRIVACY` data is handled when interfacing with other users or applications, @@ -145,23 +137,23 @@ It is anticipated that a future version will deprecate the `PRIVACY` option and ### `g7:enumset-ROLE` -| Value | Meaning | -| ----- | :------ | -| `CHIL` | Child | -| `CLERGY` | Religious official in event; implies `OFFICIATOR` | -| `FATH` | Father; implies `PARENT` | -| `FRIEND` | Friend | -| `GODP` | Godparent or related role in other religions | -| `HUSB` | Husband; implies `SPOU` | -| `MOTH` | Mother; implies `PARENT` | -| `MULTIPLE` | A sibling from the same pregnancy (twin, triplet, quadruplet, and so on). A `PHRASE` can be used to specify the kind of multiple birth. | -| `NGHBR` | Neighbor | -| `OFFICIATOR` | Officiator of the event | -| `PARENT` | Parent | -| `SPOU` | Spouse | -| `WIFE` | Wife; implies `SPOU` | -| `WITN` | Witness | -| `OTHER` | A value not listed here; should have a `PHRASE` substructure | +| Value | URI | Meaning | +| ----- | :-- | :------ | +| `CHIL` | `g7:enum-CHIL` | Child | +| `CLERGY` | `g7:enum-CLERGY` | Religious official in event; implies `OFFICIATOR` | +| `FATH` | `g7:enum-FATH` | Father; implies `PARENT` | +| `FRIEND` | `g7:enum-FRIEND` | Friend | +| `GODP` | `g7:enum-GODP` | Godparent or related role in other religions | +| `HUSB` | `g7:enum-HUSB` | Husband; implies `SPOU` | +| `MOTH` | `g7:enum-MOTH` | Mother; implies `PARENT` | +| `MULTIPLE` | `g7:enum-MULTIPLE` | A sibling from the same pregnancy (twin, triplet, quadruplet, and so on). A `PHRASE` can be used to specify the kind of multiple birth. | +| `NGHBR` | `g7:enum-NGHBR` | Neighbor | +| `OFFICIATOR` | `g7:enum-OFFICIATOR` | Officiator of the event | +| `PARENT` | `g7:enum-PARENT` | Parent | +| `SPOU` | `g7:enum-SPOU` | Spouse | +| `WIFE` | `g7:enum-WIFE` | Wife; implies `SPOU` | +| `WITN` | `g7:enum-WITN` | Witness | +| `OTHER` | `g7:enum-OTHER` | A value not listed here; should have a `PHRASE` substructure | These should be interpreted in the context of the recorded event and its primary participants. For example, if you cite a child’s birth record as the source of the mother’s name, the value for this field is “`MOTH`.” @@ -169,12 +161,12 @@ If you describe the groom of a marriage, the role is “`HUSB`.” ### `g7:enumset-SEX` -| Value | Meaning | -| ----- | :------------------------------------------ | -| `M` | Male | -| `F` | Female | -| `X` | Does not fit the typical definition of only Male or only Female | -| `U` | Cannot be determined from available sources | +| Value | URI | Meaning | +| ----- | :-- | :------------------------------------------ | +| `M` | `g7:enum-M` | Male | +| `F` | `g7:enum-F` | Female | +| `X` | `g7:enum-X` | Does not fit the typical definition of only Male or only Female | +| `U` | `g7:enum-U` | Cannot be determined from available sources | This can describe an individual’s reproductive or sexual anatomy at birth. Related concepts of gender identity or sexual preference @@ -182,11 +174,11 @@ are not currently given their own tag. Cultural or personal gender preference ma ### `g7:enumset-FAMC-STAT` -| Value | Meaning | -| ----- | :----------------------------- | -| `CHALLENGED` | Linking this child to this family is suspect, but the linkage has been neither proven nor disproven. | -| `DISPROVEN` | There has been a claim by some that this child belongs to this family, but the linkage has been disproven. | -| `PROVEN` | Linking this child to this family has been proven. | +| Value | URI | Meaning | +| ----- | :-- | :----------------------------- | +| `CHALLENGED` | `g7:enum-CHALLENGED` | Linking this child to this family is suspect, but the linkage has been neither proven nor disproven. | +| `DISPROVEN` | `g7:enum-DISPROVEN` | There has been a claim by some that this child belongs to this family, but the linkage has been disproven. | +| `PROVEN` | `g7:enum-PROVEN` | Linking this child to this family has been proven. | When these enumeration values were introduced in version 5.5.1 it was assumed, but never specified, that "proven" referred to [the definition provided by the Board for Certification of Genealogists](https://www.familysearch.org/en/wiki/Genealogical_Proof_Standard). Because that meaning was not specified and other definitions of "proven" exist, existing files might use these values in other ways. @@ -215,29 +207,29 @@ If so, that is indicated in the "status" column below. Like the "applies to" column, the "status" column is a recommendation, not a requirement, and applications should be prepared to encounter non-current values. -| Value | Applies to | Meaning | Status | -| ----- | ----------- | :---------------------------------- | :----- | -| `BIC` | `SLGC` | Born in the covenant, so child to parent sealing ordinance is not required. | Current | -| `CANCELED` | `SLGS` | Canceled and considered invalid. | Current | -| `CHILD` | All but `SLGC` | Died before 8 years old, so ordinances other than child to parent sealing are not required. | Current | -| `COMPLETED` | All | Completed, but the date is not known. | Deprecated, use `DATE BEF date` instead. This status was defined for use with [TempleReady](https://www.churchofjesuschrist.org/study/ensign/1994/02/news-of-the-church/templeready-now-available) which is no longer in use. | -| `EXCLUDED` | All | Patron excluded this ordinance from being cleared in this submission. | Deprecated. This status was defined for use with TempleReady which is no longer in use. | -| `DNS` | `SLGC`, `SLGS` | This ordinance is not authorized. | Current | -| `DNS_CAN` | `SLGS` | This ordinance is not authorized, and the previous ordinance is cancelled. | Current | -| `INFANT` | All but `SLGC` | Died before less than 1 year old, baptism or endowment not required. | Deprecated. Use `CHILD` instead. | -| `PRE_1970` | All | Ordinance was likely completed because an ordinance for this person was converted from temple records of work completed before 1970. | Deprecated. Use `DATE BEF 1970` instead. | -| `STILLBORN` | All | Born dead, so no ordinances are required. | Current | -| `SUBMITTED` | All | Ordinance was previously submitted. | Deprecated. This status was defined for use with TempleReady which is no longer in use. | -| `UNCLEARED` | All | Data for clearing the ordinance request was insufficient. | Deprecated. This status was defined for use with TempleReady which is no longer in use. | +| Value | URI | Applies to | Meaning | Status | +| ----- | --- | ---------- | :---------------------------------- | :----- | +| `BIC` | `g7:enum-BIC` | `SLGC` | Born in the covenant, so child to parent sealing ordinance is not required. | Current | +| `CANCELED` | `g7:enum-CANCELED` | `SLGS` | Canceled and considered invalid. | Current | +| `CHILD` | `g7:enum-CHILD` | All but `SLGC` | Died before 8 years old, so ordinances other than child to parent sealing are not required. | Current | +| `COMPLETED` | `g7:enum-COMPLETED` | All | Completed, but the date is not known. | Deprecated, use `DATE BEF date` instead. This status was defined for use with [TempleReady](https://www.churchofjesuschrist.org/study/ensign/1994/02/news-of-the-church/templeready-now-available) which is no longer in use. | +| `EXCLUDED` | `g7:enum-EXCLUDED` | All | Patron excluded this ordinance from being cleared in this submission. | Deprecated. This status was defined for use with TempleReady which is no longer in use. | +| `DNS` | `g7:enum-DNS` | `SLGC`, `SLGS` | This ordinance is not authorized. | Current | +| `DNS_CAN` | `g7:enum-DNS_CAN` | `SLGS` | This ordinance is not authorized, and the previous ordinance is cancelled. | Current | +| `INFANT` | `g7:enum-INFANT` | All but `SLGC` | Died before less than 1 year old, baptism or endowment not required. | Deprecated. Use `CHILD` instead. | +| `PRE_1970` | `g7:enum-PRE_1970` | All | Ordinance was likely completed because an ordinance for this person was converted from temple records of work completed before 1970. | Deprecated. Use `DATE BEF 1970` instead. | +| `STILLBORN` | `g7:enum-STILLBORN` | All | Born dead, so no ordinances are required. | Current | +| `SUBMITTED` | `g7:enum-SUBMITTED` | All | Ordinance was previously submitted. | Deprecated. This status was defined for use with TempleReady which is no longer in use. | +| `UNCLEARED` | `g7:enum-UNCLEARED` | All | Data for clearing the ordinance request was insufficient. | Deprecated. This status was defined for use with TempleReady which is no longer in use. | ### `g7:enumset-NAME-TYPE` -| Value | Meaning | -| ----- | :---------------------------- | -| `AKA` | Also known as, alias, etc. | -| `BIRTH` | Name given at or near birth. | -| `IMMIGRANT` | Name assumed at the time of immigration. | -| `MAIDEN` | Maiden name, name before first marriage. | -| `MARRIED` | Married name, assumed as part of marriage. | -| `PROFESSIONAL` | Name used professionally (pen, screen, stage name). | -| `OTHER` | A value not listed here; should have a `PHRASE` substructure | +| Value | URI | Meaning | +| ----- | :-- | :---------------------------- | +| `AKA` | `g7:enum-AKA` | Also known as, alias, etc. | +| `BIRTH` | `g7:enum-BIRTH` | Name given at or near birth. | +| `IMMIGRANT` | `g7:enum-IMMIGRANT` | Name assumed at the time of immigration. | +| `MAIDEN` | `g7:enum-MAIDEN` | Maiden name, name before first marriage. | +| `MARRIED` | `g7:enum-MARRIED` | Married name, assumed as part of marriage. | +| `PROFESSIONAL` | `g7:enum-PROFESSIONAL` | Name used professionally (pen, screen, stage name). | +| `OTHER` | `g7:enum-OTHER` | A value not listed here; should have a `PHRASE` substructure | diff --git a/specification/gedcom-6-appendix-calendars.md b/specification/gedcom-6-appendix-calendars.md index f2ed9bf4..97e9718e 100644 --- a/specification/gedcom-6-appendix-calendars.md +++ b/specification/gedcom-6-appendix-calendars.md @@ -11,10 +11,6 @@ Each calendar must list its permitted epochs and their meaning. All month tags must either be standard tags defined for the month name in some standard calendar or be extension tags. -Each month defined in this section has a URI constructed by concatenating -`g7:month-` to the standard tag; -for example, the month of Elul has the standard tag `ELL` and the URI `http://gedcom.io/terms/v7/month-ELL`. - Months with extension tags are permitted in standard calendars only when they are documented extension tags with standard URIs defined by the calendar. This is intended for future compatibility, to accommodate cases where an extension calendar later becomes @@ -27,20 +23,20 @@ The Gregorian calendar is the now-ubiquitous calendar introduced by Pope Gregory Permitted months are -|`stdTag`|Name | -|:-------|:----------| -| `JAN` | January | -| `FEB` | February | -| `MAR` | March | -| `APR` | April | -| `MAY` | May | -| `JUN` | June | -| `JUL` | July | -| `AUG` | August | -| `SEP` | September | -| `OCT` | October | -| `NOV` | November | -| `DEC` | December | +|`stdTag`| URI | Name | +|:-------|:---------------|:----------| +| `JAN` | `g7:month-JAN` | January | +| `FEB` | `g7:month-FEB` | February | +| `MAR` | `g7:month-MAR` | March | +| `APR` | `g7:month-APR` | April | +| `MAY` | `g7:month-MAY` | May | +| `JUN` | `g7:month-JUN` | June | +| `JUL` | `g7:month-JUL` | July | +| `AUG` | `g7:month-AUG` | August | +| `SEP` | `g7:month-SEP` | September | +| `OCT` | `g7:month-OCT` | October | +| `NOV` | `g7:month-NOV` | November | +| `DEC` | `g7:month-DEC` | December | The epoch marker `BCE` is permitted in this calendar; year *y* BCE indicates a year *y* years before year 1. @@ -66,21 +62,21 @@ The French Republican calendar or French Revolutionary calendar are the names gi Permitted months are -|`stdTag`|Name | -|:-------|:-------------------| -|`VEND` |Vendémiaire | -|`BRUM` |Brumaire | -|`FRIM` |Frimaire | -|`NIVO` |Nivôse | -|`PLUV` |Pluviôse | -|`VENT` |Ventôse | -|`GERM` |Germinal | -|`FLOR` |Floréal | -|`PRAI` |Prairial | -|`MESS` |Messidor | -|`THER` |Thermidor | -|`FRUC` |Fructidor | -|`COMP` |Jour Complémentaires| +|`stdTag`| URI | Name | +|:-------|:----------------|:-------------------| +|`VEND` | `g7:month-VEND` |Vendémiaire | +|`BRUM` | `g7:month-BRUM` |Brumaire | +|`FRIM` | `g7:month-FRIM` |Frimaire | +|`NIVO` | `g7:month-NIVO` |Nivôse | +|`PLUV` | `g7:month-PLUV` |Pluviôse | +|`VENT` | `g7:month-VENT` |Ventôse | +|`GERM` | `g7:month-GERM` |Germinal | +|`FLOR` | `g7:month-FLOR` |Floréal | +|`PRAI` | `g7:month-PRAI` |Prairial | +|`MESS` | `g7:month-MESS` |Messidor | +|`THER` | `g7:month-THER` |Thermidor | +|`FRUC` | `g7:month-FRUC` |Fructidor | +|`COMP` | `g7:month-COMP` |Jour Complémentaires| No epoch marker is permitted in this calendar. @@ -90,21 +86,21 @@ The URI for this calendar is `g7:cal-FRENCH_R` The Hebrew calendar is the name given to the calendar used by Jewish peoples around the world which developed into its current form in the early ninth century. It traditionally marks new days at sunset, not midnight. Its first day (1 Tishrei 1) primarily overlapped with Gregorian 7 September 3761 BCE and Julian 7 October 3761 BCE (starting at sunset on the 6th day of those months). -|`stdTag`| Name | -|:-------|:-------------------------------------------------------| -|`TSH` | Tishrei (תִּשְׁרֵי) | -|`CSH` | Marcheshvan (מַרְחֶשְׁוָן) or Cheshvan (חֶשְׁוָן) | -|`KSL` | Kislev (כִּסְלֵו) | -|`TVT` | Tevet (טֵבֵת) | -|`SHV` | Shevat (שְׁבָט) | -|`ADR` | Adar I, Adar Rishon, First Adar, or Adar Aleph (אדר א׳) | -|`ADS` | Adar (אֲדָר); or Adar II, Adar Sheni, Second Adar, or Adar Bet (אדר ב׳) | -|`NSN` | Nisan (נִיסָן) | -|`IYR` | Iyar (אִייָר) | -|`SVN` | Sivan (סִיוָן) | -|`TMZ` | Tammuz (תַּמּוּז) | -|`AAV` | Av (אָב) | -|`ELL` | Elul (אֱלוּל) | +|`stdTag`| URI |Name | +|:-------|:----------------|:------------------------------------------------------| +|`TSH` | `g7:month-TSH` | Tishrei (תִּשְׁרֵי) | +|`CSH` | `g7:month-CSH` | Marcheshvan (מַרְחֶשְׁוָן) or Cheshvan (חֶשְׁוָן) | +|`KSL` | `g7:month-KSL` | Kislev (כִּסְלֵו) | +|`TVT` | `g7:month-TVT` | Tevet (טֵבֵת) | +|`SHV` | `g7:month-SHV` | Shevat (שְׁבָט) | +|`ADR` | `g7:month-ADR` | Adar I, Adar Rishon, First Adar, or Adar Aleph (אדר א׳) | +|`ADS` | `g7:month-ADS` | Adar (אֲדָר); or Adar II, Adar Sheni, Second Adar, or Adar Bet (אדר ב׳) | +|`NSN` | `g7:month-NSN` | Nisan (נִיסָן) | +|`IYR` | `g7:month-IYR` | Iyar (אִייָר) | +|`SVN` | `g7:month-SVN` | Sivan (סִיוָן) | +|`TMZ` | `g7:month-TMZ` | Tammuz (תַּמּוּז) | +|`AAV` | `g7:month-AAV` | Av (אָב) | +|`ELL` | `g7:month-ELL` | Elul (אֱלוּל) | To keep the lunar-based months synchronized with the solar-based years, some years have Adar I and others do not, instead proceeding from Shevat directly to Adar II. However, in common (non-leap) years, it is common to simply write "Adar" not "Adar II", which users not aware of the distinction might incorrectly encode as `ADR` instead of `ADS`. It is recommended that systems knowing which years had Adar I and which did not replace `ADR` in common years with `ADS`. From 8e3a6e4b366547398aa92161ec91091c86fb2ca9 Mon Sep 17 00:00:00 2001 From: Luther Tychonievich Date: Tue, 24 Feb 2026 11:06:51 -0600 Subject: [PATCH 2/7] Update build/extract-yaml-tsv.py Co-authored-by: Dave Thaler --- build/extract-yaml-tsv.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/extract-yaml-tsv.py b/build/extract-yaml-tsv.py index 1803b076..f80eb2f3 100644 --- a/build/extract-yaml-tsv.py +++ b/build/extract-yaml-tsv.py @@ -102,7 +102,7 @@ def __init__(self, type, uri): self.deprecated = False def set(self, name:str, value:str): - """A helper to verify that information that has only one value is givne consistently across all instances.""" + """A helper to verify that information that has only one value is given consistently across all instances.""" assert name in self.__dict__, "Can only set known attributes" if self.__dict__[name] is None: self.__dict__[name] = value else: assert self.__dict__[name] == value, f"Only one value allowed for {name!r} of {self.uri}; was {self.__dict__[name]!r}, now {value!r}" From 1b92a31abaf8f513bce1ae53def0d87d46b2b852 Mon Sep 17 00:00:00 2001 From: Luther Tychonievich Date: Tue, 24 Feb 2026 11:07:32 -0600 Subject: [PATCH 3/7] Update build/extract-yaml-tsv.py Co-authored-by: Dave Thaler --- build/extract-yaml-tsv.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/extract-yaml-tsv.py b/build/extract-yaml-tsv.py index f80eb2f3..6cf8a905 100644 --- a/build/extract-yaml-tsv.py +++ b/build/extract-yaml-tsv.py @@ -227,7 +227,7 @@ def parse_gedstruct(self, gs:str, pfx:dict[str,str]={}) -> None: populates this StructSet with all of those structures. Populates only data available from gedstruct: tag, sub- and super-structure, abbreviated uri, - and the payload type strings in gedstruct (e.g. not that URI of that). + and the payload type strings in gedstruct (e.g., not that URI of that). """ def mix_card(c1,c2): From 1507abf0c496ec077eaf5c80d733fe7351bd76c7 Mon Sep 17 00:00:00 2001 From: Luther Tychonievich Date: Tue, 24 Feb 2026 11:07:43 -0600 Subject: [PATCH 4/7] Update build/extract-yaml-tsv.py Co-authored-by: Dave Thaler --- build/extract-yaml-tsv.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/extract-yaml-tsv.py b/build/extract-yaml-tsv.py index 6cf8a905..af883993 100644 --- a/build/extract-yaml-tsv.py +++ b/build/extract-yaml-tsv.py @@ -331,7 +331,7 @@ def all_uri_section_text(txt:str, pfx:dict[str,str], data:dict[str,Concept]) -> Adds them to the provided dict and returns - a dict from datatype names (like List:Enum) to their URIs - - a dict from table lables "event" and "attribute" to enumeration set URIs (like g7:enumset-EVENATTR) that include them + - a dict from table labels "event" and "attribute" to enumeration set URIs (like g7:enumset-EVENATTR) that include them """ def do_pfx(uri:str) -> str: From cd711ad7be7708def3c6a25455e62f8f938d852e Mon Sep 17 00:00:00 2001 From: Luther Tychonievich Date: Tue, 24 Feb 2026 11:08:03 -0600 Subject: [PATCH 5/7] Update build/extract-yaml-tsv.py Co-authored-by: Dave Thaler --- build/extract-yaml-tsv.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/extract-yaml-tsv.py b/build/extract-yaml-tsv.py index af883993..be4f3b8c 100644 --- a/build/extract-yaml-tsv.py +++ b/build/extract-yaml-tsv.py @@ -342,7 +342,7 @@ def do_pfx(uri:str) -> str: types:dict[str,str] = {} # {"": "g7:type-List#Enum"} enum_has:dict[str,list[str]] = {} # {"event": ["g7:enumset-EVENATTR", "g7:enumset-EVEN"]} - aux:dict[str,str] = {} # {"TRAN": text of the section about all TRAN-taged structures} + aux:dict[str,str] = {} # {"TRAN": text of the section about all TRAN-tagged structures} # Loop through each markdown section bits = re.split(r'\s*^#+ *([^\n{]*)[^\n]*\s*', txt, flags=re.M) From a9d9b1a246fff68f6db14017ba5ca40854b73d36 Mon Sep 17 00:00:00 2001 From: Luther Tychonievich Date: Tue, 24 Feb 2026 11:08:12 -0600 Subject: [PATCH 6/7] Update build/extract-yaml-tsv.py Co-authored-by: Dave Thaler --- build/extract-yaml-tsv.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/extract-yaml-tsv.py b/build/extract-yaml-tsv.py index be4f3b8c..58e791a0 100644 --- a/build/extract-yaml-tsv.py +++ b/build/extract-yaml-tsv.py @@ -562,7 +562,7 @@ def do_pfx(uri:str) -> str: with open(pathof[uri], 'w') as dst: print(data[uri], file=dst) - # 12.b: superstructure substructure cadinality + # 12.b: superstructure substructure cardinality with open(Path(args.dest, "cardinalities.tsv"), 'w') as dst: for uri,s in sorted(data.items()): if isinstance(s, StructData): From fa371859dd855fa533ccd3c586bb49c43f4aaf6a Mon Sep 17 00:00:00 2001 From: Luther Tychonievich Date: Tue, 24 Feb 2026 11:08:48 -0600 Subject: [PATCH 7/7] Update build/extract-yaml-tsv.py Co-authored-by: Dave Thaler --- build/extract-yaml-tsv.py | 1 + 1 file changed, 1 insertion(+) diff --git a/build/extract-yaml-tsv.py b/build/extract-yaml-tsv.py index 58e791a0..1f57bea2 100644 --- a/build/extract-yaml-tsv.py +++ b/build/extract-yaml-tsv.py @@ -250,6 +250,7 @@ def do_pfx(uri): for m2 in re.finditer(r'^[0n] (?:@XREF:(\S+)@ )?(\S+)[^{}]*({.:.})(?: *(\S+))?', m[3], flags=re.M): becomes[m[1]][do_pfx(m2[4]) or m2[2]] = mix_card(base_card, m2[3]) if m2[1]: xrefs[m2[1]] = do_pfx(m2[4]) + # resolve chains like EVENT_DETAIL -> <> for iterations in range(2): # longest chain is Dataset → <> → <>, 2 steps for key in becomes: