Open main menu

User talk:Ivan A. Krestinin

On this page, old discussions are archived. An overview of all archives can be found at this page's archive index. The current archive is located at User talk:Ivan A. Krestinin/Archive.



That's great we are migrating to property statements! I had already started a module but then let it be because I didn't know how it should look like. Is there anything you would use in your system? I'm asking just because it is obsolete now and I will delete it.

Do you also plan migrating using bot? Matěj Suchánek (talk) 14:28, 30 November 2015 (UTC)

I have no enough LUA experience to understand all features of your module. Migration tool/bot is ready. But one issue blocks this process now. — Ivan A. Krestinin (talk) 15:00, 30 November 2015 (UTC)


Добрый день! Можете ботом добавить на Викиданные все статьи из этой категории? --Чаховіч Уладзіслаў (talk) 12:29, 1 December 2015 (UTC)

  • Приветствую, по категории мне не очень удобно. Запустил бота по всем статьям из be_x_oldwiki, bewiki и ruwiki, которые содержат Q5625611. Надеюсь это покроет категорию. — Ivan A. Krestinin (talk) 20:26, 1 December 2015 (UTC)
Да, можно и так. Раз уж Вы вытягивает всё из шаблонов в статьях, то может и названия из шаблона lang-be-trans вытяните в качестве дополнительных для крупных языковых разделов, которые используют латинский алфавит (en, de, fr, it, es, sv, pl, pt, можно еще lt, lv, et)? Это бы упростило поиск и объединение статьей с категориями на Викискладе, например. --Чаховіч Уладзіслаў (talk) 21:19, 1 December 2015 (UTC)
Не уверен, что это правильно, всё-таки названия на разных языках нередко пишутся по-разному. — Ivan A. Krestinin (talk) 16:30, 4 December 2015 (UTC)
Поэтому я и не предлагаю добавлять эти названия в качестве основных. К сожалению, свойства "транслитерация" в Викиданных нет (либо я не знаю про него).--Чаховіч Уладзіслаў (talk) 21:53, 4 December 2015 (UTC)
Неосновные названия тоже должны быть написаны на определённом языке. Не хочется мне что-то такое делать, по-моему это не слишком правильно. — Ivan A. Krestinin (talk) 22:10, 4 December 2015 (UTC)
Создание элементов кстати бот закончил, плохо что в статьях нет какого-нибудь уникального идентификатора, какого-нибудь аналога кода ОКАТО, ОКТМО или хотя бы почтового индекса, а то можно было бы автоматически объединить элементы. — Ivan A. Krestinin (talk) 19:44, 5 December 2015 (UTC)
Благодарю! Есть список всех-всех населенных пунктов Беларуси (в том числе ликвидированных) с указанием кода Code System for Administrative-territory Division Objects and Settlements (Q6538410), но, к сожалению, он содержит только русские названия и немного устаревшее административное деление, поэтому пока что затруднительно использовать информацию из него для заливки в статьи в bewiki, хотя один участник взялся его адаптировать. Также на сайте Госкартгеоцентра есть странички для каждой административной единицы (и не только) Беларуси (пример - Вауки, искать можно здесь). Пока могу выставить заявку на создание соответствующих свойств. --Чаховіч Уладзіслаў (talk) 10:38, 12 December 2015 (UTC)
Свойства — это хорошо, только если в статьях не указаны эти идентификаторы, то проставить их ботом будет довольно сложно. — Ivan A. Krestinin (talk) 17:53, 12 December 2015 (UTC)

Expansion depth limit exceeded Constraint:UnitsEdit

Your latest edit to {{Constraint:Units}} made it impossible to use {{Q}} for the values for list. It now gives a Expansion depth limit exceeded. See for example Could you check how to fix this? This makes pretty display of units impossible. Mbch331 (talk) 15:56, 1 December 2015 (UTC)

It is strange behavior, I have no idea how to fix this:
  • {{#invoke:Constraints|getCaption|units|123456}} has expansion depth 2.
  • {{Q|123456}} has expansion depth 6.
  • {{#invoke:Constraints|getCaption|units|{{Q|123456}}}} has expansion depth 41.
I do not understand why 2 + 6 = 41. If you do not have any ideas too then please rollback my edit. The edit is not important. — Ivan A. Krestinin (talk) 20:48, 1 December 2015 (UTC)
I have no idea either how it's possible. So I reverted your last edit. But it might be worth to let someone with more knowledge of lua take a look. Mbch331 (talk) 21:16, 1 December 2015 (UTC)

Database reportsEdit

Hi Ivan, just found your Wikidata:Database reports/Identical VIAF ID. This list is a great help. Is there a simular list for GND ID (P227)? If not, can you create one? --Kolja21 (talk) 01:29, 3 December 2015 (UTC)

Awesome. Thanks! --Kolja21 (talk) 17:05, 7 December 2015 (UTC)

When Mohammed do not go to the mountain!Edit

I would like to invite you to sv:WP:WF#Wikidata to responde to questions about KrBots edits to the VIAF-property! I invited Annika64 to come here to talk, but she says she do not want be in such discussions! Fell free to write in English! -- Innocent bystander (talk) 19:31, 3 December 2015 (UTC)


FYI Q319537. Please double check. --- Jura 12:58, 8 December 2015 (UTC)

Constraint TypeEdit

Здравствуйте. Скажите пожалуйста, почему "Constraint:Type" здесь не работает? Danneks (talk) 12:24, 12 December 2015 (UTC)

Constraint is defined to check the value for subclass of (P279) on the item that uses statement describes (P2384). However in the violation cases there is no subclass of (P279). So either the constraint needs to be changes or the items that violate the constraint. Mbch331 (talk) 12:42, 12 December 2015 (UTC)
Thank you. I'm not quite sure which solution is right, but it is easier to change the constraint. Danneks (talk) 12:55, 12 December 2015 (UTC)


Your bot seems to add data without any human verification. Please stop this vandalism... Sumurai8 (talk) 16:23, 12 December 2015 (UTC)

@Sumurai8: The source is stated for the edits. Wikidata works a bit different than Wikipedia. Importing data from Wikipedia's is currently still accepted. As long as the community doesn't say it's not allowed, it's still allowed to import data from Wikipedia. Mbch331 (talk) 16:33, 12 December 2015 (UTC)
Thank you, Mbch331. I can skip dates from future. But most probably this case is single. Vandalism detection problem does not have robust general solution unfortunately. — Ivan A. Krestinin (talk) 17:51, 12 December 2015 (UTC)
I think it's a single issue too, but to be safe it is indeed best to skip future dates for birth and death. Mbch331 (talk) 18:05, 12 December 2015 (UTC)
It would help if you used the latest tested/checked version of wikipedia's that uses that. You imported an unchecked vandalised page edited by an anonymous user. The tested/checked version was correct. In the worst case the tested/checked version is incomplete, but at least a human has read through it. Alternatively, you can possibly log pages where the current version is not the tested/checked version and manually check the content before parsing it and importing the data. Sumurai8 (talk) 18:36, 12 December 2015 (UTC)
Wikipedia:Reviewing (Q11107170)-based approach is looked reasonable and implementable. But unfortunately the most Wikipedias have too bad patrolling rate. The only exception is dewiki as I know. Additional think: popular well-patrolled articles are imported already. My bot is working with low popular articles now. Patrolling rate has additional decrease in this area. — Ivan A. Krestinin (talk) 19:34, 12 December 2015 (UTC)
These kind of errors show up in some reports, not the baddest vandalism we have here. Sjoerd de Bruin (talk) 22:12, 12 December 2015 (UTC)


Have you any idea why this edit was done by KrBot? -- Innocent bystander (talk) 17:48, 13 December 2015 (UTC)

Ok, thanks. That merge was probably wrong, but I am not in the mood to argue about it today. -- Innocent bystander (talk) 08:29, 14 December 2015 (UTC)

Error on marking church as human Q21706793Edit

Hello. Please fix your bot, because of follow issue: --Movses (talk) 09:39, 25 December 2015 (UTC)

Wikidata:Database reports/Constraint violations/P373Edit

It is possible to fix that error? --Jklamo (talk) 22:19, 25 December 2015 (UTC)

  • Fixed, please wait the next reports update. — Ivan A. Krestinin (talk) 09:22, 26 December 2015 (UTC)
    • Thanks! --Jklamo (talk) 12:22, 26 December 2015 (UTC)

Возера и РакаEdit

Здравствуйте, можете "выпотрошить" шаблоны Возера и Рака? --Чаховіч Уладзіслаў (talk) 08:34, 26 December 2015 (UTC)

Qualifier or reference constraintEdit

Currently, there are constraints for value-only, qualifier-only, reference-only constraints. For P1683, a "qualifier or reference"-constraint might be useful. --- Jura 14:06, 28 December 2015 (UTC)

Adding informationEdit

Hi again, I wanted to share with you an idea how to make database reports even more useful. You know, in Types Statistics, the bot lists how many instances are there of each type. You could program the output with a link to AutoList2 which would then show the reader a list of all those instances. It's quite simple, AutoList2 has a permalink option, so it's only a matter of formatting the link correctly.

Like this:{{{1}}}%5D%20AND%20claim%5B31%3A{{{2}}}%5D&pagepile=&statementlist=&run=Run&mode_manual=not&mode_cat=not&mode_wdq=and&mode_find=not&chunk_size=10000, where {{{1}}} is the property reported and {{{2}}} is type.

For example, the Types Statistic in report for P1587 would look like this:

What do you think? — Yerpo Eh? 09:08, 29 December 2015 (UTC)

Without "language=en" of course. And may be "chunk-size=1000" as it loads quicker. --Infovarius (talk) 21:30, 30 December 2015 (UTC)
Many reports are very large. Adding many long URLs will increase reports size. Is the links really useful? What tasks require the links? — Ivan A. Krestinin (talk) 19:33, 31 December 2015 (UTC)
I think it's useful to see which items are of some type, but it's your decision. For the example I gave above, it's useful to cross-check with official list of monuments. — Yerpo Eh? 19:05, 2 January 2016 (UTC)


The use of spaces in the ISNI number is disupted.. Please stop your bot.  – The preceding unsigned comment was added by GerardM (talk • contribs).

Constraint report update/KrBotEdit

Hi Ivan,

I guess the bot has a day off .. dumps would be available.
--- Jura 11:37, 15 January 2016 (UTC)

  • Hello Jura, I had connection troubles. Bot will update all reports in the next 3-5 hours. — Ivan A. Krestinin (talk) 19:33, 15 January 2016 (UTC)
    • No hurry. Thanks Ivan.
      --- Jura 21:56, 15 January 2016 (UTC)

List/category of failed constraint violation reportsEdit

Hi! I'm new to Wikidata and I just happened to discover several property constraint violation reports that had been failing for some time now, e.g. [1] and [2] (I fixed all the ones I found).

That's all fine, people make mistakes. But I couldn't find any existing pages about failing reports. To aid fixing these problems, could you create a list page with links to all failed property reports? That way interested people can watch it and fix problems quickly when they show up.

If that's too complicated, maybe just include a template or add a category to failed report pages. The downside is that categories/transclusions can't be watched using the watchlist (AFAIK?), but it's still better than having to search for failed reports. Intgr (talk) 11:50, 28 January 2016 (UTC)

Constraint violations/P1447Edit

Hi! It looks like I screwed up it a little bit :) Maybe your bot could recognise {{Q|Qx}} as a valid expression because {{Q}} accepts it? --Edgars2007 (talk) 11:13, 29 January 2016 (UTC)

  • Hello, it can be supported, but it is looked redundant. Next step on this way is looked as {{Q|QQx}} or {{Q|Px}} :). I created new report: Wikidata:Database reports/Constraint violations/Errors for catching such errors and another issues. — Ivan A. Krestinin (talk) 18:44, 31 January 2016 (UTC)
    • Well, the main difference between {{Q|Qx}} and {{Q|QQx}} (and {{Q|Px}}) is that the first one works, but other two doesn't :) But of course, it's up to you, it was just a suggestion. --Edgars2007 (talk) 19:45, 31 January 2016 (UTC)


Здравствуйте. Нашёл в русской википедии ~700 статей про украинских сельсоветов, которые имеют свой личный элемент Викиданных и не связаны с аналогичным статей из украинской википедии (а они существуют и тоже имеют свой элемент. т.е. итемы-дубликаты). Список здесь. Можете найти какой-нибудь удобный алгоритм для вашего бота что-бы найти и объеденить пары этих элементов? --XXN, 15:59, 9 February 2016 (UTC)

В похожем ситуации (но чуть сложнее) около 700 статей про украинских сёл в румынской википедии,[3][4] статьи которые оказались изолированы здесь в викиданных и нуждаются в связании с украинсками аналогами.
И если уже речь о дубликатов, заметив эту вашу инициативу, пользуясь случаем принесы к вашему вниманию факт что, на этот момент здесь в викиданные есть ~109.000 изолированных (одиноких) категорий немецкой википедии[5] и ~68.000 подобнух категорий французкой википедии[6]. Среди них конечно куча дубликатов для объединения, но проблема как бы найти им пару. Может сумеете зделать вы что нибудь с частью из них, а вообше-то при таком масштабе уже и немецкие девелоперы должны помочь, вовлечся как нибудь. Простите если побеспокоил. --XXN, 19:57, 9 February 2016 (UTC)
По сельсоветам попробую объединить используя КОАТУУ, практически готовый код для этого имеется. К концу предстоящих выходных наверняка сделаю, может раньше. С категориями надо ещё посмотреть. — Ivan A. Krestinin (talk) 04:53, 10 February 2016 (UTC)
@XXN: На данный момент сделал следующее: из шаблонов uk:Шаблон:Селищна рада, uk:Шаблон:Сільрада України, ru:Шаблон:Административная единица Украины импортировал KOATUU identifier (P1077), located in the administrative territorial entity (P131), украинское название. После этого объединил те элементы, у которых совпадали KOATUU identifier (P1077) и названия на украинском. Дополнительно проверял непротиворечивость located in the administrative territorial entity (P131). Завтра ещё раз пройдусь алгоритмом объединения по всем элементам, возможно что-то в сегодняшний дамп не попало. Румынской википедией пока занимаюсь, у них нет специализированных карточек для Украины, потому извлекать данные намного сложнее. Категориями не занимался. — Ivan A. Krestinin (talk) 12:06, 14 February 2016 (UTC)
По rowiki я смотрю ваш бот начал работать, скажите тогда, как он закончит, я тогда своим ботом ещё пройдусь, может ещё что-нибудь извлеку. Кстати у нас в метки похоже попали ударения, причём похоже не в том формате, в Bezimianka (Q4081102) метка "Безім'янка", в тоже время в rowiki указано название "Безім`янка". Не знаете случаем, это точно просто ударение, которое можно удалить из метки? Ещё у многих сёл в качестве located in the administrative territorial entity (P131) указан район, хотя в rowiki имеется и сельсовет, например Balki (Q3617635), нужно такие случаи исправлять? — Ivan A. Krestinin (talk) 14:16, 14 February 2016 (UTC)
Про located in the administrative territorial entity (P131) - я не знаю точно какой здесь консенсус; наверное надо указывать низшее административное единица. Но посколько большентсво википедий не имеют статьи про сельсоветов, у меня лично на данный момент нету единой мнений что надо "исправить" ту значению из района в сельсовета, но при этом и не могу и не буду возражать если будем произведена однородность.
Да, как заметили, в последние дни я начал при помоши бота (а местами и вручную) объеденить изолированные итемы статей rowiki - а зделал это только там где мог автоматически/массово найти 100%-ые пары для румынских статей. И там было немножко хаоса: кроме тех более 1500 статей (если не ошибаюсь) про украинских Н.П. и сельсоветов имея собственный элемент WD, несвязанные с украинскими/русскими статьями-аналогами; были также, румынские статьи про сёл одиночки-в ихнем сельсовете - связаны неправильно с украинскими статьями про сельсоветов а не про село (это исправил до конца). Мой метод работы с ботом для слияний элементов не очень продвинут - нужно иметь точные паралельные списки элементов/названий статей; так что где я мог - формировал эти списки при помоши интрументов как PagePile, Tabernacle и Linked items, а потом приступал к слияний. Короче говоря мучался немало и на этот момент я исчерпал свой списки над которыми было поработать а остались ещё 1100 несвязанных статей - итемов для объединения [7]. Но думаю что вам может быть трудно незная румыснкий язык. В крацех, в rowiki статьи созданы по данным 2001 переписи и есть статьи и про исчезнувших сёл, для которых украинци не имеют аналог :), например про ru:Заречье (Белогорский район, Крым)ro:Zaricicea, Bilohirsk. Некоторые сёла, сельсоветы и даже один район созданы с старыми названиями (2001) а в украинском разделе (и остальные) у них уже новые, изменёные. А также, не знаю почему, не во всех статей rowiki указан код КОАТУУ, то что может вам создавать трудности. Мда, и похоже что мой коллега румынский ботовод как-то перепутал и поменял украинский апостроф с каким-то другим символом. Если вас ещё не испугали все эти трудности можете взяться и за этот таск, попробовать и посмотреть что получется. --XXN, 15:30, 14 February 2016 (UTC)
Накосячил этот ботовод не только с апострофом, но и с самими названиями. Большая загадка почему в качестве украинского названия в статье ro:Comuna Novomariivka, Solone значится Новомар`ївка вместо Новомар'ївська сільська рада. Похоже из rowiki украинские названия лучше и не пытаться импортировать. — Ivan A. Krestinin (talk) 20:25, 14 February 2016 (UTC)
Да, да. Как нибудь подскажу ему об этом. Дело в том что в румынском разделе нередко недооцениваются префиксы/дополнительные слова из словосочетаний названий админ. единиц. Вот например как выглядит верхушка статьи об Ясском уезде — "подзабылось" слово "Județul" и в вступлении и в карточке. Точно также и в случае коммун. --XXN, 22:21, 14 February 2016 (UTC)

Importing content from Wikipedia GeneWiki info boxes to WikidataEdit

Hi! Your bot seems to occasionally do imports from the English Wikipedia Gene Wiki infoboxes. On on hand, your bot seems to be malfunctioning, as it put the gene ontology term protein serine/threonine kinase activity (Q14326094) as molecular function (P680) and as biological process (P682) on item [8] and many other items (and also many other gene ontology terms), which is wrong. As we, the ProteinBoxBot team, have been importing large amounts of biological data from their primary sources, e.g. Uniprot and many of the data in the GeneWiki infoboxes are outdated, it might be the right time to stop importing data from the Wikipedia GeneWiki infoboxes. Furthermore, we are currently rolling out a new Wikipedia GeneWiki infobox template script, which pulls the data directly from Wikidata to populate these infoboxes [9]. Re-importing these data to Wikidata is therefore not required anymore and only creates a lot of overhead. More info on what we currently do and plan can be found here: [10]. Thank you! Sebotic (talk) 09:32, 10 February 2016 (UTC)

Oh, I just realized that your bot only fixed problematic redirects and is not responsible for the wrong Gene Ontology terms. Sorry for that! But in general, imports from GeneWiki infobox to Wikidata should not be required anymore. Best Sebotic (talk) 10:45, 10 February 2016 (UTC)


Hi Ivan,

Would you undo these changes. I fixed the corresponding merge.
--- Jura 15:52, 14 February 2016 (UTC)

  • Hello, Jura, bot is in progress now. I think we need to integrate different from (P1889) with MediaWiki:Gadget-Merge.js and another tools. Or we need to create another property pair: "do not merge with" and "reason". — Ivan A. Krestinin (talk) 18:32, 14 February 2016 (UTC)
    • When items you want to merge reference each other (one way is enough), it shouldn't be possible to merge them. So that this merge was possible is rather strange. Mbch331 (talk) 18:55, 14 February 2016 (UTC)

If you have an easy way to undo those merge-related edits, would you also undo those that followed the erroneous merger between Istrup (Q1674886) and defensive wall (Q57346) 8 Feb ? --Zolo (talk) 11:35, 27 February 2016 (UTC)

Confusing referenceEdit

Could you please explain what this edit is about? --Yair rand (talk) 12:05, 22 February 2016 (UTC)

Hello, bot detected duplicate values. After this bot copied all references to the first value and delete all another duplicate values. Please see the next bot`s edit. — Ivan A. Krestinin (talk) 12:32, 22 February 2016 (UTC)
Ah, I see. Thank you. --Yair rand (talk) 15:53, 22 February 2016 (UTC)

Year 0Edit

Hi Ivan,

I undid a couple of these. They showed up with the "calendar model" complex constraint on P570.
--- Jura 13:10, 24 February 2016 (UTC)

Thank youEdit

My thanks to you and your bot for [11] and [12] changes.

I put these with Magnus' Quick Statements, with a statement like:
LAST P569 +00000001946-08-03T00:00:00Z/11 P248 Q21087031
which is not putting the reference in the correct place.

Do you have any idea what would be the correct syntax to put it in the correct place? --FocalPoint (talk) 14:38, 20 March 2016 (UTC)

Do NOT change redirectsEdit

Your bot just made a wrong merge worse - instead of reverting just two edits I now have to find all those edits of your bot where it changed the link to the redirect to the new page, e.g. Bangkok Noi (Q806486). There is absolutely no technical reason to change any uses of redirected item. Ahoerstemeier (talk) 22:12, 1 April 2016 (UTC)

@Ahoerstemeier: quick answer, Ivan will give you more detailed answer. a) AFAIK, bot is able to revert these changes, you simply have to say which item has to be "reverted" b) this is not Wikipedia, there are reasons, why redirects should get fixed. There are 24h delay before doing that, so wrong merges can be undone. --Edgars2007 (talk) 22:23, 1 April 2016 (UTC)
Thank you, all right. Links are needed to be checked anyway after merge revert. Some links can be created during merged item existing time. — Ivan A. Krestinin (talk) 22:29, 1 April 2016 (UTC)
@Edgars2007: Help:Redirects#Links to redirects clearly states these links to redirect shall not be changed, which was also what I think to have seen as a discussion result in the project chat. Besides, 24h is way to short to spot a wrong merge if its not a prominent item. Ahoerstemeier (talk) 22:37, 1 April 2016 (UTC)
Help page was written without any discussion and situation analysis. — Ivan A. Krestinin (talk) 22:59, 1 April 2016 (UTC)

Merged itemsEdit

Hi Ivan,

Just to let you know: I merged a series of items you created for articles a Kazakh wiki. They appeared on Wikidata:Database reports/identical birth and death dates/1.

I think it might be worth looking into Wikidata:Bot_requests#Cyrillic_merges. Obviously, it's not my area of expertise. Even if writing of names differs, I think some items could be identified by accounting for different name orders and punctuation. I keep coming across samples once they get dates.
--- Jura 16:56, 4 April 2016 (UTC)


Hi again :)

area (P2046) is a generic property, so any unit of area should be allowed (we have 58 different units at the moment although only 10 are listed on the property talk page).

Would it be possible to have something like Template:Constraint:Value type? e.g. {{Constraint:Units|class=Q1371562|relation=instance}} to mean "the unit must be an instance of unit of area (Q1371562) (or one of its subclasses).

- Nikki (talk) 09:45, 10 April 2016 (UTC)

Hello, it is possible of cause. But are we really need to spend efforts to implement and support this ability? Only 10-11 units are used now: Wikidata:Database_reports/Constraint_violations/P2046#Units_statistics. The list can be extended at any moment. Also suggested approach is less stable. — Ivan A. Krestinin (talk) 10:42, 10 April 2016 (UTC)
It's not specific to this property, there are quite a lot of properties like this. In fact, I think most properties using units are more accurately described as having a type of unit (e.g. unit of length) as the allowed values for the unit. More examples:
It would be particularly useful for currencies - someone else has asked on Property_talk:P2284 if it would be possibly to just say any currency instead of trying to list all currencies.
- Nikki (talk) 10:44, 13 April 2016 (UTC)
Hello Ivan, I came here, because I had basically the same request. I just created budget (P2769) and it would be useful to say "unit can be any instance of budget (P2769)", instead of listing currencies by hand. --Srittau (talk) 12:44, 23 April 2016 (UTC)
In the meantime, we have 270 units of type "area". I don't think these are necessarily all suitable.
--- Jura 13:56, 23 April 2016 (UTC)


I am slowly working with the P1566-report. One problem, that causes me to edit less in a day than I could, is that the report is lllllloooooonnnnngggg (857316 bytes in the last version). It takes me half a minute every time I successfully load the page, and far from every time is successful! The report is already shortened, not everything is written in the report. Can you make it even shorter? -- Innocent bystander (talk) 07:14, 20 April 2016 (UTC)

