Page MenuHomePhabricator

Design data input types
Closed, ResolvedPublic


Design ticket for the following data types:

Data typeTop-level value statusQualifier value statusNotes
URL T231994🔲🔲string plus validation
Monolingual text T231996🔲🔲string with a language added
External identifier T231995🔲🔲WD does parsing, not sure we will yet (API dependent)
Quantity T231981🔲☑️number and optional units (per WD)
Time🔲 T231979🔲 T227112date and time, most likely without precision or a calendar
Geo-coordinate🔲 T231977☑️ T224060Qualifier needs some UI polish

Key: ☑️ =already in production; 🔲=needed
Parent engineering ticket: T233036




Event Timeline

Here's a screenshot of the datatypes that we'll be able to start supporting once this patch gets merged.

Screen Shot 2019-10-20 at 5.11.01 PM.png (1×1 px, 154 KB)

In addition to the wikibase-item type ("Depicts"), I have string, quantity, and url datatypes now working. URL and String types use the new StringInputWidget, while quantity types use the QuantityInputWidget. Both of these new widgets could benefit from some light touches of design, I think. In particular, I think that some sort of button that says "add value" to the right of the input field for string and quantity inputs would be helpful. Currently the only way a user can actually input a value (after typing something into the field) is to hit the "enter" key on the keyboard.

Here's an example:

  1. User inputs a Quantity value (either by typing or by clicking the plus/minus buttons):
    Screen Shot 2019-10-20 at 5.07.23 PM.png (280×1 px, 20 KB)
  2. Hitting "enter" puts the panel into edit mode, and allows user to add qualifiers:
    Screen Shot 2019-10-20 at 5.07.33 PM.png (520×1 px, 49 KB)
  3. Clicking the "publish" button works as normal, and puts the panel back into read mode:
    Screen Shot 2019-10-20 at 5.21.44 PM.png (376×1 px, 30 KB)

Other properties (coordinates, time, etc) will need a somewhat different treatment. String and Quantity are the most basic types so this is probably where we should start. Fortunately, users won't be able to add properties with non-item datatypes until we explicitly whitelist the type in question, so we can roll out support one at a time as we come up with new UI elements.

Let me know how you'd like to handle these and I can start updating the appropriate widgets for a better UX.

PDrouin-WMF renamed this task from [stub] Data types: design ticket to Data types: design ticket.Nov 14 2019, 8:50 PM
PDrouin-WMF updated the task description. (Show Details)
PDrouin-WMF renamed this task from Data types: design ticket to Design data input types.Nov 15 2019, 4:26 PM

(Adding Structured-Data-Backlog project tag as SDC Design / Structured-Data-Design project tags have been archived, and as tasks need to have an active project tag associated so they can be found on a project workboard. Not sure whether to also add Design.)

Ramsey-WMF claimed this task.
Ramsey-WMF added a subscriber: Ramsey-WMF.

This is pretty much done and on production (except for the final bit of coordinates, which will be up soon)