On Wed, 29 Jul 2020 at 11:11, Luca Martinelli <martinelliluca@gmail.com> wrote:
On Tue, 28 Jul 2020, 23:27 Denny Vrandečić, <dvrandecic@wikimedia.org> wrote:
Hello all,

one early question we are currently debating is how to store Wikitext documentation alongside with the structured data?

So, the label of the page and aliases and the actual content object are stored as JSON, but then we would like to have the documentation be more or less normal wikitext.
(...)
The text "en:Multiplication is a mathematical operation that...", that's just wikitext. And it is different per language.
(...)

So, if I get it right, that wikitext is basically the equivalent of a Wikidata item description.

Not quite. The current design calls for there to be three different forms of human-readable text, with different availability depending on the type of ZObject:

All ZObjects will have a "label", which will be a set of short textual identifiers, up to one per supported language, shown as the "title" of the page and used in most places aimed at humans using them.

On https://meta.wikimedia.org/wiki/File:Wikilambda_early_mockup_multiply_function.png this is "multiply" or "multiplizieren" or whatever depending on your view language, as shown at the top of the content, ahead of the ZID (Z2303 in the example). 

In combination with the 'type' of the ZObject, this is enforced to be unique in a given language (so you can have a 'multiply' function defined that works on two integers and responds with an integer, and another that works on hypercomplex numbers (or matrices or Game of Life implementations or…), but you can't have two that work on the exact same input/output types.

 (Note: The current design doesn't have alias support, which Wikidata does.)


ZObjects which are function definitions (ZFunctions), and so may need a lot of documentation and information sharing for people to know how to use it, to expand it, to add new tests, or to add new implementations, will have a fully-featured wikitext description blob/set of blobs, for detailed documentation. These will be the main human starting points and work co-ordination places, so need a lot of the things our communities have come to expect – links, templates, categories, etc..

On https://meta.wikimedia.org/wiki/File:Wikilambda_early_mockup_multiply_function.png this is "en:Multiplication is a mathematical…", as shown below the calculated type.


ZObjects which don't have wikitext description instead have a short, non-wikitext description field, again at a maximum of one per supported language, like how Wikidata works.

On https://meta.wikimedia.org/wiki/File:Wikilambda_early_mockup_multiply_recursive_addition.png this is "Calculates the sum of multiplicand …", as shown below the calculated type.

 
Allow me to play dumb ("play"... heh), and ask: do we really need that description to be wikitext or do we want it to be similar to a Wikidata item description (i.e. similar to a caption)?

I don't know. Maybe everything could just be done through talk pages?

J.
--
James D. Forrester (he/him or they/themself)