If you just want a small selection of the many violations to fix to work on, you would probably be better off using a SPARQL query (e.g. 50 items with P1566 and no country). You can even select labels or other properties that way. The SPARQL endpoint is also more up to date, whereas the constraint reports seem to be a couple of days behind (at least I often have to wait a couple of days before things I've fixed get removed from a constraint report and I can continue working on it). To be honest though, there's so much to fix for P1566 that fixing things by hand is really inefficient. The problem was caused by bots (mostly lsjbot importing GeoNames into svwiki and cebwiki as far as I can tell), so it should be possible to add lots of the missing statements with bots too. - Nikki (talk) 11:22, 20 April 2016 (UTC)
The errors added by Lsjbot are the most easy to solve, since every Lsjbot-article matches one and only one GeoNames-ID, while the man made articles have several topics and are difficult to match in our items. Many of the items in the unique-part of the list also have a wrong GeoNames-ID introduced by a local bot here. They have been imported directly from a GeoNames-dump. But the links to Wikipedia in GeoNames are often wrong, only matching the name of the article, not the topic.
I cannot see any other way than fixing this by hand. Adding P625/P17 can probably be added by bot, but such bot-runs have already been done, leaving a lot of items behind.
I am not familiar with SPARQL at all. Can you provide me a link for the unique-constraint? -- Innocent bystander (talk) 14:13, 20 April 2016 (UTC)
This should be what you need. Of course, we can add there (almost) anything else, that helps find violations better. P.S. Here is some help about SPARQL. --Edgars2007 (talk) 17:13, 20 April 2016 (UTC)
@Edgars2007, Nikki: The links to the WD-items in the SPARQL-report goes to json-versions of the pages, not to the same page links like Q1 takes you! -- Innocent bystander (talk) 06:28, 21 April 2016 (UTC)
That's the same problem you mentioned on Wikidata:Contact the development_team#Identify_the_unit. I've added a comment there. - Nikki (talk) 06:54, 21 April 2016 (UTC)
{{Q}} is overused on the report. The template will be excluded from long tables during next run. — Ivan A. Krestinin (talk) 18:49, 20 April 2016 (UTC)

ru:ПРО:ВО: бардак с рекамиEdit


Не поможешь навести порядок с реками?

  1. Для 53-х тысяч речных объектов в ВД не указано свойство страна: [13]
    1. Проблема, по-видимому, создана криворукими участниками, заливавшими от шведов (46 тысяч рек без стран): [14]
    2. Залить 800 штук можно из немецкого раздела: [15]
    3. Залить 1200 штук можно из английской вики: [16]
  2. В шведском разделе тысячи статей о реках с «ручными» интервиками. Элементы на ВД я им создал, а вот как туда привязать статьи из интервик, не знаю (там привязки к ВД ещё нет). Вот собственно и нужно привязать все статьи по «ручным» интервикам к объектам на ВД. Мастер теней (master of shadows), 18:27, 2 May 2016 (UTC)
  • У меня был какой-то алгоритм импортирующий страны, запустил его на шведском материале. Потом можно будет и по остальным пройтись. Чего-то готового для удаления интервик у меня нет, но у других ботоводов должно остаться со времён миграции на Викиданные. — Ivan A. Krestinin (talk) 15:06, 3 May 2016 (UTC)
Там можно и не удалять, в принципе. Главное связать с уже имеющимися объектами в ВД. Мастер теней (master of shadows), 16:04, 3 May 2016 (UTC)
У меня даже такого кода нет, статьи с локальными ивиками я обычно обходил стороной т. к. там велика вероятность неразрешённых ивики-конфликтов. Попробуйте спросить у участника Emaus, он в своё время занимался переносом интервик, если мне не изменяет память. — Ivan A. Krestinin (talk) 16:44, 3 May 2016 (UTC)
  • Бот прошёлся по странам, но получилось у него не везде. Бот не смог разобраться там, где в одном параметре была указана и страна и регион. Также он не справился там, где указано сразу несколько стран. — Ivan A. Krestinin (talk) 04:54, 6 May 2016 (UTC)

Ваш бот объединяет элементы, которые не должны быть объединеныEdit

Q17682271 и Q21672401 не должны быть объединены, это разные населенные пункты. --Alex NB IT (talk) 04:05, 4 May 2016 (UTC)

Вероятно потому, что кто-то указал одинаковые почтовые коды. Мастер теней (master of shadows), 08:54, 4 May 2016 (UTC)
Действительно, т. к. названия и почтовые индексы были одинаковыми, и противоречий в каких-либо других свойствах не было, то бот "решил", что это один и тот же населённый пункт. — Ivan A. Krestinin (talk) 09:23, 4 May 2016 (UTC)

Проставление кода ОКТМОEdit

Ваш бот проставил код ОКТМО на страницу Q18769731. Похоже, эта страница - ошибка ботозаливки чеченской вики, никаких следов существования Васюково в Андреевском сельсовете или сельском поселении я не нашла. Единственное Васюково Вашкинского района это Q4105177 (и в нем правильно указан тот же код ОКТМО). Я бы стерла это значение ОКТМО из Q18769731, но не проставит ли его бот заново? --Daryona (talk) 10:18, 4 May 2016 (UTC)

  • Добрый день, похоже этот НП перестал существовать. Хорошо бы заполнить свойство "дата прекращения существования", тогда бот точно его трогать больше не будет. Но вот чем его заполнить - непонятно, я сходу тоже не нашёл упоминаний. Вообще с сёлами-призраками беда, их слишком легко перепутать с одноимёнными ныне существующими сёлами в этом же районе. — Ivan A. Krestinin (talk) 11:07, 4 May 2016 (UTC)
    • Да, я тоже сейчас нашла следы, что был такой НП раньше (в справочниках почтовых индексов, в частности, встречается). Но я выверяла по Вологодской области все НП с 1999 года, так что его еще раньше ликвидировали, и вряд ли удастся найти что-то сейчас. Может, указать "1999", чтобы просто была какая-то отметка об упразднении? Все равно вряд ли кто-то будет реально редактировать эту статью и страницу викиданных. --Daryona (talk) 12:49, 4 May 2016 (UTC)
  • День добрый. Бот начал проставлять коды ОКТМО и почтовые индексы в реки. Проблема с чеченской викой. Мастер теней (master of shadows), 14:11, 22 May 2016 (UTC)
    • Да, видел немало таких ситуаций, но тут уж ничего не поделать, нужно разгребать неправильные интервики. — Ivan A. Krestinin (talk) 14:29, 22 May 2016 (UTC)
Почему? Можно спрашивать P31. Если не подкласс НП — зачищать левые интервики. Мастер теней (master of shadows), 14:56, 22 May 2016 (UTC)
Код, который достаёт ОКТМО и без того излишне сложный, ещё и этим его нагружать не стоит. Проще как сейчас - импортировали данные, увидели, что наблюдаются конфликты, исправили проблемные элементы. — Ivan A. Krestinin (talk) 14:59, 22 May 2016 (UTC)
    • Вроде основную массу разгрёб, осталось чуть-чуть для ручного разбора: [17] и [18], хотя наверное можно найти и ещё. — Ivan A. Krestinin (talk) 14:54, 22 May 2016 (UTC)
Хорошо. Мастер теней (master of shadows), 14:56, 22 May 2016 (UTC)
Вот все НП, привязанные к рекам: [19]. Мастер теней (master of shadows), 20:16, 22 May 2016 (UTC)
Сократил этот список до трёх элементов. — Ivan A. Krestinin (talk) 20:34, 22 May 2016 (UTC)

Wrong P17 on bot editEdit


Добрый день! Можете потянуть данные из литовских lt:Šablonas:Ltgyv и lt:Šablonas:Seniūnija? --Чаховіч Уладзіслаў (talk) 17:22, 14 May 2016 (UTC)

Да, всегда Литва. Сенюнии (староства) - нижний уровень адм. деления Литвы, поэтому импортировать нужно sen, хотя, возможно, некоторые населенные пункты имеют районный статус, т.е. нет sen, только sav. Этих свойств вполне достаточно. --Чаховіч Уладзіслаў (talk) 07:47, 15 May 2016 (UTC)
Староства импортировал вместе с country (P17), located in the administrative territorial entity (P131), instance of (P31). А вот с населёнными пунктами не совсем хорошо получается, для многих НП в качестве located in the administrative territorial entity (P131) уже указан район и непонятно: не то это ошибка и нужно исправлять на староство, не то этот НП действительно районного подчинения. Буду импортировать без located in the administrative territorial entity (P131). — Ivan A. Krestinin (talk) 14:20, 15 May 2016 (UTC)



Предлагаю заменить в списках точки на нумерацию.

К примеру, Wikidata:Database reports/Constraint violations/P884 — если посещал страницы, фиг поймёшь, какие только что исправлял, а какие нет. С номерами будет попроще. Мастер теней (master of shadows), 11:01, 24 May 2016 (UTC)

  • Доброго вечера, в принципе можно, но всё равно будет не вполне удобно. Возможно при разгребании удобнее использовать SPARQL запросы, которые есть в шаблонах ограничений, их результаты обновляются довольно быстро. Правда иногда они возвращают ерунду. — Ivan A. Krestinin (talk) 18:45, 24 May 2016 (UTC)

imported from:Tajik WikipediaEdit

Do you remember where this comes from? I have seen some of these statements now, and they have had in common that they were about something in Brazil and they had Tajik Wikipedia as source, but the claims stated something (very) different. -- Innocent bystander (talk) 06:50, 30 May 2016 (UTC)

  • It is looked like error in tgwiki, fixed. — Ivan A. Krestinin (talk) 07:42, 30 May 2016 (UTC)
    Thanks! Unfortunatly, I do not remember where I found the other statements (which then changed, but not noted you since I though it was a single-case-mistake). I know I visited tgwiki, and since I read maps of South America better than I read Tajik text, I trusted the page to be correct. -- Innocent bystander (talk) 15:09, 30 May 2016 (UTC)

GNDs imported from VIAFEdit

Hi Ivan, KrBot seems to have stopped to correct format violations of GNDs that have been imported from VIAF, see: Wikidata:Database reports/Constraint violations/P227. There are to many erros to correct them by hand. Can you restart the bot? --Kolja21 (talk) 14:04, 4 June 2016 (UTC)

Hello, GND site request format was changed. Fixed. — Ivan A. Krestinin (talk) 08:29, 5 June 2016 (UTC)
Great. Thank you! --Kolja21 (talk) 10:13, 5 June 2016 (UTC)
Hi Ivan, thanks a lot, indeed. In the GND ID (P227) case there are many manual re-imports of the unsuitable GND identifiers from VIAF, so they also show up as duplicate values in the report and then vanish again after your bot has taken care of their form and then removed them as duplicate value. Even when everything goes smooth this takes about four days until all reports are neutral again. Would it therefore be possible to couple your bot's repair actions of "number is formally wrong but I know how to fix" with the much more frequent updates on Wikidata:Database reports/Constraint violations/Mandatory constraints/Violations ? -- Gymel (talk) 05:59, 7 June 2016 (UTC)

Wrong VIAF on Per Boye Hansen (Q2069926)Edit

The bot sets Per Boye Hansen (Q2069926) to a wrong VIAF (85219782) [20] Per Boye Hansen is not the same as Per Christian Hansen. — Finn Årup Nielsen (fnielsen) (talk) 08:30, 6 June 2016 (UTC)

The identifier was imported from VIAF. This was single pass import. So you can just delete wrong identifier. Bot will not re-import it. — Ivan A. Krestinin (talk) 17:14, 6 June 2016 (UTC)

"Single value" violationsEdit

Hi Ivan, Wikidata:Database reports/Constraint violations/P227 has now more than 1.000 "single value" violations. If GND ID (P227) is used with a qualifier like pseudonym (P742) the violation is o.k. (= no error). Is there a way your bot can list violations with qualifiers separately? --Kolja21 (talk) 11:44, 11 June 2016 (UTC)

  • Hello, just specify qualifiers in "separators" parameter. Example: [21]. — Ivan A. Krestinin (talk) 21:07, 11 June 2016 (UTC)


Hi, Ivan.

Would you like to share your comments about a proposal for a new constraint? If you don't have the time, you can simply ignore this message.

Thanks in advance, and best regards, --abián 20:15, 9 July 2016 (UTC)

Please, feel free to tell me if I can help with this issue in some way. --abián 16:40, 15 July 2016 (UTC)
We need to close this issue and distinguish every {{Constraint:Diff within range}} from the rest here. Anyway, I'm still thinking that the discussion page and the constraint violations page get too long and complex by this system (the good point is that I've discovered a new bug thanks to that xD), and a {{Constraint:Contemporary}} would significantly improve this point if it was included in link properties (A-B-C), where it would appear only once and no parameters would be needed. --abián 11:31, 23 July 2016 (UTC)
Hi again. I understand you don't have the time to help with this, and I would like to help you, but I cannot find your bot's code. What can we do? --abián 10:14, 29 July 2016 (UTC)
Hello, you are right, I have no enough time to implement this now. Bot`s code is not published yet. But you can create separate report for now. — Ivan A. Krestinin (talk) 16:28, 29 July 2016 (UTC)
I fear that managing a separate report system that works in a completely different way wouldn't be the best idea. I think it's important for Wikidata that you publish KrBot's code as soon as possible so that the community can help you and that we can prevent any possible data loss. KrBot is too important for all of us! :-) --abián 20:35, 25 September 2016 (UTC)

Category:Pages using invalid self-closed HTML tagsEdit

Your bot currently generates on the constraint pages HTML of the form <span />. Can you please change this behavior either to use {{Anchor}} or to use <span></span>? --Izno (talk) 13:53, 15 July 2016 (UTC)

  •   Done, please wait for the next reports update. — Ivan A. Krestinin (talk) 16:03, 16 July 2016 (UTC)

One of constraint on P17Edit

Hey. Q55 is in the list of the "one of" constraint on Property talk:P17. But on WD:Database reports/Constraint violations/P17#One of all items with P17=Q55 are listed as violations. --Pasleim (talk) 09:13, 21 July 2016 (UTC)

Incorrect constraint violations listEdit

this list generated by your bot does not seem to be correct. According to queries to check this constrain on Property talk:P1472, for last few days, there are ~5 pages that violate that constrain. --Jarekt (talk) 12:41, 27 July 2016 (UTC)

  • It is looked strange. Sometimes Wikidata dumps miss some changes. Try to make any change of the item and wait for two days. — Ivan A. Krestinin (talk) 16:32, 29 July 2016 (UTC)


Ivan, could you translate for PetScan for me 'P579 and P2695'? thx --Chris.urs-o (talk) 11:08, 2 August 2016 (UTC)

  • Hello, sorry for delayed response. I am not fully understand your question. PetScan is oriented to category scanning. Request "P579 and P2695" can be queried using WDQ. — Ivan A. Krestinin (talk) 14:58, 4 August 2016 (UTC)
Thx. AutoList 2 is off and I can not write PetScan or WDQ. But thank you very much for the programm. Regards --Chris.urs-o (talk) 16:21, 4 August 2016 (UTC)
@Chris.urs-o: you can make WDQ requests here, if you need some. --Edgars2007 (talk) 16:49, 4 August 2016 (UTC)
Thx, sry --Chris.urs-o (talk) 19:02, 4 August 2016 (UTC)

Whitelists for constraint violationsEdit

Regarding Wikidata:Database reports/Constraint violations/P2880, would it be possible for some single value violations to be whitelisted as valid? Sometimes an article in the database has multiple entries for some reason, so having multiple values is valid. Marking off the valid ones would help make sure I don't repeatedly look at them while screening the ones that genuinely are constraint violations. Thanks, James Hare (NIOSH) (talk) 16:34, 4 August 2016 (UTC)

@James Hare (NIOSH), Harej: that is possible with |exceptions=. See for example Property talk:P2593. Note, that then you have to remove |mandatory=true, if it's included in constraint. --Edgars2007 (talk) 16:47, 4 August 2016 (UTC)
Edgars2007, that should work. Thank you! James Hare (NIOSH) (talk) 20:19, 4 August 2016 (UTC)

Названия НП-БеларусьEdit

Добрый день! Можете обновить белорусские названия населенных пунктов Беларуси в Викиданных, использовав для этого названия из карточки НП-Беларусь, а те названия, которые поселения имеют сейчас в Википедии и Викиданных (а они разные), перекинуть в дополнительные варианты? А то Вёска NNN, NNN сельсавет выглядит в карточках жутко, а Аграгарадок NNN в карточке персон, рожденных, например, в 19 в. - нелепо. --Чаховіч Уладзіслаў (talk) 07:04, 7 August 2016 (UTC)

  • Здравствуйте, это уже не вполне тривиально, т. к. названия каких-то НП участники могли задать руками и весьма вероятно, что будет некорректным менять его ботом на какой-то ещё вариант. Но если вы можете как-то сформулировать правило по которому бот мог бы выделить "плохие" названия, то их я могу поменять. — Ivan A. Krestinin (talk) 08:32, 7 August 2016 (UTC)
По-идее участники должны были задавать руками то же название, что и в карточке статьи, если же они задавали названия до заливки населенных пунктов в Белорусской Википедии, то вполне вероятно, что такие названия могут быть ошибочными, несогласованными с нормативным справочником названий, по которому велась заливка. В любом случае однозначно необходимо исправить названия ключами Вёска, Хутар, Горад, Гарадскі пасёлак, Аграгарадок, а также все названия с запятыми. --Чаховіч Уладзіслаў (talk) 08:56, 7 August 2016 (UTC)

Identical birth dates (no P570)Edit

Hi Ivan,

Wikidata:Database reports/identical birth and death dates seems to work quite well. I wonder if you would want to expand it to living people: Wikidata:Database reports/identical birth dates (living people)/1

On Wikidata talk:Database reports/identical birth and death dates/1, there is a SPARQL query that found some.

Maybe as exclusion we could attempt to skip those that have different nationalities (P27) and occupations (P106). So adding these properties would get them removed from the list.
--- Jura 08:47, 7 August 2016 (UTC)

The following query uses these:

  • Properties: date of birth (P569)    , date of death (P570)    , instance of (P31)    , sex or gender (P21)    , country of citizenship (P27)    , occupation (P106)    , place of birth (P19)    , father (P22)    , mother (P25)    , Freebase ID (P646)    , position played on team / speciality (P413)    , P7, P9, different from (P1889)    , said to be the same as (P460)    
     1 SELECT DISTINCT ?item1 ?item2  ?d1
     2 {
     3   	?item1 wdt:P569 ?d1 .
     4   	FILTER (?d1 > "1980-01-01T00:00:00Z"^^xsd:dateTime && ?d1 < "1985-01-01T00:00:00Z"^^xsd:dateTime) .
     5   	OPTIONAL { ?item1 wdt:P570 ?dummy1 } FILTER ( !bound(?dummy1) ) .
     6   	?item2 wdt:P569 ?d1 .
     7   	OPTIONAL { ?item2 wdt:P570 ?dummy2 } FILTER ( !bound(?dummy2) ) . 
     8   	?item1 wdt:P31 wd:Q5 .
     9   	?item2 wdt:P31 wd:Q5 .
    10   	?item1 wdt:P21 ?g .
    11   	?item2 wdt:P21 ?g .
    12 	OPTIONAL { ?item1 wdt:P27 ?l1 }		OPTIONAL { ?item2 wdt:P27 ?l2 }		FILTER ( !( BOUND(?l1) && BOUND(?l2) && ?l1 != ?l2) )
    13 	OPTIONAL { ?item1 wdt:P106 ?n1}		OPTIONAL { ?item2 wdt:P106 ?n2}		FILTER ( !( BOUND(?n1) && BOUND(?n2) && ?n1 != ?n2) )
    14   	OPTIONAL { ?item1 wdt:P19 ?b1 }		OPTIONAL { ?item2 wdt:P19 ?b2 }		FILTER ( !( BOUND(?b1) && BOUND(?b2) && ?b1 != ?b2) )
    15   	OPTIONAL { ?item1 wdt:P22 ?f1 }		OPTIONAL { ?item2 wdt:P22 ?f2 }		FILTER ( !( BOUND(?f1) && BOUND(?f2) && ?f1 != ?f2) )
    16   	OPTIONAL { ?item1 wdt:P25 ?m1 }		OPTIONAL { ?item2 wdt:P25 ?m2 }		FILTER ( !( BOUND(?m1) && BOUND(?m2) && ?m1 != ?m2) )
    17   	OPTIONAL { ?item1 wdt:P646 ?z1 }	OPTIONAL { ?item2 wdt:P646 ?z2 }	FILTER ( !( BOUND(?z1) && BOUND(?z2) && ?z1 != ?z2) )
    18   	OPTIONAL { ?item1 wdt:P413 ?w1 }	OPTIONAL { ?item2 wdt:P413 ?w2 }	FILTER ( !( BOUND(?w1) && BOUND(?w2) && ?w1 != ?w2) )  
    19   	FILTER ( str(?item1) < str(?item2)  )
    20   	MINUS { ?item1 wdt:P7 ?item2 }		MINUS { ?item1 wdt:P9 ?item2 }		# twins
    21   	MINUS { ?item1 wdt:P1889 ?item2 }	MINUS { ?item1 wdt:P460 ?item2 }	# identified issues
    22 }
    23 LIMIT 50

I did some tests with SPARQL (see above). It seems that this could generate a lot of items. Items that have nothing more than P569/P21 turn out a lot of results. Maybe this is suitable for a game instead: add a statement to each item with a property that differentiates them.
--- Jura 08:23, 17 August 2016 (UTC)
  • It gives reasonable results when checking for identical labels: User:Jura1/test32. SPARQL times out if more than one 1 year is done at once. For the other approach, User:Jura1/test31 looks interesting, but would need some interface.
    --- Jura 09:24, 17 August 2016 (UTC)

Constraint violation summaryEdit

Hi! Maybe it would be possible to create something like one constraint violation summary page for all props? Section for P1146 it would return (in table format or list format):

  • P1146 - "Format" violations - 0
  • P1146 - "Unique value" violations - 0
  • P1146 - "Single value" violations - 18 (+ 2 exceptions)
  • etc.

It would be probably useful to know, which props and constraint violations has the biggest problems. I'm not saying, that I would personally be very active, but if it's pretty trivial to create such report (and I don't see anything very hard there, but I may be wrong), then why not? --Edgars2007 (talk) 09:32, 13 August 2016 (UTC)

Update frequency of Wikidata:Database reports/Constraint violations/Mandatory constraints/ViolationsEdit

It seems to take very long to get this page updated every day, can you explain? I would love to clean some constraints violations, but it is full of old values. Sjoerd de Bruin (talk) 19:55, 16 August 2016 (UTC)

  • Bot removes fixed values hourly. But sometimes bot is busy by another long tasks. For example full constraint violations reports update takes 6 hours. — Ivan A. Krestinin (talk) 21:44, 16 August 2016 (UTC)
  • The page has the size of some months ago again, hourly updates again. \o/ Of course, it would be great to hit zero. But this will make it go easier. Sjoerd de Bruin (talk) 11:28, 29 August 2016 (UTC)

Wikidata:Database reports/Constraint violations/P625Edit

There is a timeout at Wikidata:Database reports/Constraint violations/P625. I already proposed, that single value constraint may be omitted or limited, that can ease the calculation. --Jklamo (talk) 08:27, 17 August 2016 (UTC)

  • Hello, it was HTTP timeout, not data calculation timeout. Some network issue happened. — Ivan A. Krestinin (talk) 17:09, 17 August 2016 (UTC)
    • Can't we move to WMF Labs clusters? I assume, that would resolve some problems (also for section above). --Edgars2007 (talk) 18:52, 17 August 2016 (UTC)

Constraint violations reportEdit

Добрый день! Иван, не могли бы вы в отчётах "Single value" violations около каждого из значений показывать его ранг? Как правило в таких случаях, что показывать редактор указывает именно рангом. См., например, Q25939342 попавший в Wikidata:Database reports/Constraint violations/P1973. -- Sergey kudryavtsev (talk) 07:00, 27 August 2016 (UTC)

PS: Можно использовать иконки вроде s:ru:Файл:Statement prefered rank icon.gif, s:ru:Файл:Statement normal rank icon.gif и s:ru:Файл:Statement not recommended rank icon.gif. -- Sergey kudryavtsev (talk) 07:08, 27 August 2016 (UTC)

  • Добрый день, сейчас бот не зачитывает ранги совсем, сделать конечно можно, но определённые трудности есть. Кстати можно немного по-другому поступить: для устаревшего ID указать какой-нибудь квалификатор, вроде "дата деактуализации" и это свойство указать в параметре "separators" шаблона {{Constraint:Single value}}. Ещё, как вариант, можно не пытаться коллекционировать устаревшие и невалидные идентификаторы, а просто удалять их, так делается для VIAF, GND. — Ivan A. Krestinin (talk) 11:48, 28 August 2016 (UTC)
    А что за параметр "separators"? Как он действует? -- Sergey kudryavtsev (talk) 03:54, 30 August 2016 (UTC)
    Всё не хватает времени задокументировать его. В этом параметре перечисляются свойства-квалификаторы. Если в каком-то элементе два значения, но они отличаются одним из указанных квалификаторов, то ограничение {{Constraint:Single value}} пропустит такой элемент. — Ivan A. Krestinin (talk) 20:14, 1 September 2016 (UTC)
    Да, полезная возможность. А отсутствие квалификатора, перечисленного в separators будет считаться особым значением, отличным других? Судя по Wikidata:Database reports/Constraint violations/P947#Single value это не так, поэтому я добавил там в separators ещё и excluding (P1011), посмотрим как ваш бот отработает это ограничение. -- Sergey kudryavtsev (talk) 08:58, 15 September 2016 (UTC)

Вы не могли бы заставить бота обновить Wikidata:Database reports/Constraint violations/P947, а то он последний раз несколько месяцев назад обновлялся (2016-07-17)... -- Sergey kudryavtsev (talk) 11:45, 23 September 2016 (UTC)

Спасибо, что обновили этот отчёт, но похоже, что ваш бот не воспринял параметр |separators=P407, P1011, который вы рекомендавали выше. Например, в отчёт попал Galileo Galilei (Q307), у которого значения отличаются значениями квалификаторов. -- Sergey kudryavtsev (talk) 17:40, 24 September 2016 (UTC)
Оба значения должны иметь квалификатор одного типа и значения этого квалификатора должны отличаться. Возможно в данном случае правильнее будет вместо задания квалификатора P1011, создать специальный элемент с заголовком "все языки, кроме русского" и выставлять его в качестве значения свойства P407. — Ivan A. Krestinin (talk) 12:07, 25 September 2016 (UTC)
По-моему отсутствие квалификатора должно считаться отдельным значением, отличным ото всех других (как значение NULL в базах данных). Или, если это сделать технически сложно, значением somevalue (неизвестно). А сейчас бот работает так, будто отсутствие квалификатора — это значение, равное любому другому. -- Sergey kudryavtsev (talk) 18:49, 27 September 2016 (UTC)

Units redirEdit

Hi Ivan. Q15639371 was redirected to Q13147228, but is still used in units (538 times). Would you consider adding this to your bot or shall I ask at WD:Bot requests?
--- Jura 16:40, 29 August 2016 (UTC)

KrBot - handling unknown valuesEdit

Hi again, I have a question about KrBot's reports. For Slovene Cultural Heritage Register ID (P1587) (report here), I implemented a change, entering heritage designation (P1435) of some objects with the system setting unknown value. This is on purpose, the registry actually has some objects that have officialy "unknown status" as monuments. The question is, what to put on the property's description page so that the bot will label this as an accepted value? As you can see in the report now, it labels them as violations and "somevalue". — Yerpo Eh? 07:32, 2 September 2016 (UTC)

Thanks, this works. The label "somevalue" is a little confusing, but I guess it's not so easy to modify that. — Yerpo Eh? 12:31, 9 September 2016 (UTC)

Value typesEdit

Hi, somehow the value type violations on P3096 seem odd. There is a similar report on project chat. You might want to look into it.
--- Jura 04:07, 9 September 2016 (UTC)

Something went wrong with dumps?Edit

Hi! Yesterday the bot made such update, lowering number of items, that has this prop. Excluded was also for example Luisa Mercado (Q24701033), that hasn't been changed for a while. And today the number of items hasn't been restored to approx. previos number, so I assume this problem is still actual. This prop of course isn't the only one, there was some weirdeness on other covi pages, too. --Edgars2007 (talk) 05:11, 9 September 2016 (UTC)

Удаление прежних кодов ОКТМОEdit

Добрый вечер, Иван! Не могли бы пояснить, почему вы удаляете устаревшие коды ОКТМО? В пояснении написано, что Marking erroneous statements as deprecated instead of simply deleting such statements has three benefits. Игорь Темиров (talk) 19:50, 9 September 2016 (UTC)

  • На Викиданных большой бардак творится с кодами ОКТМО, никак не удаётся навести порядок в актуальных кодах, в этих условиях поддерживать ещё и устаревшие коды нет никаких сил, проще просто удалять, как делается для многих других свойств-идентификаторов. — Ivan A. Krestinin (talk) 07:55, 11 September 2016 (UTC)

Wikidata:Database reports/Constraint violations/P625 [2]Edit

Hi, there was no update of that constraint since 11 September. It may be related to addition of constraint (here). --Jklamo (talk) 07:13, 14 September 2016 (UTC)

If I'm the cause, then I'm sorry and we can revert that edit of mine. Didn't intentionally broke update :) But isn't there some way to generate value statistics table for P625? At least, a one-time update somewhere else, not on covi page. I think it would really be interesting to see, what the situation is. --Edgars2007 (talk) 08:03, 14 September 2016 (UTC)
Maybe not, it just mine hypothesis. I think your table may be crated using query, maybe this is what you looking for (autolist query, as I am still not familiar enough with sparql). --Jklamo (talk) 11:38, 14 September 2016 (UTC)
No, using WDQ is not possible to get the table of value statistics. changed the header, so one can get to right section --Edgars2007 (talk) 15:26, 14 September 2016 (UTC)
The report is too large now. I fixed error processing code to highlight the issue. But I need to think about working with too large report. — Ivan A. Krestinin (talk) 12:25, 25 September 2016 (UTC)


При изменении ОКТМО добавление ботом нового ОКТМО происходит без проблем, а вот при добавлении к нему ссылки пишет, что такого claim нет. Должно пройти какое-то время (не засекал, но не меньше 10 минут) прежде чем он даёт добавить добавить ссылку. У вас это происходит одномоментно. Не подскажете, в чём здесь загвоздка? Игорь Темиров (talk) 05:18, 15 September 2016 (UTC)

  • Не знаю, впрочем я уже какое-то время не редактировал ничего, возможно с каким-нибудь очередным обновлением у меня тоже будут проблемы. — Ivan A. Krestinin (talk) 12:09, 25 September 2016 (UTC)

Wikidata:Database reports/Constraint violations/P1792Edit

The "target required claim" reports on Wikidata:Database reports/Constraint violations/P1792 seem to be wrong. Basically all items with a category of associated people (P1792) claim are listed. Strangely, on Wikidata:Database reports/Constraint violations/Mandatory constraints/Violations the report length for P1792 is shorter but there still many false positives. --Pasleim (talk) 23:56, 20 September 2016 (UTC)

  •   Done, please wait for the next report update. — Ivan A. Krestinin (talk) 12:21, 25 September 2016 (UTC)
Thanks. --Pasleim (talk) 14:42, 25 September 2016 (UTC)

KrBot changing halfbrother to martial half-brotherEdit

See the discussion in the Project Chat: ChristianKl (talk) 16:26, 27 September 2016 (UTC)

Update stuck?Edit

Identical dates hasn't been updated.
--- Jura 09:23, 29 September 2016 (UTC)

Bot had some troubles with Q16086943. Now all is ok. It is difficult to identify the issue now. — Ivan A. Krestinin (talk) 10:23, 2 October 2016 (UTC)
Three items that became one? I don't think I have had that before. Thanks for having looked into it.
--- Jura 10:27, 2 October 2016 (UTC)
Is it possible that the main constraints reports have gotten so long to run that it just doesn't get to update this? Is there something we can do to limit the main constraint reports? Maybe for some of the constraints, it's not necessary to compute the violation and leave it to Special:ConstraintReport?
--- Jura 08:02, 6 October 2016 (UTC)
Would you check it once more?
--- Jura 15:33, 11 October 2016 (UTC)
Fixed, constraint report task took too much time. — Ivan A. Krestinin (talk) 13:50, 15 October 2016 (UTC)

Database Constraint report for 3217Edit

Should I do something to get the constraint violation report starting to run? - Salgo60 (talk) 13:37, 4 October 2016 (UTC)

No, you did everything you had to. That page will be updated in next 24 h. --Edgars2007 (talk) 13:42, 4 October 2016 (UTC)

Single value constraintEdit

For some identifiers we had deprecated values. Some contributors like to add these old data but this is a problem for the constraint Single value often used with identifiers. Do you know if it is possible to consider only value with a normal rank when perform the Single value check ? Thanks Snipre (talk) 07:28, 24 October 2016 (UTC)

Or rather, not to consider deprecated rank (since preferred rank is also possible @Snipre:). --Izno (talk) 12:01, 24 October 2016 (UTC)
@Izno: If we assume that an identifier is unique then we can't choose between several values so the preferred rank should not be used. Again the single value constraint implies that you have only one valid value at a certain date. Using preferred rank and deprecated rank only is not correct in this case. Preferred rank should be used only when you have several normal rank values. This is not the case here. Snipre (talk) 12:15, 24 October 2016 (UTC)
@Snipre: My point is that only "deprecated" should be excluded if there are multiple claims with a single value constraint. In other words, "preferred" should also produce a constraint error, if there are normal ranks also present. --Izno (talk) 12:18, 24 October 2016 (UTC)
@Izno: Ok with you if your "possible" is a possibility but not the acceptance as a normal case. Snipre (talk) 14:33, 24 October 2016 (UTC)
Current bot implementation ignores ranks at all. You can use parameter "separators=start time (P580), end time (P582)". Collecting deprecated identifiers is not looked as very good idea. The identifiers can be unverifiable. Are you know data client who need this information? Deprecated values are need to be processed in all data clients. Are you want to import all deprecated values to Wikidata? — Ivan A. Krestinin (talk) 20:46, 24 October 2016 (UTC)
The objective is first to know if it is possible and what are the technical consequences. We started a discussion in Project Chemistry about one identifier, the CAS number. We don't have a lot of deprecated values per item so it doesn't concern hundred thousands values.
The problem of the source is not a real problem: most of databases about chemicals using CAS numbers already implement some kind of redirection for deprecated values because CAS number is a worldwide identifier used in research as well than in the chemicals trading. So most of use still keep a trace of old values. Then the idea is not to import all possible deprecated values for CAS number because the original database is a proprietary database. So we have access only to the CAS number of the chemicals which the most use in the economy.
This idea is not supported by 100% of the contributors who took part to the discussion so the question is only technical. Snipre (talk) 19:41, 26 October 2016 (UTC)

Some structures of identifiers seem to escape the single value constraint; for example, HMDB changed it's ID structure from HMDBxxxx to HMDB00xxxxx. If one wikidata ID has the old structure, and another the new structure, this seems to go unnoticed by the single value constraint. See for example and (for the latter I removed the HMDB ID). Do you have any solution for this? Perhaps add a warning if the old ID structure is filled into Wikidata (like CHEBI:yyyyy is no longer an option, the "CHEBI:"-part should be removed).... DeSl 15:50, 22 August 2018 (UTC)

You can detect old format using format constraint (Q21502404) and fix it using {{Autofix}}. — Ivan A. Krestinin (talk) 19:02, 22 August 2018 (UTC)

Bn descriptionEdit

Hi, Currently your bot (KrBot) automatically adds description ("Wikimedia category") in 8 languages. Is it possible to add bengali description ("উইকিমিডিয়া বিষয়শ্রেণী") also? --Aftabuzzaman (talk) 15:57, 26 October 2016 (UTC)

Is it also possible to add hebrew? The description will be ("דף קטגוריה")--Mikey641 (talk) 17:43, 26 October 2016 (UTC)
This algorithm is not very efficient now. My bot adds every description using separate edit. I saw bots that add many descriptions using single edit. Please ask another botmasters. — Ivan A. Krestinin (talk) 19:09, 15 February 2017 (UTC)

Wikidata:Database reports/Constraint violations/P639Edit

Here your Bot produced an error. Steak (talk) 20:41, 2 November 2016 (UTC)

  • The page contains too many violations. Constraints are need to be reviewed to identify the most violated constraint. — Ivan A. Krestinin (talk) 19:41, 18 November 2016 (UTC)

External use botEdit

Hi, Ivan. I noticed that your bot is adding to "external use" template usage on ruwiki. I appreciate that as it is important to have that template as complete as possible. Do you have a script for that and it is possible to extend that to other wikis? --Jklamo (talk) 08:54, 3 November 2016 (UTC)

+1 to Jklamo request. It would be great to have a similar bot (or as script) to run also in hewiki. Eran (talk) 19:17, 14 November 2016 (UTC)
The code is dump-based and resource-consuming. It is not simple to scale it to all wikies. Do you know some service or API that allows to search {{#property... like constructions in all wiki templates? — Ivan A. Krestinin (talk) 19:45, 18 November 2016 (UTC)
Why not mw:API:Search? There you can search also by regex. --Edgars2007 (talk) 02:41, 25 December 2016 (UTC)
@Edgars2007: Sorry, I miss your post. mw:API:Search does not allow to search in page wiki-text. It searches in generated text. Try to find {{#property: construction. — Ivan A. Krestinin (talk) 12:31, 15 January 2017 (UTC)
There is insource: command for that, I thought you know about it, that's why I didn't mention it. See this example in API sandbox. --Edgars2007 (talk) 12:45, 15 January 2017 (UTC)
I think that is able to search specific text in wiki templates.--Jklamo (talk) 12:43, 15 January 2017 (UTC)
No, page wikitext isn't stored in SQL databases (that means, it's not available in --Edgars2007 (talk) 12:45, 15 January 2017 (UTC)
Thank you for "insource" keyword. Bot processed the most projects. Please notify me if bot miss something. — Ivan A. Krestinin (talk) 12:41, 23 January 2017 (UTC)
The thing bot "missed" is using other constructions than #property: to get data. You come from ruwiki, which is an excellent example. And then there are those Lua modules :) Much fun. Just loud thinking, no complains. --Edgars2007 (talk) 08:48, 26 January 2017 (UTC)
Also not complain, but profound thanks. What about deleted properties, did you process them as well? If not, I am very interested at least in P7 (P7) and P9 (P9).--Jklamo (talk) 09:10, 6 February 2017 (UTC)
Please provide examples of missed usages. Bot processed deleted properties too. But it has troubles with {{ExternalUse}} adding. Bot does not recreate property talk pages. As for P7/P9 bot failed to find appropriate place to the template. I added it manually and will restart bot. — Ivan A. Krestinin (talk) 09:37, 6 February 2017 (UTC)


Why did you do this edit? /ℇsquilo 10:21, 7 November 2016 (UTC)

Because the claim is exact dublicate of another claim for this property at that item. Read the edit summary. --Edgars2007 (talk) 10:40, 7 November 2016 (UTC)

Constraint violation reportsEdit

Your usually helpful bot hasn't updated any of the Wikidata:Database reports/Constraint violations/P* pages since 5 November. Is there an issue? Andy Mabbett (Pigsonthewing); Talk to Andy; Andy's edits 15:21, 9 November 2016 (UTC)

Just adding myself to the list of those who miss constraint violations updates.--Jklamo (talk) 00:22, 14 November 2016 (UTC)
+1. Lymantria (talk) 14:29, 14 November 2016 (UTC)
It's a pity that wikidata depends in a critical functionality on one user. Why cannot the Foundation run a reliable bot? Steak (talk) 20:07, 14 November 2016 (UTC)
Really, Steak? This outage is unusual and I hope Ivan is well. --Succu (talk) 21:34, 14 November 2016 (UTC)
Steak! Most (but not all) constraint reports can be seen if you follow the SPARQL-link in the constraints templates. Having a set of at least two bots for the most critical reports is not a bad idea at all. -- Innocent bystander (talk) 11:58, 15 November 2016 (UTC)
Not all reports are "SPARQLed" and there is anther added value of daily reports - if you are checking reports daily there is possibility to compare daily reports and detect bad imports or newbie users edits. --Jklamo (talk) 13:15, 15 November 2016 (UTC)
I had bad troubles with hardware. Now all is fine and bot will update the reports during next 5-10 hours. Pasleim reimplement the bot as I see. So the system is reserved now. Thank you, Pasleim. — Ivan A. Krestinin (talk) 19:50, 18 November 2016 (UTC)
That are good news. Thanks a lot. --Succu (talk) 20:55, 18 November 2016 (UTC)
Thanks much, Ivan and Pasleim!! Lymantria (talk) 10:07, 20 November 2016 (UTC)
Good to hear. Thank you. Andy Mabbett (Pigsonthewing); Talk to Andy; Andy's edits 15:10, 20 November 2016 (UTC)

Thank youEdit

Hello, this is amazing. I made a mistake and am unable to fix it using tools that I can control. There are identical problems in most Czech municipalities. Could you run through all of them and do the same? Thank you, --Vojtěch Dostál (talk) 14:16, 16 November 2016 (UTC)

Could you provide some unfixed item? — Ivan A. Krestinin (talk) 19:52, 18 November 2016 (UTC)

Publish the source of KRBot pleaseEdit

Hi Ivan, you're running a bot without it's source published. You vanished and the bot broke down so nobody could recover it. Please publish your source somewhere ( as soon as possible. No matter that it might be dirty, clean up needed, etc etc. Just dump online somewhere and add the link to User:KrBot. Pasleim now spend(/wasted) a lot of time on trying to recover the service, I would hate to see that happen again. Multichill (talk) 10:50, 21 November 2016 (UTC)

Hi Ivan, it's been a month since I posted this message. It would be nice if you could respond. Multichill (talk) 09:14, 21 December 2016 (UTC)
It looks like the response is no. I think similar code is already in Mediawiki (Special:Constraint report), it's just that WMDE doesn't want to work on it.
--- Jura 11:24, 21 December 2016 (UTC)
Let's not do assumptions and have Ivan respond. Multichill (talk) 11:29, 21 December 2016 (UTC)
The code is written on C++ and uses custom libraries. It does not have any documentation. It has unused parts, for example for property-described constants. The reports update algorithm is resource consuming. It eats 32 Gb of operating memory. Do you really need this code? And I will publish the code in case of my exit from the project of course. — Ivan A. Krestinin (talk) 18:13, 21 December 2016 (UTC)
Sounds like you forked wdq. ;-)
The current Bus factor (Q1812883) is one so yes, you should definitely publish it somewhere.
I don't want you to leave, but if you do decide to take a long holiday, at least the code is available to fork. It's also nice for other people who are re-implementing parts to be able to have a look at existing code how it's solved there. Multichill (talk) 22:39, 21 December 2016 (UTC)
  Support would be great. please! --Marsupium (talk) 13:31, 15 March 2019 (UTC)

Hi Ivan, I concur with Multichill's comments. It would really help if you could publish your code. There are a lot of benefits to that - for instance, people could propose new implementations for the constraints they want to add support for in KrBot. It would also be possible for people to know which constraint is supported, and how. − Pintoch (talk) 14:25, 13 June 2018 (UTC)

This required too many efforts from my side. — Ivan A. Krestinin (talk) 15:31, 13 June 2018 (UTC)


If you look at this edit, everything seems fine. But what you don't see in the difference is that the bot moved one claim from a slot that had no references into a slot that had two references. The edit therefore implies that the newly moved value is the one with references. This is deceptive, as the new claim value was not the one to which those references apply. --EncycloPetey (talk) 18:50, 11 December 2016 (UTC)

Identifier 179917357 is equal to 101760867. Both values identify single record in VIAF database. So reference applied to one value can be applied to the second value. — Ivan A. Krestinin (talk) 12:47, 12 December 2016 (UTC)


Откатите, пожалуйста, перенаправления типа этого. --Infovarius (talk) 21:28, 20 December 2016 (UTC)

И эти. --Infovarius (talk) 21:40, 20 December 2016 (UTC)
  DoneIvan A. Krestinin (talk) 04:35, 21 December 2016 (UTC)
Может, где-то есть страница запросов? :) Вот ещё: [23]. --Infovarius (talk) 13:00, 26 December 2016 (UTC)
  DoneIvan A. Krestinin (talk) 05:13, 27 December 2016 (UTC)

Batch rollback requestEdit

Your bot changed a large number of instance of (P31) MediaWiki configuration settings (Q21481290) to instance of (P31) Manuel Candamo (Q170059), where it doesn't know the merge action of Q21481290 is invalid. --Liuxinyu970226 (talk) 01:03, 24 December 2016 (UTC)

Would you do the same for Gottfried (Q16746939) > Q3566065. Thanks.
--- Jura 14:56, 26 December 2016 (UTC)

  DoneIvan A. Krestinin (talk) 05:13, 27 December 2016 (UTC)

Change the external link for CAS numberEdit

Hi. Just to inform you that the tool that lists all URL with a CAS number in order to access external databases is dead. Can you please please the links in Wikidata:Database_reports/Constraint_violations/P231 by* where * is the CAS number ? So will become Thank you. Snipre (talk) 20:36, 9 January 2017 (UTC)

@Snipre: the only thing you have to do is change formatter URL (P1630) at CAS Registry Number (P231) ($ there is kind of the same thing as * in your example here) --Edgars2007 (talk) 06:06, 10 January 2017 (UTC)
Edgars2007 Thank you. Snipre (talk) 09:07, 10 January 2017 (UTC)


Regarding Q27891162 I do not think that it is true, that it has a P:366 as Q949149

best regards to your bot, Scoid d (talk) 17:04, 20 January 2017 (UTC)

Bot in hollyday?Edit -- MovieFex (talk) 16:45, 25 January 2017 (UTC)

  • Bot worked on long import task. Now it downloads new Wikldata dump. So the report will updated in ~5 hours. — Ivan A. Krestinin (talk) 21:46, 25 January 2017 (UTC)

KrBot {{ExternalUse}}Edit

Hi. Thanks for maintaining KrBot. It seems that the bot hasn't been indexing property uses on Cantonese Wikipedia. Does it need to be set up separately for each wiki? Deryck Chan (talk) 15:40, 6 February 2017 (UTC)

Hello, bot processes all wikies. But it can miss some unknown constructions. Could you provide links to missed templates? — Ivan A. Krestinin (talk) 15:44, 6 February 2017 (UTC)
It seems that the template w:zh-yue:Template:英格蘭郡明細 (Infobox English county) is only indexed by Property talk:P625 (which ironically doesn't work, because zh-yue has a different implementation of {{coord}} that hasn't been ironed out yet). Your bot's latest batch of edits didn't index that infobox on any of the other properties it uses. Deryck Chan (talk) 11:31, 7 February 2017 (UTC)
I see that the latest run has indexed my template. Is there anything that needs to be done to ensure future uses of Wikidata by zh-yue.wp continues to be done properly? Deryck Chan (talk) 11:06, 8 February 2017 (UTC)
Different projects use different constructions to call Wikidata. Ruwiki uses {{Wikidata|P18}}, zh-yuewiki uses {{#invoke:wikidata|getvalue|P18}}. These constructions are need to be processed separately. So bot can miss some another call types. Just notify me if bot miss something. And I will add new calling convention to bot`s algorithm. — Ivan A. Krestinin (talk) 21:23, 8 February 2017 (UTC)
I wonder if syncing calls of something like w:Template:Uses Wikidata - and its equivalent in other projects - might be a better way of indexing uses of Wikidata. Eventually we'll need a central register of how each wiki calls Wikidata - it will be very useful if KrBot's input dataset (the constructions in each wiki) are listed on an editable wikipage. Deryck Chan (talk) 11:14, 9 February 2017 (UTC)

