Jump to content

Module:Citation/CS1/Suggestions/sandbox

ຈາກ ວິກິພີເດຍ

-- Please insert new suggestions in alphabetical order -- The form is ['incorrect'] = 'correct',

suggestions = { ['ASIN-TLD'] = 'asin-tld', -- old parameter name ['abruf'] = 'access-date', -- German ['abruf-verborgen'] = 'access-date', -- German ['accessmonth'] = 'access-date', ['accesso'] = 'access-date', -- Italian ['accessyear'] = 'access-date', ['acessodata'] = 'access-date', -- Brazilian Portuguese ['ad'] = 'first', -- Turkish ['address'] = 'location', ['anno'] = 'date', -- Italian ['annoaccesso'] = 'access-date', -- Italian ['annodiaccesso'] = 'access-date', -- Italian ['annooriginale'] = 'orig-date', -- Italian ['année'] = 'date', -- French ['apellido'] = 'last', -- Spanish ['apellidos'] = 'last', -- Spanish ['archiv-datum'] = 'archive-date', -- German ['archiv-url'] = 'archive-url', -- German ['archive date'] = 'archive-date', -- misspelling ['archive url'] = 'archive-url', -- misspelling ['archive-link'] = 'archive-url', -- old parameter name

   ['archiv-url'] = 'archive-url',												-- German	
   ['arkivdatum'] = 'archive-date',											-- Swedish, Norwegian
   ['arkivurl'] = 'archive-url',											    -- Swedish, Norwegian	
   ['artist'] = 'others',

['arşiv-tarihi'] = 'archive-date', -- Turkish ['arşiv-url'] = 'archive-url', -- Turkish ['arşivtarihi'] = 'archive-date', -- Turkish ['arşivurl'] = 'archive-url', -- Turkish ['auflage'] = 'edition', -- German ['auteur'] = 'author', -- French ['auther'] = 'author', -- misspelling ['author link'] = 'author-link', -- Polish ['authorfirst'] = 'author-first', -- old parameter name ['authorgiven'] = 'author-given', -- old parameter name ['authorlast'] = 'author-last', -- old parameter name ['authormask'] = 'author-mask', -- old parameter name ['authorsurname'] = 'author-surname', -- old parameter name ['autor'] = 'author', -- Spanish, German (singular and plural) ['autore'] = 'author', -- Italian ['autthor'] = 'author', -- misspelling ['ay'] = 'month', -- Turkish ['año'] = 'date', -- Spanish ['año-original'] = 'orig-date', -- Spanish ['añoacceso'] = 'access-date', -- Spanish ['añooriginal'] = 'orig-date', -- Spanish ['band'] = 'volume', -- German ['bandreihe'] = 'volume', -- German ['baskı'] = 'edition', -- Turkish ['başlık'] = 'title', -- Turkish ['began'] = 'date', -- old parameter name (cite serial only); or orig-date= ['booktitle'] = 'book-title', -- old parameter name ['ch'] = 'language', -- German (as 'language=de-CH') ['chapter_title'] = 'chapter', ['chapterurl'] = 'chapter-url', -- old parameter name ['cid'] = 'ref', -- Italian ['cilt'] = 'volume', -- Turkish ['cita'] = 'quote', -- Spanish ['citazione'] = 'quote', -- Italian ['città'] = 'location', -- Italian ['city'] = 'location', -- old parameter name (cite serial only) ['coauthor'] = 'author', ['coauthors'] = 'author', ['coautores'] = 'author', -- Spanish ['coautori'] = 'author', -- Italian ['cognome'] = 'last', -- Italian ['conferenceurl'] = 'conference-url', -- old parameter name ['consulté le'] = 'access-date', -- French ['contributionurl'] = 'contribution-url', -- old parameter name ['curatore'] = 'publisher', -- Italian ['czasopismo'] = 'journal', -- Polish ['data dostępu'] = 'access-date', -- Polish ['data'] = 'date', -- Polish, Italian ['dataaccesso'] = 'access-date', -- Italian ['dataarchivio'] = 'archive-date', -- Italian ['datum'] = 'date', -- German, Swedish ['dead-url'] = 'url-status', -- old parameter name ['deadlink'] = 'url-status', -- old parameter name ['deadurl'] = 'url-status', -- old parameter name ['dergi'] = 'work', -- Turkish ['dil'] = 'language', -- Turkish ['displayauthors'] = 'display-authors', -- old parameter name ['displayeditors'] = 'display-editors', -- old parameter name ['distributor'] = 'publisher', ['dnb'] = 'id', -- German (as 'id=ແມ່ແບບ:DNB-IDN') ['doi-broken'] = 'doi-broken-date', -- old parameter alias ['doi-inactive'] = 'doi-broken-date', -- invalid name found in mainspace ['doi-inactive-date'] = 'doi-broken-date', -- old parameter alias ['doi_brokendate'] = 'doi-broken-date', -- old parameter alias ['doi_inactivedate'] = 'doi-inactive-date', -- old parameter alias ['doibroken'] = 'doi-broken-date', -- invalid name found in mainspace ['doiinactive'] = 'doi-broken-date', -- invalid name found in mainspace ['e-print'] = 'eprint', -- misspelling -- ['ed'] = 'edition', -- avoid suggestion as in English this could be short for editor or edition -- ['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 ['editoin'] = 'edition', -- misspelling ['editon'] = 'edition', -- misspelling ['editorfirst'] = 'editor-first', -- old parameter name ['editorgiven'] = 'editor-given', -- old parameter name ['editorlast'] = 'editor-last', -- old parameter name ['editorlink'] = 'editor-link', -- old parameter name ['editormask'] = 'editor-mask', -- old parameter name ['editors'] = 'editor', -- old parameter name (can be emulated using multiple singular |editor= params) ['editorsurname'] = 'editor-surname', -- old parameter name ['edizione'] = 'edition', -- Italian ['embargo'] = 'pmc-embargo-date', -- old parameter name ['ended'] = 'date', -- old parameter name (cite serial only) ['en ligne le'] = 'archive-date', -- French ['encyclopædia'] = 'encyclopedia', ['enlaceautor'] = 'author-link', -- Spanish ['enlaceroto'] = 'url-status', -- Spanish ['episodelink'] = 'episode-link', -- old parameter name ['erişimtarihi'] = 'access-date', -- Turkish ['eser'] = 'work', -- Turkish ['family'] = 'surname', -- misguess ['fecha'] = 'date', -- Spanish ['fechaacceso'] = 'access-date', -- Spanish ['fechaarchivo'] = 'archive-date', -- Spanish ['filetype'] = 'format', ['foramt'] = 'format', -- misspelling ['fore-name'] = 'given', -- misguess/misspelling ['forename'] = 'given', -- misguess ['författare'] = 'author', -- Swedish, Norwegian

   ['formato'] = 'format',														-- Spanish, Italian, Polish

['frist'] = 'first', -- misspelling ['fundstelle'] = 'at', -- German ['gazete'] = 'work', -- Turkish ['giornale'] = 'journal', -- Italian

   ['hämtdatum'] = 'access-date',											    -- Swedish	
   ['herausgeber'] = 'editor',													-- German (singular and plural)

['hrsg'] = 'publisher', -- German ['hrsgreihe'] = 'editor', -- German ['idioma'] = 'language', -- Spanish ['ignore-isbn-error'] = 'isbn', -- old parameter (can be fully emulated using ((syntax))) ['ignoreisbnerror'] = 'isbn', -- old parameter alias (suggest |isbn as |ignore-isbn-error is deprecated), not a direct replacement, but can be fully emulated using ((syntax)) ['imię'] = 'first', -- Polish ['in-set'] = 'inset', -- misspelling ['interviewerlink'] = 'interviewer-link', -- old parameter alias ['interviewermask'] = 'interviewer-mask', -- old parameter alias ['isbndefekt'] = 'isbn', -- German (suggest |isbn as |ignore-isbn-error is deprecated), not a direct replacement, but can be fully emulated using ((syntax)) ['isbnformalfalsch'] = 'isbn', -- German (suggest |isbn as |ignore-isbn-error is deprecated), not a direct replacement, but can be fully emulated using ((syntax)) ['isbnistformalfalsch'] = 'isbn', -- German (suggest |isbn as |ignore-isbn-error is deprecated), not a direct replacement, but can be fully emulated using ((syntax)) ['isnb'] = 'isbn', -- misspelling ['issnformalfalsch'] = 'issn', -- German (can be fully emulated using ((syntax))) ['jahr'] = 'date', -- German ['jahrea'] = 'orig-date', -- German (not a direct replacement, but can be emulated) ['kapitel'] = 'chapter', -- German ['langauge'] = 'language', -- misspelling ['langue'] = 'language', -- French ['last-author-amp'] = 'name-list-style', -- old parameter name (as |name-list-style=amp) ['lastauthoramp'] = 'name-list-style', -- old parameter name (as |name-list-style=amp) ['lieu'] = 'location', -- French ['lingua'] = 'language', -- Italian ['lire en ligne'] = 'url', -- French ['lizenznummer'] = 'id', -- German (as 'id=License No. ...')

['loaction'] = 'location', -- misspelling ['local'] = 'location', -- Brazilian Portuguese ['locatoin'] = 'location', -- misspelling ['lugar'] = 'location', -- Spanish ['mailinglist'] = 'mailing-list', -- old parameter name ['mapurl'] = 'map-url', -- old parameter name ['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 ['name-list-format'] = 'name-list-style', -- old parameter name (as |name-list-style=amp) ['nazwisko'] = 'last', -- Polish ['nespaper'] = 'newspaper', -- misspelling ['net-work'] = 'network', -- misspelling ['newpaper'] = 'newspaper', -- misspelling ['news'] = 'newspaper', ['news-group'] = 'newsgroup', -- misspelling ['news-paper'] = 'newspaper', -- misspelling ['no-cat'] = 'no-tracking', -- old parameter ['nocat'] = 'no-tracking', -- old parameter ['nom'] = 'last', -- French ['nombre'] = 'first', -- Spanish ['nome'] = 'first', -- Italian ['nopp'] = 'no-pp', -- old parameter name ['notracking'] = 'no-tracking', -- old parameter ['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 ['pagina'] = 'pages', -- Italian ['pagine'] = 'pages', -- Italian ['pagine'] = 'pages', -- Italian ['passage'] = 'pages', -- French ['periodico'] = 'magazine', -- Spanish ['plublisher'] = 'publisher', -- misspelling ['pmcid'] = 'pmc', ['post-script'] = 'postscript', -- misspelling ['praca'] = 'work', -- Polish ['primero'] = 'first', -- Spanish ['prénom'] = 'first', -- French ['prénom1'] = 'first1', -- French ['ps'] = 'postscript', ['pub'] = 'publisher', -- ['pubblicazione'] = 'magazine', -- could be any kind of work -- ['publicación'] = 'journal', -- could be any kind of work ['publicationdate'] = 'publication-date', -- old parameter name -- ['published'] = 'publisher', -- could be date, location, or name of publisher ['publicationplace'] = 'publication-place', -- old parameter name ['pulbication-place'] = 'publication-place', -- misspelling ['página'] = 'page', -- Spanish ['páginas'] = 'pages', -- Spanish ['périodique'] = 'publisher', -- French ['registration'] = 'url-access', -- old parameter name ['reihe'] = 'series', -- German ['retrieved'] = 'access-date', -- old parameter name ['richiestasottoscrizione'] = 'url-access', -- Italian (as |url-access=subscription) ['rivista'] = 'magazine', -- Italian

   ['rok'] = 'date',															-- Polish

['rubrik'] = 'title', -- Swedish

   ['sammelwerk'] = 'work',													-- German

['sayfa'] = 'page', -- Turkish ['sayfalar'] = 'pages', -- Turkish ['sayı'] = 'issue', -- Turkish ['script-post'] = 'postscript', -- misspelling ['script-trans'] = 'transcript', -- misspelling ['season'] = 'date', -- old parameter name (cite serial only) ['sectionurl'] = 'section-url', -- old parameter name ['seiten'] = 'pages', -- German ['seria'] = 'series', -- Spanish, Polish ['serie'] = 'series', -- Italian ['série'] = 'series', -- French ['serieslink'] = 'series-link', -- old parameter name ['seriesno'] = 'series-number', -- old parameter name ['service'] = 'agency', ['sitioweb'] = 'website', -- Spanish ['sito'] = 'website', -- Italian ['soyadı'] = 'last', -- Turkish ['spalten'] = 'at', -- German (not a direct replacement, but can be emulated) ['sprache'] = 'language', -- German ['språk'] = 'language', -- Swedish, Norwegian

   ['stron'] = 'page',															-- Polish

['strony'] = 'pages', -- Polish ['subjectlink'] = 'subject-link', -- old parameter name ['subscription'] = 'url-access', -- old parameter name (emulated as |url-access=subscription) ['sur-name'] = 'surname', -- misspelling ['suscripción'] = 'url-access', -- Spanish, Polish (as |url-access=subscription) ['tag'] = 'date', -- German ['tarih'] = 'date', -- Turkish ['template doc demo'] = 'no-tracking', -- old parameter alias ['tidning'] = 'work', -- Swedish

   ['tile'] = 'title',															-- misspelling

['timecaption'] = 'time-caption', -- old parameter name ['titlelink'] = 'title-link', -- old parameter name ['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) ['titled'] = 'title', -- Brazilian Portuguese ['titolo'] = 'title', -- Italian ['titre'] = 'title', -- French ['trans-script'] = 'transcript', -- misspelling ['trans_chapter'] = 'trans-chapter', -- old parameter alias ['trans_title'] = 'trans-title', -- old parameter alias ['transchapter'] = 'trans-chapter', ['transcripturl'] = 'transcript-url', -- old parameter name ['transscript'] = 'transcript', -- misspelling ['transscript-format'] = 'transcript-format', -- misspelling ['transscript-url'] = 'transcript-url', -- misspelling ['transscripturl'] = 'transcript-url', -- misspelling ['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 ['títle'] = 'title', ['título'] = 'title', -- Spanish ['ubicación'] = 'location', -- Spanish ['urlarchivio'] = 'archive-url', -- Italian ['urlarchivo'] = 'archive-url', -- Spanish ['urlmorto'] = 'url-status', -- Italian ['urn'] = 'id', -- German (as 'id=ແມ່ແບບ:URN') ['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 ['yardımcıyazarlar'] = 'author', -- Turkish ['yayımcı'] = 'publisher', -- Turkish ['yayıncı'] = 'publisher', -- Turkish ['yazar'] = 'author', -- Turkish ['yazarbağı'] = 'author-link', -- Turkish ['yer'] = 'location', -- Turkish ['yıl'] = 'date', -- Turkish ['zaprezentowany'] = 'publisher', -- French ['zdb'] = 'id', -- German (as 'id=ແມ່ແບບ:ZDB') ['zitat'] = 'quote', -- German ['zugriff'] = 'access-date', -- German ['éditeur'] = 'editor', -- French ['ölüurl'] = 'url-status', -- Turkish ['übersetzer'] = 'translator', -- German (singular and plural) }


--[[--------------------------< 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 ['^authormask(%d+)$'] = 'author-mask$1', -- old parameter name, enumerated ['^author(%d+)mask$'] = 'author-mask$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 ['^editorlink(%d+)$'] = 'editor-link$1', -- old parameter name, enumerated ['^editor(%d+)link$'] = 'editor-link$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 ['^subjectlink(%d+)$'] = 'subject-link$1', -- old parameter name, enumerated ['^subject(%d+)link$'] = 'subject-link$1', -- old parameter name, enumerated ['^wkautore(%d+)$'] = 'author-link$1', -- Italian, enumerated }

return {suggestions = suggestions, patterns=patterns};


--[[
History of changes since last sync: 2023-01-14



TO DO: Provide suggestions for template-specific errors, e.g. suggest "title" for the erroneous "book-title" when used outside of Cite conference.

]]


-- Please insert new suggestions in alphabetical order
-- The form is ['incorrect'] = 'correct',

suggestions = {
	['ASIN-TLD'] = 'asin-tld',													-- old parameter name
	['abruf'] = 'access-date',													-- German
	['abruf-verborgen'] = 'access-date',										-- German
	['accessmonth'] = 'access-date',
	['accesso'] = 'access-date',												-- Italian
	['accessyear'] = 'access-date',
	['acessodata'] = 'access-date',												-- Brazilian Portuguese
	['ad'] = 'first',															-- Turkish
	['address'] = 'location',
	['anno'] = 'date',															-- Italian
	['annoaccesso'] = 'access-date',											-- Italian
	['annodiaccesso'] = 'access-date',											-- Italian
	['annooriginale'] = 'orig-date',											-- Italian
	['année'] = 'date',															-- French
	['apellido'] = 'last',														-- Spanish
	['apellidos'] = 'last',														-- Spanish
	['archiv-datum'] = 'archive-date',											-- German
	['archiv-url'] = 'archive-url',												-- German
	['archive date'] = 'archive-date',                                          -- misspelling
	['archive url'] = 'archive-url',											-- misspelling
	['archive-link'] = 'archive-url',	                                        -- old parameter name
    ['archiv-url'] = 'archive-url',												-- German	
    ['arkivdatum'] = 'archive-date',											-- Swedish, Norwegian
    ['arkivurl'] = 'archive-url',											    -- Swedish, Norwegian	
    ['artist'] = 'others',
	['arşiv-tarihi'] = 'archive-date',											-- Turkish
	['arşiv-url'] = 'archive-url',												-- Turkish
	['arşivtarihi'] = 'archive-date',											-- Turkish
	['arşivurl'] = 'archive-url',												-- Turkish
	['auflage'] = 'edition',													-- German
	['auteur'] = 'author',														-- French
	['auther'] = 'author',                                                      -- misspelling
	['author link'] = 'author-link',											-- Polish
	['authorfirst'] = 'author-first',											-- old parameter name
	['authorgiven'] = 'author-given',											-- old parameter name
	['authorlast'] = 'author-last',												-- old parameter name
	['authormask'] = 'author-mask',												-- old parameter name
	['authorsurname'] = 'author-surname',										-- old parameter name
	['autor'] = 'author',														-- Spanish, German (singular and plural)
	['autore'] = 'author',														-- Italian
	['autthor'] = 'author',                                                     -- misspelling
	['ay'] = 'month',															-- Turkish
	['año'] = 'date',															-- Spanish
	['año-original'] = 'orig-date',												-- Spanish
	['añoacceso'] = 'access-date',												-- Spanish
	['añooriginal'] = 'orig-date',												-- Spanish
	['band'] = 'volume',														-- German
	['bandreihe'] = 'volume',													-- German
	['baskı'] = 'edition',														-- Turkish
	['başlık'] = 'title',														-- Turkish
	['began'] = 'date',															-- old parameter name (cite serial only); or orig-date=
	['booktitle'] = 'book-title',												-- old parameter name
	['ch'] = 'language',														-- German (as 'language=de-CH')
	['chapter_title'] = 'chapter',
	['chapterurl'] = 'chapter-url',												-- old parameter name
	['cid'] = 'ref',															-- Italian
	['cilt'] = 'volume',														-- Turkish
	['cita'] = 'quote',															-- Spanish
	['citazione'] = 'quote',													-- Italian
	['città'] = 'location',														-- Italian
	['city'] = 'location',														-- old parameter name (cite serial only)
	['coauthor'] = 'author',
	['coauthors'] = 'author',
	['coautores'] = 'author',													-- Spanish
	['coautori'] = 'author',													-- Italian
	['cognome'] = 'last',														-- Italian
	['conferenceurl'] = 'conference-url',										-- old parameter name
	['consulté le'] = 'access-date',											-- French
	['contributionurl'] = 'contribution-url',									-- old parameter name
	['curatore'] = 'publisher',													-- Italian
	['czasopismo'] = 'journal',													-- Polish
	['data dostępu'] = 'access-date',											-- Polish
	['data'] = 'date',															-- Polish, Italian
	['dataaccesso'] = 'access-date',											-- Italian
	['dataarchivio'] = 'archive-date',											-- Italian
	['datum'] = 'date',															-- German, Swedish
	['dead-url'] = 'url-status',												-- old parameter name
	['deadlink'] = 'url-status',                                                -- old parameter name
	['deadurl'] = 'url-status',													-- old parameter name
	['dergi'] = 'work',															-- Turkish
	['dil'] = 'language',														-- Turkish
	['displayauthors'] = 'display-authors',										-- old parameter name
	['displayeditors'] = 'display-editors',										-- old parameter name
	['distributor'] = 'publisher',
	['dnb'] = 'id',																-- German (as 'id={{DNB-IDN|...}}')
	['doi-broken'] = 'doi-broken-date',											-- old parameter alias
	['doi-inactive'] = 'doi-broken-date',										-- invalid name found in mainspace
	['doi-inactive-date'] = 'doi-broken-date',									-- old parameter alias
	['doi_brokendate'] = 'doi-broken-date',										-- old parameter alias
	['doi_inactivedate'] = 'doi-inactive-date',									-- old parameter alias
	['doibroken'] = 'doi-broken-date',											-- invalid name found in mainspace
	['doiinactive'] = 'doi-broken-date',										-- invalid name found in mainspace
	['e-print'] = 'eprint',														-- misspelling
	-- ['ed'] = 'edition',														-- avoid suggestion as in English this could be short for editor or edition
	-- ['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
	['editoin'] = 'edition',													-- misspelling
	['editon'] = 'edition',														-- misspelling
	['editorfirst'] = 'editor-first',											-- old parameter name
	['editorgiven'] = 'editor-given',											-- old parameter name
	['editorlast'] = 'editor-last',												-- old parameter name
	['editorlink'] = 'editor-link',												-- old parameter name
	['editormask'] = 'editor-mask',												-- old parameter name
	['editors'] = 'editor',														-- old parameter name (can be emulated using multiple singular |editor= params)
	['editorsurname'] = 'editor-surname',										-- old parameter name
	['edizione'] = 'edition',													-- Italian
	['embargo'] = 'pmc-embargo-date',											-- old parameter name
	['ended'] = 'date',															-- old parameter name (cite serial only)
	['en ligne le'] = 'archive-date',											-- French
	['encyclopædia'] = 'encyclopedia',
	['enlaceautor'] = 'author-link',											-- Spanish
	['enlaceroto'] = 'url-status',												-- Spanish
	['episodelink'] = 'episode-link',											-- old parameter name
	['erişimtarihi'] = 'access-date',											-- Turkish
	['eser'] = 'work',															-- Turkish
	['family'] = 'surname',														-- misguess
	['fecha'] = 'date',															-- Spanish
	['fechaacceso'] = 'access-date',											-- Spanish
	['fechaarchivo'] = 'archive-date',											-- Spanish
	['filetype'] = 'format',
	['foramt'] = 'format',														-- misspelling
	['fore-name'] = 'given',													-- misguess/misspelling
	['forename'] = 'given',														-- misguess
	['författare'] = 'author',                                                  -- Swedish, Norwegian
    ['formato'] = 'format',														-- Spanish, Italian, Polish
	['frist'] = 'first',														-- misspelling
	['fundstelle'] = 'at',														-- German
	['gazete'] = 'work',														-- Turkish
	['giornale'] = 'journal',													-- Italian
    ['hämtdatum'] = 'access-date',											    -- Swedish	
    ['herausgeber'] = 'editor',													-- German (singular and plural)
	['hrsg'] = 'publisher',														-- German
	['hrsgreihe'] = 'editor',													-- German
	['idioma'] = 'language',													-- Spanish
	['ignore-isbn-error'] = 'isbn',												-- old parameter (can be fully emulated using ((syntax)))
	['ignoreisbnerror'] = 'isbn',												-- old parameter alias (suggest |isbn as |ignore-isbn-error is deprecated), not a direct replacement, but can be fully emulated using ((syntax))
	['imię'] = 'first',															-- Polish
	['in-set'] = 'inset',														-- misspelling
	['interviewerlink'] = 'interviewer-link',									-- old parameter alias
	['interviewermask'] = 'interviewer-mask',									-- old parameter alias
	['isbndefekt'] = 'isbn',													-- German (suggest |isbn as |ignore-isbn-error is deprecated), not a direct replacement, but can be fully emulated using ((syntax))
	['isbnformalfalsch'] = 'isbn',												-- German (suggest |isbn as |ignore-isbn-error is deprecated), not a direct replacement, but can be fully emulated using ((syntax))
	['isbnistformalfalsch'] = 'isbn',											-- German (suggest |isbn as |ignore-isbn-error is deprecated), not a direct replacement, but can be fully emulated using ((syntax))
	['isnb'] = 'isbn',															-- misspelling
	['issnformalfalsch'] = 'issn',												-- German (can be fully emulated using ((syntax)))
	['jahr'] = 'date',															-- German
	['jahrea'] = 'orig-date',													-- German (not a direct replacement, but can be emulated)
	['kapitel'] = 'chapter',													-- German
	['langauge'] = 'language',													-- misspelling
	['langue'] = 'language',													-- French
	['last-author-amp'] = 'name-list-style',									-- old parameter name (as |name-list-style=amp)
	['lastauthoramp'] = 'name-list-style',										-- old parameter name (as |name-list-style=amp)
	['lieu'] = 'location',														-- French
	['lingua'] = 'language',													-- Italian
	['lire en ligne'] = 'url',													-- French
	['lizenznummer'] = 'id',													-- German (as 'id=License No. ...')

	['loaction'] = 'location',													-- misspelling
	['local'] = 'location',														-- Brazilian Portuguese
	['locatoin'] = 'location',													-- misspelling
	['lugar'] = 'location',														-- Spanish
	['mailinglist'] = 'mailing-list',											-- old parameter name
	['mapurl'] = 'map-url',														-- old parameter name
	['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
	['name-list-format'] = 'name-list-style',									-- old parameter name (as |name-list-style=amp)
	['nazwisko'] = 'last',														-- Polish
	['nespaper'] = 'newspaper',													-- misspelling
	['net-work'] = 'network',													-- misspelling
	['newpaper'] = 'newspaper',													-- misspelling
	['news'] = 'newspaper',
	['news-group'] = 'newsgroup',												-- misspelling
	['news-paper'] = 'newspaper',												-- misspelling
    ['ngày'] = 'date',                                                          -- Vietnamese	
    ['ngày lưu trữ'] = 'archive-date',                                          -- Vietnamese
    ['ngày truy cập'] = 'access-date',                                          -- Vietnamese
    ['no-cat'] = 'no-tracking',													-- old parameter
	['nocat'] = 'no-tracking',													-- old parameter
	['nom'] = 'last',															-- French
	['nombre'] = 'first',														-- Spanish
	['nome'] = 'first',															-- Italian
	['nopp'] = 'no-pp',															-- old parameter name
	['notracking'] = 'no-tracking',												-- old parameter
	['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
	['pagina'] = 'pages',														-- Italian
	['pagine'] = 'pages',														-- Italian
	['pagine'] = 'pages',														-- Italian
	['passage'] = 'pages',														-- French
	['periodico'] = 'magazine',													-- Spanish
	['plublisher'] = 'publisher',												-- misspelling
	['pmcid'] = 'pmc',
	['post-script'] = 'postscript',												-- misspelling
	['praca'] = 'work',															-- Polish
	['primero'] = 'first',														-- Spanish
	['prénom'] = 'first',														-- French
	['prénom1'] = 'first1',														-- French
	['ps'] = 'postscript',
	['pub'] = 'publisher',
	-- ['pubblicazione'] = 'magazine',											-- could be any kind of work
	-- ['publicación'] = 'journal',												-- could be any kind of work
	['publicationdate'] = 'publication-date',									-- old parameter name
	-- ['published'] = 'publisher',												-- could be date, location, or name of publisher
	['publicationplace'] = 'publication-place',									-- old parameter name
	['pulbication-place'] = 'publication-place',								-- misspelling
	['página'] = 'page',														-- Spanish
	['páginas'] = 'pages',														-- Spanish
	['périodique'] = 'publisher',												-- French
	['registration'] = 'url-access',											-- old parameter name
	['reihe'] = 'series',														-- German
	['retrieved'] = 'access-date',                                              -- old parameter name
	['richiestasottoscrizione'] = 'url-access',									-- Italian (as |url-access=subscription)
	['rivista'] = 'magazine',                                                   -- Italian
    ['rok'] = 'date',															-- Polish
	['rubrik'] = 'title',                                                       -- Swedish
    ['sammelwerk'] = 'work',													-- German
	['sayfa'] = 'page',															-- Turkish
	['sayfalar'] = 'pages',														-- Turkish
	['sayı'] = 'issue',															-- Turkish
	['script-post'] = 'postscript',												-- misspelling
	['script-trans'] = 'transcript',											-- misspelling
	['season'] = 'date',														-- old parameter name (cite serial only)
	['sectionurl'] = 'section-url',												-- old parameter name
	['seiten'] = 'pages',														-- German
	['seria'] = 'series',														-- Spanish, Polish
	['serie'] = 'series',														-- Italian
	['série'] = 'series',														-- French
	['serieslink'] = 'series-link',												-- old parameter name
	['seriesno'] = 'series-number',												-- old parameter name
	['service'] = 'agency',
	['sitioweb'] = 'website',													-- Spanish
	['sito'] = 'website',														-- Italian
	['soyadı'] = 'last',														-- Turkish
	['spalten'] = 'at',															-- German (not a direct replacement, but can be emulated)
	['sprache'] = 'language',													-- German
	['språk'] = 'language',                                                     -- Swedish, Norwegian
    ['stron'] = 'page',															-- Polish
	['strony'] = 'pages',														-- Polish
	['subjectlink'] = 'subject-link',											-- old parameter name
	['subscription'] = 'url-access',											-- old parameter name (emulated as |url-access=subscription)
	['sur-name'] = 'surname',													-- misspelling
	['suscripción'] = 'url-access',												-- Spanish, Polish (as |url-access=subscription)
	['tag'] = 'date',															-- German
	['tarih'] = 'date',															-- Turkish
	['template doc demo'] = 'no-tracking',										-- old parameter alias
	['tidning'] = 'work',                                                       -- Swedish
    ['tile'] = 'title',															-- misspelling
	['timecaption'] = 'time-caption',											-- old parameter name
	['titlelink'] = 'title-link',												-- old parameter name
	['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)
	['titled'] = 'title',														-- Brazilian Portuguese
	['titolo'] = 'title',														-- Italian
	['titre'] = 'title',														-- French
	['trans-script'] = 'transcript',											-- misspelling
	['trans_chapter'] = 'trans-chapter',										-- old parameter alias
	['trans_title'] = 'trans-title',											-- old parameter alias
	['transchapter'] = 'trans-chapter',
	['transcripturl'] = 'transcript-url',										-- old parameter name
	['transscript'] = 'transcript',												-- misspelling
	['transscript-format'] = 'transcript-format',								-- misspelling
	['transscript-url'] = 'transcript-url',										-- misspelling
	['transscripturl'] = 'transcript-url',										-- misspelling
	['transtitle'] = 'trans-title',
	['tựa đề'] = 'title',                                                       -- Vietnamese
    ['typ'] = 'author-mask',													-- German (not a direct replacement, but the only valid argument 'typ=wl' can be emulated using 'author-mask')
	['tytuł'] = 'title',														-- Polish
	['títle'] = 'title',
	['título'] = 'title',														-- Spanish
	['ubicación'] = 'location',													-- Spanish
	['urlarchivio'] = 'archive-url',											-- Italian
	['urlarchivo'] = 'archive-url',												-- Spanish
	['urlmorto'] = 'url-status',												-- Italian
	['url lưu trữ'] = 'archive-url',                                            -- Vietnamese
    ['urn'] = 'id',																-- German (as 'id={{URN|...}}')
	['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
	['yardımcıyazarlar'] = 'author',											-- Turkish
	['yayımcı'] = 'publisher',													-- Turkish
	['yayıncı'] = 'publisher',													-- Turkish
	['yazar'] = 'author',														-- Turkish
	['yazarbağı'] = 'author-link',												-- Turkish
	['yer'] = 'location',														-- Turkish
	['yıl'] = 'date',															-- Turkish
	['zaprezentowany'] = 'publisher',											-- French
	['zdb'] = 'id',																-- German (as 'id={{ZDB|...}}')
	['zitat'] = 'quote',														-- German
	['zugriff'] = 'access-date',												-- German
	['éditeur'] = 'editor',														-- French
	['ölüurl'] = 'url-status',													-- Turkish
	['übersetzer'] = 'translator',												-- German (singular and plural)
	['확인날짜'] = 'access-date',                                                -- Korean
	['날짜'] = 'date',                                                          -- Korean
	['제목'] = 'title',                                                         -- Korean
    ['뉴스'] = 'website',                                                       -- Korean
}



--[[--------------------------< 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
	['^authormask(%d+)$'] = 'author-mask$1',									-- old parameter name, enumerated
	['^author(%d+)mask$'] = 'author-mask$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
	['^editorlink(%d+)$'] = 'editor-link$1',									-- old parameter name, enumerated
	['^editor(%d+)link$'] = 'editor-link$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
	['^subjectlink(%d+)$'] = 'subject-link$1',									-- old parameter name, enumerated
	['^subject(%d+)link$'] = 'subject-link$1',									-- old parameter name, enumerated
	['^wkautore(%d+)$'] = 'author-link$1',										-- Italian, enumerated
	}

return {suggestions = suggestions, patterns=patterns};