Hello all,
In this proposal I’d like to explore the vocabulary to use when using the concepts of XClass and XObject in the context of non-technical users.
The main use case is my current design work to improve the usability of the class picker for non-technical users. And I believe that using the class/object vocabulary is too technical.
To be clear, I am not proposing to change anything:
- At the API level
- In UIs meant to be used only by advanced users
This is equivalent to the way we use “page” in the UI and “document” in the code.
Related discussions
- Improve the information presented in the XClass picker
- Improve the listing of XClass in the XClass picker
Current state
App Within Minute (AWM)
- Class is mapped to
structure(e.g., Step 2 - Structure your data) - Object is mapped to
entries(e.g.,Application entries are wiki pages that contain structured data.) - Property is mapped to
field
Note that we also have an AWM revamp discussion and proposal by @amilica introducing a new vocabulary.
- Class is mapped to
data - Object is mapped to
record - Property is mapped to
field, a field has atype
Live Data (LD)
- Class is not explicitly mentioned
- Object is mapped to
entry - Property is mapped to
property
Class Sheet
Directly mention class, object and property.
Object editor
Directly mention class, object and property.
Proposals
I tend to think that “entry” for object and “field” for property are already uniformly used and should stay as is. I’ll only discuss the class vocabulary below
Option 1 - keep using class
Pros:
- Nothing to change
Cons:
- We keep a programming-oriented and technical vocabulary
Option 2 - structure
Pros:
- Already part of AWM vocabulary.
Cons:
- A
structure pickerfeels odds
Option 3 - data type
Pros:
- A
data type pickerseems ok to me
Cons:
- Required to uniformize the UI globally.
cc @tkrieck and @amilica to make sure this does not conflict with Revamping AWM ( App Within Minutes)
Option 4 - database
Pros:
- Matching the vocabulary of Confluence and Notion users might be familiar with
Cons:
- The database word kind convey a notion of containment of the objects. This is not true and not something we want, the locations of the class does not say anything about the location of the objects
Alternative vocabulary with the same cons:
- collection
Questions
Q1 - Do we want to uniformize, or is it ok for some extensions to use their own domain specific vocabulary?
+1, but for instance Live Data is more generic than object/class listing and can use its own vocabulary.
Q2 - Class vocabulary choice
+1 for option 3 (data type)
-1 for option 1, option 2 (structure), and option 4 (database)
Q3 - Use entry/field
+1 to keep using entry/field for object/property
Q4 - Migration
If the agreed upon vocabulary requires a change, how should we proceed?
I’m +1 to create a dedicated task and to change the vocabulary globally all at once, then use the same vocabulary for new UI elements requiring it.