มอดูล: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',
	'archive url' = 'archive-url',											-- Spanish
	'archive-link' = 'archive-url',	
	'artikelnr' = 'id',														-- German (as 'id=Article No. ...')
	'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',
	'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',
	'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
	'dead-url' = 'url-status',												-- old parameter name
	'deadlink' = 'url-status',
	'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=...')
	'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
	'formato' = 'format',														-- Spanish, Italian, Polish
	'frist' = 'first',														-- misspelling
	'fundstelle' = 'at',														-- German
	'gazete' = 'work',														-- Turkish
	'giornale' = 'journal',													-- Italian
	'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',
	'richiestasottoscrizione' = 'url-access',									-- Italian (as |url-access=subscription)
	'rok' = 'date',															-- Polish
	'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
	'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
	'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=...')
	'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=...')
	'zitat' = 'quote',														-- German
	'zugriff' = 'access-date',												-- German
	'éditeur' = 'editor',														-- French
	'ölüurl' = 'url-status',													-- Turkish
	'übersetzer' = 'translator',												-- German (singular and plural)
}
------------------------------------------------------------------------------------------
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 'autho+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
	'^apellidos?(%d+)$' = 'last$1',											-- Spanish, enumerated
	'^autho+r$' = 'author',													-- misspelling
	'^autho+r(%d+)$' = 'author$1',											-- misspelling, enumerated
	'^author link(%d+)$' = 'author-link$1',									-- Polish, enumerated
	'^autore?(%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
	'^nome?(%d+)$' = 'last$1',												-- Italian/French, enumerated
	'^nombre(%d+)$' = 'first$1',												-- Spanish, enumerated
	'^primero(%d+)$' = 'first$1',												-- Spanish, enumerated
	'^publish+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};