Page MenuHomePhabricator

[RFC] Magic Infobox implementation
Closed, DeclinedPublic


Magic infoboxes are defined using a new mechanism (which is distinct from templates or modules) and they are not a direct part of the page content. The primary goals are: Make them fully machine readable and writable, separate their content from the layout and they should be aware of Wikibase. On top of all that the data, the data schema and the layout is fully user defined (but each part is separated).

Rough implementation sketch (as discussed during the Wikimania) (WIP):


  • Data source which delivers DataValue objects (given an Item and a Property ID)

New Extension:

  • Takes a schema from a page (similar to Template(Meta)Data, but more advanced)
    • logical field name -> data type and/or wikibase property (plus documentation, etc)
    • Definitions for reoccuring set of fields (eg. multiple office held)
  • Puts together data according to that schema
  • Loads data from a subpage/ separate namespace/ associated content object
  • Enriches that data with data from WikibaseClient, according to the given schema
  • Provides the data (consisting of DataValue objects) to the restricted Capiunto layout mode (for desktop), other means of visualizing the data might be used for other use cases (API?, Mobile?, …).
  • Default Layout is defined in the schema?

Capiunto "Layout mode":

  • Very restricted Lua environment where people can only access the data to use for the infobox and a Capiunto object. Returns html or prefereably an mw.html object. (Does that HTML need to be safe for use in Wikitext?)
    • NOTE: this means that Capiunto needs to use HTML formatters here, instead of wikitext formatters.
  • Consumes DataValue objects
  • Must not alter the data in any way, it's just for visualization

*See also:* T114454: [RFC] Visual Templates: Authoring templates with Visual Editor

Event Timeline

hoo claimed this task.
hoo raised the priority of this task from to Needs Triage.
hoo updated the task description. (Show Details)
hoo added subscribers: hoo, daniel, cscott and 4 others.
hoo set Security to None.

Congratulations! This is one of the 52 proposals that made it through the first deadline of the Wikimedia-Developer-Summit-2016 selection process. Please pay attention to the next one: > By 6 Nov 2015, all Summit proposals must have active discussions and a Summit plan documented in the description. Proposals not reaching this critical mass can continue at their own path out of the Summit.

Can we also add a requirement that if the imported data is modified for display purposes, the original data used would still be available (e.g. as HTML property of some tag, or as hidden text, or any other identifiable way) for machine readability, ease of import and round-trip?

Can you define your specific goals for the Summit in the description, please?

Also, see this related comment:

This should be discussed together with T114251: [RFC] Magic Infobox implementation

Does this mean that we should remove either this task or the T114251 from the list of Summit proposals, in order to focus the online and Summit discussion in one task?

hoo removed hoo as the assignee of this task.Oct 28 2015, 1:11 PM

Updated whiteboard snapshot:

20151028_112707.jpg (1×2 px, 2 MB)
(click the picture to see it in the correct orientation)

This was discussed today in Berlin with Addshore, Lydia, Dan, Stas, and James F. There were no fundamental objections to the overall design, and general agreement that this would do what we need.

Use cases for API access to pre-processed structured data where a bit unclear (mobile apps? 3rd party websites?)

The details of how locally stored structured data would be used are a bit unclear.

James raised some concerns regarding the migration path from template parameter values in wikitext to locally stored structured data, in particular when templates are used inside parameter values.

@hoo: Would you update this ticket with the results of the discussion at the DevSummit? Do you think it would be useful to have a public IRC meeting about this soon?

Wikimedia Developer Summit 2016 ended two weeks ago. This task is still open. If the session in this task took place, please make sure 1) that the session Etherpad notes are linked from this task, 2) that followup tasks for any actions identified have been created and linked from this task, 3) to change the status of this task to "resolved". If this session did not take place, change the task status to "declined". If this task itself has become a well-defined action which is not finished yet, drag and drop this task into the "Work continues after Summit" column on the project workboard. Thank you for your help!

RobLa-WMF changed the task status from Open to Stalled.Mar 2 2016, 10:56 PM
RobLa-WMF subscribed.

Per E146

RobLa-WMF mentioned this in Unknown Object (Event).May 4 2016, 7:33 PM

@hoo I believe this can be closed. Correct?

As this never really got anywhere, let's abandon this (at least for the foreseeable future).