Contacts can be organized into arbitrary groups. These groups can be recursively nested for convenience. Each contact within a group must have a unique name, but other attributes can be repeated.
The parent contact group (if any).
A unique human-friendly name.
A unique URL-friendly identifier. (This value can be used for filtering.)