My interest in wikidata is in using it as another source of information on software versions for my Repology project.

Not that it's turned out to be really useful, since there's not much data on this subject in wikidata, and version information is rather obsolete, but it was interesting to play with, and it's possible to improve wikidata by using repology too.

Some random thoughts on my experience:

  • More integration with Wikipedia is indeed needed. My original idea was to get software data from Wikipedia, however it seems to be much harder to retreive and process. Wikipedia has much more recent data (and regarding software versions, each is stored in a separate template as it is, so it seems to be trivially synced or mapped to Wikidata), but Wikidata is much more usable.
  • Array aggregation in SPARQL would be useful. Since there are multiple items of some types (versions, licenses, packages etc.) per software entity, and I don't need duplicate items in the output and thus I aggregate by software, I have to use GROUP_CONCAT to join multiple items into single value. This is not too convenient and reliable to parse.
  • Version classification could be improved. Basically, I need to filter stable versions only, and here's the list of available version types:
SELECT ?s ?sLabel WHERE {
  ?s wdt:P31 wd:Q28530564 .
  SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
Try it!
So I have to explicitly check if version type is one of "stable version", "release", "maintenance" and "long-term support", however these all are