АвторТема: Удобный формат для передачи генеалогической информации  (Прочитано 35184 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн AnodeАвтор темы

  • Группа N
  • *
  • Сообщений: 1502
  • Страна: ca
  • Рейтинг +145/-0
  • PS1 -> TT1 -> EE1 -> PS2
  • Y-ДНК: N1c1
  • мтДНК: H10a1, U5b1
Gedcom потихоньку устаревает, планируется, что его должен заменить GedXML основанный на сементике языке XML.

Честно говоря - не очень хочется начинать здесь ломать копья с критикой XML. Имхо это один из самых больших фолтов IT начала 21го века - юзать XML для чего-то, редактируемого людьми. Только представьте своих дальних родственников из дальнего села, недавно купивших компьютер, получивших в письме XML. А тут ещё после того как они что-то даже может и подредактируют - в сплошном нечитаемом блобе - получат что-нибудь типа:
------8<------
XML Parsing Error: not well-formed
Location: http://jaist.dl.sourceforge.net/project/gedcomfilter/GEDCOM%20XML%20Specification/Std.%20Draft%20Release%206.0/GedXML-Sample.xml
Line Number 252, Column 19:<!-- VitalType of aftbirth indicates an event that is accepted as proof of birth, and normally
------8<------
Ну нет, хватило мне этого добра на работе, понапритасканного студентами. И уж точно - не буду родственников и кузенов им мучить.

Оффлайн AnodeАвтор темы

  • Группа N
  • *
  • Сообщений: 1502
  • Страна: ca
  • Рейтинг +145/-0
  • PS1 -> TT1 -> EE1 -> PS2
  • Y-ДНК: N1c1
  • мтДНК: H10a1, U5b1
Если нет сведений о предках, то не включаем в роспись.
Это менее громоздко

Уважаемый Yurgan, забыл на это ответить...

Меня как раз интересуют предки, сведений о которых нет. Т.е. те строки - по которым надо пробивать. Именно поэтому я в последнем варианте развернул все до офного неизвестные узлы - "терминалы" (но чтобы не иметь более одного неизвестного по каждой из линий - ведь по-любому надо сначала пробить более близкого родственника). Т.е. в незаполненных строках - много информации, например, для родственников или архива - кому это дерево будет послано. В случае с полностью разрешённым деревом - понять - что же надо исследовать - вовсе не очевидно. А в нашем формате удобно даже распределять/распараллеливать задачи.

Оффлайн AnodeАвтор темы

  • Группа N
  • *
  • Сообщений: 1502
  • Страна: ca
  • Рейтинг +145/-0
  • PS1 -> TT1 -> EE1 -> PS2
  • Y-ДНК: N1c1
  • мтДНК: H10a1, U5b1
Последнее...
Можно сделать тему для того - чтобы молгеновцы сбрасывали генеалогическую информацию (с гаплогруппами) в таком формате, ведь строки независимы и можно показывать с 3го или выше колена.
Как минимум я, пожалуй, буду иметь дерево именно в таком виде. И заполнять неизвестные по мере получения информации. Такая мастер-копия текущего состояния дел.

Оффлайн Mich Glitch

  • Genus regis
  • Сообщений: 30833
  • Страна: ca
  • Рейтинг +2273/-38
  • Y-ДНК: J2b1
  • мтДНК: H6a1a5
Квакну не совсем в тему о своей навязчивой идейке.
Всё надеюсь, что когда-нибудь у кого-нибудь руки дойдут по матрице родственного свойства + игрек гаплотипы (сначала субклады, по мере развития, мотивы, т.е. совпадающие, с учётом мутаций, гаплотипы) + мито гаплотипы, создать программу, выстраивающую геналогическое дерево по референтной персоне.
Тогда именно такая нотация будет в тему.

Можно было бы бежать впереди паровоза и уже сейчас просить кого-нибудь написать программу по полному древу поколений на пять.
То есть берём персону, создаём ему брата, двух двоюродных братьев, четырёх троюродных, восемь четвероюродных, шестнадцать пятироюродных. С шестнадцатью условными игрек гаплотипами (номера с 1 по 16) и шестнадцатью условными мито гаплотипами.
По такой болванке программку, выстраивающей единственно возможное дерево (по крайней мере для референтной персоны и на глубине 3-4-х юродного родства), думаю, создать было бы несложно.

Основная задача такой программы и такого построения, выявить до какого родства при заданной размерности полной матрицы можно получить одновариантное дерево.

Ну, а далее пойдут трудности. Типа, неполных дерев. Инбридинга. Вероятностных интервалов вместо однозначной степени родства.

Но!

Ведь С.Брин как-то обмолвился, что одной из задач 23эндМи является построение всеохватного геналогического древа всех протестированных.

Так что возможно жить в эту пору прекрасную уж не придётся ни и мне, ни и тебе.   

::)

Оффлайн AnodeАвтор темы

  • Группа N
  • *
  • Сообщений: 1502
  • Страна: ca
  • Рейтинг +145/-0
  • PS1 -> TT1 -> EE1 -> PS2
  • Y-ДНК: N1c1
  • мтДНК: H10a1, U5b1
