🠕

1.5.3 Extension versus Standard

Standard structures take priority over extensions. Data contained in extension tags will not be interpreted by other systems correctly unless the other system supports that particular extension. In particular, those supporting extensions should keep in mind the following:

  • If a standard structure is present that contradicts an extension that is present, the standard structure has priority and the extension should be updated to align with it.

    If a document has an extension _ISODATE in ISO 8601 format that disagrees with a DATE in the DateValue format, the DATE shall be taken as more correct and the _ISODATE updated to reflect that.

  • If a standard structure can be extracted as a subset of the semantics of an extension, the standard tag must be generated along with the extension and kept in sync with it by systems understanding the extension.

    If a document has an extension _LOC providing a detailed hierarchical place representation with historical names, boundaries, and the like, it must also generate the corresponding PLAC structures with the subset of that information which PLAC can represent.

  • If an extension can be extracted as a subset of the semantics of a standard structure, or if the extension and standard structure only sometimes align, then the standard structure should be included if and only if the semantics align in this case.

    If a document has an extension _PARTNER that generalizes HUSB and WIFE and some ASSO ROLEs, then it should pair the extension with those standard structures if and only if it knows which one applies.

    If a document has an extension _HOUSEHOLD that is the same as FAM in some situations but not in others, then it should keep the _HOUSEHOLD and FAM in sync if and only if they align.

  • Six standard structure types are exceptions to these rules: NOTE, SNOTE, INDI.EVEN, FAM.EVEN, INDI.FACT, and FAM.FACT. Each of these allows human-readable text to describe information that cannot be captured in more-specific structures. As such, all other structures express information that could be described using 1 or more of those structure types. Extensions do not need to duplicate their information using any of those structures.

    If a document has an extension _MEMBER that indicates membership in clubs, boards, and other groups, it is not required to duplicate that information in an INDI.FACT because INDI.FACT is 1 of the 6 special structure types listed above.

    If a document has an extension _WEIGHT that describes the weight of a person, it must duplicate that information in an INDI.DSCR because INDI.DSCR is not 1 of the 6 generic structure types.