Hi everyone,

I am the maintainer of the DBpedia mapper bot [1].
Currently, I'm trying to add claims to property pages.
There seems to be no implementation in pywikibot to add a claim to a property page.
For an 'ItemPage' [2], I proceed as per the following (dummy) example:

site = pywikibot.Site("wikidata", "wikidata")
repo = site.data_repository()
item = pywikibot.ItemPage(repo, item_id)
claim = pywikibot.Claim(repo, 'P1709')
claim.setTarget('http://dbpedia.org/ontology/Espresso')
item.addClaim(claim)

As property pages should be instances of 'PropertyPage' [3], I would expect an 'addClaim' method implemented there, but that's not the case. I tried with the 'DataSite.addClaim' method [4] (used by ItemPage [5] BTW), but it cries at [6] since the PropertyPage object has no 'claims' attribute.

The edit from the Wikidata Web UI is indeed possible, so my question is:
how can I add a claim to a property page with pywikibot?
Thanks for your time, cheers!

[1] https://www.wikidata.org/wiki/Wikidata:Requests_for_permissions/Bot/DBpedia-mapper-bot [2] http://pywikibot.readthedocs.org/en/latest/pywikibot/#pywikibot.__init__.ItemPage [3] http://pywikibot.readthedocs.org/en/latest/pywikibot/#pywikibot.__init__.PropertyPage [4] http://pywikibot.readthedocs.org/en/latest/pywikibot/#pywikibot.site.DataSite [5] https://github.com/wikimedia/pywikibot-core/blob/master/pywikibot/page.py#L3801 [6] https://github.com/wikimedia/pywikibot-core/blob/master/pywikibot/site.py#L5974
--
Marco Fossati
http://about.me/marco.fossati
Twitter: @hjfocs
Skype: hell_j

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

Reply via email to