webtrees是一个全面的、多语言的免费家谱程序,安装在服务器上。这个流行的开源程序安装在全球 6,100 多台服务器上,其中 1,900 多台安装在德语国家 (D/A/CH) [1]。webtrees为家谱数据提供多种显示选项,并支持用于数据交换的GEDCOM标准。可以安装多个家谱,并且可以由多个用户一起编辑和管理大量数据。
webtrees通过能够记录事件、事实和关系来记录人们的家族史,例如以下内容
诞生 结婚和离婚 死亡 孩子们 父母 和相关的多媒体文件。
基本概念
该应用程序的特点是多个用户通过 Internet 使用以及为此所需的授权概念。这里的一个重要方面是保护个人数据免遭未经授权的访问。
左边的第一个图显示了一个人的典型webtrees页面。为本手册中的屏幕截图创建了一个示例文件,然后作为所有插图的基础。
Web程序
webtrees应用程序是基于网络的。基于网络的应用程序的特征在于使用网站作为用户界面。因此, Webtrees用户可以使用浏览器从任何计算机访问该应用程序(见右下图)。
它可以通过各种终端设备(个人电脑、笔记本电脑、平板电脑、智能手机、智能电视等)独立于操作系统使用。该应用程序以针对目标设备优化的吸引人的形式显示[2]。多个用户可以同时使用该应用程序,数据在中央数据库中。
Web 应用程序的概念与安装在本地计算机上的应用程序和部署在智能手机上的应用程序形成对比(见下图左图)。此类应用程序一次只能由一个用户使用;应用程序和数据位于本地计算机上。然而,最近这两个概念之间的区别变得有些模糊,因为越来越多的本地安装的应用程序支持在云中存储数据。
安装webtrees的服务器可以由托管提供商作为专用或共享计算机提供。私人 PC 或网络驱动器也可以用作服务器。服务器可以在 Internet 上或在本地网络上。
授权概念
webtrees在互联网上展示研究成果,并允许注册用户共同维护家谱数据。因此,数据保护尤为重要。对webtrees中数据的访问受多级、基于角色的权限系统的监管。每个访问角色都在管理员指南章节的角色部分进行了描述 。
为了保护隐私,webtrees使用复杂的数据保护概念将受保护数据与公共数据分开,该概念确保了一般数据保护要求,但也可以适应特定需求。网络树区分访客的公共区域和注册会员的封闭区域。在公共区域,访客只会看到为此目的发布的数据,例如 110 多年前出生的人的姓名和出生日期,因此可以假定他们已经去世。在封闭区域中,对数据的访问由用户通过角色(成员、编辑、版主、管理员)进行控制。
数据保护
数据保护是保护个人数据不被滥用,尤其是保护在世人的个人数据。必须采取适当的保护措施,以确保机密或个人数据不会落入未经授权的人员手中。
webtrees的保护机制是基于用户的基于角色的授权概念和不同级别的相应配置设置。webtrees中的默认设置适用于大多数用户,默认保护活人的隐私。使用授权概念,系统管理员或家谱管理员决定谁可以访问哪些数据,谁可以编辑数据或只查看数据。使用webtrees,这甚至可能取决于关系的程度。
可以在不同级别进行数据保护设置(有关详细信息,请参阅“管理员说明”一章中的“隐私”部分)
- 家谱的隐私
- 每个人和/或个人的隐私
- 记录数据保护
- 事件和事实的数据保护
数据安全
数据安全是有效保护数据的前提。数据安全的技术目标是保护数据免受丢失、操纵和其他威胁。
这里建议在德国或欧洲数据中心的安全服务器上运行webtrees应用程序,以确保数据保护方面,例如通用数据保护条例 (GDPR)。
应使用加密通信连接(通过 https 的安全连接)访问webtrees页面。为此,必须在服务器上安装 SSL 证书。
更多功能
webtrees应用程序具有以下附加功能。
- webtrees是一个综合的家谱程序,用于收集和显示家谱数据。
- webtrees是一个以结果为导向的程序,即不是基于证据的程序。家谱结论的结果被记录在案。
- 该软件是免费的,但通常会添加订阅模式以运行webtrees服务器[3]。
- webtrees是开源软件[4],即开发人员社区不断改进它,并在 GPL 许可模型[5]下提供给所有人使用。
- 根据服务器的性能,还可以处理大量数据(例如超过一百万人)。
- 使用webtrees,可以在网站上并行安装多个家谱[6]。
- 一个webtrees实例的管理用户数可以超过1000;同时活跃用户的最大数量和每天的最大更改数量取决于所用服务器的性能。[7]
- 该软件完全支持5.5.1 版的 GEDCOM 标准,因此与所有主要的家谱程序兼容。
- 支持各种 GEDCOM 方言,例如GEDCOM-L 组的定义(参见附录)。
- 安装的管理员可以灵活地配置模块、菜单、图表、报告等等。[第8]
- 各种显示模块,称为“主题”,可用于用户界面的个性化设计[9]。除了属于webtrees核心的各种主题外,其他主题也以扩展模块的形式提供。
- webtrees在国际上使用,用户可以选择 50 多种语言[10]。还支持从右到左的书写方向。
- 可以设置许多命名约定,例如姓氏、母系姓氏传统、父系姓氏等[11]。
- 有一个全文搜索和其他搜索功能,可用于缩小广泛的数据库。这包括 Soundex 搜索(按发音搜索姓名)[12]。
- 可以编辑各种格式的来源、档案、共享笔记和媒体数据。
- 支持日期的不同日历系统[13]。
- 可以跨家谱管理位置数据[14];位置数据集和GOV由扩展模块(Vesta 模块)等支持。
- 一个媒体对象可以包含多个媒体文件;例如,这可用于在一个对象中捕获文档的正面和背面。
- webtrees支持用于显示地点和事件的各种地图系统[15]。
- 家谱研究任务可以管理[16]。
- 对家谱数据进行大量更改是可能的[17]。
- 自动生成隐私策略[18]。
- 各种图形评估可用于家谱数据的呈现,包括祖先和家谱图、“沙漏”表示、家谱或后代树。其他功能还有寿命显示(几个人的“生命条”并列显示)或者计算两个人的家庭关系[19]。
- 在服务器端,应用程序基于 PHP [20]网络框架 Laravel [21]和数据库(例如 MySQL [22]);该应用程序在客户端包含 JavaScript 函数[23]。
- 通过使用第三方工具、现代设计技术和开放标准的正确组合,webtrees是面向未来的、高效和有效的。
- 由于模块化的概念,所有功能都可以由有经验的 PHP/Web 程序员扩展[24]。
其他特点
- webtrees 不包含内容管理系统 (CMS) [25],因此无法轻松集成到一个系统中。webtrees起始页上的 HTML 块可以作为家谱图解介绍,但与 CMS 相比,它们的功能非常初级。
- webtrees不提供对遗传 (DNA) [26]信息文档的直接支持。
- 许多地方都支持Markdown 格式[27],例如注释或来源。这样,可以显示带有简单控制字符格式的文本;例如,这可以用于显示转录的文本或人口普查表,而这些文本元素不会失去与不支持 Markdown 的其他家谱程序的互换性。
- 可以为人们创建详细的、有插图的和可翻译的故事(作为“带降价的共享笔记”的替代方案)。但是,这些不能以 GEDCOM 格式导出,因此不能与其他程序交换
GEDCOM标准
webtrees完全支持 GEDCOM 标准 5.5.1 [28]进行导入和导出;然而,与该标准存在一些偏差,例如 GEDCOM 标准 7.0 [29]中的规范预期,它将在未来版本的webtrees中得到支持。这些与 GEDCOM 标准 5.5.1 有偏差
- 当昵称后附加星号“”时,昵称带有下划线;例如:Rainer Roman Schuster。
- 昵称显示在名称字段中的引号中;例如在:Josef“Sepp”Hinterhuber。
- 西班牙语或葡萄牙语的名字也可以用“/”分隔的两个部分拼写,例如Óscar Arnulfo Romero y Galdámez 1 姓名 Óscar Arnulfo /Romero/ y /Galdámez/ 2 GIVN 奥斯卡·阿努尔福 2 SURN罗梅罗,加尔达梅斯
- 在孩子与其父母之间的关系中,除了收养孩子或寄养孩子外,还支持“RADA”(孩子与其奶妈的关系)。
- 除了通常的日历系统(公历、儒略历、犹太历和法国大革命历)外,还支持伊斯兰历和贾拉利历。[30]
- 可以导入、编辑和再次导出各种家谱程序使用的许多不同的 GEDCOM 方言。[31]
- 如果管理员激活它们,则支持GEDCOM-L 附录中的规范。[32]
- GEDCOM 标准 7.0 的几种构造已在内部得到支持[33],但用户界面中尚未提供所有构造。
- 除了“M”(男)、“F”(女)和“U”(未知)之外,还支持“X”表示人的性别,只要二元系统“男/女”可以使用不适用。
- 除了 GEDCOM 5.5.1 标准中提供的单位(y = 年,m = 月,d = 天), webtrees已经支持 w = 周的年龄信息(代码 AGE),即诸如“59y 11m 2w “ .
- 所有类型的记录都允许使用 RESN;另外还有RESN none;支持枚举RESN PRIVACY, LOCKED.[34]
- 可以通过添加“之前”(BEF) 或“之后”(AFT) 来指定日期,例如表示事件发生在 1/1/1900 之前。webtrees以指定日期不属于它的方式解释此类信息;这与 GEDCOM 标准 7.0 中有争议的定义相矛盾。
- DATE 下的许多地方都允许使用 TIME,例如更准确地描述出生日期或死亡时间。
- FAM 也允许使用 FACT。
- FAM:NCHI 下也允许提供详细信息;5.5.1 标准仅在 INDI:NCHI 下允许提供有关儿童数量的更多信息(例如参考)。
- 新标签“NO”支持 INDI:NO 和 FAM:NO 并允许指示事件没有发生(例如,一个人没有结婚或没有移民)。
- webtrees目前不支持 GEDCOM 文件中仅大小写不同的 XREF。在 GEDCOM 标准 7.0 中,XREF 中只允许大写字母 (A..Z)、数字 (0..9) 和字符“_”(下划线),因此考虑到 webtree 的当前行为,这将毫无意义改变一些东西。如果 webtrees 自己创建一个 XREF,它的结构为“Xnnn”,即大写字母“X”后跟任意数字序列。可以使用 Vesta 扩展模块更改此行为。
- .gdz遵循 5.5.1 标准的 GEDCOM 文件也可以使用 GEDCOM 7.0 引入的文件格式导出,并且可以包含树中引用的所有多媒体文件。
版本历史
当前webtrees的版本是2023年1月16日的2.1.16,这个版本是稳定版,适合生产系统;它也是本手册的基础。
可以在“网站管理员说明”一章中找到版本名称语法的解释。
除了当前的稳定版本外,总会有下一个版本正在开发中,但这只能用于测试系统。并且在1.7版本的开发线上还有最后一个版本1.7.20;此版本不再维护,但对于无法切换到当前 PHP 版本的用户可能仍然相关。2.0 线程的最新版本是 2.0.26 版;这个版本可能不会再有升级。
Webtrees的分支 | 状态 | 最新版本 |
---|---|---|
2.2 | 开发中 | 开发 |
2.1 | 技术支持 | 2.1.16 |
2.0 | 只有安全更新 | 2.0.26 |
1.7 | 停止支持 | 1.7.20 |
webtrees于 2010 年初从PhpGedView系谱程序中分叉出来[38]。这第二个分支( Genmod [39] [40]已经在 2005 年底进行了分支)得到了大多数不再希望继续在 SourceForge [41] [42]上工作的活跃 PhpGedView 开发人员的支持。导致加密软件出口出现问题[43] [44]。
2011 年,Kiwitrees程序从webtrees中分离出来,此后由开发人员 Nigel Osborne 独立开发。
直到 1.7 版的体系结构和功能仍然与前身 PhpGedView 密切相关。随着2019 年 12 月将完整的应用程序转换为带有webtrees 2.0.0 版的 Laravel 框架[21] ,内部结构变得更加模块化,并且具有更好的可维护性和更容易的扩展方式。webtrees 2.1 版带来了对各种 GEDCOM 方言的支持,现在从 8.0 版开始支持 PHP,这很重要,因为自 2022 年 11 月 28 日以来,PHP 7.4 没有安全更新(除非操作系统提供商继续提供安全更新) . 计划于 2023 年第二季度发布的webtrees 2.2 版将不再支持 PHP 7.4 和 8.0,因此需要 PHP 8.1 或 8.2。