Квакну не совсем в тему о своей навязчивой идейке.
Всё надеюсь, что когда-нибудь у кого-нибудь руки дойдут по матрице родственного свойства + игрек гаплотипы (сначала субклады, по мере развития, мотивы, т.е. совпадающие, с учётом мутаций, гаплотипы) + мито гаплотипы, создать программу, выстраивающую геналогическое дерево по референтной персоне.
Тогда именно такая нотация будет в тему.

<...>

Ведь С.Брин как-то обмолвился, что одной из задач 23эндМи является построение всеохватного геналогического древа всех протестированных.

Так что возможно жить в эту пору прекрасную уж не придётся ни и мне, ни и тебе.  

::)

Идея хорошая и архиважная - потому что глобальная. И только имея масштабируемый формат (где дерево можно бить на куски, затем опять мерджить, хранить в отдельных файлах обрабатывать инкрементально, помещая только куски его в память) - будет возможно создать супер-большое дерево. Ведь полное дерево до 16го века даже для одного человека - это около миллиона строк. Считаю, что именно этот формат потянет (с возможными модификациями и усовершенствованиями в протоколе, осовенно правых частей строк, но это уже детали).

Надо время переварить сам процессинг.

П.С. Mich Glitch, дайте, пожалуйста, линки на обсуждения, детали (я помню, что что-то подобное обсуждалось, но не помню где и как искать). Спасибо.

Оффлайн AnodeАвтор темы

  • Группа N
  • *
  • Сообщений: 1502
  • Страна: ca
  • Рейтинг +145/-0
  • PS1 -> TT1 -> EE1 -> PS2
  • Y-ДНК: N1c1
  • мтДНК: H10a1, U5b1
Поместил мастер-копию дерева здесь

Оффлайн Valery

  • Сообщений: 5522
  • Страна: 00
  • Рейтинг +435/-6
  • Ultimate Matriarchy
Я обеими руками за формат Anode!

Оффлайн I2a1a

  • ...
  • Сообщений: 11074
  • Страна: ee
  • Рейтинг +753/-8
"Проследуйте в дислокацию, обозначенную на карте буквами Эм и Жо".(с) Папанов

Как уже справедливо указали Юрган и ВадимЗ, сiя ciстема являѣт собой модiфикацiю популярной срѣди дорѣволюционных гѣнеалогов системы нумерации Соса-Страдониц-Кекуле.

Оффлайн Mich Glitch

  • Genus regis
  • Сообщений: 30833
  • Страна: ca
  • Рейтинг +2273/-38
  • Y-ДНК: J2b1
  • мтДНК: H6a1a5
Mich Glitch, дайте, пожалуйста, линки на обсуждения, детали (я помню, что что-то подобное обсуждалось, но не помню где и как искать). Спасибо.

Ссылка на ветку.

Оффлайн Mich Glitch

  • Genus regis
  • Сообщений: 30833
  • Страна: ca
  • Рейтинг +2273/-38
  • Y-ДНК: J2b1
  • мтДНК: H6a1a5
Поместил мастер-копию дерева здесь

Ну, а моё вот тут (там, кстати, в последующих постах привожу детали описания своей нотации). Это по материнской линии.
И вот тут по отцу.

Оффлайн Mich Glitch

  • Genus regis
  • Сообщений: 30833
  • Страна: ca
  • Рейтинг +2273/-38
  • Y-ДНК: J2b1
  • мтДНК: H6a1a5
Кстати, можно от полного представления легко перейти к числовой нотации.
Для этого достаточно:
1) Все М заменить на 0, а все Ж на 1.
2) Поставить полученную цепочку вслед за единичкой.
3) Полученное число перевести из двоичного формата в десятичный.

Примеры:
Персона, для которой обозначаем предков.
Буквы отсутствуют.
То есть после 1 ничего не стоит.
1.

Отец.
М.
10.
2.

Мать.
Ж.
11.
3.

Дед по отцу.
ММ.
100.
4.

Бабушка по отцу.
МЖ.
101.
5.


И так далее...

Оффлайн AnodeАвтор темы

  • Группа N
  • *
  • Сообщений: 1502
  • Страна: ca
  • Рейтинг +145/-0
  • PS1 -> TT1 -> EE1 -> PS2
  • Y-ДНК: N1c1
  • мтДНК: H10a1, U5b1
Кстати, можно от полного представления легко перейти к числовой нотации.
Для этого достаточно:
1) Все М заменить на 0, а все Ж на 1.
2) Поставить полученную цепочку вслед за единичкой.
3) Полученное число перевести из двоичного формата в десятичный.


И в обратную сторону тоже:
берём номера Соса-Страдониц, переводим в бинарное счисление. Для женщин - прямое преобразование каждой 1 в Ж, всё как положено. Однако для мужчин самый старший разряд всегда заменяем на М, хотя имеем там 1. Неудобство Соса-Страдониц - в том что нам надо знать - кто исследователь, кто в корне (так как по-любому пишется 1). В нашем формате же - уже по тексту видно - кто есть кто, и можно смело пытаться объединять деревья.

