FamilySearch/gedcomx — pull request #240 by thomast73 (2013-04-02 20:34:53+00:00)
Title: Add textType to the Document class.

##### Requirements
GEDCOM X needs to more fully support the transmission of a proof argument. The current model supports only a plain text `Document`, or a reference to an artifact that contains the proof argument — via a `SourceDescription`. A plain text document lacks the functionality typically required to express a complex proof. These narratives usually require sophisticated text layouts (tables, lists, links, text styling), often include images, and also require mechanisms to integrate source documentation into the narrative (e.g., footnotes, endnotes or another equivalent documentation mechanism).

From a data exchange point of view, we would like the GEDCOM X model to be capable of transmitting the “raw” materials required to express a sophisticated proof argument, but leave the rendering decisions to the applications that consume this data.

In our opinion, a proof argument narrative belongs in a GEDCOM X `Document` object. We can already associate sources with a `Document`. But a `Document` lacks features for text layout, images and documentation.

##### Interim Proposal
As a step toward a solution to some of these issues, we are proposing the addition of a `Document` __*text type*__. Initially, we are proposing two possible text types: “plain” or “xhtml”. Adding XHTML as a text type would allow a rich layout capability, and would allow the inclusion of images. We expect that such a design can be expanded such that statements in the narrative can be associated with `Document.sources` by embedding microdata in the XHTML (see schema.org).

This is an interim proposal in that the proposal does not addressing the source documentation requirements (i.e., it does not included any definition around microdata data and its use in the XHTML).