This is in my opinion an upstream issue for MediaWiki proper. I do not think that templates and images from Commons are that different. Take this image for example:
< https://en.wikipedia.org/wiki/File:Treaty_of_Accession_2011_Ratification_Map...
It always reflects the current state of ratification.
Take the templates that display the conservation status of species in Wikipedia. It encodes a whole lot of knowledge about different preservation status systems, and if they change, this is also not preserved anywhere in the history.
https://en.wikipedia.org/wiki/Wikipedia:Conservation_status
I agree that this is an issue. But our solution is consistent with the way it is done in other parts of Wikipedia, and a solution should not be partially addressing Wikidata but Wikipedia as a whole.
One way would be to great HTML dumps of Wikipedia at regular intervals, as, e.g., the Internet Archive does it.
A much more thorough discussion of this issue can be found here in a RENDER deliverable I was co-authoring in 2010:
http://render-project.eu/wp-content/uploads/2010/05/D1.1.2.pdf
Cheers, Denny
2013/4/4 Gregor Hagedorn g.m.hagedorn@gmail.com
when templates (or, in the case of wikidata, properties) get deleted or
renamed.
Nobody has come up with a good solution yet.
I think we did discuss a simple, working solution: Saving the value together with the Wikipedia page.
The major argument against that was: it is a waste of storage to create a new Wikipedia page (perhaps daily) when property values included in a page are changed in Wikidata. I personally value trust and documentation of change much higher than disk storage, but even then, there are ways to balance this. So perhaps a modified proposal that matches the current development stage:
If an editor saves a page with {{#property:population}} the parser looks up the current value and changes this to: {{#property:population|current value=2348732}} and stores this wikitext version in the Wikipedia. The same would apply to updating, saving {{#property:population|current value=2348732}} may result in {{#property:population|current value=2348700}} being saved.
This would mean no additional "waste" of storage for articles that are regularly changed. For those that are not, one could imagine a bot-based monthly update check to make past knowledge transparent.
I realize that this would require a pattern, where the Wikidata-derived values would remain editable on the topic/article pages, i.e. the property function would have to be inserted in the template call, rather than in the template definition. Those wikidata properties automatically called inside templates with a dynamic item decided by the current template call would not be preserved. However, both editing patterns would be available and it would be up to the community of each Wikipedia to choose the preferred one.
(As I said previously: although similar to the issue of commons images and templates, the issue at stake for Wikidata is different. Because of the problems in preserving a transparent editing history, updates to commons images are generally restricted to truly minor improvements (contrast, cropping, better resolution, etc.). I am not aware of cases, where commons images regularly are replaced with updated content that is different in substance and thus automatically changes all Wikipedia pages, representing different knowledge. I don't want to exclude this, but even for changing company logos the usual solution is to create a new name, preserving the old logo. Similarly, templates may fail to work in old versions (big problem!), but I am not aware that a template would render out-of-time information when viewing a past revision. Thus, the problem of Wikidata with respect to endangering the trust basis of Wikipedia, the version system, is related, but different).
Gregor
Wikidata-l mailing list Wikidata-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikidata-l