relaying yet another conversation between me an TMg on
<https://meta.wikimedia.org/wiki/Talk:Wikidata/Notes/Inclusion_syntax>:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~+

        I'm very sorry but I think this is way to complicated. I'm a software
developer and I think I should be able to understand all this in seconds when I
look at it. I think you should create a toolkit that is very tiny and very easy
to understand. Extremely powerful tools like in your example with all the
complicated parameters (even comma-separated, which I think is horrible) are way
to restricted in the end and can be used only in very, very few cases. Here is
how your example should work in my opinion:

|-
| Population
| {{#formatnum: {{{data.population}}} }}
| {{#time: {{{data.population.timestamp}}} }}
| {{{data.population.source}}}
| {{{data.population.indicators}}}
| [{{{data.population.edit}}} edit]

        This belongs in a template. In an article we will never write
{{#data-value:data.population|show=label,value,timestamp,source,indicators,edit|form=tr}}.
We will write {{Population table row}} instead. As said before, I don't
understand why we should use HTML table syntax in a wiki? There is a table
syntax. We know how it works. Don't force us to use an other syntax, please. We
have tools to format numbers, timestamps and to create references and links. We
have powerfull tools to create templates. We are able to use styles and classes
and HTML. We don't need a new syntax to do thinks we already can do. This is not
only confusing, it is highly counterproductive. Don't work against the template
syntax, work with it. data.population should output the unformatted population.
We have tools to format numbers. data.population.timestamp should output an
unformatted timestamp. We have tools to format timestamps. data.population.edit
should output an URL. We have tools to create links. data.population.source
should output <ref> tags. --TMg 09:38, 23 May 2012 (UTC)

            Ok, so you want to handle all parts of each value by hand. Fine. It
is possible for most things, as you said. But it's very tricky to do in other
cases, and very redundant to have to do it over and over. Here's a few things
that I can't think of a good way to do using templates:

            * Unit conversion. Even if you have templates to do this, you would
need a plain number as input. but data.population may not be a single value, but
(e.g. in case of a dispute) a list or range of values.

            * indicators are generally complex html

            * the edit link would normally contain javascript that invokes the
on-site editing interface. Only as a fallback would it actually link somewhere.
And it should not be formatted as an external link, nor should it end up in the
externallinks table.

            * data.population.source is actually a list of sources, each of
which needs a template for rendering. You are already generating complex html at
this point.

            * in the case of #data-values (plural), each value (actually, each
statement, see the data model spec) for a property would be listed separately.
You would need a foreach loop to do this in a template. With Lua, this will be
possible in the future, but right now it isn't.

            * While i agree that it's not very nice to be outputting entire
table rows from a parser function, I think it would very hard to cover the above
with a simpler approach. If you can think of a cleaner, nicer, yet workable way,
let me know.
            -- Duesentrieb (talk) 10:19, 23 May 2012 (UTC)


-- 
Daniel Kinzler, Softwarearchitekt

Wikimedia Deutschland e.V. | Eisenacher Straße 2 | 10777 Berlin
http://wikimedia.de  | Tel. (030) 219 158 260

Wikimedia Deutschland - Gesellschaft zur Förderung Freien Wissens e.V.
Eingetragen im Vereinsregister des Amtsgerichts Berlin-Charlottenburg
unter der Nummer 23855 B. Als gemeinnützig anerkannt durch das Finanzamt
für Körperschaften I Berlin, Steuernummer 27/681/51985.

_______________________________________________
Wikidata-l mailing list
Wikidata-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikidata-l

Reply via email to