Person Name
Recommendation, 2007 April 15
Editors:
Kim Bartkus
Paul Kiel
Mark Marsden
Authors:
Members of the Cross-Process Object work group
Contributors:
Members of the Cross-Process Object work group
Copyright © 2007 HR-XML Consortium, Inc.
Abstract
This document provides all necessary documentation for PersonName, including XML Schema, definitions, and examples.
Table of Contents
1.2 Relationship to Business Processes
2.1 Schema Elements and Data Types Explained
4 Implementation Considerations
6 Appendix A - Schema Revision History
7 Appendix B – Related Documents
8 Appendix C – Schema Examples
8.1 Example 1: Restriction – Design requires a Legal Name only:
8.2 Example 2 – Using PersonNameType vs PersonName element
Create a schema design for a person’s name that is flexible enough to be a global standard, which may be used within other HR-XML Consortium schemas.
Almost all HR Business processes pass information regarding individuals, the most common data being the person’s name. Names have many components, and these components may vary by country or ethnicity - a Latin American name is very different from a Chinese name. Names may vary by purpose as well. For example, a resume for a performer may contain both a professional name and a legal name. Many business processes today either treat names as a monolithic string, or force names into first/middle/last components. This PersonName schema attempts to represent names for a broad array of cultures and purposes so that business processes can pass names reliably and completely, and in a format that can be efficiently processed.
Define the Name structure for use in other schemas defined by the HR-XML Consortium.
Address the legal format for a name.
PersonName is an expression of a Person’s Name in XML Schema syntax.
Although Effective Dating has been addressed in the DateTime Data Types and Effective Dating documents, this document does not discuss any effective dating issues, due to backwards compatibility requirements for PersonName.
While it is important to understand how systems store a person’s name and how the different elements of a name are concatenated to form a full name, this proposal does not recommend nor imply how a name should be stored in a database.
Sorting formats for Name are not within the scope of this project.
Must be able to handle various name formats without a lot of overhead.
Syntax must be self-documenting.
Must take cultural context into account. Cultural context determines how the various parts of the name are put together to form the whole name.
Must be able to handle multiple purposes or contexts of the name (i.e. Employee, Supervisor, Dependant, Beneficiary, etc).
|
Elements and Attributes [Global types listed alphabetically in following table.] |
ContentModel* |
Definition |
|
/ |
- PersonNameType - (1/1) |
The name of a person. |
|
/ PersonName/ |
- xsd:string - S (0/1) |
Contains, in one string, a fully
formatted name with all of its pieces in their proper place. |
|
/ PersonName/ |
- xsd:string - S (0/1) |
Used for legal documentation or other legal purposes. Contains, in one string, a fully formatted name with all of its pieces in their proper place. This includes all of the necessary punctuation. Extension to represent the worker's name. |
|
/ PersonName/ |
- xsd:string - S (0/*) |
Contains the given or chosen name. Also known as a person's first name. If multiple givenNames are used, the order is implied. |
|
/ PersonName/ |
- xsd:string - S (0/1) |
Contains the chosen name by which the person prefers to be addressed. Note: This name may be a name other than a given name, such as a nickname. |
|
/ PersonName/ |
- xsd:string - S (0/1) |
Contains a person's middle name or initial. |
|
/ PersonName/ |
xsd:extension base: xsd:string |
Contains the non-chosen or inherited name. Also known as a person's last name in the Western context. The order is implied by the order of appearance of the FamilyName elements in the XML document. |
|
/ PersonName/ FamilyName/ |
xsd:restriction base: xsd:string [Enumerations]: true, false, undefined |
Defines the order when multiple
family names are used. |
|
/ PersonName/ FamilyName/ |
- xsd:string - |
The aristocratic or other prefix
for FamilyName. |
|
/ PersonName/ |
xsd:extension base: xsd:string |
Contains the remaining parts of the PersonName as defined by the type attribute. |
|
/ PersonName/ Affix/ |
xsd:restriction base: xsd:string [Enumerations]: aristocraticTitle, formOfAddress, generation, qualification |
Defines the context for the
affix. |
|
/ PersonName/ |
script - xsd:string
- |
The same information as presented
in the base elements, but represented in a different script. |
|
/ PersonName/ AlternateScript/ |
- xsd:string - |
A code identifying a character script
used in the associated elements. A script is a set of graphic characters used
for the written form of one or more languages. A script, as opposed to an
arbitrary subset of characters, is defined in distinction to other scripts
where readers of one script may be unable to read the individual character
glyphs of another script. |
|
/ PersonName/ AlternateScript/ |
- xsd:string - S (0/1) |
Contains, in one string, a fully
formatted name with all of its pieces in their proper place. |
|
/ PersonName/ AlternateScript/ |
- xsd:string - S (0/1) |
Used for legal documentation or other legal purposes. Contains, in one string, a fully formatted name with all of its pieces in their proper place. This includes all of the necessary punctuation. Extension to represent the worker's name. |
|
/ PersonName/ AlternateScript/ |
- xsd:string - S (0/*) |
Contains the given or chosen name. Also known as a person's first name. If multiple givenNames are used, the order is implied. |
|
/ PersonName/ AlternateScript/ |
- xsd:string - S (0/1) |
Contains the chosen name by which the person prefers to be addressed. Note: This name may be a name other than a given name, such as a nickname. |
|
/ PersonName/ AlternateScript/ |
- xsd:string - S (0/1) |
Contains a person's middle name or initial. |
|
/ PersonName/ AlternateScript/ |
xsd:extension base: xsd:string |
Contains the non-chosen or inherited name. Also known as a person's last name in the Western context. The order is implied by the order of appearance of the FamilyName elements in the XML document. |
|
/ PersonName/ AlternateScript/
FamilyName/ |
xsd:restriction base: xsd:string [Enumerations]: true, false, undefined |
Defines the order when multiple
family names are used. |
|
/ PersonName/ AlternateScript/
FamilyName/ |
- xsd:string - |
The aristocratic or other prefix
for FamilyName. |
|
/ PersonName/ AlternateScript/ |
xsd:extension base: xsd:string |
Contains the remaining parts of the PersonName as defined by the type attribute. |
|
/ PersonName/ AlternateScript/
Affix/ |
xsd:restriction base: xsd:string [Enumerations]: aristocraticTitle, formOfAddress, generation, qualification |
Defines the context for the
affix. |
The following table lists the methods that various cultures may use for representing a person's name. It is intended to make the implementer aware of how diverse a person's name can be. This table should serve as a guide and not the final word on how a culture represents a person's name.
|
Country |
Examples |
|
English (AngloAmerican)
|
The first and last name may be combined into one name or parsed into given and family name. The following two examples will display ‘John Smith’.
<PersonName> <GivenName>John</GivenName> <FamilyName>Smith</FamilyName> </PersonName>
<PersonName> <FormattedName>John Smith</FormattedName> </PersonName> Military titles may be described with the Affix type ‘formOfAddress’. e.g. Major John Smith <PersonName> <GivenName>John</GivenName> <FamilyName>Smith</FamilyName> <Affix type="formOfAddress">Major</Affix> </PersonName> Mrs. Jane H. Doe <PersonName> <GivenName>Jane</GivenName> <MiddleName>H.</MiddleName> <FamilyName>Doe</FamilyName> <Affix type="formOfAddress">Mrs.</Affix> </PersonName>
|
|
French |
The abbreviation is used before the proper name or title of the person. If unsure a woman is married, use the married form.
· M. Paul Martin <PersonName> <GivenName>Paul</GivenName> <FamilyName>Martin</FamilyName> <Affix type="formOfAddress">M.</Affix> </PersonName>
|
|
Dutch |
When a family name contains a prefix, it may be transmitted in the ‘prefix’ attribute. Mevr. Maria de Wit <PersonName> <GivenName>Maria</GivenName> <FamilyName prefix="de">Wit</FamilyName> <Affix type="formOfAddress">Mevr.</Affix> </PersonName>
|
|
Korean |
Kim, Chul-soo <PersonName> <GivenName>Chul-soo</GivenName> <FamilyName>Kim</FamilyName> </PersonName>
The name represents 3 Korean characters. „Kim“ is the last name, and „Chul-Soo“ is the first name. In Korea, the last name always comes first. The State department recommends using a hyphen between the two Korean characters of any Korean first name as shown in the exemplary name above. Another rule to keep in mind is the second Korean character of any Korean first name starts with a small character as a small ‚s’ is used in „Chul-soo“. |
|
Mexico |
Sr. Fernando Martínez Urrutia <PersonName> <GivenName>Fernando</GivenName> <FamilyName> Martinez Urrutia </FamilyName> <Affix type="formOfAddress">Sr.</Affix> </PersonName>
OR <PersonName> <GivenName>Fernando</GivenName> <FamilyName primary="true">Martinez</FamilyName> <FamilyName primary="false">Urrutia</FamilyName> <Affix type="formOfAddress">Sr.</Affix> </PersonName> The following abbreviations are used before the proper name or title of the person:
*Males always keep two family names; the father’s family name first and the mother’s maiden name last.
**Single women use the father’s family name first and the mother’s maiden name last.
***Married woman keep the father’s family name and add the husband’s family name, followed by the preposition de. If the individual holds one of the following degrees they should be acknowledged as it follows:
|
|
Portuguese |
The following abbreviations are used before the proper name or title of the person:
<PersonName > <GivenName>Maria</GivenName> <FamilyName primary="true">Garcia</FamilyName> <FamilyName primary="false" prefix="de">Silva</FamilyName> <Affix type="formOfAddress">Srta.</Affix> </PersonName>
|
|
Japanese
|
In Japan, three types of characters are used for names: Kanji, Katakana and Hiragana. Japanese Kanji characters can be read in multiple ways depending on how someone would choose to pronounce the names. In this respect, Katakana is normally used to show how the names would be read. Foreign names are written in Roman letters or Katakana. Yamada Taro <PersonName> <FormattedName>Taro Yamada</FormattedName> <GivenName>Taro</GivenName> <FamilyName>Yamada</FamilyName> <AlternateScript script="Kana"> <FormattedName>ヤマダ タロウ</FormattedName> <GivenName>タロウ</GivenName> <FamilyName>ヤマダ</FamilyName> </AlternateScript> <AlternateScript script="Hira"> <FormattedName>やまだ たろう</FormattedName> <GivenName>たろう</GivenName> <FamilyName>やまだ</FamilyName> </AlternateScript> <AlternateScript script="Hani"> <FormattedName>山田 太郎</FormattedName> <GivenName>太郎</GivenName> <FamilyName>山田</FamilyName> </AlternateScript> <AlternateScript script="Romaji"> <FormattedName>Yamada Taro</FormattedName> <GivenName>Taro</GivenName> <FamilyName>Yamada</FamilyName> </AlternateScript> </PersonName>
The following example might be used by a staffing agency: Yamada Hanako
<PersonName> <FormattedName>Hanako Yamada</FormattedName> <GivenName>Hanako</GivenName> <FamilyName>Yamada</FamilyName> <AlternateScript script |