Rollback requestEdit

The merge from Murakami (Q21494521) to Murakami (Q1953526) was wrong. Could you please undo edits like this? --Pasleim (talk) 10:16, 10 February 2017 (UTC)

The merge from Juri (Q18932166) to Yuri (Q4995000) was wrong. Could you please undo edits like [24]? --Pasleim (talk) 17:04, 18 February 2017 (UTC)

KrBot problem with ExternalUseEdit

Hi KrBot has duplicated several times ExternalUse for itwiki, examples Property talk:P3109, Property talk:P3513, Property talk:P3442. Could you check your work and fix it? Thanks in advance. --Rotpunkt (talk) 13:50, 11 February 2017 (UTC)

  • Hi, the bug was fixed already. But I did not create algorithm to clean duplicate names. For now you can just revert bot`s edit on these pages. — Ivan A. Krestinin (talk) 17:26, 12 February 2017 (UTC)
Mhm, the problem is in a lot of pages, you should fix your errors, reverting your bot. --Rotpunkt (talk) 20:54, 12 February 2017 (UTC)
Fixed. — Ivan A. Krestinin (talk) 19:05, 15 February 2017 (UTC)

Your feedback matters: Final reminder to take the global Wikimedia surveyEdit

(Sorry to write in Engilsh)

External useEdit

There is some reason to add no existing template in Externale use like in P106? --ValterVB (talk) 20:06, 24 February 2017 (UTC)

  DoneIvan A. Krestinin (talk) 21:54, 24 February 2017 (UTC)

Do not delete the identifierEdit

Don't delete the identifier IMDb without correcting the entry at the Wiki-Article. There is Wikidata:Database reports/Constraint violations/P345 and it will be fixed, all inclusive. --MovieFex (talk) 02:51, 25 February 2017 (UTC)

Talk pages of constraint reportsEdit

When your bot creates a report page like Wikidata:Database reports/Constraint violations/PNNNN, please can it then create a redirect from the corresponding talk page, Wikidata talk:Database reports/Constraint violations/PNNNN, to the talk page for the property, Property talk:PNNNN, where those constraints are set? Andy Mabbett (Pigsonthewing); Talk to Andy; Andy's edits 17:31, 27 February 2017 (UTC)

Wow, I just saw the redirect creations, that a very good idea! Thank you Pigsonthewing (talkcontribslogs) and Ivan! Cdlt, VIGNERON (talk) 20:51, 1 March 2017 (UTC)

qualifier → referenceEdit

Здравствуйте! Спасибо за помощь,

Thank you for making corrections where I should be using the 'reference' field and not 'qualifier', I agree.

Kind regards, --2015.ww (talk) 05:25, 7 March 2017 (UTC)

Double entry on published in (P1433)Edit

You bot introduces a double entry on published in (P1433) [25]. — Finn Årup Nielsen (fnielsen) (talk) 13:38, 10 March 2017 (UTC)

Mass revertEdit

Hi, could you mass revert somehow your bot's "genre: drama" edits? Two items were merged that shouldn't have been. – Máté (talk) 13:24, 17 March 2017 (UTC)

  DoneIvan A. Krestinin (talk) 07:24, 18 March 2017 (UTC)

External useEdit

Hey, based on what did you do that can u do it again for all properties in hewiki? btw: in hewiki we use a template that indicates what properties are used for example he:תבנית:קו רכבת תחתית. thanks--Mikey641 (talk) 11:36, 19 March 2017 (UTC)

Reaction on WD:DNMEdit

Hi Ivan, I left a message on Wikidata talk:Do not merge where I pinged you. Could you please have a look at it? Q.Zanden questions? 13:44, 21 March 2017 (UTC)

KrBot not updating constraint violation reportsEdit

Hi Ivan, I noticed that KrBot did not update the constraint violation reports yesterday. Is everything working? Cheers. − Pintoch (talk) 09:14, 22 March 2017 (UTC)

Hello, bot started update process some hours ago. It had some troubles, but all is ok now. — Ivan A. Krestinin (talk) 21:05, 22 March 2017 (UTC)

Item labels on constraint reportEdit

Hi there, firstly thanks for running the bot for the constraint report, I've fixed many errors in both wikidata and articles because of it. I've been using Wikidata:Database reports/Constraint violations/P2697 and Wikidata:Database reports/Constraint violations/P2698 and I've noticed that P2698 just has the item numbers (ie Q123456) in the lists, but P2697 shows the item label and number (ie P.G. Wodehouse (Q207515)). Is there a setting somewhere to force the item labels to be shown on all reports? Thanks, The-Pope (talk) 00:45, 23 March 2017 (UTC)

It's because of length of report (if you use {{Q}} too much, you'll get Lua error). Because of relatevily new updates in Module:Wikidata Ivan may reevaluate the threshold, if it's set in bot's code. --Edgars2007 (talk) 13:56, 23 March 2017 (UTC)
Hello, you are right. Current threshold is 450 items. I increase it to 2000. Lets wait the next update. — Ivan A. Krestinin (talk) 18:28, 23 March 2017 (UTC)


Can't your bot do that in one edit? --Leyo 08:04, 6 April 2017 (UTC)

  • Hello, currently the bot does not have code for making this in single edit. Another bots can do this. — Ivan A. Krestinin (talk) 19:25, 6 April 2017 (UTC)

Three copies of the linkEdit

After this edit, Euripides (Q48305) now has three identical VIAF links to the same target. --EncycloPetey (talk) 23:36, 6 April 2017 (UTC)

Help with a regex for IPv4 routing prefix (P3761)Edit

Hi again Ivan, Thanks for your fix to the bot last month!

I have tried to fix the regex for the format of IPv4 routing prefix (P3761). It seems to be correct now (as a PCRE), and the web interface accepts well-formed edits, but it looks like KrBot considers that all the statements have an incorrect format. I think the slash was not properly escaped before, which is now fixed. Maybe the regular expressions are cached somewhere and we need to update that cache too? Have a good week-end! − Pintoch (talk) 22:45, 7 April 2017 (UTC)

    • Great, thanks a lot! Actually I did use and the previous regex did work in that tool (as a PCRE). Funny. − Pintoch (talk) 17:22, 10 April 2017 (UTC)

Updated VIAFEdit

I have done this in connection with an update of VIAF. The "correct" number was already there. Maybe the bot should check if the number is already there and then maintain the old number and deprecate it? Or do you have any other opinion? — Finn Årup Nielsen (fnielsen) (talk) 17:15, 9 April 2017 (UTC)

Eventually it removes that duplicate.
--- Jura 17:19, 9 April 2017 (UTC)
  Done Bot will fix duplicates immediately after appearing. — Ivan A. Krestinin (talk) 05:21, 10 April 2017 (UTC)

Удаление информацииEdit

Чего это бот такое делает: [26] ?ShinePhantom (talk) 03:31, 19 April 2017 (UTC)

В коде бота был баг, большинство правок вызванных этим багом я откатил, но вот эту похоже упустил. — Ivan A. Krestinin (talk) 04:26, 19 April 2017 (UTC)

Удаление Административно-территориальных единицEdit

Добрый день! Обратил внимание на несколько правок, сделанных Вашим ботом в части удаления из населённых пунктов и административных образованиях информации об административно-территориальных единицах, как упразднённых, так и ещё вполне действующих. Данная информация имеет значение для викиданных, просьба не удалять её. В частности в русской Википедии от этого зависит корректное заполнение карточек персон, в противном случае получается, что-то вроде Иванов родился в 1781 году в Нижегородской области Российской Федерации. И если можно, прокомментируйте, пожалуйста, правки Вашего бота. Хотелось бы понять масштаб проблемы: это было разовое действие или правка, осуществляемая на регулярной основе? Речь идёт только о России или о других странах тоже? Можно ли её отменить (вернуть как было)? --Ksc~ruwiki (talk) 19:28, 19 April 2017 (UTC) P.S. Прошу прощения, не заметил, что коллега уже затрагивал эту тему, но если можно ответьте на вопросы, чтобы у меня было понимание происходящего. --Ksc~ruwiki (talk) 19:30, 19 April 2017 (UTC)

По поводу элементов, где приведена история принадлежности объекта различным образованиям, где указаны квалификаторы start time (P580)/end time (P582) был баг в коде бота, такие элементы он трогать не должен был. Подобные правки, насколько я вижу, все откатили. Второй случай другой: если упрощённо, то раз Arzamas (Q103789) входит в Arzamas Urban Okrug (Q27546988), а Arzamas Urban Okrug (Q27546988) входит в Nizhny Novgorod Oblast (Q2246), то нет смысла дополнительно указывать, что Arzamas (Q103789) входит в Nizhny Novgorod Oblast (Q2246). Для России на Викиданных сейчас такая модель используется, про другие государства не знаю. Хотя существуют и другие модели. Например, модель чисто-административного деления. Или модель чисто-территориального деления. — Ivan A. Krestinin (talk) 19:55, 19 April 2017 (UTC)
Смысл есть на самом деле. Дело в том, что Arzamas Urban Okrug (Q27546988) сравнительно новое образование и Nizhny Novgorod Oblast (Q2246) для Arzamas (Q103789) всё равно придётся добавлять в отношении периода более раннего, чем 2005 год, конечно, проставляя квалификаторы. Страшного в таком удалении возможно и нет, но лишнюю работу делать никому не хочется. P.S. Спасибо, что быстро и понятно ответили. --Ksc~ruwiki (talk) 20:52, 19 April 2017 (UTC)

Constraint report P274 (chemical formula): error code 'badmd5'Edit

Hi. It seems the constraint report for chemical formula has been failing since September with the message "Edit failed, error code 'badmd5' (The supplied MD5 hash was incorrect.)." Prior to this, it was untouched for a long time -- the last successful KrBot report appears to be April 2015. Do you know what causes this? Perhaps some differences or weirdness in Unicode handling. Seems like something that needs to be fixed in User:KrBot. Intgr (talk) 15:17, 24 April 2017 (UTC)

Hello, the issue is caused by symbol with UTF-8 code 0xCE 0x87. MD5 checksum is b80d5a5d9193d69ce0b1009c31587da5, but it is rejected by request. I will continue the investigation. — Ivan A. Krestinin (talk) 17:41, 24 April 2017 (UTC)
Posed to Phabricator. — Ivan A. Krestinin (talk) 18:51, 24 April 2017 (UTC)

Source code for redirect fixing scriptEdit

Hello Ivan, do you have the source code for the script that fixes links to redirects on Wikidata statements? I merge items a lot and this creates a lot of redirects, and I would like to be able to fix them quickly. Thank you, Harej (talk) 03:40, 26 April 2017 (UTC)

  • Hello, the source is here. But it is written on C++ and requires a number of custom libraries, makefiles and etc. I am not ready to publish whole bunch of sources. — Ivan A. Krestinin (talk) 20:41, 26 April 2017 (UTC)


[27]: Removed claim: Commons category (P373): Burston School Strike, несуществующий файл / missing file. Стоит пофиксить :) --XXN, 12:20, 29 April 2017 (UTC)

  • P.S. Вас могло бы заинтересовать этот таск. Даже если Infovarius работает/работал над этим, тут пахнет перманентным заданием. --XXN, 12:27, 29 April 2017 (UTC)
  • Описание поправил, а тот таск мне не по душе :) Не нравится мне самое главное искать глазами где-то в конце метки, зря что-ли во всех энциклопедиях фамилию первой пишут. — Ivan A. Krestinin (talk) 13:01, 29 April 2017 (UTC)

same objectEdit

Please, can you verify Q25710438 and Q25188681. It's the same

2A01:CB14:1E0:9900:9930:B901:4A5:2467 09:04, 5 May 2017 (UTC)

Merged. — Ivan A. Krestinin (talk) 20:25, 5 May 2017 (UTC)

Координаты из бевикиEdit

Добрый день! Не могли бы Вы вытянуть в ВД координаты из шаблона Славутасць (Храм, Помнік)? --Чаховіч Уладзіслаў (talk) 20:10, 5 May 2017 (UTC)

Please see Project Chat for spacecraft ontology discussionEdit

Please see my comment here on your massive reverting. Thanks [28] - Fuzheado (talk) 01:44, 12 May 2017 (UTC)


Hello !
I am a member of the genealogical wiki Rodovid (FR) and I have seen that on 5 January 2015 KrBot added numerous links to records of our site.
If you are interested, there are other links that could be established towards pages of Rodovid, like the one for Ivan the Terrible.
Rodovid has a complete list of the records (some 30 000) that include a link to a Wikipedia page about the same person.
In Russian, you can find it starting here.
Some of these links are internal redirects to pages of Rodovid, but most are leading to Wikipedia and are beginning with "wikipedia:", "wikipedia:en:", "wikipedia:fr:", "wikipedia:ru:", "wikipedia:uk:" etc.
Normally, one person is identified by a unique number. Different records can be written about one person in several linguistic localizations of Rodovid but they will have the same number (a bit like Wikidata).
(In some temporary cases, duplicate records may have been written about the same person under different numbers.) Penkroff (talk) 22:02, 12 May 2017 (UTC)

Hello, Rodovid uses CC 2.5, WD uses CC0. Are these license compatible and allows data import? — Ivan A. Krestinin (talk) 06:58, 13 May 2017 (UTC)
I asked the question to Y.Boychuk (Baya), developer of Rodovid. Penkroff (talk) 18:00, 13 May 2017 (UTC)
My personal interpretation : CC 2.5 deals about the content, but just adding addresses with numbers probably does not involve any copyright; and the license says it does not prevent "fair use". Penkroff (talk) 23:59, 14 May 2017 (UTC)
Question from Baya on the Rodovid talk page : if these links were possible in 2015, why should the situation be different now ? 23:59, 14 May 2017 (UTC)
Previously bot imported data from Wikipedia. Now you suggest to import data from Rodovid site. — Ivan A. Krestinin (talk) 18:28, 15 May 2017 (UTC)
This list can not be used directly. It has many unreliable records. My bot need account for getting page source. Could you create it? — Ivan A. Krestinin (talk) 18:54, 15 May 2017 (UTC)
Of course, if Baya agrees. (Another procedure for membership is indicated on the Main Page of Rodovid EN.) Penkroff (talk) 01:00, 16 May 2017 (UTC)

Baya likes this idea of cooperation. Just send a message to : (indicating the name you have chosen for your account). Penkroff (talk) 18:00, 17 May 2017 (UTC)

Ok, I sent the email. — Ivan A. Krestinin (talk) 18:37, 17 May 2017 (UTC)
Done (see mail of answer). Penkroff (talk) 22:01, 17 May 2017 (UTC)

Rodovid uses very old Mediawiki version. I can not find a way to retrieve list like [29] via api.php. Could you help with this task? — Ivan A. Krestinin (talk) 07:53, 22 May 2017 (UTC)

Добавление описаний в элементах категорийEdit

Здравствуйте. Не могли бы вы слегка изменить код бота что-бы он при добавлении множественных описаний в элементах категорий сделал бы это всё в одну правку (что-бы не перегрузить излишне историю элемента и списки наблюдения участников)? См. также обсуждение. --XXN, 16:14, 16 May 2017 (UTC)

Приветствую, давно бы это сделал, но несколько проблематично выполнить это пожелание из-за некоторых сложностей архитектурного характера. Вообще в плане категорий мой бот лишь подчищает то, что не сделали другие боты. Я не прочь, если другие боты будут более аккуратными и тогда моему просто не останется работы. — Ivan A. Krestinin (talk) 18:28, 16 May 2017 (UTC)


Hey Ivan, can you please look up how your bot decided to remove the URL in this diff? I don’t see anything wrong with it… Regards, MisterSynergy (talk) 15:52, 21 May 2017 (UTC)

Read the edit summary till end and then take a look at Property talk:P973. --Edgars2007 (talk) 17:20, 21 May 2017 (UTC)
Oh I see. That wasn’t self-explaining   … Thanks! —MisterSynergy (talk) 17:36, 21 May 2017 (UTC)


Сколько можно? ... ОКАТО и ОКТМО это про Урал (Буздякский район) Каранский сельсовет (Буздякский район)). А этой деревни уже нет...--User№101 (talk) 19:31, 23 May 2017 (UTC)

Поправил, бот не будет пытаться подобрать коды, если указано свойство dissolved, abolished or demolished (P576) или в графе "население" значится "0". — Ivan A. Krestinin (talk) 21:12, 23 May 2017 (UTC)

Constraint reportsEdit

In the constraint reports for P345 (IMDb ID (P345)) I realized that there are values that shouldn't be reported for the conflicts with report. For example, in the second section of the conflicts with constraint there is Spierig brothers (Q7577128), whose value for the IMDb ID (P345) is no value. This is usually done to prevent some bots from importing the value incorrectly and to indicate that the element doesn't had value for that property. I don't know if you agree or not with this usage of the no value option, but regardless of that the "no value" claim shouldn't be listed as a conflicting value. It's already ignored by the constraint report special page for that entity and it would be nice if it could be ignored by the constraint reports generated by your bot. Could you fix it for future reports? -- Agabi10 (talk) 19:34, 25 May 2017 (UTC)

I do not think that it is good idea to add novalue as workaround for bugs in bot`s code. This will generate unexpected number of =novalue claims. The claims will be similar to garbage. Somebody will add P345=novalue to every group of humans (Q16334295) item, somebody will add it to every taxon (Q16521)... I think bots must be more intellectual. It is very simple to add check constraint like "Conflicts with" to bot`s code. I have one more idea. @Lucas Werkmeister (WMDE): Could we integrate wbcheckconstraints to wbcreateclaim? Now the call supports checks "assert=bot", "assertuser=KrBot". Additional parameter like "assertconstraints=Q21502838,Q21510859" or "assertconstraints=all" will improve quality of the project data. — Ivan A. Krestinin (talk) 20:09, 25 May 2017 (UTC)
Regardless if it's a good workaround or not the entities with novalue shouldn't appear in the constraint report as conflicting values. If we want to prevent a property with novalue set I rather add an additional constraint to generate a report for the claims with novalue set for a given property. Anyway this is only for conflicting constraints, obviously novalue shouldn't be ignored for example in the single value constraints (I've seen today an entity with novalue and other two values for the same property). About the assertion of the constraints I don't really understand what type of checks it would be doing... The first two assertions are quite straightforward, but the last one should it be checking a given constraint type, should only check for the conflict constraint types or should work for any constraint? If the creation of the claim would for example trigger a constraint for a check if the instance is for a given type and the instance is not specified should that claim creation be prevented or not? -- Agabi10 (talk) 20:46, 25 May 2017 (UTC)
I think novalue and inapplicable are different cases. For example I can create claim Oon Chong Hau (Q1426006) IMDb ID (P345) novalue because IMDb collects information about peoples. And this man can have this identifier, but currently he does not have it. Maybe he will have the ID in the future. But claim Oon Brothers (Q7095351) IMDb ID (P345) novalue is incorrect because IMDb does not collect information about sibling group (Q16979650). This item will have the ID never. The first case is novalue case. The second is inapplicable case. {{Constraint:Conflicts with}} is needed for inapplicable case detection. — Ivan A. Krestinin (talk) 08:01, 28 May 2017 (UTC)
@Ivan A. Krestinin: As far as I know, our current plan is to add support for checking constraints on statements that you are about to add (so the user script / gadget would warn you before you click “save”), but I don’t think we would do that as part of wbcreateclaim. But I’ll try to keep this suggestion in mind when we actually get there. --Lucas Werkmeister (WMDE) (talk) 10:40, 29 May 2017 (UTC)

LC Auth IDEdit

According to the property descriptions, this edit is incorrect.

The description of Library of Congress authority ID (P244) says: "Library of Congress ID for authority control for persons, organizations and subject headings (for books use P1144)".

Before your edit, Cape Cod (Q27979486) was using Library of Congress Control Number (LCCN) (bibliographic) (P1144) because it is an instance of a book. You changed it to Library of Congress authority ID (P244) which is for persons, organizations and subject headings. --EncycloPetey (talk) 23:38, 25 May 2017 (UTC)

Bot did such edit, because (according to description at property talk page) it was using inccorect format (Bibliographic records do not have prefixes n, nb, nr, ns, sh, sj, sn). So it automatically moved to Library of Congress authority ID (P244). It was wrong anyway :) --Edgars2007 (talk) 06:42, 26 May 2017 (UTC)
But the change is also wrong. This property should not be used for books. --EncycloPetey (talk) 14:50, 26 May 2017 (UTC)
Ok, lets fix the issue. My bot changed ~60 items. But Library of Congress authority ID (P244) was widely used for books before my bot edits, see [30]. Also format constraint on Property talk:P1144 does not allow codes like n85201132. Lets fix and improve constraints as the first step. Could you fix format constraint, add type constraint and conflict with constraint? I do not understand difference between these properties enough. — Ivan A. Krestinin (talk) 16:27, 26 May 2017 (UTC)
No one understands the difference in these properties! If you look at the talk pages, people keep asking question because they are confused, but no one gives answers. We may need to have a community-wide discussion to get answers. --EncycloPetey (talk) 17:35, 26 May 2017 (UTC)
I added {{Constraint:Type}} for Library of Congress authority ID (P244), please review results: Wikidata:Database reports/Constraint violations/P244#Types statistics. Do we need move some values to Library of Congress Control Number (LCCN) (bibliographic) (P1144) based on item type? — Ivan A. Krestinin (talk) 08:15, 29 May 2017 (UTC)

Selective reflection of constraint violation changesEdit

KrBot's update of Wikidata:Database reports/Constraint violations/P1422 from 2017-05-28T04:41:08 reflects this change from 2017-05-26T18:03:56 but not this change from 2017-05-27T15:27:10. Perhaps that is normal behaviour of KrBot. I just wanted to let you know for the case it is not … Cheers, --Marsupium (talk) 16:01, 28 May 2017 (UTC)

Constraint reports are always 12 hours outdated afaik. Sjoerd de Bruin (talk) 16:16, 28 May 2017 (UTC)
You are right. Details can be found on This lag was created for Wikipedia, it allows to hide some changes. Wikidata is a bit different project. I think you can create Phabricator task to remove this lag for Wikidata. — Ivan A. Krestinin (talk) 16:32, 28 May 2017 (UTC)
OK, thank you, good to know! --Marsupium (talk) 18:27, 28 May 2017 (UTC)
Took some time to create the task. Sjoerd de Bruin (talk) 11:11, 31 January 2018 (UTC)

Dublicates on covi reportsEdit

Can't show you an example, but when some item has dublicate value for some property, it's get listed in both single value violation section and unique value violation section. I could agree, that it's a single value violation, but don't you think, that it shouldn't get reported as unique value violation? --Edgars2007 (talk) 17:08, 28 May 2017 (UTC)

  • My bot removes such values automatically as one of the tasks. So it appears only once in the reports :) I can filter such values, but this will create dependencies between separate constraints. It will increase bot`s code complexity. Also this dependency will be not obvious for another users. So I prefer do not make such changes. — Ivan A. Krestinin (talk) 21:39, 28 May 2017 (UTC)
    • I'm bringing this up, because I think it's confusing to non-Wikidata-veterans. If you are aware of this issue/thing, then we can {{resolve}} it. --Edgars2007 (talk) 07:25, 29 May 2017 (UTC)

