Help:Incident articles
This page explains how the incident articles on this wiki are built, so you can write or edit one yourself. Every installed extension has a job in these articles; each section below names the extension and shows how it is used.
For a finished example, see Lynching of Mohammad Akhlaq and its Malayalam translation. All articles are listed on Cow-related mob violence in India (2014–2025).
Creating an article
With the form (Page Forms + Maps)
The quickest way is the form at Special:FormStart/Incident. Type the article title, for example Lynching of Firstname Lastname, and select Create or edit article. The form has:
- a field for each infobox value, with a date picker for the date and a list of states;
- a map (from the Maps extension) where you search for the village or click to place the marker, which fills in the coordinates;
- a large text box (with the WikiEditor toolbar) that is pre-filled with the article skeleton from Template:Incident article/preload.
Existing articles have an Edit with form tab because their category sets the form as the default.
With the visual editor (VisualEditor + TemplateData)
Select Edit on any page to use the visual editor. Inserting the template Incident infobox shows a dialog with labelled fields; the labels and descriptions come from the TemplateData block on Template:Incident infobox. Select Edit source to edit the wikitext with the WikiEditor toolbar instead.
Writing guidelines
- Use neutral, encyclopedic language in the past tense. Attribute claims that are disputed (Police said…, The family alleged…).
- Cite every fact to a published source: national newspapers, wire services, court-reporting sites such as LiveLaw, or human-rights organisations.
- Name accused people only if a court has convicted them. Otherwise give numbers (police arrested nine men).
- Give the latest legal status with a year (As of 2024 the trial was pending).
- Write one topic per paragraph. Each paragraph becomes one translation unit.
Citations (Cite)
Put a citation after the sentence it supports. The articles use list-defined references: the text has short named references and the full citations are listed once at the bottom.
Mohammad Akhlaq was killed on 28 September 2015.<ref name="hindu-2015" />
== References ==
<references>
<ref name="hindu-2015">{{Cite news
|url=https://www.example.com/news/article
|title=Exact headline as published
|publisher=The Hindu
|date=2015-09-30
|access-date=2026-10-31}}</ref>
</references>
Template:Cite news formats the citation; its parameters are documented with TemplateData, so the visual editor's Cite tool can fill them in too.
The infobox and its data
Template:Incident infobox combines several extensions:
| Extension | What it does in the infobox |
|---|---|
| Semantic MediaWiki | {{#set:}} stores each value as a property (for example Property:Incident date, Property:Persons killed, Property:Incident coordinates) so the index can query it.
|
| ParserFunctions | {{#if:}} hides empty rows; {{#ifeq:}} skips data storage on the copy Translate makes of each source page.
|
| Scribunto (Lua) | Module:Incident formats dates (with Malayalam month names), coordinates and the OpenStreetMap link, and provides every label in English and Malayalam. |
| TemplateStyles | Template:Incident infobox/styles.css styles the box, the navigation box and the index statistics, including a dark-mode variant. |
| Maps | {{#display_map:}} draws the interactive OpenStreetMap map at the top of the box.
|
| TemplateData | Documents the parameters for the visual editor and the form. |
Example:
{{Incident infobox
|title=<translate>Lynching of Firstname Lastname</translate>
|date=2018-07-20
|place=<translate>Village</translate>
|district=<translate>District</translate>
|state=<translate>Rajasthan</translate>
|lat=27.79 |lon=76.73
|victims=<translate>Firstname Lastname</translate>
|killed=1 |injured=0
|trigger=cattle transport
|allegation=<translate>What the mob alleged</translate>
|legal_status=<translate>Latest court status, with year</translate>
|short_description=<translate>One-sentence summary for the index.</translate>
}}
trigger must be one of: beef consumption, cattle transport, cattle theft, cow slaughter or other. The <translate> tags make those values translatable.
The index, map and charts (Semantic MediaWiki, Semantic Result Formats, Maps)
Cow-related mob violence in India (2014–2025) contains no hand-written lists. Every number, marker and row comes from a query over the stored properties, so a new article appears automatically:
{{#ask: [[Category:Cow-related mob violence in India]]
|?Persons killed
|format=sum }} ← total killed (Semantic Result Formats)
{{#ask: [[Category:Cow-related mob violence in India]]
|?Incident coordinates
|format=leaflet }} ← map of all incidents (Maps)
{{#ask: [[Category:Cow-related mob violence in India]]
|?Incident year
|format=jqplotchart |charttype=bar
|distribution=yes }} ← incidents per year (Semantic Result Formats)
The navigation box at the end of each article (Template:Incident navbox) is a query too. You can explore the data yourself at Special:Ask or Special:Browse.
Malayalam translation (Translate, UniversalLanguageSelector, CLDR, Babel)
Each article is a translatable page. The parts inside <translate> tags are split into units, one per paragraph, heading or infobox value.
- After writing or changing an article, an administrator opens Special:PageTranslation and selects Mark for translation.
- Translators open the article and select Translate this page (or go to Special:Translate), choose Malayalam, and translate unit by unit.
- The Malayalam page is created at Article title/ml. The infobox labels, dates and the index switch to Malayalam automatically because the page language is Malayalam.
- When the English text changes, the changed units are marked as outdated until a translator updates them.
The bar of language links at the top of each article (<languages/>) and the language selector in the page header come from UniversalLanguageSelector; CLDR supplies the language names. Translators can list their languages on their user page with Babel, for example {{#babel:en|ml-3}}. Special:LanguageStats shows translation progress.
Review and approval (Approved Revs)
Readers see the last approved revision of each article. Administrators' edits are approved automatically; edits by other users wait until an administrator approves them from the page history or from Special:ApprovedRevs.
What readers see
- Popups, with PageImages and TextExtracts, shows a preview when a reader hovers over a link to another article.
- MobileFrontend with the Minerva skin serves a phone-friendly layout; desktop readers get Vector 2022.
- Echo sends notifications (for example when someone links to your article or replies to you).
Protecting the wiki
- ConfirmEdit asks for a CAPTCHA after failed logins and before adding external links (Cloudflare Turnstile once its keys are configured).
- AbuseFilter lets administrators write rules at Special:AbuseFilter to block or flag problematic edits.
- SpamBlacklist and TitleBlacklist block listed spam domains and page titles; local lists are at MediaWiki:Spam-blacklist and MediaWiki:Titleblacklist.
- OATHAuth adds two-factor authentication at Special:OATHManage. Administrators should turn it on.
- LoginNotify alerts users about logins from new devices and repeated failed logins.