Object Names and Labels

Last modified 05 Mar 2021 18:03 +01:00

There may be some confusion how to use object name, label, singular and plural forms.

  • name is an identifier. It has to be unique. It may have a human-friendly form, but it may not. Primary responsibility of name is to identify the object.

  • display/label is a human-friendly label of the object. It describes the object itself, not its members. Therefore if it is a collection or archetype, it is the name of the collection or archetype.

  • display/singularLabel (collections only) is a label used for a single member of a collection. It can be used only for objects that can act as collections and only if they act as collections. This label can be used to refer to each individual member of the collection.

  • display/pluralLabel (collections only) is a label used for members of a collection when mentioned collectively. It can be used only for objects that can act as collections and only if they act as collections.

Why do we need plural/singular forms? Because label is not ambiguous. Roles and archetypes will typically have label in a singular form ("Admin", "Employee"). While object collections will typically be labeled in plural form ("All tasks", "Active users"). Orgs can be either way ("Project X", "Retired employees"). Therefore we do not have a clear way how to display labels for collections. Therefore explicit singular/plural labels make it clear.

Capitalization Rules

TODO: Generaly use sentence case, i.e. capitalize only the first letter

Examples

Property UserType RoleType ArchetypeType ObjectCollectionType OrgType View View

name

jdoe

admin

Employee

active users

P007

display/label

John Doe
but use of fullName is the usual practice

Admin

Employee
or
Employee archetype
but the "archetype" suffix is not recommended

Active users

Project X

My cases

All users

display/singularLabel

N/A
this cannot be collection

Admin
but usually not specified

Employee

Active user(not yet in schema)

Entity involved in Project X
but use of this is not recommended,
automatic label should be better,
e.g. "Member of Project X", "Manager of Project X" (derived from relation)

My case

User

display/pluralLabel

N/A
this cannot be collection

Admins

Employees

`Active users
`(not yet in schema)

Entities involved in Project X
but use of this is not recommended,
automatic label should be better,
e.g. "Members of Project X", "Managers of Project X" (derived from relation)

My cases

All users

archetypePolicy/
display/label

Employee
this specifies name of the type as users should see it

archetypePolicy/
display/singularLabel

Employee

archetypePolicy/
display/singularLabel

Employees