ктоСоса-Страдоницбинарный форматнаш формат (для женщин)наш формат (для мужчин)
я11ЖМ
отец210ЖМММ
мать311ЖЖМЖ
дед (по отцу)4100ЖМММММ
бабка (по отцу)5101ЖМЖММЖ
дед (по матери)6110ЖЖММЖМ
бабка (по матери)7111ЖЖЖМЖЖ

[Ж=1]-------[ЖЖ=3]---------[ЖЖЖ=7]------------[ЖЖЖЖ=15]-------------[ЖЖЖЖЖ=31]
   \         \                 \-----------[ЖЖЖМ=14]
    \         \-------[ЖЖМ=6]-----------[ЖЖМЖ=13]
     \                   \-----------[ЖЖМM=12]
      \-[ЖМ=2]------[ЖMЖ=5]-------[ЖMЖЖ=11]
          \            \-----[ЖMЖM=10]---------[ЖMЖМЖ=21]
           \                    \----------[ЖMЖMМ=20]
            \--[ЖММ=4]----[ЖMМЖ=9]-----[ЖMМЖЖ=19]
                 \           \-----[ЖMМЖM=18]
                  \--[ЖМММ=8]----[ЖМММЖ=17]
                        \------[ЖММММ=16]

Ответьте всего лишь на один вопрос, господа консерваторы, приверженцы дорѣволюционных (С) стандартов в точности до счисления (хотя бинарному счислению и компьютерам дорѣволюционные гѣнеалогi (С) вряд ли были обучены, иначе бы упростили себе жизнь):
что вы предпочтёте послать вашим дальним родственникам в деревню или в архив незнакомому человеку:
а) номер (суррогатный ключ, фактически счётчик) с объяснениями геометрической прогрессии и формулами,
либо
б) самодостаточный путь-цепочку, натуральный ключ (из которой всегда можно получить то - что вам нужно, простым переводом).

(Я выбираю второй вариант и уже посылал дерево, в том числе и в архив)

Оффлайн AnodeАвтор темы

  • Группа N
  • *
  • Сообщений: 1502
  • Страна: ca
  • Рейтинг +145/-0
  • PS1 -> TT1 -> EE1 -> PS2
  • Y-ДНК: N1c1
  • мтДНК: H10a1, U5b1
Небольшое, но преимущество бинарного счёта также в наглядности присвоения гаплогрупп.
По системе, от которой вы не хотите отказываться моя Y гаплогруппа (N1c1) будет в нодах:
1,2,4,8 итд.
мито гаплогруппа (H10a1) будет в 1,3,7,15 итд.
А мито моей бабушки со стороны отца (U5) - в 2,5,11,23 итд.
Если всё это так очевидно и без счёта для вас - то я не уверен что это очевидно для всех.

Теперь в случае бинарного представления:

Y: М, ММ, МММ, ММММ, ...
мито: М, МЖ, МЖЖ, МЖЖЖ, ...
мито бабки по отцу: ММЖ, ММЖЖ, ММЖЖЖ, ММЖЖЖЖ, ...

т.е. любой, не влезая, в формулы - явно видит паттерн и может предсказать гаплогруппы следующих нодов (когда они появятся в дереве) - если они удовлетворяют паттерну (М+, МЖ+ и ММЖ+ соответственно). И с паттернами можно уже работать.
Или, например, последовательность МЖМЖЖЖ. Можно сразу сказать, что она несёт в себе (порождает) 4 разные гаплогруппы: М(y1,мито1)ЖМ(y2,мито2)ЖЖЖ.
А последовательность той же длины ЖММЖМЖ - уже 7: Ж(мито1)М(y1,мито2)М(y2,мито3)ЖМ(y3,мито4)Ж. Это можно сказать и без рисования дерева, а только из структуры повторений, смотря формально на буковки (на поколенные переходы).

Ведь всё - суть обозначения. И _бинарная_ система счисления гораздо более натуральна для _бинарного_ дерева, и это его, бинарного дерева самый близкий язык. А не десятичная. А любое дополнительное преобразование систем ведёт к индирекшенам и необходимости в доп.спецификациях. Короче, пожалейте родственников и себя (не используйте суррогаты - дополнительные переобозначения).
« Последнее редактирование: 05 Ноябрь 2011, 07:58:51 от Anode »

Оффлайн Valery

  • Сообщений: 5522
  • Страна: 00
  • Рейтинг +435/-6
  • Ultimate Matriarchy
Предлагаю название Yin-Yang Notation  ;D

*.yyn

Оффлайн I2a1a

  • ...
  • Сообщений: 11074
  • Страна: ee
  • Рейтинг +753/-8
Хороший велосипед получился ;D

 

© 2007 Молекулярная Генеалогия (МолГен)

Внимание! Все сообщения отражают только мнения их авторов.
Все права на материалы принадлежат их авторам (владельцам) и сетевым изданиям, с которых они взяты.


Rambler's Top100