Edits with no changeEdit

Why did your bot do this? There was no change after it was done. --EncycloPetey (talk) 21:04, 28 May 2017 (UTC)

  • It was manual edit. I experimented with query
    SELECT ?value (STRLEN(STR(?value)) AS ?stringLength) WHERE
      wd:Q3785162 wdt:P950 ?value
    Try it! I do not understand why stringLength is 10. — Ivan A. Krestinin (talk) 21:48, 28 May 2017 (UTC)


Hi, I tried using {{CURRENTYEAR}} in a constraint for date of official closure (P3999), and your bot didn't recognize it. Would it be possible for your bot to accept this value? Thanks, Jc86035 (talk) 14:25, 30 May 2017 (UTC)

Incorrect postal code changeEdit

Erroneous edits on Justin Knapp (Q3331076) by User:KrBotEdit

See here and the subsequent revert. —Justin (koavf)TCM 19:51, 5 June 2017 (UTC)

Wrong edit about RedditEdit

This change is wrong. "AndreaGibsonOfficial" is a username, not a subreddit ID. Robin van der Vliet (talk) (contribs) 12:25, 9 June 2017 (UTC)

Still plenty of VIAF clean upEdit

I see plenty of commentary of incorrect VIAFs from KrBot, and there is still plenty of mistakes to tidy up. Some of the errors are just weird, this is more recent than the last commentary, so just pointing to It would be useful in additions to know the basis of how the bot applied its addition.  — billinghurst sDrewth 06:04, 12 June 2017 (UTC)

This quite recent edit has picked up wrong data from somewhere, can you work out the origin? I hacked back a range of data to cleanup and reimport (easier than one-to-one matching), and at first blush it seems that only the VIAF data is incorrect, which is what the bot has imported. Can we identify what is going on? We need to stop the error rate of the bot which is problematic in the incorrect application, and a PITA to have to clean up. Thanks.  — billinghurst sDrewth 07:37, 13 June 2017 (UTC)

Not helpful already utilised, maybe you can get the bot to check whether something is used prior to addition. Even if it means creating an error list elsewhere for checking. Forcing a wrong addition is not the right way to go.  — billinghurst sDrewth 12:42, 10 July 2017 (UTC) with no indicators of why added  — billinghurst sDrewth 12:50, 10 July 2017 (UTC) and noting that I am not including every error, I skip some.  — billinghurst sDrewth 12:56, 10 July 2017 (UTC)
Edit without comment is redirect resolving. Just see both IDs (old and new) on VIAF site. So please see the items history or reference section for original ID source. The edits are needed to highlight errors and bring its to "Unique value" report. — Ivan A. Krestinin (talk) 13:03, 10 July 2017 (UTC)
For these, I think redirect resolving is useful. Interesting to watch when you add 3 or 4 identifiers for the same person and then see it reduce as they merge one after the other.
--- Jura 13:08, 10 July 2017 (UTC)

