We could use this, but I don't see a big advantage
over raw microdata
if a) we'll be outputting as microdata at first anyway, and b) it's
only expected to be used for a very few things like licenses,
presumably hidden away behind templates. If it is done, though, it
should be with curly braces for sanity's sake: {{#prop:author|Bob
Smith}} or whatnot.
Who's to say it would only be used for licenses? I understand that this is
the immediate want for microdata (or RDFa), but that want could expand at
any time, and could expand greatly. Also, Wikimedia may only want to use it
for licensing, but third party sites may choose to use it for far more than
that.
Why shouldn't we use a technology neutral input format? What happens if
microdata is replaced by something better/easier/simpler? I also don't
necessarily think we should lock users into a certain technology. If we
choose a nuetral input format, users can decide which output they wish to
use (via extensions).
This sort of thing might be good syntax for a separate
RDF stream, but
I think we can keep that simpler. Instead of having {{Infobox
foo|name=Bob Smith}} contain, somewhere, {{#prop:name|{{{name}}}}},
creating the triple (page name, 'name', 'Bob Smith') for the page, why
not just leave out the #prop and have *every* template parameter
create a triple? So {{foo|bar=baz|quuz=quuuz}} would create the
triples (page name, 'foo|bar', 'baz'), (page name, 'foo|quuz',
'quuuz') with no extra markup needed. The triples could then be
transformed into a more useful form by the consumer, using a language
like OWL. This is something like how
dbpedia.org works right now,
AFAICT.
It is nice to be able to define an ontology separate from template
parameters. In this scheme, every ontology that shares properties has to
define the same template parameters. I think there are likely a lot of
Wikipedia templates that share common properties, but do not use common
template parameters. I for sure know my local wiki has templates with
different parameters that use the same properties.
This also means that templates would create dependencies on one another,
since parameters need to stay the same to keep the same properties; this
would be hell on those who maintain templates.
Respectfully,
Ryan Lane