-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Parser for the GEDCOM genealogy file format.
--
-- A parser for the legacy GEDCOM 5.5 file format. GEDCOM is widely used
-- by genealogy software, despite the limitations of the format.
@package gedcom
@version 0.1.0.0
-- | ANSEL https://en.wikipedia.org/wiki/ANSEL is a character set
-- and associated encodings intended for bibliographic purposes. GEDCOM
-- files use the 8-bit ANSEL encoding by default, so we need a way to
-- decode it. ANSEL has combining diacritics, but they precede the
-- character that they modify (Unicode has it the other way around). This
-- means that the code points must be reordered when converting to
-- Unicode.
module Data.Text.Encoding.ANSEL
-- | Decode an ANSEL string to Unicode
decodeANSEL :: ByteString -> Text
module Data.Gedcom
-- | Parse Gedcom data from a ByteString
parseGedcomString :: Maybe String -> ByteString -> Either GDError (Gedcom, XRefTable)
-- | Parse Gedcom data from a file
parseGedcomFile :: FilePath -> IO (Either GDError (Gedcom, XRefTable))
-- | A parse error.
data GDError
-- | A badly formatted GEDCOM line
LineFormatError :: Text -> GDError
-- | A reference where a reference wasn't allowed
UnexpectedRef :: Text -> GDError
-- | Missing a reference where a reference was required
RequiredRef :: Text -> GDError
-- | Two targets for the same reference
DuplicateRef :: Text -> GDError
-- | A badly formatted field
FormatError :: Text -> GDError
-- | The wrong tag
TagError :: Text -> GDError
-- | Lookup up a reference in the cross reference table
gdLookup :: forall a. Typeable a => GDRef a -> XRefTable -> Either GDRefError a
-- | A reference to another structure
data GDRef a
-- | A table of cross references
data XRefTable
-- | An error arising from dereferencing a GDRef
data GDRefError
-- | The referred structure doesn't exist.
RefNotPresent :: GDXRefID -> GDRefError
-- | Dereferenced structure had the wrong type
WrongRefType :: TypeRep -> TypeRep -> GDRefError
-- | A cross reference ID
data GDXRefID
-- | The root structure
data Gedcom
Gedcom :: Header -> [GDRef Family] -> [GDRef Individual] -> [GDRef Multimedia] -> [GDRef Note] -> [GDRef Repository] -> [GDRef Source] -> [GDRef Submitter] -> Gedcom
[gedcomHeader] :: Gedcom -> Header
[gedcomFamily] :: Gedcom -> [GDRef Family]
[gedcomIndividual] :: Gedcom -> [GDRef Individual]
[gedcomMultimedia] :: Gedcom -> [GDRef Multimedia]
[gedcomNote] :: Gedcom -> [GDRef Note]
[gedcomRepository] :: Gedcom -> [GDRef Repository]
[gedcomSource] :: Gedcom -> [GDRef Source]
[gedcomSubmitter] :: Gedcom -> [GDRef Submitter]
-- | The header
data Header
Header :: HeaderSource -> Maybe Text -> Maybe UTCTime -> GDRef Submitter -> Maybe (GDRef Submission) -> Maybe FilePath -> Maybe Text -> GedcomFormat -> Charset -> Maybe Language -> Maybe [Text] -> Maybe Text -> Header
[headerSource] :: Header -> HeaderSource
[headerDestination] :: Header -> Maybe Text
[headerDate] :: Header -> Maybe UTCTime
[headerSubmitter] :: Header -> GDRef Submitter
[headerSubmission] :: Header -> Maybe (GDRef Submission)
[headerFile] :: Header -> Maybe FilePath
[headerCopyright] :: Header -> Maybe Text
[headerGedcomFormat] :: Header -> GedcomFormat
[headerCharset] :: Header -> Charset
[headerLang] :: Header -> Maybe Language
[headerPlaceForm] :: Header -> Maybe [Text]
[headerNote] :: Header -> Maybe Text
-- | The database format and version number
data GedcomFormat
GedcomFormat :: Text -> GedcomForm -> GedcomFormat
[gedcomVersion] :: GedcomFormat -> Text
[gedcomForm] :: GedcomFormat -> GedcomForm
-- | The actual database format. Only the default LineageLinked is
-- supported.
data GedcomForm
GedcomLineageLinked :: GedcomForm
GedcomUnsupported :: Text -> GedcomForm
-- | Where the GEDCOM data is sourced from (e.g. the program that created
-- the file)
data HeaderSource
HeaderSource :: Text -> Maybe Text -> Maybe Text -> Maybe Corp -> Maybe HeaderSourceData -> HeaderSource
[headerSourceSystemID] :: HeaderSource -> Text
[headerSourceVersion] :: HeaderSource -> Maybe Text
[headerSourceName] :: HeaderSource -> Maybe Text
[headerSourceCorp] :: HeaderSource -> Maybe Corp
[headerSourceData] :: HeaderSource -> Maybe HeaderSourceData
-- | Information about a corporation
data Corp
Corp :: Text -> Maybe Address -> Corp
[corpName] :: Corp -> Text
[corpAddress] :: Corp -> Maybe Address
-- | Information about the source of this GEDCOM data
data HeaderSourceData
HeaderSourceData :: Text -> Maybe UTCTime -> Maybe Text -> HeaderSourceData
[headerSourceDataName] :: HeaderSourceData -> Text
[headerSourceDataDate] :: HeaderSourceData -> Maybe UTCTime
[headerSourceDataCopyright] :: HeaderSourceData -> Maybe Text
-- | The family record
data Family
Family :: Maybe RestrictionNotice -> [FamilyEvent] -> Maybe (GDRef Individual) -> Maybe (GDRef Individual) -> [GDRef Individual] -> Maybe Word -> [GDRef Submitter] -> [UserReference] -> Maybe RIN -> Maybe ChangeDate -> [GDRef Note] -> [SourceCitation] -> [GDRef Multimedia] -> Family
[familyRestrictionNotice] :: Family -> Maybe RestrictionNotice
[familyEvent] :: Family -> [FamilyEvent]
[familyHusband] :: Family -> Maybe (GDRef Individual)
[familyWife] :: Family -> Maybe (GDRef Individual)
[familyChildren] :: Family -> [GDRef Individual]
[familyTotalChildren] :: Family -> Maybe Word
[familySubitter] :: Family -> [GDRef Submitter]
[familyUserReference] :: Family -> [UserReference]
[familyRIN] :: Family -> Maybe RIN
[familyChangeDate] :: Family -> Maybe ChangeDate
[familyNote] :: Family -> [GDRef Note]
[familySourceCitation] :: Family -> [SourceCitation]
[familyMultimedia] :: Family -> [GDRef Multimedia]
-- | The individual record
data Individual
Individual :: Maybe RestrictionNotice -> Maybe PersonalName -> Maybe Sex -> [IndividualEvent] -> [IndividualAttribute] -> [ChildToFamilyLink] -> [SpouseToFamilyLink] -> [GDRef Submitter] -> [Association] -> [GDRef Individual] -> [GDRef Submitter] -> [GDRef Submitter] -> Maybe RFN -> Maybe AFN -> [UserReference] -> Maybe RIN -> Maybe ChangeDate -> [GDRef Note] -> [SourceCitation] -> [GDRef Multimedia] -> Individual
[individualRestrictionNotice] :: Individual -> Maybe RestrictionNotice
[individualName] :: Individual -> Maybe PersonalName
[individualSex] :: Individual -> Maybe Sex
[individualEvent] :: Individual -> [IndividualEvent]
[individualAttribute] :: Individual -> [IndividualAttribute]
[individualChildToFamilyLink] :: Individual -> [ChildToFamilyLink]
[individualSpouseToFamilyLink] :: Individual -> [SpouseToFamilyLink]
[individualSubmitter] :: Individual -> [GDRef Submitter]
[individualAssociation] :: Individual -> [Association]
[individualAlias] :: Individual -> [GDRef Individual]
[individualAncestorInterest] :: Individual -> [GDRef Submitter]
[individualDescendantInterest] :: Individual -> [GDRef Submitter]
[individualRFN] :: Individual -> Maybe RFN
[individualAFN] :: Individual -> Maybe AFN
[individualUserReference] :: Individual -> [UserReference]
[individualRIN] :: Individual -> Maybe RIN
[individualChangeDate] :: Individual -> Maybe ChangeDate
[individualNote] :: Individual -> [GDRef Note]
[individualSourceCitation] :: Individual -> [SourceCitation]
[individualMultimedia] :: Individual -> [GDRef Multimedia]
-- | The multimedia record (for linking multimedia files)
data Multimedia
Multimedia :: [MultimediaFile] -> Maybe Text -> [UserReference] -> Maybe RIN -> [GDRef Note] -> [SourceCitation] -> Maybe ChangeDate -> Multimedia
[multimediaFile] :: Multimedia -> [MultimediaFile]
[multimediaTitl] :: Multimedia -> Maybe Text
[multimediaUserReference] :: Multimedia -> [UserReference]
[multimediaRIN] :: Multimedia -> Maybe RIN
[multimediaNote] :: Multimedia -> [GDRef Note]
[multimediaSourceCitation] :: Multimedia -> [SourceCitation]
[multimediaChangeDate] :: Multimedia -> Maybe ChangeDate
-- | The note record (for attaching notes to other records)
data Note
Note :: Text -> [UserReference] -> Maybe RIN -> [SourceCitation] -> Maybe ChangeDate -> Note
[noteText] :: Note -> Text
[noteUserReference] :: Note -> [UserReference]
[noteRIN] :: Note -> Maybe RIN
[noteSourceCitation] :: Note -> [SourceCitation]
[noteChangeDate] :: Note -> Maybe ChangeDate
-- | The repository record. Represents a repository of sources (for example
-- a collection of documents or a physical library)
data Repository
Repository :: Text -> Maybe Address -> [GDRef Note] -> [UserReference] -> Maybe RIN -> Maybe ChangeDate -> Repository
[repositoryName] :: Repository -> Text
[repositoryAddress] :: Repository -> Maybe Address
[repositoryNote] :: Repository -> [GDRef Note]
[repositoryUserReference] :: Repository -> [UserReference]
[repositoryRIN] :: Repository -> Maybe RIN
[repositoryChangeDate] :: Repository -> Maybe ChangeDate
-- | The source record. A source of information that may be cited by other
-- records.
data Source
Source :: Maybe SourceData -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> [RepositoryCitation] -> [UserReference] -> Maybe RIN -> Maybe ChangeDate -> [GDRef Note] -> [GDRef Multimedia] -> Source
[sourceData] :: Source -> Maybe SourceData
[sourceAuthor] :: Source -> Maybe Text
[sourceTitle] :: Source -> Maybe Text
[sourceShortTitle] :: Source -> Maybe Text
[sourcePublicationFacts] :: Source -> Maybe Text
[sourceText] :: Source -> Maybe Text
[sourceRepositoryCitations] :: Source -> [RepositoryCitation]
[sourceUserReference] :: Source -> [UserReference]
[sourceRIN] :: Source -> Maybe RIN
[sourceChangeDate] :: Source -> Maybe ChangeDate
[sourceNote] :: Source -> [GDRef Note]
[sourceMultimedia] :: Source -> [GDRef Multimedia]
-- | The submission record. Information about this file.
data Submission
Submission :: Maybe (GDRef Submitter) -> Maybe Text -> Maybe Text -> Maybe Word -> Maybe Word -> Maybe Bool -> Maybe RIN -> [GDRef Note] -> Maybe ChangeDate -> Submission
[submissionSubmitter] :: Submission -> Maybe (GDRef Submitter)
[submissionFamilyFile] :: Submission -> Maybe Text
[submissionTempleCode] :: Submission -> Maybe Text
[submissionAncestorGenerations] :: Submission -> Maybe Word
[submissionDescendentGenerations] :: Submission -> Maybe Word
[submissionOrdinanceProcessing] :: Submission -> Maybe Bool
[submissionRIN] :: Submission -> Maybe RIN
[submissionNote] :: Submission -> [GDRef Note]
[submissionChangeDate] :: Submission -> Maybe ChangeDate
-- | The submitter record. Information about someone who submitted data to
-- this database.
data Submitter
Submitter :: Name -> Maybe Address -> Maybe (GDRef Multimedia) -> [Language] -> Maybe RFN -> Maybe RIN -> [GDRef Note] -> Maybe ChangeDate -> Submitter
[submitterName] :: Submitter -> Name
[submitterAddress] :: Submitter -> Maybe Address
[submitterMedia] :: Submitter -> Maybe (GDRef Multimedia)
[submitterLang] :: Submitter -> [Language]
[submitterRFN] :: Submitter -> Maybe RFN
[submitterRIN] :: Submitter -> Maybe RIN
[submitterNote] :: Submitter -> [GDRef Note]
[submitterChangeDate] :: Submitter -> Maybe ChangeDate
-- | Extra data about a source.
data SourceData
SourceData :: [SourceRecordedEvent] -> Maybe Text -> [GDRef Note] -> SourceData
[sourceDataEventsRecorded] :: SourceData -> [SourceRecordedEvent]
[sourceDataAgency] :: SourceData -> Maybe Text
[sourceDataNote] :: SourceData -> [GDRef Note]
-- | Information about what events are recorded in a source.
data SourceRecordedEvent
SourceRecordedEvent :: [EventType] -> Maybe DatePeriod -> Maybe [Text] -> SourceRecordedEvent
[sourceRecordedEventType] :: SourceRecordedEvent -> [EventType]
[sourceRecordedDate] :: SourceRecordedEvent -> Maybe DatePeriod
[sourceRecordedPlace] :: SourceRecordedEvent -> Maybe [Text]
-- | An association between individuals.
data Association
Association :: GDRef Individual -> Text -> [SourceCitation] -> [GDRef Note] -> Association
[associationIndividual] :: Association -> GDRef Individual
[associationRelation] :: Association -> Text
[associationCitation] :: Association -> [SourceCitation]
[associationNote] :: Association -> [GDRef Note]
-- | A link from an individual to a family record where they are registered
-- as a child.
data ChildToFamilyLink
ChildToFamilyLink :: GDRef Family -> Maybe Pedigree -> Maybe ChildLinkStatus -> [GDRef Note] -> ChildToFamilyLink
[childLinkFamily] :: ChildToFamilyLink -> GDRef Family
[childLinkPedigree] :: ChildToFamilyLink -> Maybe Pedigree
[childLinkStatus] :: ChildToFamilyLink -> Maybe ChildLinkStatus
[childLinkNote] :: ChildToFamilyLink -> [GDRef Note]
-- | A link from an individual to a family record where they are registered
-- as a spouse.
data SpouseToFamilyLink
SpouseToFamilyLink :: GDRef Family -> [GDRef Note] -> SpouseToFamilyLink
[spouseToFamilyLinkFamily] :: SpouseToFamilyLink -> GDRef Family
[spouseToFamilyLinkNote] :: SpouseToFamilyLink -> [GDRef Note]
-- | Details about an event.
data EventDetail
EventDetail :: Maybe Text -> Maybe DateValue -> Maybe Place -> Maybe Address -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe RestrictionNotice -> [GDRef Note] -> [SourceCitation] -> [GDRef Multimedia] -> EventDetail
[eventDetailType] :: EventDetail -> Maybe Text
[eventDetailDate] :: EventDetail -> Maybe DateValue
[eventDetailPlace] :: EventDetail -> Maybe Place
[eventDetailAddress] :: EventDetail -> Maybe Address
[eventDetailAgency] :: EventDetail -> Maybe Text
[eventDetailReligion] :: EventDetail -> Maybe Text
[eventDetailCause] :: EventDetail -> Maybe Text
[eventDetailRestrictionNotice] :: EventDetail -> Maybe RestrictionNotice
[eventDetailNote] :: EventDetail -> [GDRef Note]
[eventDetailSourceCitation] :: EventDetail -> [SourceCitation]
[eventDetailMultimedia] :: EventDetail -> [GDRef Multimedia]
-- | Details about a family event.
data FamilyEventDetail
FamilyEventDetail :: Maybe Word -> Maybe Word -> EventDetail -> FamilyEventDetail
[familyEventDetailAgeHusband] :: FamilyEventDetail -> Maybe Word
[familyEventDetailAgeWife] :: FamilyEventDetail -> Maybe Word
[familyEventDetailDetail] :: FamilyEventDetail -> EventDetail
-- | An event concerning a family.
data FamilyEvent
FamilyEvent :: FamilyEventType -> FamilyEventDetail -> FamilyEvent
[familyEventType] :: FamilyEvent -> FamilyEventType
[familyEventDetail] :: FamilyEvent -> FamilyEventDetail
-- | Details about an individual event.
data IndividualEventDetail
IndividualEventDetail :: EventDetail -> Maybe Word -> IndividualEventDetail
[individualEventDetailDetail] :: IndividualEventDetail -> EventDetail
[individualEventDetailAge] :: IndividualEventDetail -> Maybe Word
-- | An event concerning an individual.
data IndividualEvent
IndividualEvent :: IndividualEventType -> IndividualEventDetail -> IndividualEvent
[individualEventType] :: IndividualEvent -> IndividualEventType
[individualEventDetail] :: IndividualEvent -> IndividualEventDetail
-- | A physical place.
data Place
Place :: [Text] -> Maybe [Text] -> Maybe PhoneticPlaceName -> Maybe RomanPlaceName -> Maybe MapCoord -> [GDRef Note] -> Place
[placeName] :: Place -> [Text]
[placeForm] :: Place -> Maybe [Text]
[placePhonetic] :: Place -> Maybe PhoneticPlaceName
[placeRoman] :: Place -> Maybe RomanPlaceName
[placeMap] :: Place -> Maybe MapCoord
[placeNote] :: Place -> [GDRef Note]
-- | The name of a person.
data PersonalName
PersonalName :: Name -> Maybe NameType -> PersonalNamePieces -> [PhoneticName] -> [RomanizedName] -> PersonalName
[personalNameName] :: PersonalName -> Name
[personalNameType] :: PersonalName -> Maybe NameType
[personalNamePieces] :: PersonalName -> PersonalNamePieces
[personalNamePhonetic] :: PersonalName -> [PhoneticName]
[personalNameRoman] :: PersonalName -> [RomanizedName]
-- | A phonetic transcription of a person's name.
data PhoneticName
PhoneticName :: Name -> PhoneticType -> PersonalNamePieces -> PhoneticName
[phoneticName] :: PhoneticName -> Name
[phoneticType] :: PhoneticName -> PhoneticType
[phoneticPieces] :: PhoneticName -> PersonalNamePieces
-- | A Roman transliteration of a person's name.
data RomanizedName
RomanizedName :: Name -> RomanType -> PersonalNamePieces -> RomanizedName
[romanziedName] :: RomanizedName -> Name
[romanziedType] :: RomanizedName -> RomanType
[romanziedPieces] :: RomanizedName -> PersonalNamePieces
-- | Parts of a person's name.
data PersonalNamePieces
PersonalNamePieces :: [Text] -> [Text] -> [Text] -> [Text] -> [Text] -> [Text] -> [GDRef Note] -> [SourceCitation] -> PersonalNamePieces
-- | Parts of the name that precede the other names. Example from the
-- GEDCOM standard (prefix highlighted in bold):
--
-- Lt. Cmndr. Joseph Allen jr.
[namePiecePrefix] :: PersonalNamePieces -> [Text]
-- | Given names
[namePieceGiven] :: PersonalNamePieces -> [Text]
-- | Nicknames
[namePieceNickname] :: PersonalNamePieces -> [Text]
-- | Surname prefixes. Example from the GEDCOM standard (surname prefix
-- highlighted in bold):
--
-- de la Cruz
[namePieceSurnamePrefix] :: PersonalNamePieces -> [Text]
-- | Surname or family names
[namePieceSurname] :: PersonalNamePieces -> [Text]
-- | Parts of the name that come after all other names. Example from the
-- GEDCOM standard (suffix highlighted in bold)
--
-- Lt. Cmndr. Joseph Allen jr.
[namePieceSuffix] :: PersonalNamePieces -> [Text]
[namePieceNameNote] :: PersonalNamePieces -> [GDRef Note]
[namePirceSourceCitation] :: PersonalNamePieces -> [SourceCitation]
-- | Extra information about an individual.
data IndividualAttribute
IndividualAttribute :: IndividualAttributeType -> (IndividualEventDetail) -> IndividualAttribute
-- | Classification of extra information about an individual.
data IndividualAttributeType
-- | Caste.
Caste :: Text -> IndividualAttributeType
-- | Physical description of the individual.
PhysicalDescription :: Text -> IndividualAttributeType
-- | Scholastic achievement.
Education :: Text -> IndividualAttributeType
-- | National id number.
NationalID :: Text -> IndividualAttributeType
-- | National or tribal origin.
NationalOrigin :: Text -> IndividualAttributeType
-- | Number of children.
NChildren :: Word -> IndividualAttributeType
-- | Number of marriages.
NMarriages :: Word -> IndividualAttributeType
-- | Occupation.
Occupation :: Text -> IndividualAttributeType
-- | Property the individual owned.
Possessions :: Text -> IndividualAttributeType
-- | Religious affiliation.
Religion :: Text -> IndividualAttributeType
-- | Place of residence.
ResidesAt :: IndividualAttributeType
-- | Social security number.
SocialSecurity :: Text -> IndividualAttributeType
-- | Title of nobility.
Title :: Text -> IndividualAttributeType
-- | None of the above.
Fact :: Text -> IndividualAttributeType
-- | Citation of source material.
data SourceCitation
SourceCitation :: Either SourceDescription (GDRef Source) -> Maybe Text -> [GDRef Multimedia] -> [GDRef Note] -> Maybe QualityAssessment -> SourceCitation
-- | Either a description of the source, or a reference to a Source
-- record which describes the source in more detail.
[citeSource] :: SourceCitation -> Either SourceDescription (GDRef Source)
[citePage] :: SourceCitation -> Maybe Text
[citeMultimedia] :: SourceCitation -> [GDRef Multimedia]
[citeNote] :: SourceCitation -> [GDRef Note]
[citeQuality] :: SourceCitation -> Maybe QualityAssessment
-- | Citation of a repository of source material.
data RepositoryCitation
RepositoryCitation :: Maybe (GDRef Repository) -> [GDRef Note] -> Maybe CallNumber -> RepositoryCitation
[repoCiteRepository] :: RepositoryCitation -> Maybe (GDRef Repository)
[repoCiteNote] :: RepositoryCitation -> [GDRef Note]
[repoCiteCallNumber] :: RepositoryCitation -> Maybe CallNumber
-- | An address
data Address
Address :: Text -> Maybe Text -> Maybe Text -> Maybe Text -> Maybe Text -> ContactDetails -> Address
[addressLines] :: Address -> Text
[addressCity] :: Address -> Maybe Text
[addressState] :: Address -> Maybe Text
[addressPostcode] :: Address -> Maybe Text
[addressCountry] :: Address -> Maybe Text
[addressContact] :: Address -> ContactDetails
-- | Contact details associated with an Address
data ContactDetails
ContactDetails :: [Text] -> [Text] -> [Text] -> [Text] -> ContactDetails
[addressPhone] :: ContactDetails -> [Text]
[addressEmail] :: ContactDetails -> [Text]
[addressFax] :: ContactDetails -> [Text]
[addressWWW] :: ContactDetails -> [Text]
-- | Information about a multimedia file
data MultimediaFile
MultimediaFile :: Text -> MultimediaFormat -> Maybe Text -> MultimediaFile
[multimediaFileLink] :: MultimediaFile -> Text
[multimediaFileFormat] :: MultimediaFile -> MultimediaFormat
[multimediaTitle] :: MultimediaFile -> Maybe Text
-- | Information about a multimedia format.
data MultimediaFormat
MultimediaFormat :: MultimediaFileFormat -> (Maybe MultimediaType) -> MultimediaFormat
-- | Supported multimedia file formats.
data MultimediaFileFormat
MF_BMP :: MultimediaFileFormat
MF_GIF :: MultimediaFileFormat
MF_JPG :: MultimediaFileFormat
MF_OLE :: MultimediaFileFormat
MF_PCX :: MultimediaFileFormat
MF_TIF :: MultimediaFileFormat
MF_WAV :: MultimediaFileFormat
-- | Any other file type.
MF_OTHER :: Text -> MultimediaFileFormat
-- | The kind of multimedia (not necessarily a computer file).
data MultimediaType
MT_AUDIO :: MultimediaType
MT_BOOK :: MultimediaType
MT_CARD :: MultimediaType
MT_ELECTRONIC :: MultimediaType
MT_FICHE :: MultimediaType
MT_FILM :: MultimediaType
MT_MAGAZINE :: MultimediaType
MT_MANUSCRIPT :: MultimediaType
MT_MAP :: MultimediaType
MT_NEWSPAPER :: MultimediaType
MT_PHOTO :: MultimediaType
MT_TOMBSTONE :: MultimediaType
MT_VIDEO :: MultimediaType
-- | Any other kind of multimedia.
MT_OTHER :: Text -> MultimediaType
-- | Name types.
data NameType
AKA :: NameType
BirthName :: NameType
Immigrant :: NameType
Maiden :: NameType
Married :: NameType
-- | Any other kind of name.
NameType :: Text -> NameType
-- | Dates, including date ranges and approximate dates.
data DateValue
DateV :: Date -> DateValue
DateApproxV :: DateApprox -> DateValue
DatePeriodV :: DatePeriod -> DateValue
DateRangeV :: DateRange -> DateValue
-- | A date in a format that doesn't fit the other categories. May include
-- an interpretation in the optional Date field.
DatePhrase :: (Maybe Date) -> Text -> DateValue
-- | A date that is only approximately known.
data DateApprox
DateAbout :: Date -> DateApprox
DateCalculated :: Date -> DateApprox
DateEstimated :: Date -> DateApprox
-- | A range of dates.
data DateRange
DateBefore :: Date -> DateRange
DateAfter :: Date -> DateRange
DateBetween :: Date -> Date -> DateRange
-- | Recognised types of events concerning families.
data FamilyEventType
Annuled :: FamilyEventType
FamCensus :: FamilyEventType
Divorce :: FamilyEventType
DivorceFiled :: FamilyEventType
Engagement :: FamilyEventType
MarriageBann :: FamilyEventType
MarriageContract :: FamilyEventType
Marriage :: FamilyEventType
MarriageLicense :: FamilyEventType
MarriageSettlement :: FamilyEventType
Residence :: FamilyEventType
-- | Any other kind of event.
FamilyEventType :: Text -> FamilyEventType
-- | Recognised types of events concerning individuals.
data IndividualEventType
Birth :: (Maybe (GDRef Family)) -> IndividualEventType
Christening :: (Maybe (GDRef Family)) -> IndividualEventType
Death :: IndividualEventType
Burial :: IndividualEventType
Cremation :: IndividualEventType
Adoption :: (Maybe AdoptionDetail) -> IndividualEventType
Baptism :: IndividualEventType
BarMitzvah :: IndividualEventType
BasMitzvah :: IndividualEventType
Blessing :: IndividualEventType
ChristeningAdult :: IndividualEventType
Confirmation :: IndividualEventType
FirstCommunion :: IndividualEventType
Ordination :: IndividualEventType
Naturalization :: IndividualEventType
Emigration :: IndividualEventType
Immigration :: IndividualEventType
IndvCensus :: IndividualEventType
Probate :: IndividualEventType
Will :: IndividualEventType
Graduation :: IndividualEventType
Retirement :: IndividualEventType
-- | Any other kind of event.
IndividualEventType :: Text -> IndividualEventType
-- | Recognised event types.
data EventType
-- | Family of individual census.
Census :: EventType
-- | A family event
FamilyEventTypeV :: FamilyEventType -> EventType
-- | An individual event
IndividualEventTypeV :: IndividualEventType -> EventType
-- | Some other kind of event.
EventType :: Text -> EventType
-- | Information about an adoption, including the family the subject was
-- adopted into and which parent(s) adopted the child.
data AdoptionDetail
AdoptionDetail :: (GDRef Family) -> (Maybe Parent) -> AdoptionDetail
-- | A calendar
data Calendar
Gregorian :: Calendar
Julian :: Calendar
Hebrew :: Calendar
French :: Calendar
-- | A call number for citations
data CallNumber
CallNumber :: Text -> (Maybe MultimediaType) -> CallNumber
-- | The date a record was last changed
data ChangeDate
ChangeDate :: UTCTime -> (Maybe (GDRef Note)) -> ChangeDate
-- | A character set and optional version (the version is unused so far as
-- I am aware)
data Charset
Charset :: Text -> (Maybe Text) -> Charset
-- | Metadata about a child link
data ChildLinkStatus
Challenged :: ChildLinkStatus
Disproved :: ChildLinkStatus
Proven :: ChildLinkStatus
-- | A date. The format is day / month / year and months are numbered 1 to
-- 12 (or 1 to 13 for certain calendars).
data Date
Date :: Calendar -> (Maybe Word) -> (Maybe Word) -> Year -> Date
-- | A range of dates
data DatePeriod
-- | A range of dates with a start date and optional end date.
DateFrom :: Date -> (Maybe Date) -> DatePeriod
-- | A range of dates with only the end date specified.
DateTo :: Date -> DatePeriod
-- | A global location in longitude and latitude.
data MapCoord
MapCoord :: Longitude -> Latitude -> MapCoord
-- | A personal name. The first field is the full name of the individual.
-- The second field contains just the surname of the individual (or
-- Nothing if unspecified)
data Name
Name :: Text -> (Maybe Text) -> Name
-- | Which parent?
data Parent
Husband :: Parent
Wife :: Parent
BothParents :: Parent
-- | How a child is associated with his/her family.
data Pedigree
Adopted :: Pedigree
ByBirth :: Pedigree
Foster :: Pedigree
Sealing :: Pedigree
-- | A phonetic transcription of a place name.
data PhoneticPlaceName
PhoneticPlaceName :: PhoneticType -> [Text] -> PhoneticPlaceName
-- | The type of phonetic transcription.
data PhoneticType
-- | Japanese kana
Kana :: PhoneticType
-- | Korean hanguel
Hangul :: PhoneticType
-- | Something else
PhoneticType :: Text -> PhoneticType
-- | Privacy restrictions associated with a record.
data RestrictionNotice
Confidential :: RestrictionNotice
Locked :: RestrictionNotice
Privacy :: RestrictionNotice
-- | A Roman transliteration of a place name.
data RomanPlaceName
RomanPlaceName :: RomanType -> [Text] -> RomanPlaceName
-- | The type of Roman transliteration.
data RomanType
-- | Chinese Pinyin
Pinyin :: RomanType
-- | Japanese Romaji
Romaji :: RomanType
-- | Chinese Wade-Giles
WadeGiles :: RomanType
-- | Something else
RomanType :: Text -> RomanType
-- | Sex.
data Sex
Male :: Sex
Female :: Sex
Undetermined :: Sex
-- | Description of a source. The first field contains a description of the
-- source. The second field contains sections of text from the source.
data SourceDescription
SourceDescription :: Text -> [Text] -> SourceDescription
-- | Custom reference added by the creator of this file. The format of this
-- reference is not standardized.
data UserReference
UserReference :: Text -> (Maybe Text) -> UserReference
-- | Part of the GEDCOM standard, but only for LDS use so far as I am
-- aware.
newtype AFN
AFN :: Text -> AFN
-- | A natural language.
newtype Language
Language :: Text -> Language
-- | Latitude
newtype Latitude
Latitude :: Double -> Latitude
-- | Longitude
newtype Longitude
Longitude :: Double -> Longitude
-- | Assessment of the quality of a source. A number from 0 to 3 with 0
-- indicating unreliable information and 3 being direct primary evidence.
newtype QualityAssessment
QualityAssessment :: Word -> QualityAssessment
-- | Part of the GEDCOM standard, but only for LDS use so far as I am
-- aware.
newtype RFN
RFN :: Text -> RFN
-- | Automated Record ID. From the GEDCOM standard:
--
-- "This number is intended to serve as a more sure means of
-- identification of a record for reconciling differences in data between
-- two interfacing systems."
newtype RIN
RIN :: Text -> RIN
-- | A year in some calendar. May be negative.
newtype Year
Year :: Int -> Year
instance GHC.Show.Show Data.Gedcom.XRefTable