Small optimization for User:Ivan A. Krestinin/To merge/*Edit

Hi Ivan, these days there are a lot of items listed in your automatically generated merge lists. It would somewhat reduce the number of false positives if you could slightly improve the algorithm as follows: do not list a matching pair of items if one refers to the other using different from (P1889). Amongst many other examples: Q17351696 and December 32 (Q2816177). It would be some kind of item-defined white-list. Hope you can add that feature. Anyhow, thanks for these very useful lists. -- LaddΩ chat ;) 21:12, 5 July 2017 (UTC)

  Done, please wait the next update. — Ivan A. Krestinin (talk) 20:44, 7 July 2017 (UTC)

Patriarch ≠ PatriarchatEdit

There is a difference beetween patriarch as person and patriarchat as diocese. --Enzian44 (talk) 14:47, 9 July 2017 (UTC)

For example this: . --Enzian44 (talk) 15:25, 10 July 2017 (UTC)
Item Q23776433 and Patriarchate of Venice (Q740783) were merged by ArTrix. — Ivan A. Krestinin (talk) 22:13, 10 July 2017 (UTC)

Exceptions on Property:P21Edit

Hi Ivan,

The migration seems to go fine, mostly. Good work!

Just a minor thing: on Property:P21 an exception that was defined for one thing go added to other statements as well.
--- Jura 08:10, 13 July 2017 (UTC)

Thank you. Source template does not contain information about exact property. — Ivan A. Krestinin (talk) 16:03, 16 July 2017 (UTC)
Indeed. I hadn't noticed that.
--- Jura 16:26, 17 July 2017 (UTC)

date of death (P570)Edit

You have imported a incorrect qualifier to difference within range constraint (Q21510854). The correct is minimum value (P2313) and maximum value (P2312) with unit year (Q577).--GZWDer (talk) 15:50, 13 July 2017 (UTC)

I have corrected it, but please update your bot if possible (see Help:Property constraints portal/Diff within range).--GZWDer (talk) 15:55, 13 July 2017 (UTC)
Migration script failed for several properties. Now I am working on it. — Ivan A. Krestinin (talk) 20:12, 13 July 2017 (UTC)

Double commentsEdit

I reverted two edits of your bot commenting out once-commented templates. Please check all edits and revert if needed. --Tacsipacsi (talk) 10:54, 14 July 2017 (UTC)

несуществующая категорияEdit

В этом элементе с 2014 г. до сегодняшнего дня три раза была добавлена Commons category (P373) и три раза ваш бот удалил её как несуществующюю. Всё правильно ) Но могли бы вы добавить немножко кода что-бы бот попытался искать русскую интервику в элементе и по ней идти в русской статьи, искать и удалить и там параметр commonscat или как его там? Как альтернативу можно просто постить сообжение на СО русской статьи о наличии такой ошибки, или же генерировать журналы и предоставить их куда-то в рувики для дальнейших действий других участников. А то думаю что такие круговороты могут продолжаться долго в частности из-за гаджета инфобокса экспортера который упрощает процес; может даже стоит там предлаогать для него новую фичу - распознавание несуществующих категорий с викисклада что-бы народ не тратил время зря добавить их сюда. Или же одноразовый или периодический таск для ботов в рувики - проверить действительны ли категории викисклада указанные в статьях. --XXN, 20:26, 15 July 2017 (UTC)

  • Проблема не специфична для рувики, подобный мусор периодически танется из многих разделов. Если в рувики я ещё что-то могу сделать роботом, то в других разделах флага бота у меня нет. Вообще, на мой взгляд, проблема в кривых гаджетах и ботах, которые ленятся осуществлять хотя бы минимальную проверку импортируемых данных. Что стоило гаджету проверить существование категории и если она не существует, то выдать пользователю сообщение? — Ivan A. Krestinin (talk) 16:11, 16 July 2017 (UTC)

Reports brokenEdit

Both Wikidata:Database reports/Constraint violations/P350 and Wikidata:Database reports/Constraint violations/P650 are broken since 13 July 2017‎. Can you please restore them? Multichill (talk) 10:57, 16 July 2017 (UTC)


Couldn't your bot do this in one edit? --Leyo 14:33, 17 July 2017 (UTC)

  • Hello, currently the bot does not have code for making this in single edit. Another bots can do this. My bot just fix categories remaining after another bots. — Ivan A. Krestinin (talk) 19:58, 17 July 2017 (UTC)
    Indeed. Couldn't you just ask for that code? --Leyo 21:18, 17 July 2017 (UTC)
    We use different frameworks, different programming languages. The code is incompatible with my bot. Just ask the edit author be more accurate and process all new categories. After this my bot will have no job. — Ivan A. Krestinin (talk) 21:40, 17 July 2017 (UTC)
    Well, I am pinging GZWDer then. --Leyo 22:20, 17 July 2017 (UTC)
    @Leyo: Emijrpbot, Mr.Ibrahemgbot and XXN-bot are doing this.--GZWDer (talk) 05:46, 18 July 2017 (UTC)
    OK, thanks. These bots did not react within the 8 days until KrBot did the stepwise additions. --Leyo 10:10, 18 July 2017 (UTC)

format as a regular expression (P1793) as statementEdit

Hi Ivan,

Some properties have this as a statement as well. I wonder if the syntax clarification (P2916) qualifiers could be moved to the constraint statement and these deleted. I'm aware that this isn't part of the constraint migration. There also many P1793 that were not in sync with the constraints.
--- Jura 16:30, 17 July 2017 (UTC)

https linksEdit

I noticed KrBot has been adding links to xkcd comic strips using https instead of https. It would be a good idea to only add https links whenever possible. ~nmaia d 13:02, 22 July 2017 (UTC)

Hello, could you provide link to the edit? — Ivan A. Krestinin (talk) 13:54, 22 July 2017 (UTC)

Thanks for your editEdit

  Thank you. for this and other similar edits. I set them wrong and was just trying to figure out how to fix them, but you beat me to it. --Jarekt (talk) 17:03, 26 July 2017 (UTC)

Novalue as unitsEdit

Hi Ivan,

Somehow the new "novalue" doesn't seem to match "no units", so there are many exceptions on Wikidata:Database reports/Constraint violations/Mandatory constraints/Violations. Sample: Property:P1457#P2302 at Q107556#P1457.
--- Jura 13:40, 27 July 2017 (UTC)

Новая заглушкаEdit

Смотрю что бот не распознал и не убрал её сразу,[31] наверное "не знает" о ней (отсутствует в определенном списке?), по этому решил уведомить вас (может нужно обновить/дополнить список). --XXN, 17:42, 27 July 2017 (UTC) P.S. Написал и тому кто добавил их.

Добрый день, бот считает заглушками то, что находится в категории commons:Category:Image placeholders. — Ivan A. Krestinin (talk) 21:44, 27 July 2017 (UTC)
Понял. Добавил тот файл в нужную категорию и бот убрал заглушки. XXN, 17:54, 29 July 2017 (UTC)


Нашел этот список этнохоронимов. Может захотите залить их в элементах стран где отсутствует demonym (P1549) для русского языка. --XXN, 20:06, 27 July 2017 (UTC)

Прямо сейчас времени нет, лучше на Wikidata:Bot requests. — Ivan A. Krestinin (talk) 21:46, 27 July 2017 (UTC)
Не в этом дело; я больше написал вам по тому что для вас русский - родной язык, и там нужно было бы перепроверить всё тщательно перед заливкой (источник так себе). Тем временем постил список в ВП и в словаре, и нашлись пару-тройку значений которых лучше пропустить. XXN, 17:54, 29 July 2017 (UTC)
На перепроверку у меня времени точно не хватит. — Ivan A. Krestinin (talk) 12:11, 31 July 2017 (UTC)

Range constraintEdit

[[32]] has currently more violations than items processed, but the values seem to be within range of focal height (P2923).
--- Jura 08:39, 31 July 2017 (UTC)

Fixed, some other properties are need fix like this. — Ivan A. Krestinin (talk) 18:02, 31 July 2017 (UTC)
Thanks. There were 3 left:   Done
--- Jura 18:27, 31 July 2017 (UTC)


At Wikidata:Database_reports/Constraint_violations/P3450, would you change it so that it gets processed?
--- Jura 06:46, 1 August 2017 (UTC)

DoneIvan A. Krestinin (talk) 17:14, 1 August 2017 (UTC)
Pasleim changed it to something else, but at P2572 it's still used and likely to stay. Neither work.
--- Jura 05:50, 2 August 2017 (UTC)

If the constraint check on some of the constraint statements fail, maybe the bot could just report that at the beginning of the report and then process what works. With constraint statements, malformed constraints should be less frequent than with templates. Currently constraint with the "contemporary constraint" and the qualifiers for annotations break the reporting
--- Jura 05:40, 22 August 2017 (UTC)

I have some troubles with error processing architecture. Also I think we need to cleanup malformed, unimplemented and randomly defined constraints. Contemporary constraint is not ready for migration from template as I think. This kind of constraint must be better defined firstly, see Situation with annotation qualifiers must be resolved too. Two different properties with similar descriptions and purposes are unsuitable. syntax clarification (P2916) has incompatible labels and descriptions for constraint commenting. — Ivan A. Krestinin (talk) 20:10, 22 August 2017 (UTC)
At some point, I asked for the properties for constraints to be created to enable us to query some of these even though neither your reports nor Special:ConstraintReport supported it. It helped us sort out some things and discover some limitations. Even if "contemporary constraint" currently doesn't work, I think we should let its proponent experiment with it. The idea seems good, maybe eventually someone will find a way to fully specify and implement it. In the meantime, we could query properties to which it might apply. As for annotations, I think they can just be ignored for automated processing (they are for users). P2916 will probably be displayed in the error message. All these currently pass constraint checks for property constraint (P2302)
--- Jura 06:39, 23 August 2017 (UTC)


Related question: Wikidata:Database reports/Constraint violations/P3450 has not been updated since 1 August 2017, and it says ERROR: Constraint Target required claim does not accept qualifier P2916. However, syntax clarification (P2916) has not been used in the constraints of sports season of league or competition (P3450) anywhere since 20 August 2017. Do you have any idea why that constraint report does not update? Could it be related to the use of Wikidata usage instructions (P2559) qualifiers in the constraint statements? Thanks, —MisterSynergy (talk) 12:48, 16 March 2018 (UTC)

Hey Ivan, that mentioned constraint report now receives updates again, but it still has issues as you can see from the page history. Can you please have a look? Thanks, MisterSynergy (talk) 06:20, 5 May 2018 (UTC)
The issue is on Mediawiki core side. Maybe the core fails on overriding one long report (~ 1 megabyte) to another long report. Reducing the report size can help. — Ivan A. Krestinin (talk) 07:02, 5 May 2018 (UTC)
Maybe it could try to blank the page first and then add the new one. I will try to reduce the size a bit, maybe not today though.
--- Jura 07:20, 5 May 2018 (UTC)
An alternative would be to review the plenty item/value requires statement constraints, and maybe remove some of them. They are not crucial for the functionality of this property, but result in a large amount of violations. On the other hand it might be possible to fix a substantial amount of them with imports … —MisterSynergy (talk) 07:28, 5 May 2018 (UTC)
Well, it is a very bulky field. Anything needs to be done on thousands of items. I think the property helped streamlining it.
--- Jura 07:56, 5 May 2018 (UTC)
Started a discussion at Property talk:P3450#Constraints review. —MisterSynergy (talk) 08:19, 5 May 2018 (UTC)

Constraint - unique values combinationEdit

Hello, Is possible to add some not simple constraints to category combines topics (P971)?

  • Must be at least two values
  • Must be unique combination (Q123 + Q456 should be only in one category)
  • maybe add too: P971 must not be the same as P301?

JAn Dudík (talk) 07:51, 2 August 2017 (UTC)

@JAn Dudík: I removed the multi-value constraint from that property, not really because I don't think it applies, but merely because I tend to fill this property for one value at a time. (e.g. all categories about churches get P971=church). To make use of the category, the full combination is generally not needed either.
Obviously, none of this prevents us from having such a constraint. It may be useful in other contexts. BTW with Template:Complex constraint, you could design it now.
--- Jura 08:25, 2 August 2017 (UTC)

VIAF values get deleted by the botEdit

I just saw that the bot deleted a VIAF authority reference from Eleanor Criswell Hanna (Q26973029). What's the reasoning for deleting here with the bot instead of deprecating the value? ChristianKl (talk) 09:35, 3 August 2017 (UTC)

Some questions: Is this value usable for some applications? Can this deprecated value be validated? Can we create full set of such values? — Ivan A. Krestinin (talk) 19:17, 3 August 2017 (UTC)
As they redirect they can be validated I think. --Marsupium (talk) 06:30, 25 September 2017 (UTC)

Size of talk pageEdit

You talk page is currently 188,904 bytes long; please archive most of it. Andy Mabbett (Pigsonthewing); Talk to Andy; Andy's edits 12:26, 7 August 2017 (UTC)

Instance or classEdit

Ivan, can you please implement relation = instance or subclass of (Q30208840) ? It is used e.g. for "физическая величина". --Infovarius (talk) 09:37, 16 August 2017 (UTC)

The case is looked like bad defined property domain. I am worry that implementing such abilities will reduce data quality. Single property will have many meanings depending on exact item. — Ivan A. Krestinin (talk) 10:19, 16 August 2017 (UTC)

Заливка Property:P625Edit

Приветствую! Хотим ускорить выверку многострадальных рек РФ в Рувики, вытащив координаты из себуанской вики. Если есть возможность, был бы благодарен помощи:

  1. чтобы отделить статьи на выверке от прочих, необходимо залить координаты устий из статей Рувики таким образом (все реки без координат (19578 штук))
  2. чтобы в дальнейшем получить координаты из себуанской вики необходимо проделать такую операцию (там координаты не обязательно в устье) (все реки без координат (26692 штук))
  3. если есть возможность, хорошо бы проставить код GeoNames, он есть во всех статьях себуанской вики о реках РФ.

Предыстория вопроса: ru:Википедия:Форум/Викиданные#Связать себуанскую ВП, ru:Википедия:Форум/Викиданные#Связать себуанскую вику: реки Республики Алтай (само обсуждение в skype). Мастер теней (master of shadows), 00:53, 22 August 2017 (UTC)

Вечер добрый, изучаю что могу сделать. Ленивые ботозаливщики в cebwiki вместо того, чтобы сделать специализированный инфобокс для заливки зачем-то использовали универсальный geobox, это вносит определённые трудности. — Ivan A. Krestinin (talk) 20:16, 22 August 2017 (UTC)
Запустил по категории ceb:Kategoriya:Rusya paghimo ni bot. — Ivan A. Krestinin (talk) 21:18, 22 August 2017 (UTC)
Если есть возможность, то заливка координат из Рувики на данный момент приоритетнее. Там требуется заполнить порядка 13 тысяч элементов. Так мы сможем сразу заняться слиянием пласта на выверке. Мастер теней (master of shadows), 12:29, 23 August 2017 (UTC)
По-быстрому не получилось, в шаблоне Река использован нестандартный способ указания координат, готовый код не подошёл. Может на выходных сделаю. — Ivan A. Krestinin (talk) 21:21, 23 August 2017 (UTC)
Есть код на C#, JS и php. Подойдёт какой? Мастер теней (master of shadows), 22:38, 23 August 2017 (UTC)
Запустил. — Ivan A. Krestinin (talk) 08:24, 26 August 2017 (UTC)
Если не сложно, поправьте реки у которых оказалось по четыре набора координат: A. Krestinin (talk) 08:46, 26 August 2017 (UTC)
Подчистил. — Vort (talk) 10:27, 26 August 2017 (UTC)
Vort: там уже ботопроход требуется... Как минимум удалить все себуанские при наличии наших. Мастер теней (master of shadows), 17:29, 29 August 2017 (UTC)
Наши бывают грубее себуанских. Тут скорее дедупликация по критерию расстояния нужна. И не только по этому списку, а по всем водным объектам. — Vort (talk) 04:49, 30 August 2017 (UTC)
  • С координатами возникли проблемы? А то мы уже нащёлкали (насливали) свалившиеся 300 штук и хотим ещё   Мастер теней (master of shadows), 04:00, 5 September 2017 (UTC)

"imported from" references where nothing was importedEdit

In Special:Diff/545635381, your bot added a reference saying it was imported from the Cebuano Wikipedia when it wasn't. I added it manually in 2015, the Cebuano page didn't even exist then.

This is misleading because an "imported from" reference implies that the statement was added by a bot. If you want to add "imported from" references to existing data which wasn't imported from Wikipedia, I think it should be discussed first.

- Nikki (talk) 10:17, 25 August 2017 (UTC)

I noticed similar at Special:Diff/546483579. As "imported from xxwiki" is not considered as reliable source, it is useless to add it all cases except during the real import.--Jklamo (talk) 09:30, 26 August 2017 (UTC)
It's a known phenomenon. It happens when the same information gets imported from several sources and merged into the same statement.
--- Jura 10:09, 27 August 2017 (UTC)
It both cases there was no merger.--Jklamo (talk) 18:26, 28 August 2017 (UTC)
Bot import the data from specified wiki. All data exists except the reference. Bot adds missed reference. You can specify any other reference. Bot does not replace any references. It does nothing if any other reference exists. "imported from" is useful for error source tracking, especially during splitting items. — Ivan A. Krestinin (talk) 21:04, 28 August 2017 (UTC)

Autofix on DOI (P356)Edit

I tried one for this, but it doesn't seem to work. Possibly due to the use as reference. Even if you decide not to do these in general, would you run this one?
--- Jura 10:09, 27 August 2017 (UTC)

{{Autofix}} works for mainsnacks only currently. — Ivan A. Krestinin (talk) 21:06, 28 August 2017 (UTC)


The template have clear security issues. Everyone may use it to make large-scale disruption in Wikidata. Please describe how to prevent it from being misused, otherwise I will let community review this task.--GZWDer (talk) 16:35, 28 August 2017 (UTC)

All edits can be easily reverted. Also bot has some validation algorithm. So I do not see large-scale security issue. Do you have some ideas how to improve the autofix mechanism? — Ivan A. Krestinin (talk) 21:15, 28 August 2017 (UTC)


Please undo edits like this, wrong merge. Sjoerd de Bruin (talk) 20:10, 30 August 2017 (UTC)

Missing commons categories - a suggestionEdit

Hi. Your bot made this edit removing an incorrect commons category that was due to a copy-paste error I made. Rather than removing cases like this, it might be better to check for the existence of a site link to a Commons category, and to replace the typo with that category instead. Thanks. Mike Peel (talk) 00:38, 31 August 2017 (UTC)

It is interesting idea, but I have too limited amount of free time now. — Ivan A. Krestinin (talk) 19:23, 6 September 2017 (UTC)

Constraint violationsEdit

Seems that KrBot is on constraint violations holiday since 31 August. Everyone needs a break, but I hope he will be back soon.--Jklamo (talk) 23:50, 2 September 2017 (UTC)

I think it will be back today. — Ivan A. Krestinin (talk) 19:20, 6 September 2017 (UTC)


From what I can see, your bot adds templates to {{ExternalUse}}, but not from svwiki. That is understandable since our templates maybe are designed a little differently from many others. But what can I do to make your bot add svwiki-templates? Only sv:Template:Ortsfakta WD uses: P17,P18,P31,P94,P131,P180,P237,P281,P282,P407,P473,P507,P525,P571,P580,P582,P585,P610,P625,P775,P776,P794,P1082,P1376,P1449,P1566,P1589,P2044,P2046,P2096 and P2370 and probably even some more. And then I have not even tried do list all the properties that can be used in sources. I can design a template that can be added to the doc-pages of templates and modules, and you can harvest from them, if you like?! -- Innocent bystander (talk) 06:52, 4 September 2017 (UTC)

Bot searches direct usages. For example P17 is not used in sv:Template:Ortsfakta WD, it is used in sv:Modul:Ortsfakta WD. But my bot has no code for module parsing. — Ivan A. Krestinin (talk) 19:19, 6 September 2017 (UTC)

Кто прав, кто неправ...Edit

Бот второй раз подряд прописывает в d:Q15704031 не существовавшее в те годы государство. Или так и надо, и имеется в виду не тогдашнее место действия, а нынешнее его название? но событие-то политическое, всё вертелось именно вокруг тогдашнего трона тогдашней монархии. Retired electrician (talk) 11:38, 11 September 2017 (UTC)

Так дело в том, что Англии тогда тоже не существовало... Исправил. --Infovarius (talk) 12:07, 12 September 2017 (UTC)
Бот действует в соответствии с этим заданием, пожалуйста скорректируйте его, если в нём есть ошибки. — Ivan A. Krestinin (talk) 18:23, 12 September 2017 (UTC)

P734 constraints violations pageEdit

Hi! I see KrBot hadn't be able to update since mid-August, but there is no constraint about synchronicity anymore. Any idea why it doesn't work now? --Harmonia Amanda (talk) 09:39, 18 September 2017 (UTC)

Bot throws error if constraint definition contains any unexpected value. Bot know nothing about contemporary constraint (Q25796498). I have some troubles with this constraint type implementation, see — Ivan A. Krestinin (talk) 22:05, 18 September 2017 (UTC)
The thing is, there is no constraint like this anymore. What can be the problem now? --Harmonia Amanda (talk) 13:08, 21 September 2017 (UTC)
Bot does not use templates on property talk pages anymore. It uses property constraint (P2302) from property page now. — Ivan A. Krestinin (talk) 21:07, 21 September 2017 (UTC)

Wikidata:Database reports/Constraint violations/P1480Edit

… is empty. Is there anything wrong with Property:P1480#P2302? Thanks in advance, --Marsupium (talk) 12:23, 23 September 2017 (UTC)

Current implementation of one-of constraint (Q21510859) constraint does not check qualifiers and references. Bot checks mainsnaks only. — Ivan A. Krestinin (talk) 17:54, 23 September 2017 (UTC)
Ah, sure, thank you! --Marsupium (talk) 18:23, 23 September 2017 (UTC)
@Marsupium: I implement qualifiers check for one-of constraint (Q21510859), please see the report. — Ivan A. Krestinin (talk) 20:39, 24 September 2017 (UTC)
Thanks a lot, this is much more convenient than using WDQS … --Marsupium (talk) 06:28, 25 September 2017 (UTC)
Hey, yet another request … It would be cool to have this for value type constraint (Q21510865), too. So type of kinship (P1039) could be checked that has also used as qualifier constraint (Q21510863). I don't know how much work it is, but the implementation would be appreciated. Thank you, --Marsupium (talk) 18:41, 2 October 2017 (UTC)

Constraint bot runs seeming to take >> 24 hoursEdit

Hi. Thanks for the constraint violations bot runs of KrBot. It would seem that bot runs are now taking 24 to 48 hours to run, which means that when one fixes something that it doesn't appear in the next published report, but instead in the subsequent report. This is somewhat confusing where one is trying to manage multiple reports in trying to remember what was fixed, and whether you missed something, or something else is broken.

I am wondering whether it might be time to move constraint reports to be undertaken every second day. Having every second day removes the report overlap, and presumably it will reduce load on the system.  — billinghurst sDrewth 22:09, 3 October 2017 (UTC)

Wikidata:Database reports/Constraint violations/P625Edit

There is contenttoobig error.--Jklamo (talk) 20:11, 7 October 2017 (UTC)

Still no change. If needed, I think we can leave behind single value constraint, as i already proposed in past.--Jklamo (talk) 13:18, 13 October 2017 (UTC)
Hello, I am sorry for delayed response. I reduce listed items count per constraint for long reports. Single value constraint is specified with qualifier separator (P4155) = applies to part (P518). So it is looked good. — Ivan A. Krestinin (talk) 18:03, 13 October 2017 (UTC)

Odd "instance of" editEdit

This was way back in January, but I thought I'd report it: [33]. The bot apparently decided my team at WMF was an instance of the Employees' Provident Fund Organisation of India :) — MusikAnimal talk 02:11, 20 October 2017 (UTC)

WhyEdit (talk) 20:12, 10 November 2017 (UTC)

Groeningemuseum described at URLsEdit

The KrBot deleted a lot of 'described at URL's' from the records of the artworks of Groeningemuseum. At some point the URL's were offline, but they are back online now. So:
1. Can this bot please stop deleting not-working URLs without contacting the source first? The URL's are active again now, but the important data about the source was lost from Wikidata. Now we will have to add it again. This is not a good practice.
2. The bot seems to delete de links again, even after I manually add them by using 'undo'. Example: Can you explain why that happens? This also has to stop. Thank you! Alina data (talk) 12:50, 1 December 2017 (UTC)

1. The bot doesn't care if the link is dead or not.
2. The bot removes described at URL (P973) because the same ID for this website is used at Groeningemuseum work PID (P2282). --Edgars2007 (talk) 14:55, 1 December 2017 (UTC)
Ah thank you. I didn't know that. The links used in described at URL (P973) and Groeningemuseum work PID (P2282) are different though, only the last part is the same. Shouldn't both links be able to stay?Alina data (talk) 15:36, 1 December 2017 (UTC)
Bot uses {{Autofix}} rule from Property talk:P973. Please delete or change the rule on this page if needed. — Ivan A. Krestinin (talk) 19:43, 1 December 2017 (UTC)
Thank you! Hopefully I have done this correctly. - Alina data (talk) 10:26, 4 December 2017 (UTC)

Problematic mergeEdit

Hi Ivan, would you undo the edits following the merge for the ones this was part of? Thanks for your help.
--- Jura 22:52, 1 December 2017 (UTC)

  DoneIvan A. Krestinin (talk) 18:38, 2 December 2017 (UTC)

contemporary constraintEdit

Hi, is there any way to solve problem with contemporary constraint causing none generation of reports. I know that removing property constraint (P2302) contemporary constraint (Q25796498) is working, but that is the loss of information a bit. What about setting deprecated rank (and set up bot to ignore these values)?--Jklamo (talk) 09:53, 11 December 2017 (UTC)

Hello, see for details. Parametrized algorithm is need to be defined for this constraint to start implementation. Also we need create properties for this constraint parameters. — Ivan A. Krestinin (talk) 19:58, 13 December 2017 (UTC)
On Wikidata:Database reports/Constraint violations/Errors, there is also the problem of the qualifier of Commons gallery (P935). Would you consider changing that (the absence of the qualifier should be read as namespace=0) or should I ask Lucas to change it on his side (novalue should be read as namespace=0)?
Would you allow syntax clarification (P2916) as qualifier?
Remains the instance of/subclass of thing to be sorted out.
--- Jura 18:15, 16 December 2017 (UTC)
The parameters of Commons link constraint (Q21510852) are documented on Help:Property constraints portal/Commons link#Parameters, and I see no need to change their interpretation. I discussed this at the time with Ivan A. Krestinin (see talk pageMissing namespace (P2307) means namespace "0"), so I’m not sure why we now seem to disagree on the interpretation… --Lucas Werkmeister (WMDE) (talk) 13:04, 18 December 2017 (UTC)
It hasn't been working since ..
--- Jura 13:25, 18 December 2017 (UTC)
@Jura1: sorry, since when? --Lucas Werkmeister (WMDE) (talk) 17:08, 19 December 2017 (UTC)
August 4:
--- Jura 18:43, 19 December 2017 (UTC)
The first and current implementation of my bot requires namespace (P2307) = novalue for Commons gallery (P935). Original version of Module:Constraints required such construction too. But the module was changed. Now it supports both variants as I see. I think namespace (P2307) = novalue requirement is better than missed qualifier. Commons link constraint (Q21510852) requires namespace (P2307) always. Same as format constraint (Q21502404) requires format as a regular expression (P1793). Missed by mistake qualifier is easily detected and highlighted. So I prefer to fix documentation. — Ivan A. Krestinin (talk) 11:10, 5 January 2018 (UTC)

Creating broken redirectsEdit

Hey, your bot is creating broken redirects like this and my bot keeps deleting them. Amir (talk) 14:44, 21 December 2017 (UTC)

Fixed for this property. Property creators create property talk page too usually. — Ivan A. Krestinin (talk) 11:16, 5 January 2018 (UTC)

KrBot adding and deleting dupsEdit

Not sure why the bot is doing this, but I've noticed that one at least a few different items I'm watching, KrBot is adding a duplicate VIAF value and then deleting it because it's a duplicate. Seems like a waste of processing power.


Hazmat2 (talk) 02:55, 22 December 2017 (UTC)

This happens sometimes. I have two parts of algorithm. One part resolves redirects and another part removes duplicates. I can combine these parts of cause. But this requires some efforts for coding, debugging, bugfix and etc. I think the issue is too minor to spent time to this. — Ivan A. Krestinin (talk) 11:21, 5 January 2018 (UTC)

Errors at Wikidata:Database reports/Constraint violations/P1472Edit

The page Wikidata:Database reports/Constraint violations/P1472 was blanked with an error code: ERROR: Command 'wget -c -O dumps/incomplete/25a3e1ad4e0c13c87a15e3f465ae66d4_commonswiki-20171220-page.sql.gz' failed with code 2048. --Jarekt (talk) 14:39, 22 December 2017 (UTC)

  DoneIvan A. Krestinin (talk) 11:22, 5 January 2018 (UTC)

2018-01 KrBot and P4342Edit

Bonjour et bonne année.

The page Wikidata:Database reports/Constraint violations/P4342 is not updated by your bot KrBot. Is there something to do? Visite fortuitement prolongée (talk) 21:06, 2 January 2018 (UTC)

Hello. Bot does not change the report if the only think that is changed is elements count. This saves time and limits the reposts history growing. — Ivan A. Krestinin (talk) 11:26, 5 January 2018 (UTC)
Thank you. Visite fortuitement prolongée (talk) 21:12, 6 January 2018 (UTC)

Your editEdit

I see that you changed country (P17) [from Wales to United Kingdom at 4.30am this morning]. Country = Wales was correct; your edit was incorrect as you have created a duplicate value (UK twice). Why? Secondly, if this is automated, then how many similar edits have you made? P17 can have duplicate values, as villages in the country of Wales are also in the UK. As Wales is the detailed value (the local value), then Wales is better. 07:18, 12 January 2018 (UTC)

Sometimes rules need to be broken, as in the case of this edit. It refers to the country Wales, and not the UK state. Please stop this bot from editing this page. Llywelyn2000 (talk) 22:02, 12 March 2018 (UTC)
Remove corresponding {{Autofix}} template from Property talk:P17 and bot will stop. — Ivan A. Krestinin (talk) 05:52, 13 March 2018 (UTC)

Removal of VIAFEdit

This edit removed a VIAF, claiming it was deleted, but the target VIAF still exists. --EncycloPetey (talk) 07:07, 13 January 2018 (UTC)

[34] Looks like your bot is still unsupervised and removing data. --EncycloPetey (talk) 14:14, 13 January 2018 (UTC)

  • The code is disabled. I will investigate the issue in details later. — Ivan A. Krestinin (talk) 05:32, 14 January 2018 (UTC)

novalue as a format constraint violationEdit

On, for example, Wikidata:Database reports/Constraint violations/P236#Format, 'novalue' should not trigger a format constraint warning. Can you exclude such cases, please? Andy Mabbett (Pigsonthewing); Talk to Andy; Andy's edits 17:20, 19 January 2018 (UTC)

Undo merged valuesEdit

Пожалуйста, верните русские имена на место! --Infovarius (talk) 13:44, 26 January 2018 (UTC)

  •   Done, только оставшиеся страницы всё равно нужно проверять. Кто-то мог задать свойство "имя" в период, когда элемент был редиректом. — Ivan A. Krestinin (talk) 21:16, 28 January 2018 (UTC)


Would there be an update of User:Ivan A. Krestinin/To merge subpages, please? Thanks, Lymantria (talk) 10:33, 28 January 2018 (UTC)

  •   Done, bug prevents automatic update. Now all must be fine. Please notify me in case of some issues. — Ivan A. Krestinin (talk) 23:11, 29 January 2018 (UTC)
    • Thank you! Lymantria (talk) 06:39, 30 January 2018 (UTC)
      • I noticed that some Roman Numerals merge candidates are not found, for instance the French link I merged into Q9178660. I think that is due to the affix -e of XIXe that is used in the French link. Could you look into that and perhaps make such merge candidates found? Lymantria (talk) 08:36, 30 March 2018 (UTC)
        • Bot finds numbers using "whole word only" algorithm in page names. This is required to rich acceptable performance of the bot. So I can not remove this limitation. Sorry. — Ivan A. Krestinin (talk) 11:11, 1 April 2018 (UTC)

Fixing a series of editsEdit

Hello, is it possible to change back all occupation (P106) Category:Model railroader (Q32075377) to occupation (P106) model railroader (Q22812942). Your bot had changed them because the two items had been merged, but the merge was wrong. Thanks ! -Zolo (talk) 20:45, 7 February 2018 (UTC)

Placeholder may be used several times in formatter URLEdit

Hello, I noticed on P1670 that the "$1" placeholder may be used several times. But only the first occurrence is replaced KrBot's reports, thus the links don't work. Best regards, Od1n (talk) 23:13, 9 February 2018 (UTC)

Wikidata:Database reports/Constraint violations/Mandatory constraintsEdit

Seems like the amount of mandatory constraints is too much for displaying all the information. Maybe split into identifiers and general properties? Sjoerd de Bruin (talk) 17:00, 10 February 2018 (UTC)

  • I think it is better to restart the "mandatory" game. I mean remove "mandatory" mark from all violated constraints once. — Ivan A. Krestinin (talk) 10:45, 12 February 2018 (UTC)
    • Maybe, but due to the fact that this page also show non-violating mandatory constraints we might hit the same problem later. Sjoerd de Bruin (talk) 10:47, 12 February 2018 (UTC)

RKD constraint reportsEdit

Both Wikidata:Database reports/Constraint violations/P650 and Wikidata:Database reports/Constraint violations/P350 haven't been updated for a while. Can you have a look? Thanks, Multichill (talk) 23:43, 1 March 2018 (UTC)

P1330 constraint violationsEdit

Hi there! I see your bot is the one who has done updates on I've recently done some work on these and was wondering if you could update that report as last was on 27 feb. No rush, thank you --CatQuest, The Endavouring Cat (talk) 11:44, 12 March 2018 (UTC)


Hello Ivan A. Krestinin, I have granted its bot flag and noticed you have not used it yet. Perhaps you didn't notice. Kind regards, Lymantria (talk) 06:51, 13 March 2018 (UTC)

@Lymantria: no, there are other issues. --Edgars2007 (talk) 07:29, 13 March 2018 (UTC)
Bot downloaded new dumps for a long time. But now it is working. Performance is very bad die insufficient volume of RAM. — Ivan A. Krestinin (talk) 19:26, 13 March 2018 (UTC)

Can you look into Wikidata:Database reports/Constraint violations/P1472 and Wikidata:Database reports/Constraint violations/P1612 which had only 2 updates in last 30 days. Can we switch them back to daily updates? --Jarekt (talk) 13:04, 14 March 2018 (UTC)

Did you read last two threads, Jarekt? :) --Edgars2007 (talk) 13:17, 14 March 2018 (UTC)
No I did not. Sorry. I will wait. --Jarekt (talk) 13:45, 14 March 2018 (UTC)


We (I and Pasleim) decided, that you can shot down your bot for now :) Till the moment, when all things settle down. --Edgars2007 (talk) 06:36, 20 March 2018 (UTC)

Just to clarify, I implemented a function that my bot is not overwritting your bot edits. So you can let your bot run but as soon as a report wasn't updated for multiple days DeltaBot steps in. --Pasleim (talk) 09:56, 20 March 2018 (UTC)
I think nothing bad if both bots will update the reports in current situation. Also it is good to improve DeltaBot`s report to deduce diffs with KrBot2. — Ivan A. Krestinin (talk) 20:26, 20 March 2018 (UTC)
Pasleim: looks like there are formating discrepancies. --Succu (talk) 21:07, 20 March 2018 (UTC)
Sorry Ivan, but I don't think it is right. The main idea was to give your bot some rest. Deltabot is putting more or less up-to-date data, while your bot is putting currently 11 days old report. And then Deltabot won't update the report for 5 days... --Edgars2007 (talk) 10:24, 22 March 2018 (UTC)

@Ivan A. Krestinin, KrBot2, pasleim, DeltaBot: Please sort this out ASAP. Bots edit warring do not help those of us who monitor these constraint reports. --99of9 (talk) 06:29, 10 April 2018 (UTC)

@pasleim: I restore back KrBot2 performance to previous level. So we can stop DeltaBot for now. For the future: DeltaBot uses more actual data, but part of functionality is missed. For example "Conflict with", "Commons link" constraints, summaries... Could you implement missed functionality to stop my bot at all? — Ivan A. Krestinin (talk) 09:07, 10 April 2018 (UTC)
DeltaBot is only updating a report if KrBot2 did not update it for 5 days, thus no actual edit wars can happen (I would not call this an edit war). I can implement the missing functions but all DeltaBot reports are based on SPARQL queries. It is likely that queries for heavily used properties time out and the reports don't get fully updated. This can only be resolved if phabricator:T179879 or a related task is done. --Pasleim (talk) 09:23, 10 April 2018 (UTC)
Ok, thank you. Please note that KrBot2 does not update report if the only change is the first line (date or items count). This makes watchlist usage more comfortable and reduce edits count. — Ivan A. Krestinin (talk) 10:22, 10 April 2018 (UTC)
This is still not a good situation. Even if you don't call it an edit war, the fact that the diffs are so messy means it is hard to monitor and quickly see any change. I monitor many of these reports, and was using them a lot, but I cannot use them well anymore. I suggest that the two bots either publish to different pages, or one is taken off this task, or Deltabot also adopts the convention of not editing if the only change is date or item count, or KrBot2 makes an update within every 5 days (even if there is only a change in the number of items). --99of9 (talk) 04:37, 16 April 2018 (UTC)
Here is an example showing that Kr2bot should not edit if it receives an error. --99of9 (talk) 04:42, 16 April 2018 (UTC)
P705 issue fixed: [35], [36]. — Ivan A. Krestinin (talk) 06:37, 16 April 2018 (UTC)
My revert of the instance issue didn't have a good edit summary. But I do think that would change an awful lot of items (and may be hard to reverse), so should be discussed by protein people. I assume you'd agree that methane (Q37129) is rightly an instance of chemical compound (Q11173). So why shouldn't a (specific sequence) biomolecule also be an instance of chemical compound (Q11173) (via its subclass protein (Q8054)). It looks like a discussion was started, but didn't go far. In practice most protein items are not necessarily even about specific sequences (or are at least tolerant to variation), and seem to get labelled as both instance and subclass of protein. --99of9 (talk) 12:05, 17 April 2018 (UTC)
Lets assume I turn on my electron microscope and see large but single biomolecule. What is it? I think it is instance of (P31) of protein (Q8054). Another case: for example Hypothetical protein CCNA_01158 (Q38143346). It was marked as instance of (P31) of protein (Q8054). But there is L-form of Hypothetical protein CCNA_01158 (Q38143346) and R-form of Hypothetical protein CCNA_01158 (Q38143346) (I mean chirality (Q214514)). So Hypothetical protein CCNA_01158 (Q38143346) is not something concrete with exact structure. It describes class of a bit different proteins. — Ivan A. Krestinin (talk) 07:47, 18 April 2018 (UTC)

Edits to Q50531489Edit

Hi, for two time KrBot edited item Q50531489 and deleted the property reference URL (P854) and replaced with full work available at (P953), but that URL don't take to the complete text but just to a description in the Italian Library Service Catalogue, so P953 is not correct --moz (talk) 10:21, 21 March 2018 (UTC)

Spaces changed to underscores in OSM tagsEdit

Hi, I added OSM tags that contain spaces to state forest (Q7603683) and wilderness area (Q2445527). The bot changed the spaces to underscores.

I think spaces are correct, you can see them in taginfo:

If I change back to spaces will the bot revert my edit? Edward (talk) 16:49, 21 March 2018 (UTC)

  • Bot will revert your edit according {{Autofix}} template. This autofix template was added by User:Jura1. It is better to discuss it with him. — Ivan A. Krestinin (talk) 21:29, 21 March 2018 (UTC)
    • It was proposed that way in 2014 at Wikidata. Maybe there is a problem with spaces in links.
      --- Jura 21:35, 21 March 2018 (UTC)
    • Looks like I misunderstood the regex. I will try to correct them.
      --- Jura 23:55, 21 March 2018 (UTC)

Please slow downEdit

Hi, can you please slow down editing with KrBot? You are causing noticeable dispatch lag. Your bot should stay well below 50 edits per minute. Cheers, Hoo man (talk) 11:44, 11 April 2018 (UTC)

  • Hello, I stop the task for now. — Ivan A. Krestinin (talk) 12:50, 11 April 2018 (UTC)
  • I added additional check: bot will suspend task execution if average dispatch lag will be more than 5 minutes. — Ivan A. Krestinin (talk) 20:20, 11 April 2018 (UTC)
Thanks! :) -- Hoo man (talk) 19:09, 12 April 2018 (UTC)
Dispatch lag is high now. Could you identify the user who use DB aggressively? — Ivan A. Krestinin (talk) 19:35, 12 April 2018 (UTC)
I already did… we should recover in a couple of minutes. Cheers, Hoo man (talk) 19:41, 12 April 2018 (UTC)
@Hoo man: Hello, could you clarify, why large dispatch lag really critical for the project? 5 minutes or 30 minutes, does it matter? I ask because now my bot is blocked too often die large value of the lag. — Ivan A. Krestinin (talk) 15:03, 23 April 2018 (UTC)
Please see the description of phabricator:T184948 for all the issues this is causing. --Lydia Pintscher (WMDE) (talk) 15:40, 23 April 2018 (UTC)
Thank you. I changed my bot algorithm a bit to avoid blocking. Bot will make 5 second delay after every item if average dispatch lag is more than 5 minutes. — Ivan A. Krestinin (talk) 16:01, 23 April 2018 (UTC)

Category combinesEdit

Hi Ivan, I noticed your bot occasionally adds them. I thought you might be interested in the similar Wikidata:Property_proposal/list_combines_topics. I find it would be an improvement over the existing properties and could help putting them to better use.
--- Jura 05:35, 23 April 2018 (UTC)

  • Hi Jura, the property is not very interesting for me. I just try to improve data quality by reducing violations count. — Ivan A. Krestinin (talk) 12:17, 23 April 2018 (UTC)
    • I think the main use of category combines topics (P971) is that it can be used to reduce the number of items without any statements. I use them for specific fields, but maybe there is a way to this in a more systematic way. As for the list one, I think it's mainly a way to identify potential uses at Wikipedia.
      --- Jura 06:28, 5 May 2018 (UTC)

Removing mandatory constraints with a botEdit

Hi Ivan, you probably shouldn't remove constraints like these with a bot unless you also add the mandatory constraint when something is cleaned out. The whole constraint work flow can probably use a bit of attention. It's quite hard right now to keep track of the things that have been cleaned out. Multichill (talk) 10:42, 23 April 2018 (UTC)

Watch the referencesEdit

When you made this change, you left the attached reference in place. The reference was for the former value, so if you change the value, you need to remove the reference, since it does not support the new value. --EncycloPetey (talk) 16:42, 23 April 2018 (UTC)

  • Why current reference does not support new value? — Ivan A. Krestinin (talk) 16:50, 23 April 2018 (UTC)
@Ivan A. Krestinin, EncycloPetey: Presumably this is because a 'personaje de ficción' may not be human, unlike a 'personaje humano de ficción', and the eswiki article does not explicitly say that Chris Redfield is human (perhaps this is meant to be implied? I am not too familiar with the Resident Evil universe). Mahir256 (talk) 04:28, 25 April 2018 (UTC)
Also, when the reference says "imported from...", if you change the value, then the new value will not be the one that was imported. --EncycloPetey (talk) 14:56, 25 April 2018 (UTC)

Update of constraint violation report failedEdit

Hi, the update of constraint violation report for P235 failed with the comment "ERROR: Too many P2309 values." Can you explain the reason of that problem ? Thanks. Snipre (talk) 13:07, 25 April 2018 (UTC)

  • Hello, Jira1 improved the situation: [37]. But my bot does not support instance or subclass of (Q30208840) too. I think we need to make classes system more strong. Why you need specify both relation types? — Ivan A. Krestinin (talk) 19:41, 25 April 2018 (UTC)
    • This constraint was set up to be sure that the property is correctly used, but as this property is a kind of identifier for chemical, I think we can delete it. Few people take care about constraint violation and I prefer to use the other constraints to cure data. So I delete this instance/subclass constraint. Thanks to add the property in your list for update and thanks a lot for your job in WD. Snipre (talk) 11:51, 26 April 2018 (UTC)

Bot edit warEdit Mateusz Konieczny (talk) 13:46, 26 April 2018 (UTC)

new constraint type no bounds constraint (Q51723761)Edit

Hey Ivan, there is a new constraint type no bounds constraint (Q51723761), introduced to Wikidata recently based on phab:T170610. It is in use in only a very few items right now, but your bot apparently does not like it: Wikidata:Database reports/Constraint violations/P1086.

Can you please implement it, or at least ignore this constraint type with a short notice on the constraint violation report page as long as you cannot implement it properly? Thanks, MisterSynergy (talk) 14:14, 26 April 2018 (UTC)

It apparently works, that was quick! May I suggest a small tweak of the output? Right now it lists just the value in the covi report, but “value±diff” might be more appropriate as the value itself is not the issue here. You can calculate the diff as diff = (upper - lower) / 2. Thanks for your efforts, MisterSynergy (talk) 05:12, 27 April 2018 (UTC)
  DoneIvan A. Krestinin (talk) 10:19, 30 April 2018 (UTC)

Format regexEdit

\d in general also matches digits that are not ASCII, but in the formatters it seems what is meant is ASCII. Would be good to replace all \d with [0-9].

Grouping and count currently incorrect, since some use \d others [0-9]:

SELECT ?regex (COUNT(?regex) AS ?count) (GROUP_CONCAT(?propertyLabel; separator=', ') AS ?propertyLabels) WHERE {
  ?property wikibase:propertyType wikibase:ExternalId; wdt:P1793 ?regex .
  OPTIONAL { ?property rdfs:label ?propertyLabel . FILTER(LANG(?propertyLabel) = 'en') }
} GROUP BY ?regex ORDER BY DESC(?count)

Try it! 21:37, 4 May 2018 (UTC)

  • You are right, some regexp implementations can include non-ASCII characters to \d. But I think this is not very critical because non-ASCII characters are very rare case. — Ivan A. Krestinin (talk) 06:15, 5 May 2018 (UTC)
    Also, sometimes it is [a-f0-9] and sometimes [0-9a-f], could all be ordered as in ASCII: [0-9a-f]. If the regexes are standardized more, then it is easier to find special cases and maybe errors in regexes. 10:46, 5 May 2018 (UTC)
First complete(?) clean up. In the above SPARQL page one can now use the filter to the top right of the list of results and insert 0-9A-Za-z to find all regexes that allow these values. No more A-Za-z0-9 or any combination with \d. I get 64. 11:56, 5 May 2018 (UTC)

Support for one-of qualifier value property constraint (Q52712340)Edit

Hi Ivan, would you consider adding support in the reports for the above? Some discussion of it at [38]. Sample use at [39]. I will try to do a complex constraint that does the same.
--- Jura 09:33, 6 May 2018 (UTC)

  • Looks like the constraint is ambiguous. For example flag bearer (P3022), the same effect can be reached using splitting flag bearer (P3022) to two properties: "flag bearer on start ceremony" and "flag bearer on closing ceremony". — Ivan A. Krestinin (talk) 09:50, 6 May 2018 (UTC)
    • Yes, it could, but it set up with just one property. I think criterion used (P1013) and determination method (P459) would be good candidates for this constraint. As the use of the qualifier varies substantially from one property to another and proposals for new qualifiers frequently get turned down.
      --- Jura 09:58, 6 May 2018 (UTC)
    • I added a few sample queries at Talk:Q52712340.
      --- Jura 10:17, 6 May 2018 (UTC)
  • Would you skip them when present? This way I could add more definitions without breaking the reports.
    --- Jura 05:29, 8 May 2018 (UTC)
    • It is not very simple to implement. Also my point of view is we need to think about data models and constraints system simplification. — Ivan A. Krestinin (talk) 08:57, 12 May 2018 (UTC)
      • For now, it would just need to not generate an error when it's present. I hope this isn't too complicated.
        --- Jura 08:22, 13 May 2018 (UTC)

Autofix edit descriptionEdit

Hi Ivan. I just stumbled upon this edit by your bot, which removes a statement without a replacement, and the additional edit description only was "autofix". If someone wants to understand this, they have to identify the affected property, go to the talk page (as the template is only put there and not on the property page itself), identify the rule which triggered the edit (in this case, there are four different, relatively complex rules on Property talk:P243) and then understand that by moving the statement to a different property together with a duplicate check this may in the end mean that the statement is simply removed. This process is fine, it's just hard too understand what's going on. Could the edit description include the specific rule? And maybe even the consequences (like "trying to move OCLC-ID:lccn-n83228442/ to LCAuth:n83228442, but skipped as this was already there")? --YMS (talk) 10:50, 7 May 2018 (UTC)

  • Hi! The specific rule does not have some short identifier. We can add something like "name" or "description" parameter to {{Autofix}}, but I think it is too hard to maintain all these names only for good descriptions. I made edit descriptions a bit more detailed. See [40], [41]. — Ivan A. Krestinin (talk) 18:56, 7 May 2018 (UTC)

New constraint type: integer constraint (Q52848401)Edit

Hey Ivan, there is again a new constraint type for which you need to add support in your bot code: integer constraint (Q52848401). I just saw for example Wikidata:Database reports/Constraint violations/P1086 on my watchlist. Can you please have a look? Thanks, MisterSynergy (talk) 05:14, 12 May 2018 (UTC)

Bot error: wrong GNDEdit

For an unknown reason KrBot keeps adding a wrong GND to Charles Christian Erdmann, Duke of Württemberg-Oels (Q479755): [42] (6 May), [43] (12 May). KrBot2 lists this error on the page Wikidata:Database reports/Constraint violations/P227. --Kolja21 (talk) 00:05, 15 May 2018 (UTC)

Bot error: YouTube channelEdit

This edit on Q48816788 is a mistake... the TV series in question is a YouTube Red Original, so its official website is a YouTube channel. Your bot shouldn't be "correcting" that. Could you get it to stop? —Joeyconnick (talk) 04:37, 15 May 2018 (UTC)

Tgwiki categoriesEdit

Hi! Could you bot import "cat main" values (e.g. tg:Гурӯҳ:Вилояти Пактиё) from tg.wikipedia to category's main topic (P301)? Thank you very much, --Epìdosis 11:56, 17 May 2018 (UTC)

Big merge - ru.wikiEdit

Hi! I've just discovered a lot of items to be merged:

Could you do it or could you have someone do it? Thank you very much! --Epìdosis 12:57, 17 May 2018 (UTC)

      • I did not find any unique identifiers like postal codes, OKATO, OKTMO or something like this to make the merge. The only parameter is settlement name, but there are too many settlements with exact the same names in Russia. — Ivan A. Krestinin (talk) 20:38, 18 May 2018 (UTC)

instance or subclass of (Q30208840) supportEdit

Hey Ivan again, your bot does not support constraints involving instance or subclass of (Q30208840), and as far as I understand two sections further above, you are not convinced that this is a good constraint type. Could you please consider to fix it anyway, at least in a way that individual constraints using this condition are ignored, rather than breaking the entire report? This list indicates that there are ~44 reports not updated at all due to the appeareance of instance or subclass of (Q30208840) in one of the constraints. Thanks, MisterSynergy (talk) 09:19, 18 May 2018 (UTC)

  • Hi, some time ago I reviewed the reports and replaced some instance or subclass of (Q30208840) to instance of (Q21503252) or subclass of (Q21514624). Others looks like errors too. Maybe better way is fix badly defined properties and make our classes system more strong? Also there are some troubles in my bot architecture that makes ignoring hard task a bit. — Ivan A. Krestinin (talk) 20:49, 18 May 2018 (UTC)
    • Thanks for the answer. I think whether we like it or not is not relevant as long as it is there and a legit constraint condition. In a perfect Wikidata maybe we wouldn’t need it indeed, but in real Wikidata I have (unfortunately) seen a enough cases where both relations are used, and I can’t decide which one to prefer over the other.
      Can’t you hard-code a condition into the code that catches these cases just before they are about to be evaluated, which always yields an empty result or an error message that is displayed in the covi report section instead? This would avoid that we have so many broken covi reports. —MisterSynergy (talk) 20:59, 18 May 2018 (UTC)

Wikidata:Database reports/Constraint violations/P4045Edit

One more: Wikidata:Database reports/Constraint violations/P4045 does not seem to be listed at Wikidata:Database reports/Constraint violations/Errors, although it never was evaluated successfully. Can you please add it? There are no other covi reports with this problem, except for those of Property:P1450, Property:P3464, and Property:P578 which do not have constraints any longer and are thus dispensable on the update errors list. —MisterSynergy (talk) 09:52, 18 May 2018 (UTC)

Mass addition of "Used on values constraint"Edit

Hi Ivan,

Lucas Werkmeister (WMDE)
Jarekt - mostly interested in properties related to Commons
John Samuel
Yair rand
Jon Harald Søby
Was a bee
Peter F. Patel-Schneider
ZI Jony
  Notified participants of WikiProject property constraints

I just saw that you added a lot of used for values only constraint (Q21528958) (for instance there): what is the motivation behind this, and was this discussed anywhere? Many people use identifiers in references for instance, so I would prefer not to add these constraints on identifier properties by default.

Cheers − Pintoch (talk) 06:48, 21 May 2018 (UTC)

  • Hello, bot adds the constraint to properties that are not used as qualifiers or references. Motivation is improving data quality. Many users make errors like this or this. — Ivan A. Krestinin (talk) 06:57, 21 May 2018 (UTC)
    • Yeah, but particularly identifiers are explicitly allowed in references per Help:Sources#Databases. I don’t think any of them should have a used for values only constraint (Q21528958) constraint. —MisterSynergy (talk) 07:09, 21 May 2018 (UTC)
      • This practice is not looked very good. Because identifiers are changed from time to time. Bots and users update identifies specified as main value. But nobody looks into references. Also identifiers in references are not controlled by distinct values constraint (Q21502410), single value constraint (Q19474404), conflicts-with constraint (Q21502838). — Ivan A. Krestinin (talk) 07:13, 21 May 2018 (UTC)
        • In references, identifiers are not used to identify the entity; they are used to provide a link to a source (together with the formatter URL), thus they don’t necessarily have to be used in the item which they identify. —MisterSynergy (talk) 07:17, 21 May 2018 (UTC)
          • But its are used to identify information source. And its are need to be validated and updated same as main value. The most usages that I saw just duplicate identifier in main value section. — Ivan A. Krestinin (talk) 07:48, 21 May 2018 (UTC)
            • Well, if there were reference URLs in the references, which technically directly include the formatter URL and the identifier, one would have to check each of those references as well, but it would be much more difficult as accessibility is much worse in that case. It is also by far not as easy to repair sources when only the formatter URL changed (i.e. identifiers remained stable), since one nevertheless had to touch each and every link individually, rather than updating the formatter URL only. Identifier properties in sources are widely used for that reason; not to identify the entity, but to manage sources efficiently. —MisterSynergy (talk) 08:21, 21 May 2018 (UTC)
    • I think that constraint is frequently forgotten. Maybe it's better to add them and later remove them when it's found as being not applicable.
      --- Jura 07:16, 21 May 2018 (UTC)
      • This could make sense for properties with some datatypes, but for external-ids I find it really counter-productive, especially when marked as mandatory constraints. − Pintoch (talk) 08:15, 21 May 2018 (UTC)
        • Maybe we can add a scope limitation for external identifiers. constraint scope (P4680)="checked on qualifiers only". At least for the ones where this is useful.
          --- Jura 08:41, 21 May 2018 (UTC)
          • Yes, at least for the ones where this is useful, not blindly for all external identifiers, marked as mandatory and without any consultation with the community, maybe? − Pintoch (talk) 08:45, 21 May 2018 (UTC)
            • Can you think of any identifiers useful as qualifiers that haven't been used yet?
              --- Jura 08:51, 21 May 2018 (UTC)
              • On the top of my mind, no. But would it actually be useful? If you want to do that, then it would make sense to first experiment with that on a *few* properties, and then propose it somewhere more visible to gather some consensus around it. Other people might have use cases for identifiers in qualifiers. Constraint violations are important and affect a lot of people now that the gadget has been fully deployed, so we cannot just let people decide on their own that they are going to change constraints on thousands of properties, especially when this breaks the existing recommendations about referencing. − Pintoch (talk) 11:00, 21 May 2018 (UTC)
                • There are very few identifier properties which are substantially in use as qualifiers, see this query. Maybe the first three to eight cases are valid, but most of the rest is probably to be fixed. I think a general assumption that identifier properties should not be used in qualifiers (with exceptions as mentioned) is fine. For references, as outlined earlier above, it is not. —MisterSynergy (talk) 11:18, 21 May 2018 (UTC)
                • Can every external ID property be used as reference? I think no. Social networks can not be used as source. VIAF, IMDb and others can not be used as sources too. So user needs to decide is the source acceptable for referencing or not. If user decide that exact identifier is acceptable then he can delete or improve the constraint. — Ivan A. Krestinin (talk) 11:28, 21 May 2018 (UTC)
                  • Most identifiers can be used as references. They refer to a database, where some information can be consulted, and therefore used as a reference. We don't want newcomers to be faced with a mandatory constraint violation if they try to follow the guidelines and add identifiers in references, just because it happens that the property has not been used yet as such. So, by default, these constraints are unwelcome. Ivan, I really value your work on constraints otherwise (thanks a lot for it) and I understand this edit batch was made in good faith. But it turns out that it contradicts guidelines on referencing, so can I please ask you one more time to fix this? Thank you! − Pintoch (talk) 11:55, 21 May 2018 (UTC)
                    • Ok, I will fix this. — Ivan A. Krestinin (talk) 19:06, 21 May 2018 (UTC)
                    •   FixedIvan A. Krestinin (talk) 03:47, 23 May 2018 (UTC)
                      • Thanks! But unfortunately your fix brought other issues: see Wikidata talk:WikiProject property constraints. Any mass change to property constraints should be discussed beforehand. Next time a mass change like these two is made without proper discussion, I will mass-revert by principle, no matter what the change actually is. − Pintoch (talk) 05:24, 23 May 2018 (UTC)
  • +1. A mistake to add this to external IDs. I have just removed it from BHL bibliography ID (P4327). If you don't like the practice, start an RfC. Don't just use a bot to add constraints without discussion, breaking current references. Jheald (talk) 14:03, 21 May 2018 (UTC)
    • Nothing is broken. Bot did not touch properties that was used as references. — Ivan A. Krestinin (talk) 19:06, 21 May 2018 (UTC)

Incorrect change of country from Scotland to the UK on Inventory of Historic Battlefields in Scotland (Q6059933)Edit


Today your bot made this edit to Inventory of Historic Battlefields in Scotland (Q6059933), this is incorrect as the database (as the name suggests) only covers Scotland. I'm likely to be making a lot more of these kind of edits. Is it possible for you say why your bot did this? I'm not complaining, I just want to understand and try to reduce to chances of it happening again.


--John Cummings (talk) 21:51, 23 May 2018 (UTC)

дублирующее значениеEdit

Разве при поиске дублирующих значений свойства квалификаторы не учитываются? [44]? --Infovarius (talk) 11:20, 24 May 2018 (UTC)

  •   Fixed, для изображений действительно не учитывалось. — Ivan A. Krestinin (talk) 19:06, 25 May 2018 (UTC)


Hi! You say that this is type of administrative entities in Russia Federation and possible in another countries. This item however is not defined as being specific to Russia. It is a generic item used for all kinds of settlements all over the world. So its statements shouldn't be specific to Russia or some other particular country. If an entity is both a settlement and an administrative territorial entity then there are two possible solutions for classification purpose, either 1) indicate that an item like Q28514115 is an instance of both Q486972 and Q56061, or 2) use country specific class-item like Q183342 or Q21672098. -- 14:53, 27 May 2018 (UTC)

  • It is not RF-specific item of course. Because many other countries has the same type entities. I understand reasons why you want to have different classes for every country. I agree that this scheme can be used too. But please remove administrative territorial entity (Q56061) after fixing all items that use this class, not before. — Ivan A. Krestinin (talk) 15:48, 27 May 2018 (UTC)
For most of the time it hasn't been a subclass of Q56061. It was it for some time in January and for past a few days. I think it'd be more constructive not to use it as a some sort of workaround. Isn't the purpose of constraints to help getting the statements right rather than simply setting the statements so that they would fullfil the constraints. With constraint violations being suppressed it's harder to know that something is wrong and needs fixing. Why not let people fix it gradually region per region while constraint violations are shown? I don't know whether different classes are needed for all countries, or whether using multiple class-items would be sufficient for some instances. Also, checking the contraint violations should reveal that some non-administrative entities (settlements) have been used with located in the administrative territorial entity (P131). I've been fixing related stuff for Estonia, but processing the whole world would be too much for me alone. -- 16:45, 27 May 2018 (UTC)

Constraints migrationEdit

This edit by KrBot on the page Property talk:P227 is a while ago, but still needs to be fixed. The page shows parts of text that should be hidden:

"... Albert Kitzler (Q16054255), keine Bezeichnung (Q16941268) }} -->"

--Kolja21 (talk) 11:37, 29 May 2018 (UTC)

  Done found the solution and did the clean up. --Kolja21 (talk) 15:08, 29 May 2018 (UTC)


Hi Ivan,

At Property_talk:P973, I added one for P1258. The query currently matches three items, including Q27590909, but KrBot wont replace it. What's not working?
--- Jura 13:16, 30 May 2018 (UTC)

Error message: GND ID (P227)Edit

Hi Ivan, I've added to "distinct values constraint" the separator stated as (P1932) like before to "single value constraint". Why does the bot not accept it?

--Kolja21 (talk) 00:53, 3 June 2018 (UTC)

  • Hi Kolja, could you provide some items to understand the case? — Ivan A. Krestinin (talk) 22:03, 5 June 2018 (UTC)

There are mainly two types of items:

GND 4039237-5 = microscope (Q196538) + subclass optical microscope (Q912313)
GND 4027249-7 = intellectual (Q58968) + synonym intelligentsia (Q381142)

If we use the qualifier stated as (P1932) these items should not be shown in the error list "distinct values constraint". --Kolja21 (talk) 23:52, 5 June 2018 (UTC)

  Done, please notify me if something works wrong. — Ivan A. Krestinin (talk) 06:40, 11 June 2018 (UTC)

The error message is gone but the list contains items that are marked as ok:

Greetings --Kolja21 (talk) 22:21, 11 June 2018 (UTC)

Any idea how to solve the problem? --Kolja21 (talk) 21:53, 14 June 2018 (UTC)
Apologize, I missed your question. The issue is not related to the latest changes. separator (P4155) works only both values have the same qualifier property with different qualifier values. — Ivan A. Krestinin (talk) 20:42, 15 June 2018 (UTC)
Is it possible to improve the bot? pseudonym (P742) is very popular and it would be difficult to explain why we have mulitple allowed qualifiers but only one for one item can be used. --Kolja21 (talk) 23:36, 16 June 2018 (UTC)
This algorithm is not good for other cases. For example total produced (P1092), let assume one value has country (P17) qualifier, another one - point in time (P585). This case is not acceptable. As for Hans-Holger Friedrich (Q1251322): the problem happens because two entities are mixed in the same item: human and pseudonym. I see better way to model the case: see Kate Cary (Q465326) and Erin Hunter (Q641740). Qualifiers are not needed for this model. — Ivan A. Krestinin (talk) 09:21, 17 June 2018 (UTC)
It's about one item with one entitiy: A human with a name and a pseudonym. A joint pseudonym (= a group of persons) is a different case. I don't think that we want to create a second or third item for every person who is known by more than one name. Just think of all the popes, kings, people that got married etc. Ten thousands of duplicate items only to solve a technical issue? ---Kolja21 (talk) 21:25, 17 June 2018 (UTC)

Distinct on P2534Edit

Somehow I think the distinct value constraint could be useful on Property:P2534. Currently KrBot outputs an error message.
--- Jura 11:56, 6 June 2018 (UTC)

+1. Same problem as above. --Kolja21 (talk) 19:03, 6 June 2018 (UTC)
  Done, but current update is in progress, please wait the next. — Ivan A. Krestinin (talk) 16:19, 11 June 2018 (UTC)

Wikidata:Database reports/Constraint violations/P2580Edit

Wikidata:Database reports/Constraint violations/P2580 - There has been a major clean-up of the BBLd IDs. Would be nice if you could start an update of the report. The IDs should now match /[-.()0-9A-Za-z]+/ 12:36, 7 June 2018 (UTC)

Simply wait the next update. Should be in next 24h. --Edgars2007 (talk) 18:41, 7 June 2018 (UTC)
Edgars2007, no change. 20:18, 8 June 2018 (UTC)
Now all is fine as I see. — Ivan A. Krestinin (talk) 16:21, 11 June 2018 (UTC)

Last 500 visible changes is not enoughEdit

Dear Ivan, I think some time ago there was that the last 1000 changes could have been seen, but have a look at latest changes P161: the day is not over but the limit has been reached. Similar to other maintenance pages. -- MovieFex (talk) 18:33, 7 June 2018 (UTC)

And what Ivan has to do with that? :) Simply change 500 to any number in URL. --Edgars2007 (talk) 18:42, 7 June 2018 (UTC)
Good hint, but it would be not bad also if that works when to choose. -- MovieFex (talk) 19:24, 7 June 2018 (UTC)
I do not understand the issue. Cold you explain it in details? I it related to me or my bot? — Ivan A. Krestinin (talk) 16:24, 11 June 2018 (UTC)

Undo merge AbkhaziaEdit

Пожалуйста, можно отменить эти ужасы: [45]. --Infovarius (talk) 20:15, 7 June 2018 (UTC)

  DoneIvan A. Krestinin (talk) 16:25, 11 June 2018 (UTC)

ERROR: Unknown constraint type: Q21528958.Edit

Не уверен репортили ли это выше, но после вот такого и подобных изменений легли репорты (например Wikidata:Database reports/Constraint violations/P3876) --Ghuron (talk) 04:57, 13 June 2018 (UTC)

  • Да, репортили, один из участников по не вполне понятным мне причинам вернул назад устаревшие ограничения, которые были заменены их более совершенным аналогом, см. Wikidata talk:WikiProject property constraints#Change of format for scope constraints. — Ivan A. Krestinin (talk) 15:27, 13 June 2018 (UTC)
    • Насколько я понял, там целая плеяда причин, наврядли я чем-то смогу помочь :( М.б. навернуть бота так, чтобы отражал факт непонятного ему констрента в соответствующей секции, но все же заполнял остальные? Мой workflow заточен на регулярный анализ свойств, которые я сильно меняю, без Вашего отчета как без рук :( --Ghuron (talk) 18:26, 13 June 2018 (UTC)
      • Не хочется кардинально переделывать архитектуру бота дабы заткнуть временную ситуацию. Пока ситуация не нормализовалась можете просто удалить и старые и новые ограничения касающиеся способа использования свойства. — Ivan A. Krestinin (talk) 16:45, 14 June 2018 (UTC)

Please revert reverted merge redirect resolving for stained-glass artist (Q2205972)Edit

They are too many, I don't want to fix them manually. Less than 30h is really short to review such a merge unfortunately … :-/ Thanks in advance! --Marsupium (talk) 12:55, 18 June 2018 (UTC)

  DoneIvan A. Krestinin (talk) 21:25, 18 June 2018 (UTC)
Thanks a lot! --Marsupium (talk) 22:54, 18 June 2018 (UTC)

VIAF misplacedEdit

FYI - this was incorrrect 18:59, 26 June 2018 (UTC)

Deprecated values should not trigger 'single value' constraint violationsEdit

On, for example, Wikidata:Database reports/Constraint violations/P496, your bot lists a constraint violation for Reinhardt Kristensen (Q63514), based of the two IDs at Q63514#P496. However, one of those IDs is marked as deprecated, because it's a withdrawn identifier value (Q21441764).

Please can you exclude deprecated values from such reports? Andy Mabbett (Pigsonthewing); Talk to Andy; Andy's edits 15:08, 28 June 2018 (UTC)

  • Hi, my bot ignores ranks at all. Generally collecting invalid and deprecated identifiers is not goal of Wikidata. We can not collect all such IDs because this dataset is unlimited. Collecting only some IDs is not looked as goal. For another IDs (for example VIAF, GND) we have special cleanup procedure. It automatically resolves redirect IDs and removes invalid IDs. ORCID DB has API. So the same procedure can be created for this identifier. I can help with this task. — Ivan A. Krestinin (talk) 13:50, 29 June 2018 (UTC)

ERROR: Unknown constraint type: Q21528959.Edit

Hello, your bot seems to malfunction at this page Wikidata:Database_reports/Constraint_violations/P813

"type constraint" to "item requires statement constraint"Edit

Hey Ivan, I see that you are moving lots of "type constraints" to the less intuitive "item requires statement constraint". Which advantage does this change give us? On first impression I think we should not touch "type constraints" in this way. Thanks, —MisterSynergy (talk) 22:23, 8 July 2018 (UTC)

P4224:Q5 на метакатегорииEdit

Я тут обнаружил что бодаюсь с Вашим ботом на элементах типа Q9684548. Это же классическая метакатегория, не предполагается что она содержит что-либо кроме подкатегорий. Если про человека известно, что он умер где-то в Афганистане, то его включат в Q6343289 --Ghuron (talk) 09:51, 24 July 2018 (UTC)

А, это аутофиксы на Property:P971. Идея отличная, но мне кажется Q1322263, Q18658526 и Q19660746 там лишние --Ghuron (talk) 09:55, 24 July 2018 (UTC)
Убрал соответствующие автофиксы. Также отметил эту категорию как метакатегорию и добавил ограничение на применение свойства category contains (P4224). — Ivan A. Krestinin (talk) 18:22, 24 July 2018 (UTC)
c указанием P31:Q30432511 к сожалению всё сложно - см. Wikidata talk:WikiProject Categories#Metacategory vs. Category --Ghuron (talk) 08:05, 25 July 2018 (UTC)

imported from Wikimedia project (P143)Edit

Hey Ivan, regarding this change by KrBot: can you please use based on heuristic (P887) as a reference qualifier instead of imported from Wikimedia project (P143) in future? The latter is to be used for Wikimedia projects as values only, and recently we started to tidy up this situation. based on heuristic (P887) was exactly made for what you want to say, but unfortunately it wasn’t used very much until recently and it is therefore not yet well-known. Thanks, MisterSynergy (talk) 07:47, 26 July 2018 (UTC)

Hi, fixed. Thanks. — Ivan A. Krestinin (talk) 11:00, 26 July 2018 (UTC)

Bot is incorrectly merging statements!Edit

Ivan, your User:KrBot is incorrectly merging non-identical statements. These statements have the same value but different qualifiers and should not be merged. Here is an example change: . This has been done incorrectly across thousands of disease items. Please revert all of these edits. Thank you Gstupp (talk) 18:30, 1 August 2018 (UTC)

Could you clarify meaning of the following statement? — Ivan A. Krestinin (talk) 20:32, 1 August 2018 (UTC)
  C0033740   edit
▼ 0 reference
+ add reference
  C0033740   edit
mapping relation type close match
▼ 0 reference
+ add reference
+ add value

Ivan, this statement is without references, and so doesn't have the same meaning. I've added one below with more closely follows the statements in question.

  C0033740   edit
▼ 1 reference
stated in Disease Ontology
Disease Ontology ID DOID:8888
+ add reference
  C0033740   edit
mapping relation type close match
▼ 1 reference
stated in Mondo Disease Ontology
+ add reference
+ add value

This means that the Disease Ontology (DO) has a cross reference to the item in question (from the class DOID:8888 in DO), but does not specify the mapping relation type. See here for a discussion on mapping relation type. The second statement says that MONDO has a xref between to the item (from the class MONDO:1234) and specifies that it is a close match. If the statements are merged, then both references get added to the statement and you cannot tell which reference belongs to which (value, qualifier) pair. Furthermore, if two statements have different qualifiers and references (but the same value), and after the KRBot's merging, the statement will have both qualifiers and both references and you cannot tell which reference goes with which qualifier. Please LMK if this is clear.. Gstupp (talk) 23:00, 1 August 2018 (UTC)

One database has only information about identifier value (C0033740). Another database has additional information about this value (close match). Do we really need to represent these details in Wikidata? Is this minor details needed to the data users? Usually single source is more than enough for external ID value. Do we need to show that another source exists with incomplete information about the value? Also duplicate values violate single value and unique value constraints. — Ivan A. Krestinin (talk) 21:49, 2 August 2018 (UTC)
I'd say that is a question that can be open to discussion, but that is a separate issue from the statement merging. Either way, the two statements mean different things and shouldn't be merged. Gstupp (talk) 22:44, 2 August 2018 (UTC)
I think we are discussing this already. Is it ok if I delete the first value instead of merge? — Ivan A. Krestinin (talk) 21:25, 5 August 2018 (UTC)
I don't see why it should be deleted. Multiple sources have complementary or partially overlapping data about an item. The value with the qualifier may be wrong and the first value correct? Regarding the single value constraints, the constraint should be modified to check for uniqueness instead of len()==1. Gstupp (talk) 17:27, 7 August 2018 (UTC)
Primary Wikidata goal is providing data to external users. We are interesting in involving additional external users too. Because more users will validate and improve our data. To involve the users we need make our data interface user-friendly. Because nobody like to spent a time to investigating overcomplicated datasets. Duplicate external identifiers are looked very strange. User need to spent a lot of time to understand the reason why its are needed. — Ivan A. Krestinin (talk) 19:26, 7 August 2018 (UTC)

suggestion: using edit groups for solving redirects.Edit

Hi Ivan. Thanks for always fixing links pointing to redirected items. As from time to time people are merging wrong items which only gets dedected after a few days, some redirect fixing have to be undone. So far this is only possible by contacting you on your talk page, but with the new tool Edit groups by @Pintoch the process could be simplified. What do you think? --Pasleim (talk) 07:59, 6 August 2018 (UTC)

Hi Pasleim, good idea! Documentation recommends links like:
Do you know, can I use something like:
Sometimes a job is executed using several bot runs. Random numbers requires some cross-run storing. So some informative link is preferred. — Ivan A. Krestinin (talk) 08:40, 6 August 2018 (UTC)
Random numbers are not required but each bot run (or group of but runs) needs an unique ID, so something like Q12345_Q67890 should be okay. You will need to provide to Pintoch a regular expression how to extract the ID from the edit summary. --Pasleim (talk) 13:54, 6 August 2018 (UTC)
I added required comment. Sample edit: [46]. Now we waiting for Pintoch: User talk:Pintoch#Edit groups for KrBot. — Ivan A. Krestinin (talk) 17:24, 6 August 2018 (UTC)

Hi Pasleim and Ivan A. Krestinin, that's a great idea! We cannot have / characters in tool ids or batch ids, so the pattern will not work in the current state. What about something like [[:toollabs:editgroups/b/KrBotMerge/Q12345_Q67890|details]]? With this pattern there is a risk that two batches are merged if two items are merged several times, so ideally it would be better to add a timestamp or a random hash to disambiguate them. But if that is too hard to code, we can also try like that. − Pintoch (talk) 08:43, 12 August 2018 (UTC)

Changed, example edit. — Ivan A. Krestinin (talk) 21:05, 12 August 2018 (UTC)

Note: we have an issue with lexemes. — Ivan A. Krestinin (talk) 13:45, 13 August 2018 (UTC)

Redirects in lexical categoriesEdit

Hi Ivan, lexical categories occasionally get merged. It seems that redirects there aren't updated automatically yet. Would you kindly consider adding it to your bot's tasks?
--- Jura 09:33, 11 August 2018 (UTC)

Hi Jura, I try to implement this, but I did not find any items to test this. — Ivan A. Krestinin (talk) 13:51, 13 August 2018 (UTC)
Thanks. I noticed. Sorry, I fixed a couple before commenting here. Today I found à droite (L796)
--- Jura 13:55, 13 August 2018 (UTC)
  Done, thank you for the example item. — Ivan A. Krestinin (talk) 20:56, 13 August 2018 (UTC)

single best value constraint (Q52060874)Edit

Hey Ivan, the single best value constraint (Q52060874) is available for a while, but I just figured out that your bot apparently does not support it yet. Can you please consider integrating it into your code? Thanks, MisterSynergy (talk) 23:25, 13 August 2018 (UTC)

Now bot ignores rank information at all. It does not load it, does not process... Adding this constraint is hard task.
Your question got me thinking about ranks. I see some redundancy in coexisting ranks and qualifiers... For example what is the preferred value for population (P1082)? The latest value maybe. But the latest value can be extracted using point in time (P585) qualifier values.
My bot executes many different tasks in Wikidata. But it never need ranks information. This fact says about redundancy too.
Redundancy in data model is very bad thing. It makes data client algorithms more complex. It allows to break data integrity. So we need to remove redundancy. I think deleting ranks at all is good idea. What do you think? — Ivan A. Krestinin (talk) 21:23, 16 August 2018 (UTC)
You ask some unexpected questions here  . At first glance, I do not think that ranks and qualifiers can completely replace the other one so that we could get rid of one of them (here in particular: ranks). I guess we need to live with the existence of both, and we need to accept that constraints may consider aspects of ranks as well.
However, this does not mean that you necessarily need to support any type of constraints with your bot. You don’t look at qualifiers and references in many situations as well, which is well accepted among editors (and constraint violation reports are long enough right now anyway). If you don’t load ranks, it seems indeed very complicated to add this type to the constraints reports. As an alternative, I suggest to implement a “pass” routine (do nothing) for all official constraint types (or constraint qualifier relations) that your bot does not support (yet). You could just add a section to the covi page, stating that this particular constraint type has been seen by your bot, but it is not (yet) supported for technical reasons or complexity; at the same time, your bot could evaluate all the other supported constraints. Right now, unfortunately, reports like Wikidata:Database reports/Constraint violations/P297 are (not) produced just because there is one unsupported (but formally correct) constraint type defined on the property. This leads to the situation that editors tend to avoid these unsupported (by your bot) constraint types, although they have an official status. I think we should shorten this list this way. —MisterSynergy (talk) 21:42, 16 August 2018 (UTC)

Hey Ivan, did you think about this one, particularly the idea to pass formally valid constraint evaluations if for some reasons you cannot do it yet? It would be really great if there was some progress here… Thanks and regards, MisterSynergy (talk) 12:47, 25 August 2018 (UTC)

Yes, pleaase. 0:-) --abián 13:53, 21 September 2018 (UTC)

group by (P2304)Edit

Hi Ivan. For value requires constraints, this might work better if the grouping was by properties on the value rather than the item. [47]
--- Jura 12:30, 20 August 2018 (UTC)

  • Hello Jura, it is difficult a bit. Currently group by (P2304)-related code is located in constraint type independent part. — Ivan A. Krestinin (talk) 21:58, 21 August 2018 (UTC)
    • Don't bother in that case. The lists just somewhat bulky right now (should improve).
      --- Jura 07:01, 22 August 2018 (UTC)

Paul Henri MalletEdit

Hi. Your bot is blindly (of course) replacing a claim by another on numerous pages. In the case of Paul Henri Mallet’s page this should not be done, as the new link links to a page containing nothing (whereas the old suppressed link contains valuable information). Can you please do something about this? Thank you. Sapphorain (talk) 21:19, 21 August 2018 (UTC)

Thank you for your answer, but I know nothing about bots and the terminology you mention. All I can do is revert, over and over again, what your bot is doing on this precise page, because it is removing valuable information. Sapphorain (talk) 22:33, 21 August 2018 (UTC)
I removed the autofix templates here. They need to be discussed on the property talk page before being added again. —MisterSynergy (talk) 11:19, 22 August 2018 (UTC)
Thank you. — Ivan A. Krestinin (talk) 19:03, 22 August 2018 (UTC)

Isadore/ ORCID errorsEdit

Your bot has added a number of invalid ORCID iDS to items about long-dead people; see Wikidata:Database reports/Complex constraint violations/P496. Please can you revet the edits, or simply delete the bad values? Andy Mabbett (Pigsonthewing); Talk to Andy; Andy's edits 22:28, 21 August 2018 (UTC)

Constraint reports updateEdit

Hi Ivan, it looks like the updates have stopped. I thought that they might be back today.
--- Jura 02:11, 30 August 2018 (UTC)

Hello Jura, I have some troubles with server where bot is running. It will be fixed today or tomorrow most probably. — Ivan A. Krestinin (talk) 05:50, 30 August 2018 (UTC)
Ok. Thanks. No urgency. I just thought it might have been accidentally switched off.
--- Jura 06:02, 30 August 2018 (UTC)

Реки ИндонезииEdit

Привет! Если вдруг будет нечего залить (да, смешно) за углом притаились 10 тысяч рек Индонезии в себуанской вики без элементов. Вопрос дубликатов не существенен, у индонезийцев всего 446 статей о водных объектах. В наличии тип объекта, код GeoNames, координаты, страна и провинция. А всего там ещё около 300-т тысяч водных объектов без элементов… Мастер теней (master of shadows), 17:34, 4 September 2018 (UTC)

Приветствую, пока бот идёт по категории ceb:Kategoriya:Coordinates not on Wikidata импортируя координаты, страну и GeoNames. Подумаю как импортировать ещё провинцию и тип объекта. — Ivan A. Krestinin (talk) 18:26, 4 September 2018 (UTC)
@Мастер теней: Импорт данных в существующие элементы продолжается, а вот создание новых элементов пока приостановил по просьбе участника Nikki. Пока нет времени разбираться что именно вызывает возражения. Обычно я импортирую коды и данные, а потом автоматически мержую элементы, где совпадают все данные. Раньше это возражений не вызывало. — Ivan A. Krestinin (talk) 14:18, 14 September 2018 (UTC)

Fake "imported from" referencesEdit

Please stop your bot from adding "imported from" references to existing statements, e.g. here (and please also stop it from repeatedly redoing edits that have been undone). Those statements were added manually, not imported from Wikipedia. - Nikki (talk) 08:41, 13 September 2018 (UTC)

Just add any other reference and bot will not add "imported from". Something like this. Unfortunately Wikidata engine has some bugs. Write requests fail sometimes. This is the reason why bot adds all required claims again and again until its will be created successfully. — Ivan A. Krestinin (talk) 14:10, 14 September 2018 (UTC)
References are not required for all properties. You could make your bot check whether the request actually failed before trying again and/or you could make it add the reference in the same edit that adds the statement. I don't even know what reference I should add in some cases (what's the reference for "based on manually comparing the source and target data"?). Also, how am I supposed to find those statements before your bot does? - Nikki (talk) 09:58, 16 September 2018 (UTC)
Reference is not required, but it is good to have. "imported from" helps to track error source. I can change algorithms, but this can affect bot stability and/or performance. Is it really big issue? I think Wikidata is wiki-project. Somebody adds data. Another bot or user adds some reference. The third user replaces reference to better reference. And so on... I think it is normal wiki-life. Now I am thinking about bot that compares Wikidata items and data from Geographic Names Information System (Q136736). If the data is equal then replace imported from Wikimedia project (P143) to stated in (P248): Geographic Names Information System (Q136736). It is not data import, so licensing issues are not affected. — Ivan A. Krestinin (talk) 15:08, 16 September 2018 (UTC)
I think it's wrong to add "imported from Wikipedia" references to existing statements, especially when they can't be replaced, but I don't have the energy to argue any more.
There's no need to make a bot for GNIS references, my bot is already doing that.
I see you're merging items from cebwiki now. Could you explain how you decide that they're the same? Are you aware that we have a lot of wrong GeoNames IDs?
- Nikki (talk) 22:33, 21 September 2018 (UTC)
Jesberg (Q573235) went wrong at least, I think cebwiki (and thus GeoNames) has articles for the municipality and the municipality seat. Sjoerd de Bruin (talk) 08:42, 22 September 2018 (UTC)
Could you suggest some approach for importing instance of (P31) = municipality and instance of (P31) = municipality seat from cebwiki? This will prevent users and bots from incorrect merges. — Ivan A. Krestinin (talk) 08:58, 22 September 2018 (UTC)
Bot merges items if there are no conflicts in GeoNames ID (P1566), GNIS ID (P590), instance of (P31), country (P17), located in the administrative territorial entity (P131), coordinate location (P625). Also it checks item names and merges only if items has the same name. — Ivan A. Krestinin (talk) 08:50, 22 September 2018 (UTC)


Hello Ivan, sorry to bother you, but for some reason your bot removed instance of human from a Phycologist from South Korea]. Dan Koehl (talk) 21:21, 13 September 2018 (UTC)

Your mistake. The Bot did the right thing. --Succu (talk) 21:24, 13 September 2018 (UTC)
Yes @Succu:, I realized that the bot worked just perfect, the instance had been inserted twice, and removing a duplicate is of course correct. So please forget about this Ivan, your Bot seems to work perfectly. Dan Koehl (talk) 21:29, 13 September 2018 (UTC)

объединение вселенной и серии игр StarCraftEdit

Привет, можете отменить перенаправления У меня при нажатии "Undo entire group" выдаёт "Server Error (500)"... --Infovarius (talk) 15:30, 18 September 2018 (UTC)

@Pintoch: could you check "Undo entire group" shows "Server Error (500)" on click. — Ivan A. Krestinin (talk) 22:15, 18 September 2018 (UTC)
@Infovarius, Ivan A. Krestinin: I have just tried to undo this batch, and did not get any server error. But thanks for the report, I will investigate. − Pintoch (talk) 08:06, 19 September 2018 (UTC)

Redirects in LexemesEdit

Hi Ivan,

Would it be possible to update these? Maybe they didn't show before as the Lexeme structure is still evolving. --- Jura 16:57, 8 October 2018 (UTC)


The two last entries are wrong there, because I changed the items already more than a week ago. Why is this not updated? Steak (talk) 08:12, 10 October 2018 (UTC)

There might be some data missing in the dumps Ivan is using for evaluation. I saw something similar on other covi pages this week, notably here. —MisterSynergy (talk) 08:15, 10 October 2018 (UTC)

resolving redirectEdit

Do you think is possible revert all this type of edit? (example). The merge was reverted --ValterVB (talk) 08:52, 13 October 2018 (UTC)

@ValterVB: You can click on "details" at the end of the edit comment. Then the option shows up to undo the entire edit group by one click. --Pasleim (talk) 09:09, 13 October 2018 (UTC)
@Pasleim: Great, I did not know. But I receive "Server Error (500)" when I try to do the login or simply I click on "Undo on entire group". Some temporary problem? --ValterVB (talk) 09:16, 13 October 2018 (UTC)
  • Somehow it stop working, at least for two I tried: sample. @Pintoch: is this on your side or Ivan's? --- Jura 15:09, 13 October 2018 (UTC)
@Jura1, ValterVB: thanks for letting me know. It is curious, the problem disappeared once I restarted the service. I can't figure out where the error comes from. Can you try again? − Pintoch (talk) 15:25, 13 October 2018 (UTC)
@Pintoch:   Done it works fine. Thanks. --- Jura 15:30, 13 October 2018 (UTC)
Yes, work fine. --ValterVB (talk) 19:02, 13 October 2018 (UTC)

please rollback change from Greenland to Kingdom of DenmarkEdit

Deprecated rankEdit

Hello Ivan, two years ago you wrote: "Current bot implementation ignores ranks at all." Is there a chance that this problem will be solved? Wikidata:Database reports/Identical GND ID lists items like Juan Cruz Ochoa (Q362424) and Juan López Díez (Q19863329) as "can be merged" even though one of the GNDs have been marked as deprecated rank. @MisterSynergy: This might be of interest for you. --Kolja21 (talk) 22:16, 15 October 2018 (UTC)

This limitation exists now. But are you sure that we need to collect such errors? Looks like VIAF ignores the rank too. — Ivan A. Krestinin (talk) 20:15, 20 October 2018 (UTC)

Scope sagaEdit

Hi Ivan, I probably missed part of the story, so I'm not sure how to get it right. At P5683, the "as reference" doesn't seem to work while at P2358 the "as main value" works fine. Any suggestions how to fix it? --- Jura 02:02, 16 October 2018 (UTC)

Constraint definitions with deprecated rankEdit

Hi Ivan, the js feature ignores definitions with deprecate rank. It would be good if the reports of KrBot would do the same. The advantage is that the new suggestion feature could be used even without the constraint being active. Sample on P106 (the report fails for another reason). --- Jura 12:23, 19 October 2018 (UTC)

allowed entity types constraint (Q52004125)Edit

Hi Ivan,

In addition to:

I just noticed that this was changed in September to use also the items:

The meaning seems to be that the first one now allows use directly on the lexeme, the other two in the forms/senses parts. See also

Would you adjust the reports for these? --- Jura 10:50, 25 October 2018 (UTC)

Нью-Йоркский музей современного искусстваEdit

Добрый день! Ваш бот проставил кучу чуши вроде "Пабло Пикассо хранится в коллекции Нью-Йоркский музей современного искусства", я её снёс - подскажите, как сделать, чтобы он её не вернул? Wikisaurus (talk) 11:48, 27 October 2018 (UTC)

Приветствую, вариантов несколько, какой из них правильный - не знаю:
  1. Удалить из этих элементов свойство Museum of Modern Art work ID (P2014).
  2. Удалить у свойства Museum of Modern Art work ID (P2014) ограничение: item requires statement constraint (Q21503247): collection (P195) - Museum of Modern Art (Q188740).
  3. Удалить у этого ограничения атрибут constraint status (P2316): mandatory constraint (Q21502408).
Ivan A. Krestinin (talk) 12:10, 27 October 2018 (UTC)
  • Очевидно, что правильное решение - это удалить Museum of Modern Art work ID (P2014), это свойство может быть только у произведений, а не у классов объектов и не у художников; от того, что в музее хранится какой-то humidor (Q921455), не следует на humidor (Q921455) вешать код этого элемента, как и наличие там картины Пикассо не отправляет трупик Пикассо валяться там.
  • Но, поскольку такие ошибки массовые, думаю, требуется как-то остановить вашего бота, чтобы он не портил элементы ещё сильнее, когда разные деструктивные элементы добавляют в них чушь. Вы можете сделать 2, 3 или ещё что-то, чтобы ваш бот перестал их расставлять? Wikisaurus (talk) 22:25, 21 September 2019 (UTC)


Привет, интересно, что это было? --Infovarius (talk) 23:51, 4 November 2018 (UTC)

Приветствую, следствие объединения элементов. — Ivan A. Krestinin (talk) 21:56, 6 November 2018 (UTC)
Я подозревал это, просто мне казалось, что это как-то в описании правки отражалось... --Infovarius (talk) 17:03, 8 November 2018 (UTC)
Возможность задавать описания правкам появилась далеко не сразу. Даже сейчас это можно сделать не для всех типов правок. — Ivan A. Krestinin (talk) 22:12, 27 November 2018 (UTC)


Hi Ivan,

It seems to be offline for some time. Would you restart it? --- Jura 06:21, 25 November 2018 (UTC)

Fixed. — Ivan A. Krestinin (talk) 22:11, 27 November 2018 (UTC)

P1482 (Stack Exchange tag)Edit

Иван, добрый день! Страница обсуждения говорит, что значение должно иметь вид, например,, а не Поправил везде, добавил ограничение на значение свойства. -- Luitzen (talk) 11:44, 26 November 2018 (UTC)

Добрый день, хорошо. Вообще я не слишком хорошо разбираюсь в этом свойстве. — Ivan A. Krestinin (talk) 22:14, 27 November 2018 (UTC)


Could you stop adding persons' data to this data? It is an insult to the people added to it. --Ohtani tanya (talk) 12:27, 1 December 2018 (UTC)

  • My bot do not execute such tasks. Bots are not the best solution for stopping vandalism. — Ivan A. Krestinin (talk) 10:16, 3 December 2018 (UTC)

Md5 hash problem at P1476Edit

Hi Ivan, would you have a look at Wikidata:Database reports/Constraint violations/P1476? Following the discussion on Property talk:P1476, I tried to get the type constraint for title (P1476) to work again. --- Jura 10:20, 2 December 2018 (UTC)

  • Fixed. — Ivan A. Krestinin (talk) 12:29, 3 December 2018 (UTC)
  • Thanks for looking into this, but it seems I was too quick to celebrate. It's back. If it helps, we could remove the format constraint or skip the output of some data (top 2000?). --- Jura 09:14, 4 December 2018 (UTC)
  • BTW, would you kindly run another update of this report? I modified a few constraints, so it's not necessary to use current data. --- Jura 05:58, 21 December 2018 (UTC)

updates User:Ivan A. Krestinin/To mergeEdit

Hello Ivan A. Krestinin, Last update has been 15 days ago. Can you look into it? Kind regards, Lymantria (talk) 10:02, 13 December 2018 (UTC)

Updates are there. Thank you. Lymantria (talk) 08:40, 15 December 2018 (UTC)

Fandom article ID (P6262)Edit

User:KrBot recently replaced described at URL (P973) (pointing to wikia domains) with Fandom article ID (P6262). Will this job be performed regularly? --Loominade (talk) 10:25, 17 December 2018 (UTC)

  • I added an autofix, so it should run fairly regularly --- Jura 05:59, 21 December 2018 (UTC)

Errors in Category:Pages with script errorsEdit

Hi, several pages in Category:Pages with script errors are created by your bot, which occasionally creates pages with too many items for page to render so we get "The time allocated for running scripts has expired." error. I would like to bring the number of pages in that category to zero so it is easier to spot new issues. Any ideas how to modify your bot not to create pages with Lua errors? Possibly we could limit each query to some number of items returned, or not use {{Q}} if number of items returned is over some limit. --Jarekt (talk) 21:09, 2 January 2019 (UTC)

@Jarekt: There is some sort of limit for the usage of {{Q}}Wikidata:Database reports/Constraint violations/P281, for example, doesn’t use it (see the source code). Maybe the limit should be lowered. —Tacsipacsi (talk) 09:56, 3 January 2019 (UTC)
{{Q}} is a lua based template and no matter how effivient it is, if you have several thousands of them than you will run out of allocated lua time per page. I do not think we can or should alter those thresholds, but I think we should either put a limit on number of items returned by a query or not use {{Q}} on pages like Wikidata:Database reports/Constraint violations/P3426 or split them into several pages. --Jarekt (talk) 12:41, 3 January 2019 (UTC)
@Jarekt: It seems you misunderstood my answer. The P281 limit report shows that the bot avoids using {{Q}} on some pages. It seems pretty probable that it’s based on some threshold built in the bot, and that threshold should be lowered (so that more pages fall in the category where plain links are used). I don’t think the list should be truncated (i.e. less violating pages listed), as having harder-to-read entries is still better than not having those entries. Splitting the report into multiple pages makes changes harder to follow through page histories and watchlists, and also raises the question what we want to do with the blank subpages if the violation count drops. —Tacsipacsi (talk) 20:58, 3 January 2019 (UTC)
Ah, now I get it. Yes if you are right than your solution makes the most sense. --Jarekt (talk) 03:35, 4 January 2019 (UTC)
You are right, bot has threshold. Currently it is 2000. Previously it was 5000. Now you suggest make it lower again. It looks like Wikidata engine or the template performance degradation. I can change the threshold again, but it looks like workaround, not as real fix. I think last changes in {{Q}} should be reviewed first. — Ivan A. Krestinin (talk) 23:18, 4 January 2019 (UTC)

Constraint botEdit

Hello - your bot is missing a new constraint: [48]. Notice that other constraint bots seems to be able to cope with it. Deryck Chan (talk) 16:45, 5 January 2019 (UTC)

It also has problems with single best value constraint (Q52060874), see [49] Ahoerstemeier (talk) 15:01, 18 January 2019 (UTC)
  DoneIvan A. Krestinin (talk) 09:22, 16 February 2019 (UTC)

External uses from zh-yue.wpEdit

Would you please add the following format strings to your KrBot so it will sync external uses from zh-yue.wp more accurately?

  • {{#property:Pxxxx}}
  • {{#statement:Pxxxx}}
  • {{#invoke:Wikidata|getValue|Pxxxx|
  • {{#invoke:Wikidata|getRawValue|Pxxxx|
  • {{#invoke:WikidataIB|getValue|Pxxxx|
  • {{#invoke:Wikidata|getImages|Pxxxx|

--Deryck Chan (talk) 18:58, 18 January 2019 (UTC)

  DoneIvan A. Krestinin (talk) 15:16, 17 February 2019 (UTC)

Wikidata:Database reports/Constraint violations/P373Edit

Your bot update of this page seems to be failing and blanking the page, while @Pasleim:'s DeltaBot (talkcontribslogs) seems to be updating the page OK. Can you have a look, and at least stop it from edit-warring? Thanks. Mike Peel (talk) 10:41, 20 January 2019 (UTC)

Same issue is present on Wikidata:Database reports/Constraint violations/P937, and if I check the bot's edit history several others - Andre Engels (talk) 11:45, 15 February 2019 (UTC)
I also noticed this on Wikidata:Database reports/Constraint violations/P144. Please respond. Multichill (talk) 21:37, 17 February 2019 (UTC)
"Too many files for existance check" error is fixed. "Unknown relation: Q30208840" is more interesting case. Every time then I see instance or subclass of (Q30208840) usage it is looked like bad modeling issue. I fixed such issues for several properties. So the question is: what is the better spend time to bad models support or spend time to fixing bad models. — Ivan A. Krestinin (talk) 10:00, 18 February 2019 (UTC)
Ivan, with all respect for your merits regarding the constraints system: it is not yours. instance or subclass of (Q30208840) is now more than 1.5 years old, and its invention bases on a lot of demand from the community. The constraints gadget supports it, and it is documented at Help:Property constraints portal/Type and Help:Property constraints portal/Value type. You may not like it because "it lookes like a bad modeling issue" (I do not like it as well), but I think you should really accept its existence, and I also think your bot should reflect this. I would be fine if you do not compute any data for this constraint type and write something like "constraint type Q30208840 in not supported by KrBot" in the reports. That way, the reports would not be completely broken. This is what I have already suggested half a year ago in #single best value constraint (Q52060874) further up this page (“pass routine”). —MisterSynergy (talk) 10:34, 18 February 2019 (UTC)
Please either fix your bot, stop it or have it skip reports like Wikidata:Database reports/Constraint violations/P144. Just having it out empty out valid reports by DeltaBot is not acceptable behaviour. Multichill (talk) 17:22, 20 February 2019 (UTC)
  FixedIvan A. Krestinin (talk) 11:52, 17 March 2019 (UTC)

Blatantly false statements for P6379Edit

Please revert as soon as possible all statements your bot made with has works in the collection (P6379) Musée d'Orsay (Q23402). They are all without basis, backed by fake references and the vast majority of them is blatantly false.

Can't you see in Répertoire des artistes (Q21518713) that this is a directory of artists about which the museum has documentation which is a totally different thing than having an artwork in the collections?? There are thousands of entries in the directory that are architects, what would that mean: storing buildings? Yes some entries are for artists that do have pieces in the collections, but by indiscriminately adding thousands that don't you are just rendering the data unusable and making the whole property laughable, so better revert it.

I'm not usually the kind of person to make rants, but this is so out of thought that it just vindicates all the people in the wikipedias that don't want to have anything to do with Wikidata as they see it as a giant sh*tload dumped by brainless bots. @Hannolans: as you are the root cause of this mess! --Nono314 (talk) 15:52, 23 February 2019 (UTC)

I discovered yesterday that this porperty is not about artists in the Musee d'Orsay, but about artists in the library of the museum. This was the reason I altered the item Répertoire des artistes (Q21518713) and the property description yesterday because you wrote "many artists are in the authority control database without having artworks in the collections!!".
I was already suspicious, that's why I several days earlier asked on Property_talk:P2268 about the aim of this property, but no response. So based on the earlier descriptions I made the wrong assumption that musee d'Orlee had that artists in the collection. Next step is to remove the statements. I tried to remove the statements yesterday with but this didn't work. --Hannolans (talk) 18:29, 23 February 2019 (UTC)
Those statements are being removed right now. --Hannolans (talk) 19:53, 23 February 2019 (UTC)
Thank you @Hannolans: for having followed up on this, much appreciated. It's a pity when bots rush to add tens of thousands of false statements based on wrong assumptions, without any prior check --Nono314 (talk) 14:27, 27 February 2019 (UTC)
I hoped this bot would write those statements as we want to fill a base set of artists with works in collection. I added the property as a requirement forcing the bot to add those, but next time I will do a double check if the property is what is looks like. --Hannolans (talk) 11:22, 1 March 2019 (UTC)

Bad bot editEdit

Please stop your bot from doing this again. Thanks, Andy Mabbett (Pigsonthewing); Talk to Andy; Andy's edits 22:17, 28 February 2019 (UTC)

Just remove corresponding {{Autofix}} from Property talk:P856. — Ivan A. Krestinin (talk) 11:55, 17 March 2019 (UTC)

Don't change P973 to other identifier statementsEdit

See --Anvilaquarius (talk) 09:09, 1 March 2019 (UTC)

Just remove corresponding {{Autofix}} from Property talk:P973. — Ivan A. Krestinin (talk) 11:58, 17 March 2019 (UTC)

P2862 autofixEdit

Could you apply the autofix of Catalogus Professorum Academiae Rheno-Traiectinae ID (P2862) as well to references? This for some upcoming bot project. Sjoerd de Bruin (talk) 13:33, 25 March 2019 (UTC)

Review GNIS/Geoname constraints for lakesEdit

The KrBot seems to have applied instance of Lake in the USA where they should be instance of spring. I've reverted a few, but checking the instance to match the type would be ideal cleanup of the bot's applied instance of. This could be pulled from either an associated GNIS ID or Geoname ID. Example revert. Thanks. Wolfgang8741 (talk) 23:50, 28 March 2019 (UTC)

  • Thank you, I cleaned up P31 for lakes imported from cebwiki. — Ivan A. Krestinin (talk) 20:45, 31 March 2019 (UTC)

P2907 UTC timezone offset range constraintsEdit

Many of not all time zones are failing their UTC timezone offset (P2907) range constraints; see e.g. UTC−05:00 (Q5390). I'm not sure what's going on, but it strikes me that your change [50] might either be the cause of this problem, or an attempt to fix this problem, but I'm not sure which. Scs (talk) 14:49, 7 April 2019 (UTC)

New constraint statusEdit

The other day, I read that in May, there will be a new constraint status ( Wikidata:Project_chat#New_status_of_constraint:_"suggestion" ). Supposedly the bot reports would or should just handle them like the current non-mandatory ones. --- Jura 10:44, 14 April 2019 (UTC)

Hello Jura, thank you, added. — Ivan A. Krestinin (talk) 23:46, 14 April 2019 (UTC)

Automatic replacementsEdit

Hi, I've added some autofixes to Property talk:P973 and tried testing them at Wikidata Sandbox (Q4115189). Unfortunately KrBot didn't edit the item today. Does KrBot skip that item? How could I verify that the autofixes work? Jc86035 (talk) 16:41, 18 April 2019 (UTC)

Never mind; the bot has already made the autofixes. Jc86035 (talk) 18:30, 20 April 2019 (UTC)
Bot had network connection. Now all is fine. — Ivan A. Krestinin (talk) 18:56, 20 April 2019 (UTC)

Wikidata:Database reports/Constraint violations/P496Edit

Hoi, this report used to be updated once every three days. It has not been updated since 11-4. Is something wrong? Thanks, GerardM (talk) 21:30, 19 April 2019 (UTC)

Bot had network connection. Now all is fine. — Ivan A. Krestinin (talk) 18:57, 20 April 2019 (UTC)

Can KrBot stop deleting item from married couple (Q3046146) and Q15618652Edit


For exemple here and here ?

eru [Talk] [french wiki] 06:35, 22 April 2019 (UTC)

  • Hello, please see description of occupation (P106). The property is person-related, not person group-related. Extending scope of this property is not very good idea. Often some bots import occupation (P106) from Wikipedia. And many bots make the same mistake. Its import value that is applicable for one person only to person group item. Now my bot fixes such errors. The mechanism will be broken if scope of occupation (P106) will be extended. — Ivan A. Krestinin (talk) 00:07, 25 April 2019 (UTC)

Tűzhányó blokkEdit

FIGYELEM! KengurúZsebe (talk) 18:15, 9 May 2019 (UTC)

Hello, I do not understand you. — Ivan A. Krestinin (talk) 18:53, 9 May 2019 (UTC)

Extra run requestedEdit

Hi. I would like to have an update on Wikidata:Database reports/Constraint violations/P2951. Can you trigger the bot? best regards, Thomas Ledl --09:19, 18 May 2019 (UTC)

thx! --Thomas Ledl (talk) 12:01, 18 May 2019 (UTC)

Maintenance of Constraint_violations/ErrorsEdit

Hi Ivan,

I had a look at the above and tried to fix a couple. Maybe some need some adjustments from your side:

"synonym (P5973) Can not present value 'L3036-S4' (type lexeme sense) as entity key. "
probably from . Not sure why though.
"genre (P136) Constraint Type does not accept qualifier P4680 "
"narrative role (P5800) Constraint Type does not accept qualifier P4680 "
could that be supported?
"spam black list"
maybe the reports for the two identifiers could be generated without links. (unless there is a way around the global list).
"preferred pronoun (P6553) Can not present Q7536 as lexeme."
not sure whats meant here.
"Commons quality assessment (P6731) Bad value of P2305 Q59712033"
if present as only value Wikibase MediaInfo (Q59712033) should lead the property to be usable only on Commons (eventually possibly there).

Hopefully, the 503s work next time. --- Jura 17:39, 18 May 2019 (UTC)

Hi Jura,

"synonym (P5973) Can not present value 'L3036-S4' (type lexeme sense) as entity key."
TODO for me: support symmetric constraint (Q21510862) for forms.
"genre (P136), narrative role (P5800) Constraint Type does not accept qualifier P4680 "
looks like redundant qualifier. type constraint (Q21503250) is checked for main values only always.
"spam black list"
looks like formatter URL (P1630) should be deleted to be consistent with spamlist.
"preferred pronoun (P6553) Can not present Q7536 as lexeme."
incorrect usage of lexeme requires lexical category constraint (Q55819078). lexeme requires language constraint (Q55819106) and lexeme requires lexical category constraint (Q55819078) check lexeme there the property is specified, not target lexeme.
"Commons quality assessment (P6731) Bad value of P2305 Q59712033"
I did not find usage of this property to understand how it should work.
"503 error"
looks like Wikidata servers have some bug. Sometimes report writing request fails. Probability is higher for large reports.

Ivan A. Krestinin (talk) 21:45, 18 May 2019 (UTC)

Hi Ivan, Thanks for your feedback.

"Constraint Type does not accept qualifier P4680"
narrative role (P5800) makes an interesting distinction with the scope, depending on whether it's used as a qualifier or as main value. Maybe you could support at least one of the two checks.
"spam black list"
there was some lengthy discussion before it was added, but I'm not particularly interested in either report
"Can not present Q7536 as lexeme"
good point. Seems we lack a suitable constraints for that.
Wikibase MediaInfo (Q59712033)
It should mean that eventually only uses like this are possible. Unless also another entity type is specified.
--- Jura 09:20, 19 May 2019 (UTC)

Hi Jura, Wikibase MediaInfo (Q59712033) and lexeme value requires lexical category constraint (Q64006792) support were added. Spamlist issue was fixed also. — Ivan A. Krestinin (talk) 21:08, 25 May 2019 (UTC)

  • Thanks. I made a phab ticket for the mediainfo one as well. BTW, I noticed that replacement property (P6824) was created just now. It will appear in constraint statements. Please ignore them for the purposes of the bot. --- Jura 13:31, 8 June 2019 (UTC)

Krbot errorsEdit

Hi, the bot seems to have made a lot of errors in adding collection (P195) and V&A item ID (P3929) properties relating to the Victoria and Albert Museum (Q213322). For example, the properties have been added to Edna Best (Q445510) but the item in the collection is not the actress but a photograph of the actress. Albert Memorial (Q281465) has the properties, but the item in the collection is a photograph of the memorial, not the memorial. See also Theatre Royal, Drury Lane (Q1756626). capital (Q193893) has this issue, but the thing in the collection is a specific capital, not the concept of capital. The bot has given Shakespeare plays such as King Lear (Q181598) the properties, but the collection holds posters or designs advertising the plays, not the plays themselves. There are dozens of affected items: I haven't the time to identify all of them. Can you undo the relevant edits? Thanks in advance for any help, MartinPoulter (talk) 11:30, 12 June 2019 (UTC) Looking again, it seems other users on Mix'n'Match have made the false matches, and Krbot has added identifiers consistent with those matches. So the bot has acted sensibly within its own rules, but it's added false information. I'll raise this on project chat. MartinPoulter (talk) 11:34, 12 June 2019 (UTC)

Bot make such changes because the items have V&A item ID (P3929) property. The property was added by MistressData. Looks like the most of V&A item ID (P3929) usages should be deleted due reasons listed above. @MistressData: what do you think? — Ivan A. Krestinin (talk) 22:55, 13 June 2019 (UTC)

Edit comment for VIAF redirect resolvingEdit

Hi! Thanks for resolving VIAF redirects! However, such edit comments are not useful, I would have no idea what’s going on if I didn’t know it’s redirect resolving. Could you please add some edit summary after the automatic one that explains the intent of your edit? Thanks in advance, —Tacsipacsi (talk) 16:04, 16 June 2019 (UTC)

Constraint reports for P214Edit

Hi! Since the beginning of May, your bot’s only edits to Wikidata:Database reports/Constraint violations/P214 are replacing DeltaBot’s constraint report with

ERROR: Edit failed, error code 'badmd5' (The supplied MD5 hash was incorrect.).

Could you please check what’s happening here? —Tacsipacsi (talk) 20:09, 22 June 2019 (UTC)

  •   Fixed. The nearest update is in progress. So it will fail. But the next update should be fine. — Ivan A. Krestinin (talk) 21:36, 23 June 2019 (UTC)

Nope, it still fails. (Except if it’s the nearest update, completed in more than two days…) —Tacsipacsi (talk) 14:47, 26 June 2019 (UTC)

P973>P214 for long identifiersEdit

Hi Ivan,

At Q48338088#P973 (and a few others), the conversion doesn't seem to work. It seems autofix-regex and format constraint seem ok. --- Jura 02:31, 24 June 2019 (UTC)

Hi Jura, it is strange situation. Most probably it is bug in PCRE library. I split the autofix and it works as expected. — Ivan A. Krestinin (talk) 22:15, 25 June 2019 (UTC)

Property uses in templatesEdit

Hi Ivan,

From what I have seen for P6801, I think uses in the two above don't get detected. --- Jura 12:37, 1 July 2019 (UTC)

  • Thanks. ----- Jura 19:26, 4 July 2019 (UTC)

Too many uses ?Edit

At Wikidata:Bot_requests#Fix_encoding_errors_in_author_name_string, I suggested autofix, but it occurred to me later that might not work given the number of uses of the property. --- Jura 19:26, 4 July 2019 (UTC)

  • You are right. SPARQL does not work for this property. I added special workaround for this property. Its values will be loaded from dumps. Dumps have some time lag. But this works. — Ivan A. Krestinin (talk) 21:22, 4 July 2019 (UTC)

Semi colon in author namesEdit

It seems to me you have told your bot to separte author name strings in case there is a semi colon. However, this yielded some errors like this, where the semi colon is part of a wrong encoding. I noticed also a few other errors. Can you fix this? Steak (talk) 17:36, 6 July 2019 (UTC)

Property uses countEdit

Hi Ivan,

As we lack recent updates at I was wondering if KrBot could occasionally update it. It's used on property documentation pages for current uses and "usage history".

As it uses the link table, the counts slightly different from those of KrBot, but I suppose that shouldn't matter that much. --- Jura 07:43, 12 July 2019 (UTC)

I need some data source for updating. I have dumps of course. But its are not very good way due several reasons. Maybe you can suggest something else? — Ivan A. Krestinin (talk) 21:01, 17 July 2019 (UTC)
Personally, I wouldn't mind the data from dump. I think deltabot used something like this, but it now times out. Maybe splitting the query into several and then combing its results works (sample for P3%). --- Jura 12:07, 18 July 2019 (UTC)

Same source, new statementEdit

Hi Ivan, KrBot is resolving redirects what is great. Unfortunately it doesn't change the source. The result:

So if your bot is changing a stament, please remove the source or add a note. --Kolja21 (talk) 01:58, 14 July 2019 (UTC)

Hi Kolja, it is interesting question. My bot makes very minor change. It just resolves redirect. This is technical action. It does not affect original meaning of the link. So source of the identifier is not changed during resolving redirects. — Ivan A. Krestinin (talk) 05:38, 15 July 2019 (UTC)

Autofix of author namesEdit

Why did KrBot stop autofixing author name strings? At Property_talk:P2093 there are change prescriptions, and there are still a lot of author name string statements that need to be changed according to these prescriptions. Steak (talk) 08:55, 14 July 2019 (UTC)

Autofix works not very good for this task. I started another task. Now it is in progress. — Ivan A. Krestinin (talk) 06:49, 15 July 2019 (UTC)
It seems that it stopped again? Steak (talk) 10:11, 15 July 2019 (UTC)
Bot completed the task. Could you provide links to some items that were not fixed? — Ivan A. Krestinin (talk) 21:26, 15 July 2019 (UTC)
For example Q28083129, Q57725646. Steak (talk) 08:29, 16 July 2019 (UTC)
Bot does not touch item if result value violates some constraints. For Q28083129 result value "María E. López" violates format constraint ([^⊥∥†\*‡§©\|¶€±®¡;í]{1,250}). Looks like list of replacements provided on Property_talk:P2093 is incomplete. Could you provide full list? — Ivan A. Krestinin (talk) 20:58, 17 July 2019 (UTC)
No thats not possible, the "í" has to be replaced differently depending on the name, therefore one cannot give an autofix prescription. Can you modify the bot such that it also edits values with a constraint violation? Otherwise I could temporarily change the constraints. Steak (talk) 21:21, 17 July 2019 (UTC)

I have meanwhile changed the constraints, but still no autofix from the bot?! Steak (talk) 10:05, 27 July 2019 (UTC)

Error list: User:Ivan A. Krestinin/FormatFixErrors. Could you provide some rules how to fix items from the list. The rules can be more complex than allowed by {{Autofix}}. — Ivan A. Krestinin (talk) 11:31, 27 July 2019 (UTC)
I have added a few rules to User talk:Ivan A. Krestinin/FormatFixErrors. Can you fix those, and then we will see further. Steak (talk) 12:24, 27 July 2019 (UTC)
Those, one could either simply remove or set to <no value>. I have no preference in this case. Steak (talk) 09:15, 28 July 2019 (UTC)
Except the NAs, I have fixed the remaining problems by hand. Steak (talk) 14:04, 30 July 2019 (UTC)

Bot edits on fanqie (P5523)Edit

Greetings. Can you revert all bot edits related to this property? For Chinese characters, fanqie readings always come in pairs, so the number of items under this property has to be in multiples of two, e.g. two items for a single reading, or four items for two readings, and so on. In some characters such as (Q3595028), there are only three items under this property so it does not make sense, especially if no references are provided. Things can get even more confusing if there are up to eight fanqie readings but only eleven items under this property such as the example below, so kindly revert the bot edits when you have the time to do so. KevinUp (talk) 14:28, 17 July 2019 (UTC)

Item Fanqie (initial) Fanqie (final) References
Guangyun (Q2189818)
Guangyun (Q2189818)
Guangyun (Q2189818)
Guangyun (Q2189818)
Jiyun (Q35792)
Jiyun (Q35792)
Jiyun (Q35792)
Jiyun (Q35792)
I stopped deleting duplicate values for fanqie (P5523). But I have some troubles with reverting edits now. I will try to revert edits latter. — Ivan A. Krestinin (talk) 21:03, 17 July 2019 (UTC)
If the edits cannot be reverted, try listing out items that have odd numbers of fanqie (P5523) so that I can clean them up manually. Thank you. KevinUp (talk) 06:05, 18 July 2019 (UTC)
@KevinUp: Even in the current model of data, it's impossible to recover the pairs from only set of upper characters and set of lower characters (assuming we use a format not persisting the order of the statements, like RDF). We should either:
  1. Create a new property "value group number" (qualifier) and add different value group numbers to each of pairs. the "value group number" will otherwise means nothing.
  2. Create two new properties "upper character of fanqie" and "lower character of fanqie", replace all values of fanqie with list values as qualifiers (Q23766486) and add the data using these two qualifiers.

--GZWDer (talk) 16:13, 18 July 2019 (UTC)

I have created Wikidata:Property proposal/value group number. Please comment there.--GZWDer (talk) 16:25, 18 July 2019 (UTC)
Thank you for creating this proposal. Since there are only less than 50 items affected by the bot, I think I can manually fix the errors using Special:WhatLinksHere/Property:P5523. KevinUp (talk) 21:54, 18 July 2019 (UTC)

Question about a replacement of an GND-IdEdit

Hello! It is about this change: Special:Diff/976919768 How did you determine that new number 118630202 ? Note: Just a question, no need for some change of the behaviour.

Background: I do a lot with these numbers in german WP. I read the dump-files of the Deutsche Nationalbibliothek for these GND-IDs and in these files I found a different replacement (see next change by user Kolaj21). However, the website redirects the user in the same way as your change reflects. Seems to be a bug somewhere in Deutsche Nationalbibliothek, I have already contacted some person there. --Wurgl (talk) 06:22, 19 July 2019 (UTC)

wbEntity config value to be dropped on July 24thEdit


We are about to drop the mw.config.get( 'wbEntity') config value, that is deprecated for two years. Starting on Wednesday, July 24th, scripts that use this value may encounter issues.

I noticed that your scripts located on User:Ivan A. Krestinin/Gadget-AuthorityControl-Local.js and User:Ivan A. Krestinin/Gadget-MoveClaim.js are still using this value. I suggest that you update it, for example by using the hook wikibase.entityPage.entityLoaded (see an example here).

If you have any questions or need help, feel free to leave a comment under the related task.

Thanks for your understanding, Lea Lacroix (WMDE) (talk) 09:02, 22 July 2019 (UTC)


Please revert redirect resolvations for Nijmegen (Q33467482). Sjoerd de Bruin (talk) 10:36, 22 July 2019 (UTC)

Constraints (Krbot2) not running?Edit

Hi - the constraint reports are super useful... but it looks like KrBot2 hasn't run any since July 11? Any idea when it could go again? ArthurPSmith (talk) 17:28, 24 July 2019 (UTC)

I had connection stability issue. The reports are updating normally now. — Ivan A. Krestinin (talk) 09:17, 27 July 2019 (UTC)
Thanks! Is there a schedule (once a week or something like that) or just when you are able to do it? ArthurPSmith (talk) 20:24, 31 July 2019 (UTC)
There is no special schedule. Bot is working continuously. But sometimes bot has connection or some other troubles. — Ivan A. Krestinin (talk) 12:53, 7 August 2019 (UTC)

User:Ivan A. Krestinin/To mergeEdit

Can this report be updated?--GZWDer (talk) 21:47, 25 July 2019 (UTC)

Database reports/Constraint violations/P227Edit

Hi Ivan, can you manage to exlude items where GND ID (P227) is marked as "deprecated rank" from the list Wikidata:Database reports/Constraint violations/P227? See for example: Jeffrey Williams (Q382202). This would be of great help. --Kolja21 (talk) 21:36, 27 July 2019 (UTC)

Currently bot bot ignores ranks at all. It is not simple to add ranks support. Currently you can add the item to ignore list. — Ivan A. Krestinin (talk) 22:55, 27 July 2019 (UTC)
I think you should use single best value constraint (Q52060874) here. Steak (talk) 08:27, 28 July 2019 (UTC)
Ranking recognition has been requested several times, but as far as I understand it is not at all simple to include it in Ivan's bot framework. My take is that there will probably never be support for anything which involves ranks in Ivan's constraint violation lists.
An alternative approach would be to query the lists either on-the-fly (such as this one, but can be altered of course), or to write the results from such a query to a wiki page with a small custom bot script with daily execution. —MisterSynergy (talk) 08:39, 28 July 2019 (UTC)
If ranks are not supported, may be it make sense to ignore single best value constraint (Q52060874), because right now we are getting quite useless sections like Wikidata:Database reports/Constraint violations/P6879#"Single value" violations --Ghuron (talk) 11:55, 14 August 2019 (UTC)
Коллега, я сейчас заливаю много астрономической инфы, и мне бы очень помогли ваши отчеты, но в таком виде они, увы, бесполезны. Давайте исключим single best value constraint (Q52060874)? --Ghuron (talk) 15:31, 2 September 2019 (UTC)

Wikidata:Database reports/Constraint violations/P2565Edit

Could you please update this page? The property is now used in many more items than recently. --Leyo 21:28, 1 August 2019 (UTC)

Nicolas Théodore de SaussureEdit

Hello. Can you stop KrBot from including Nicolas Théodore de Saussure (Q116058) in the Dutch Academy? On the link to the source provided the information is not available. Either the link should be mended, or the entry deleted. Thank you. Sapphorain (talk) 07:47, 18 August 2019 (UTC)

Hello, looks like KNAW site is not fully operational now. But it presents in archive: Is this link ok? — Ivan A. Krestinin (talk) 08:52, 18 August 2019 (UTC)
Yes, thanks, this link is fine. In any case, I think in such cases an interactive search site is not appropriate: the direct link should always be provided. Sapphorain (talk) 09:28, 18 August 2019 (UTC)
I am not fully understand you. What do you mean under "interactive search site"? — Ivan A. Krestinin (talk) 06:52, 15 September 2019 (UTC)


As I started using formatter URL (P1630) to make autofixes, I figured Wikidata:Property proposal/mobile formatter could help build more of them. --- Jura 09:51, 25 August 2019 (UTC)

  • Thanks for your support. I updated some of the autofixes to allow for mobile URLs. BTW, Krbot hasn't processed them in a while. --- Jura 07:14, 10 September 2019 (UTC)
    •   Fixed. Wikidata Query Service fails on some requests. — Ivan A. Krestinin (talk) 06:49, 15 September 2019 (UTC)

Jean Charles Léonard de Sismondi (Q124073)Edit

The belonging to some academy must be independently sourced; it is not sufficient to just report that one or several wikipedia pages say so. Sapphorain (talk) 21:29, 8 September 2019 (UTC)

Resolving redirectsEdit

Hello! Please, don't make your bot "resolve redirects" if the target identifier is already present in the item, otherwise we obtain duplicates. Furthermore, in the provided example the statement is marked as "deprecated" exactly because now the identifier is a redirect. --Horcrux (talk) 10:30, 13 September 2019 (UTC)

Hi! Bot removes duplicates also. Bot had some troubles with this exact item and did not remove duplicate. As I understand your idea, you want to add all old VIAF identifiers to Wikidata. But VIAF was too much redirects for every item. Are you sure that we need to collect all this information? Maybe better approach is focusing on actual identifiers? — Ivan A. Krestinin (talk) 07:00, 15 September 2019 (UTC)
There are also other items where the bot created the duplicate. Anyway, you should at least ping the users you are replying to. --Horcrux (talk) 09:37, 15 September 2019 (UTC)
  FixedIvan A. Krestinin (talk) 11:15, 15 September 2019 (UTC)

Failed to connect to/No route to hostEdit

On Wikidata:Database_reports/Constraint_violations/Errors, there seems to be a new type of error: "Failed to connect to ..". In case you haven't noticed yet. --- Jura 07:36, 20 September 2019 (UTC)

  • Thank you. Networks are less stable than we wish. — Ivan A. Krestinin (talk) 17:22, 23 September 2019 (UTC)

2019-09 KrBotEdit

Hello. FYI Ireverted today KrBot edits on Q67800615. Visite fortuitement prolongée (talk) 20:18, 28 September 2019 (UTC)

Hello, am I understand the situation correctly? describes review of The Emergence of Iranian Nationalism: Race and the Politics of Dislocation (Q67800615), not the book. — Ivan A. Krestinin (talk) 11:43, 29 September 2019 (UTC)
Yes. Visite fortuitement prolongée (talk) 20:04, 29 September 2019 (UTC)
Review is separate work, it should be described in separate item and connected with original work using review of (P6977). For example I created Zia‐Ebrahimi, Reza The Emergence of Iranian Nationalism: Race and the Politics of Dislocation (Q69136730). — Ivan A. Krestinin (talk) 20:26, 29 September 2019 (UTC)
Return to the user page of "Ivan A. Krestinin".