1、PFIF数据模型简介:
概述
PFIF协议中有以下两种类型的记录。 PERSON记录是为了储存标识某个人的个人信息, NOTE 记录是为了储存某个人现在状态的信息,每一个 NOTE 记录属于一个特定的 PERSON, 而一个PERSON 记录可以拥有任意数目的关联 NOTE 记录。
PERSON 记录可以是被寻找失踪人员的人创建,也可以被拥有失踪人员信息的人创建。特定人员的 PERSON 记录是所有parties聚合的重点; 而特定人员 NOTE 记录则储存着有关特定人员不断增加的分享信息。
一个 PERSON 记录只有在其信息不正确的情况下才应该被更新。如果一个特定的 PERSON 的状态或位置被改变, 这应该由加入一个新的关于该PERSON的NOTE 记录来反映。
PERSON记录
一个 PERSON 记录包含了25个字段。 对于一个特定人员,可能有多个 PERSON 记录。实际上,任意从不同来源导入数据的应用,都很有可能获得同一人员的多份 PERSON 记录。 应用对如何关联这些记录有决定权。推荐的做法是保留所有记录的副本,分开地跟踪哪些记录对应同一个人。
PERSON记录中关于记录本身的元数据 (9 个字段),表示一个失踪人员的信息(16个字段)
NOTE记录
每一个 NOTE 记录只属于一个特定的 PERSON 记录。 一个特定的PERSON 记录可以和多个NOTE 记录相关联。NOTE记录被用来提供失踪人员的更新信息。 每一个NOTE记录有一个时间戳以及该记录的作者信息。不同的应用可以使用时间戳来决定一个给定字段的最新值。
NOTE记录中有关于记录本身的元数据(8个字段)和关于失踪人员的状态信息(7个字段)
2、参考的MYSQL数据库数据字典
EVENT表
表注释: 事件表
字段 | 类型 | 空 | 默认 | 注释 |
event_id | int(11) | 否 |
| 事件ID,主键自增 |
event_name | varchar(50) | 否 |
| 事件名 |
occur_date | datetime | 否 |
| 事件发生的日期 |
description | text | 否 |
| 事件描述 |
photo_url | varchar(100) | 否 |
| 事件图片URL地址 |
PERSON表
表注释: PERSON表
字段 | 类型 | 空 | 默认 | 注释 |
person_record_id | varchar(255) | 否 |
| person记录的唯一标识符 |
entry_date | datetime | 是 | NULL | 录入时间 |
expiry_date | datetime | 是 | NULL | 该记录副本被存储的时间 |
author_name | varchar(50) | 是 | NULL | 录入该记录的作者的全名 |
author_email | varchar(50) | 是 | NULL | 录入该记录的作者的电子邮箱地址 |
author_phone | varchar(50) | 是 | NULL | 录入该记录的作者的电话号码 |
source_name | varchar(50) | 是 | NULL | 该数据原始仓库的名字 |
source_date | datetime | 是 | NULL | 该记录原始副本在其原始仓库被创建的时间 |
source_url | varchar(100) | 是 | NULL | 该记录在其原始仓库的URL地址 |
full_name | varchar(50) | 是 | NULL | 一个找到或失踪人员的全名 |
given_name | varchar(25) | 是 | NULL | 一个找到或失踪人员的GIVEN NAME |
family_name | varchar(25) | 是 | NULL | 一个找到或失踪人员的FAMILY NAME |
alternate_names | varchar(50) | 是 | NULL | 曾用名 |
description | text | 是 | NULL | 描述 |
sex | varchar(10) | 是 | NULL | 性别 |
date_of_birth | date | 是 | NULL | 生日 |
age | varchar(10) | 是 | NULL | 年龄(可以是个范围) |
home_street | varchar(50) | 是 | NULL | 街道名 |
home_neighborhood | varchar(50) | 是 | NULL | 邻居 |
home_city | varchar(50) | 是 | NULL | 城市 |
home_state | varchar(50) | 是 | NULL | 省份 |
home_postal_code | varchar(20) | 是 | NULL | 邮政编号 |
home_country | varchar(50) | 是 | NULL | 国别 |
photo_url | varchar(100) | 是 | NULL | 照片地址 |
profile_urls | varchar(100) | 是 | NULL | 主页地址 |
event_id | int(11) | 是 | NULL | 隶属事件的ID |
NOTE表
表注释: NOTE表
字段 | 类型 | 空 | 默认 | 注释 |
note_record_id | varchar(255) | 否 |
| note记录的唯一标识符 |
person_record_id | varchar(255) | 否 |
| person记录ID |
linked_person_record_id | varchar(255) | 是 | NULL | person记录的ID 或空 |
entry_date | datetime | 是 | NULL | 录入时间 |
author_name | varchar(50) | 是 | NULL | 录入该记录的作者全名 |
author_email | varchar(50) | 是 | NULL | 录入该记录的作者的EMAIL |
author_phone | varchar(50) | 是 | NULL | 录入该记录的作者的电话号码 |
source_date | datetime | 是 | NULL | 该记录原始副本在其原始仓库被创建的时间 |
author_made_contact | tinyint(1) | 是 | NULL | 创建该记录的作者是否已经联系失踪人员 |
status | varchar(50) | 是 | NULL | 失踪人员状态 |
email_of_found_person | varchar(50) | 是 | NULL | 已发现的失踪人员的EMAIL |
phone_of_found_person | varchar(50) | 是 | NULL | 已发现的失踪人员的电话号码 |
last_known_location | varchar(50) | 是 | NULL | 最后一次发现的地理位置 |
text | char(255) | 是 | NULL | 留言,失踪人员近况,状态、地理位置详情等 |
photo_url | varchar(100) | 是 | NULL | 照片地址 |