commit 9c5889a96479f0c4965cb9d217911283f871244b from: Sergey Bronnikov date: Sat Nov 02 21:22:03 2019 UTC XXX commit - d0ac3414e395977a1878a4d0d795561494a99812 commit + 9c5889a96479f0c4965cb9d217911283f871244b blob - 356111410e4b571eef0550ae1645b3428e06cae5 blob + cebace76541da2700cbc612558568338b6d14949 --- README.md +++ README.md @@ -86,5 +86,6 @@ EP106: child doesn't inherit father's surname - [gedcomq](https://godoc.org/github.com/elliotchance/gedcom/gedcomq) - [emperor](https://github.com/bencrowder/emperor) - [genealogytree](https://www.ctan.org/pkg/genealogytree) +- [Using Prolog to Analyze your Family Tree](https://gramps-project.org/blog/2015/05/using-prolog-to-analyze-your-family-tree/) Copyright (c) 2017-2019, [Sergey Bronnikov](https://bronevichok.ru/) blob - /dev/null blob + abfd333976b35671b037df6835ce79ae02087198 (mode 644) --- /dev/null +++ cmd/gedcom2sql/gramps-db1.sql @@ -0,0 +1,224 @@ +CREATE TABLE note ( + handle CHARACTER(25) PRIMARY KEY, + gid CHARACTER(25), + text TEXT, + format INTEGER, + note_type1 INTEGER, + note_type2 TEXT, + change INTEGER, + private BOOLEAN); +CREATE TABLE name ( + handle CHARACTER(25) PRIMARY KEY, + primary_name BOOLEAN, + private BOOLEAN, + first_name TEXT, + suffix TEXT, + title TEXT, + name_type0 INTEGER, + name_type1 TEXT, + group_as TEXT, + sort_as INTEGER, + display_as INTEGER, + call TEXT, + nick TEXT, + famnick TEXT); +CREATE TABLE surname ( + handle CHARACTER(25), + surname TEXT, + prefix TEXT, + primary_surname BOOLEAN, + origin_type0 INTEGER, + origin_type1 TEXT, + connector TEXT); +CREATE INDEX idx_surname_handle ON + surname(handle); +CREATE TABLE date ( + handle CHARACTER(25) PRIMARY KEY, + calendar INTEGER, + modifier INTEGER, + quality INTEGER, + day1 INTEGER, + month1 INTEGER, + year1 INTEGER, + slash1 BOOLEAN, + day2 INTEGER, + month2 INTEGER, + year2 INTEGER, + slash2 BOOLEAN, + text TEXT, + sortval INTEGER, + newyear INTEGER); +CREATE TABLE person ( + handle CHARACTER(25) PRIMARY KEY, + gid CHARACTER(25), + gender INTEGER, + death_ref_handle TEXT, + birth_ref_handle TEXT, + change INTEGER, + private BOOLEAN); +CREATE TABLE family ( + handle CHARACTER(25) PRIMARY KEY, + gid CHARACTER(25), + father_handle CHARACTER(25), + mother_handle CHARACTER(25), + the_type0 INTEGER, + the_type1 TEXT, + change INTEGER, + private BOOLEAN); +CREATE TABLE place ( + handle CHARACTER(25) PRIMARY KEY, + gid CHARACTER(25), + title TEXT, + value TEXT, + the_type0 INTEGER, + the_type1 TEXT, + code TEXT, + long TEXT, + lat TEXT, + lang TEXT, + change INTEGER, + private BOOLEAN); +CREATE TABLE place_ref ( + handle CHARACTER(25) PRIMARY KEY, + from_place_handle CHARACTER(25), + to_place_handle CHARACTER(25)); +CREATE TABLE place_name ( + handle CHARACTER(25) PRIMARY KEY, + from_handle CHARACTER(25), + value CHARACTER(25), + lang CHARACTER(25)); +CREATE TABLE event ( + handle CHARACTER(25) PRIMARY KEY, + gid CHARACTER(25), + the_type0 INTEGER, + the_type1 TEXT, + description TEXT, + change INTEGER, + private BOOLEAN); +CREATE TABLE citation ( + handle CHARACTER(25) PRIMARY KEY, + gid CHARACTER(25), + confidence INTEGER, + page CHARACTER(25), + source_handle CHARACTER(25), + change INTEGER, + private BOOLEAN); +CREATE TABLE source ( + handle CHARACTER(25) PRIMARY KEY, + gid CHARACTER(25), + title TEXT, + author TEXT, + pubinfo TEXT, + abbrev TEXT, + change INTEGER, + private BOOLEAN); +CREATE TABLE media ( + handle CHARACTER(25) PRIMARY KEY, + gid CHARACTER(25), + path TEXT, + mime TEXT, + desc TEXT, + checksum INTEGER, + change INTEGER, + private BOOLEAN); +CREATE TABLE repository_ref ( + handle CHARACTER(25) PRIMARY KEY, + ref CHARACTER(25), + call_number TEXT, + source_media_type0 INTEGER, + source_media_type1 TEXT, + private BOOLEAN); +CREATE TABLE repository ( + handle CHARACTER(25) PRIMARY KEY, + gid CHARACTER(25), + the_type0 INTEGER, + the_type1 TEXT, + name TEXT, + change INTEGER, + private BOOLEAN); +CREATE TABLE link ( + from_type CHARACTER(25), + from_handle CHARACTER(25), + to_type CHARACTER(25), + to_handle CHARACTER(25)); +CREATE INDEX idx_link_to ON + link(from_type, from_handle, to_type); +CREATE TABLE markup ( + handle CHARACTER(25) PRIMARY KEY, + markup0 INTEGER, + markup1 TEXT, + value INTEGER, + start_stop_list TEXT); +CREATE TABLE event_ref ( + handle CHARACTER(25) PRIMARY KEY, + ref CHARACTER(25), + role0 INTEGER, + role1 TEXT, + private BOOLEAN); +CREATE TABLE person_ref ( + handle CHARACTER(25) PRIMARY KEY, + description TEXT, + private BOOLEAN); +CREATE TABLE child_ref ( + handle CHARACTER(25) PRIMARY KEY, + ref CHARACTER(25), + frel0 INTEGER, + frel1 CHARACTER(25), + mrel0 INTEGER, + mrel1 CHARACTER(25), + private BOOLEAN); +CREATE TABLE lds ( + handle CHARACTER(25) PRIMARY KEY, + type INTEGER, + place CHARACTER(25), + famc CHARACTER(25), + temple TEXT, + status INTEGER, + private BOOLEAN); +CREATE TABLE media_ref ( + handle CHARACTER(25) PRIMARY KEY, + ref CHARACTER(25), + role0 INTEGER, + role1 INTEGER, + role2 INTEGER, + role3 INTEGER, + private BOOLEAN); +CREATE TABLE address ( + handle CHARACTER(25) PRIMARY KEY, + private BOOLEAN); +CREATE TABLE location ( + handle CHARACTER(25) PRIMARY KEY, + street TEXT, + locality TEXT, + city TEXT, + county TEXT, + state TEXT, + country TEXT, + postal TEXT, + phone TEXT, + parish TEXT); +CREATE TABLE attribute ( + handle CHARACTER(25) PRIMARY KEY, + the_type0 INTEGER, + the_type1 TEXT, + value TEXT, + private BOOLEAN); +CREATE TABLE url ( + handle CHARACTER(25) PRIMARY KEY, + path TEXT, + desc TXT, + type0 INTEGER, + type1 TEXT, + private BOOLEAN); +CREATE TABLE datamap ( + from_handle CHARACTER(25), + the_type0 INTEGER, + the_type1 TEXT, + value_field TXT, + private BOOLEAN); +CREATE TABLE tag ( + handle CHARACTER(25) PRIMARY KEY, + name TEXT, + color TEXT, + priority INTEGER, + change INTEGER);