S2.05.3Functional person-name fields设计

中间名、父名与后缀的处理

别名: given2 · patronymic · generation suffix

概念解释

功能性姓名字段(functional person-name fields)按一个成分在显示与省略中的作用建模,而不是把 given 与 surname 之间的所有内容都叫“中间名”,或把姓名末尾的所有内容都塞进“后缀”。父名、附加 given name、第二 surname、代际标记、学位资历和敬称承担不同功能;错误归类会使简称、排序、称呼和证件输出丢字或错位。

机制

Unicode LDML Person Names 使用 given2 表示可在某些格式中省略的附加 given name、中间名或父名,surname2 表示需要单独处理的第二 surname,generation 表示 Jr.III 一类代际标记,credentials 表示资历,title 表示敬称或职衔。given2 是格式化角色,不宣称这些成分在不同命名体系中语义相同;父名在部分斯拉夫姓名中可映射到此字段,但不能因此称作西式 middle name。pattern 决定这些字段何时出现以及逗号、空格如何随缺失字段消除。

边界

LDML PersonName 是格式化接口,不是全球身份登记本体。业务若需记录谱系、婚前姓名、氏族、宗教名或各司法辖区的法定组成,必须保留更丰富的源数据,再按用途映射给格式器。suffix 这种单桶字段会混合 generation 与 credentials;middle name 标签也会诱导用户错误填写。任何自动映射都应允许未知、不适用、多值和用户纠正,不能仅从位置判断语义。

怎么落地

  • 保留用户或权威来源提供的完整姓名与原始分段;为格式化另建 givengiven2surnamesurname2generationcredentialstitle 等可选映射。
  • 按下游用途询问字段,并用“附加名字/父名”“第二姓氏”“代际标记”“资历”这类可本地化标签;不要求每个人填写 middle name
  • 让长正式、短正式、称呼和排序输出分别调用 locale pattern;字段为空时由格式器处理标点,不用条件字符串拼接。
  • 以多词 given2、父名、双 surname、Jr.、罗马数字、多个 credentials 和完全没有附加成分的样本验证往返导入、编辑与导出不丢失角色。

延伸

  • 同组S2.05.1 姓与名的顺序与数量不固定 · S2.05.2 拆分姓名字段会排除部分用户 · S2.05.4 称谓与敬语的地区差异 · S2.05.5 字符集限制会拒绝合法姓名
  • 相邻S2.08.2 中文可按拼音、笔画或部首排序 · S1.05 翻译上下文与字符串复用
  • 站内检索given2 · patronymic · generation qualifier

同组卡片

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/handbook/S2.05.3