The following discussion is an archived debate. Please do not modify it. To request review of this BRFA, please start a new section at WT:BRFA. The result of the discussion was Withdrawn by operator. --Cybercobra (talk) 01:55, 20 January 2010 (UTC)[reply]

Operator: Cybercobra

Automatic or Manually assisted: Manually assisted

Programming language(s): Python (pywikipedia)

Source code available: Yes

Function overview: Enforcement of WP:NAMB by removing unnecessary hatnotes.

Links to relevant discussions (where appropriate): This task is not believed to be controversial as it merely applies an existing guideline in obvious cases with human oversight.

Notification about BRFA on related talk pages: WikiProject Disambiguation, WT:Hatnote

Edit period(s): Multiple runs as personal time permits until a full pass is complete; periodic re-runs (e.g. fortnightly) thereafter.

Estimated number of pages affected: ~300 (based on 13 edits I would have done to pages starting with A and B and provided letter frequency holds on WP article titles)

Exclusion compliant (Y/N): Y

Already has a bot flag (Y/N): Y

Function details:

For each page transcluding ((dablink)) directly or indirectly (thus indicating the use of one of the otheruses templates) and that has parentheses in its title (thus indicating its title is very likely disambiguated, as for example in Tree (set theory)):

  1. Find all instances of otheruses templates in its text.
  2. Present the texts of all the instances to the bot operator.
  3. The bot operator indicates whether to skip the page or which template instance should be removed.
  4. If removal was selected, the page is modified accordingly.

Discussion[edit]

Yay! About time. Josh Parris 12:43, 7 January 2010 (UTC)[reply]

Since it sounds like a human will be approving every edit, I don't see why this needs bot approval. But in general I'd like to caution against removing these templates on sight - there may be good reason for them to be there, which the bot operator might not understand. (I know this question has come up in relation to Polish villages, like Przecław, Słupca County (and thousands similar), where to the uninitiated it looks like the otherplaces template is not needed, until you consider that people are likely to arrive at the page by clicking a piped link, and that for many people the disambiguating tag is unlikely to mean very much.)--Kotniski (talk) 13:26, 7 January 2010 (UTC)[reply]

Hm, the piping angle does explain some of what I've been seeing. Accordingly, I've removed ((otherpersons)), ((otherpeople)), ((otherplaces)), and ((otherhurricaneuses)) from the list of removable templates. --Cybercobra (talk) 13:34, 7 January 2010 (UTC)[reply]

Why just those pages with parens? Why not every non-primary-topic page listed on a disambiguation page? Josh Parris 13:37, 7 January 2010 (UTC)[reply]

Because it's a fairly reliable and very automatable heuristic for finding disambiguated pages (otherwise I'd have to trawl thru every single page with a disamb hatnote on it, including correct usages, and I can't quit my day job to do that). I'm open to suggestions as to other heuristics. --Cybercobra (talk) 13:53, 7 January 2010 (UTC)[reply]
Off the top of my head - and keep in mind I'm tired right now - any [[page]] with disamb hatnote that doesn't have a corresponding [[page (disambiguaton)]] and is pointed at by a disambiguation page? Josh Parris 13:59, 7 January 2010 (UTC)[reply]
The second part of that, "is pointed at by a disambiguation page", might be a bit computationally intensive on the servers. For each hatnoted article, I'd have to check whether each page that links to it (and that could be a lot of pages) is a member of the Disambiguation category. But is is possible to do. Any thoughts on this from the BAGers? --Cybercobra (talk) 23:59, 7 January 2010 (UTC)[reply]
If you locally cache category:all disambiguation pages then you don't need to load each linking page, you just need to do a whatlinkshere for the candidate and then check if any page in whatlinkshere intersects with your local cache of category:all disambiguation pages; I already have code to do this (cache) if you'd like it. Josh Parris 23:41, 9 January 2010 (UTC)[reply]
I would be interested in using that code. --Cybercobra (talk) 06:37, 10 January 2010 (UTC)[reply]
class AllDisambiguationPages in User:WildBot/dab_template_placer.py - I've just noticed that's the one that's not fully portable. Complain if there are problems, it will be easy enough to fix. Josh Parris 09:46, 10 January 2010 (UTC)[reply]
Thanks, I'll see about incorporating it. Would you also happen to know the answer to this question? --Cybercobra (talk) 09:50, 10 January 2010 (UTC)[reply]
The above discussion is preserved as an archive of the debate. Please do not modify it. To request review of this BRFA, please start a new section at WT:BRFA.