Module:Citation/CS1/Suggestions/sandbox
Appearance
![]() | This is the module sandbox page for Module:Citation/CS1/Suggestions (diff). |
This is a list of suggested alternatives to use when an unknown parameter is encountered by a citation template. When an unknown parameter is found within a citation template an error message is generated, and when possible the software makes a suggestion for what the user may have meant by consulting this list of common mistakes and typos.
Each entry takes the form: ['bad input parameter'] = 'suggested parameter to use'
The bad input parameter will have been transformed to lower case before checking this list, so all input forms on this list should be written in lowercase.
These files comprise the module support for CS1|2 citation templates:
--[[
History of changes since last sync: 2020-07-11
2020-09-02: suggest |orig-date= instead of |orig-year= parameter; see Help_talk:Citation_Style_1#cite_news_should_have_two_dates
2020-09-10: add hints for removed parameter names |ignoreisbnerror=, |doi-broken=, |doi-inactive-date= and |embargo=; see Help_talk:Citation_Style_1#Deprecating_some_unused_parameter_aliases
2020-09-10: add hints for removed parameter names |interviewerlink= and |interviewermask=; see Help_talk:Citation_Style_1#name-given= and -surname parameter variants
2020-09-10: add hints for some likely misspellings of parameter names which do not have hyphenated forms (|eprint=, |inset=, |network=, |newsgroup=, |newspaper=, |postscript=, |surname=, |transcript=, |vauthors=, |veditors=)
2020-09-14: add hints for parameters from citation templates in Italian and Spanish Wikipedia
2020-09-16: add hints for removed parameter names |authorfirst=, |authorlast=, |authorgiven= |authorsurname=, |displayeditors=, |editorfirst=, |editorlast=, |editorgiven=, |editorsurname=, |editormask= and enumerated variants; see Help_talk:Citation_Style_1#name-given= and -surname parameter variants and Help_talk:Citation_Style_1#Should_removed_parameters_be_in_the_list_of_suggestions?
2020-09-16: add hint for old parameters |laysummary= and |lay-summary=.
2020-09-17: add hints for two likely misguesses |forename= and |family= due to our support for given/surname instead of given/family and forename/surname
]]
-- Please insert new suggestions in alphabetical order
-- The form is ['incorrect'] = 'correct',
suggestions = {
['abruf'] = 'access-date', -- German
['abruf-verborgen'] = 'access-date', -- German
['accessmonth'] = 'access-date',
['accesso'] = 'access-date', -- Italian
['accessyear'] = 'access-date',
['address'] = 'location',
['année'] = 'date', -- French
['año'] = 'date', -- Spanish
['añooriginal'] = 'orig-date', -- Spanish
['año-original'] = 'orig-date', -- Spanish
['añoacceso'] = 'access-date', -- Spanish
['anno'] = 'date', -- Italian
['annoaccesso'] = 'access-date', -- Italian
['annodiaccesso'] = 'access-date', -- Italian
['annooriginale'] = 'orig-date', -- Italian
['apellido'] = 'last', -- Spanish
['apellidos'] = 'last', -- Spanish
['archiv-datum'] = 'archive-date', -- German
['archive date'] = 'archive-date',
['archiv-url'] = 'archive-url', -- German
['archive url'] = 'archive-url', -- Spanish
['artikelnr'] = 'id', -- German (as 'id=Article No. ...')
['artist'] = 'others',
['auflage'] = 'edition', -- German
['auteur'] = 'author', -- French
['auther'] = 'author',
['authorfirst'] = 'author-first', -- old parameter name
['authorgiven'] = 'author-given', -- old parameter name
['authorlast'] = 'author-last', -- old parameter name
['author link'] = 'author-link', -- Polish
['authorsurname'] = 'author-surname', -- old parameter name
['autor'] = 'author', -- Spanish, German (singular and plural)
['autore'] = 'author', -- Italian
['autthor'] = 'author',
['band'] = 'volume', -- German
['bandreihe'] = 'volume', -- German
['ch'] = 'language', -- German (as 'language=de-CH')
['chapter_title'] = 'chapter',
['cid'] = 'ref', -- Italian
['cita'] = 'quote', -- Spanish
['citazione'] = 'quote', -- Italian
['città'] = 'location', -- Italian
['coauthor'] = 'author',
['coauthors'] = 'author',
['coautores'] = 'author', -- Spanish
['coautori'] = 'author', -- Italian
['cognome'] = 'last', -- Italian
['consulté le'] = 'access-date', -- French
['curatore'] = 'publisher', -- Italian
['czasopismo'] = 'journal', -- Polish
['data'] = 'date', -- Polish, Italian
['dataaccesso'] = 'access-date', -- Italian
['dataarchivio'] = 'archive-date', -- Italian
['data dostępu'] = 'access-date', -- Polish
['datum'] = 'date', -- German
['deadlink'] = 'url-status',
['deadurl'] = 'url-status', -- old parameter name
['dead-url'] = 'url-status', -- old parameter name
['distributor'] = 'publisher',
['displayeditors'] = 'display-editors', -- old parameter name
['dnb'] = 'id', -- German (as 'id={{DNB-IDN|...}}')
['doibroken'] = 'doi-broken-date', -- invalid name found in mainspace
['doi-broken'] = 'doi-broken-date', -- former parameter alias
['doi_brokendate'] = 'doi-broken-date',
['doiinactive'] = 'doi-broken-date', -- invalid name found in mainspace
['doi-inactive'] = 'doi-broken-date', -- invalid name found in mainspace
['doi-inactive-date'] = 'doi-broken-date', -- former parameter alias
['doi_inactivedate'] = 'doi-inactive-date',
--['ed'] = 'edition', avoid suggestion as in English this could be short for editor or edition
['éditeur'] = 'editor', -- French
['editon'] = 'edition', -- misspelling
['editoin'] = 'edition', -- misspelling
-- ['editora'] = 'publisher', -- can be either editor or publisher
-- ['editore'] = 'agency', -- can be either publisher or agency
-- ['editori'] = 'editor', -- can be either editor or publisher
-- ['editorial'] = 'publisher', -- can be either publisher or work
['editorfirst'] = 'editor-first', -- old parameter name
['editorgiven'] = 'editor-given', -- old parameter name
['editorlast'] = 'editor-last', -- old parameter name
['editormask'] = 'editor-mask', -- old parameter name
['editorsurname'] = 'editor-surname', -- old parameter name
['edizione'] = 'edition', -- Italian
['en ligne le'] = 'archive-date', -- French
['encyclopædia'] = 'encyclopedia',
['enlaceautor'] = 'author-link', -- Spanish
['enlaceroto'] = 'url-status', -- Spanish
['embargo'] = 'pmc-embargo-date', -- former parameter name
['e-print'] = 'eprint', -- misspelling
['family'] = 'surname', -- misguess
['fecha'] = 'date', -- Spanish
['fechaacceso'] = 'access-date', -- Spanish
['fechaarchivo'] = 'archive-date', -- Spanish
['filetype'] = 'format',
['foramt'] = 'format', -- misspelling
['formato'] = 'format', -- Spanish, Italian, Polish
['forename'] = 'given', -- misguess
['fore-name'] = 'given', -- misguess/misspelling
['frist'] = 'first', -- misspelling
['fundstelle'] = 'at', -- German
['giornale'] = 'journal', -- Italian
['herausgeber'] = 'editor', -- German (singular and plural)
['hrsg'] = 'publisher', -- German
['hrsgreihe'] = 'editor', -- German
['idioma'] = 'language', -- Spanish
['ignoreisbnerror'] = 'ignore-isbn-error', -- former parameter alias
['imię'] = 'first', -- Polish
['in-set'] = 'inset', -- misspelling
['interviewerlink'] = 'interviewer-link', -- former parameter alias
['interviewermask'] = 'interviewer-mask', -- former parameter alias
['isbndefekt'] = 'ignore-isbn-error', -- German
['isbnformalfalsch'] = 'ignore-isbn-error', -- German
['isbnistformalfalsch'] = 'ignore-isbn-error', -- German
['isnb'] = 'isbn', -- misspelling
['issnformalfalsch'] = 'ignore-issn-error', -- German
['jahr'] = 'date', -- German
['jahrea'] = 'orig-date', -- German (not a direct replacement, but can be emulated)
['kapitel'] = 'chapter', -- German
['langauge'] = 'language', -- misspelling
['langue'] = 'language', -- French
['laysummary'] = 'lay-url', -- old parameter
['lay-summary'] = 'lay-url', -- old parameter
['lieu'] = 'location', -- French
['lingua'] = 'language', -- Italian
['lire en ligne'] = 'url', -- French
['loaction'] = 'location', -- misspelling
['locatoin'] = 'location', -- misspelling
['lugar'] = 'location', -- Spanish
['mes'] = 'date', -- Spanish (not a direct replacement)
['mese'] = 'date', -- Italian (not a direct replacement)
['miejsce'] = 'location', -- Polish
['miesiąc'] = 'date', -- Polish
['mois'] = 'date', -- French
['monat'] = 'date', -- German
-- ['name'] = 'author', -- 'name' is often erroneously used for 'title' and 'work' as well, so no suggestion is better than a wrong suggestion
['nazwisko'] = 'last', -- Polish
['nespaper'] = 'newspaper', -- misspelling
['net-work'] = 'network', -- misspelling
['newpaper'] = 'newspaper', -- misspelling
['news'] = 'newspaper',
['news-group'] = 'newsgroup', -- misspelling
['news-paper'] = 'newspaper', -- misspelling
['nom'] = 'last', -- French
['nombre'] = 'first', -- Spanish
['nome'] = 'first', -- Italian
['numero'] = 'number', -- Italian, Spanish
['nummer'] = 'number', -- German
['nummerreihe'] = 'number', -- German
['obra'] = 'work', -- Spanish
['odpowiedzialność'] = 'agency', -- Polish
['offline'] = 'url-status', -- German (as 'url-status=dead')
['online'] = 'url', -- German (not a direct replacement, but can be emulated)
['opera'] = 'work', -- Italian
['opublikowany'] = 'agency', -- Polish
['origdate'] = 'orig-date', -- misspelling
['originaljahr'] = 'orig-date', -- German
['originalort'] = 'publication-place', -- German
['originalsprache'] = 'language', -- German
['originaltitel'] = 'title', -- German (if 'originaltitel' is specified, any possible contents of 'title' should be put in 'trans-title')
['ort'] = 'publication-place', -- German
['ortea'] = 'publication-place', -- German (not a direct replacement, but can be emulated)
['other'] = 'others',
['oznaczenie'] = 'agency', -- Polish
['pagees'] = 'pages', -- misspelling
['pagina'] = 'page', -- Italian
['página'] = 'page', -- Spanish
['páginas'] = 'pages', -- Spanish
['pagine'] = 'pages', -- Italian
['passage'] = 'pages', -- French
['pagina'] = 'pages', -- Italian
['pagine'] = 'pages', -- Italian
['periodico'] = 'magazine', -- Spanish
['périodique'] = 'publisher', -- French
['plublisher'] = 'publisher', -- misspelling
['pmcid'] = 'pmc',
['post-script'] = 'postscript', -- misspelling
['praca'] = 'work', -- Polish
['prénom'] = 'first', -- French
['prénom1'] = 'first1', -- French
['primero'] = 'first', -- Spanish
['ps'] = 'postscript',
['pub'] = 'publisher',
-- ['pubblicazione'] = 'magazine', -- could be any kind of work
-- ['publicación'] = 'journal', -- could be any kind of work
['pulbication-place'] = 'publication-place', -- misspelling
['reihe'] = 'series', -- German
['retrieved'] = 'access-date',
['richiestasottoscrizione'] = 'url-access', -- Italian (as |url-access=subscription)
['rok'] = 'date', -- Polish
['sammelwerk'] = 'work', -- German
['script-post'] = 'postscript', -- misspelling
['script-trans'] = 'transcript', -- misspelling
['seria'] = 'series', -- Spanish, Polish
['serie'] = 'series', -- Italian
['série'] = 'series', -- French
['service'] = 'agency',
['sitioweb'] = 'website', -- Spanish
['sito'] = 'website', -- Italian
['stron'] = 'page', -- Polish
['strony'] = 'pages', -- Polish
['spalten'] = 'at', -- German (not a direct replacement, but can be emulated)
['sprache'] = 'language', -- German
['sur-name'] = 'surname', -- misspelling
['suscripción'] = 'url-access', -- Spanish, Polish (as |url-access=subscription)
['tag'] = 'date', -- German
['template doc demo'] = 'template-doc-demo',
['tile'] = 'title', -- misspelling
['tipo'] = 'type', -- Italian
['tite'] = 'title', -- misspelling
['titel'] = 'title', -- German
['titel-p'] = 'title', -- German ('postscript=none' should be added as well)
['titelerg'] = 'contribution', -- German (not a direct replacement, but can be emulated)
['titolo'] = 'title', -- Italian
['titre'] = 'title', -- French
['títle'] = 'title',
['título'] = 'title', -- Spanish
['transchapter'] = 'trans-chapter',
['trans_chapter'] = 'trans-chapter',
['transscript'] = 'transcript', -- misspelling
['trans-script'] = 'transcript', -- misspelling
['transscript-format'] = 'transcript-format', -- misspelling
['transscripturl'] = 'transcript-url', -- misspelling
['transscript-url'] = 'transcript-url', -- misspelling
['trans_title'] = 'trans-title',
['transtitle'] = 'trans-title',
['typ'] = 'author-mask', -- German (not a direct replacement, but the only valid argument 'typ=wl' can be emulated using 'author-mask')
['tytuł'] = 'title', -- Polish
['ubicación'] = 'location', -- Spanish
['urlarchivo'] = 'archive-url', -- Spanish
['urlarchivio'] = 'archive-url', -- Italian
['urlmorto'] = 'url-status', -- Italian
['urn'] = 'id', -- German (as 'id={{URN|...}}')
['übersetzer'] = 'translator', -- German (singular and plural)
['v-authors'] = 'vauthors', -- misspelling
['v-editors'] = 'veditors', -- misspelling
['verlag'] = 'publisher', -- German
['verlagea'] = 'publisher', -- German (not a direct replacement, but can be emulated)
['vol'] = 'volume',
['volumen'] = 'volume', -- Spanish
['werk'] = 'work', -- German
['werkerg'] = 'contribution', -- German (not a direct replacement, but can be emulated)
['wkautore'] = 'author-link', -- Italian
['wolumin'] = 'volume', -- Polish
['wydanie'] = 'number', -- Polish
['wydawca'] = 'publisher', -- French
['zaprezentowany'] = 'publisher', -- French
['zdb'] = 'id', -- German (as 'id={{ZDB|...}}')
['zitat'] = 'quote', -- German
['zugriff'] = 'access-date', -- German
}
--[[--------------------------< P A T T E R N S >--------------------------------------------------------------
Here we use Lua patterns to make suggestions. The form is
['pattern'] = 'correct',
Lua patterns are not REGEX though they are similar. The escape character is '%', not '\'.
For more information about Lua patterns, see: Extension:Scribunto/Lua_reference_manual#Patterns
Patterns should probably always include the '^' and '$' anchor assertions to prevent a partial
match from incorrectly suggesting the wrong parameter name. For instance, the pattern 'a[utho]+r'
matches 'author' in the no-longer-supported parameter |author-separator= so the code suggests
'|author='; the same pattern also matches the no-longer-supported parameter |separator= (returning 'ator')
so again, the code suggests '|author='.
One capture is supported, typically the enumerator from an enumerated parameter (the '6' in |author6=, etc.)
The value from the capture replaces $1 in the 'correct' value.
]]
local patterns = {
['^ac+es+ ?d?a?t?e?$'] = 'access-date', -- misspelling
['^apellido[s]?(%d+)$'] = 'last$1', -- Spanish, enumerated
['^a[utho]+r$'] = 'author', -- misspelling
['^a[utho]+r(%d+)$'] = 'author$1', -- misspelling, enumerated
['^author link(%d+)$'] = 'author-link$1', -- Polish, enumerated
['^autor[e]?(%d+)$'] = 'author$1', -- Italian/Spanish/German, enumerated
['^authorfirst(%d+)$'] = 'author-first$1', -- old parameter name, enumerated
['^author(%d+)first$'] = 'author-first$1', -- old parameter name, enumerated
['^authorgiven(%d+)$'] = 'author-given$1', -- old parameter name, enumerated
['^author(%d+)given$'] = 'author-given$1', -- old parameter name, enumerated
['^authorlast(%d+)$'] = 'author-last$1', -- old parameter name, enumerated
['^author(%d+)last$'] = 'author-last$1', -- old parameter name, enumerated
['^authorsurname(%d+)$'] = 'author-surname$1', -- old parameter name, enumerated
['^author(%d+)surname$'] = 'author-surname$1', -- old parameter name, enumerated
['^cognome(%d+)$'] = 'last$1', -- Italian, enumerated
['^editorfirst(%d+)$'] = 'editor-first$1', -- old parameter name, enumerated
['^editor(%d+)first$'] = 'editor-first$1', -- old parameter name, enumerated
['^editorgiven(%d+)$'] = 'editor-given$1', -- old parameter name, enumerated
['^editor(%d+)given$'] = 'editor-given$1', -- old parameter name, enumerated
['^editorlast(%d+)$'] = 'editor-last$1', -- old parameter name, enumerated
['^editor(%d+)last$'] = 'editor-last$1', -- old parameter name, enumerated
['^editormask(%d+)$'] = 'editor-mask$1', -- old parameter name, enumerated
['^editor(%d+)mask$'] = 'editor-mask$1', -- old parameter name, enumerated
['^editorsurname(%d+)$'] = 'editor-surname$1', -- old parameter name, enumerated
['^editor(%d+)surname$'] = 'editor-surname$1', -- old parameter name, enumerated
['^enlaceautore(%d+)$'] = 'author-link$1', -- Spanish, enumerated
['^first (%d+)$'] = 'first$1', -- enumerated
['^last (%d+)$'] = 'last$1', -- enumerated
['^nom[e]?(%d+)$'] = 'last$1', -- Italian/French, enumerated
['^nombre(%d+)$'] = 'first$1', -- Spanish, enumerated
['^primero(%d+)$'] = 'first$1', -- Spanish, enumerated
['^pu[blish]+ers?$'] = 'publisher', -- misspelling
['^wkautore(%d+)$'] = 'author-link$1', -- Italian, enumerated
}
return {suggestions = suggestions, patterns=patterns};