Difference between revisions of "Module:Citation/CS1/Whitelist"

From ChaldeanWiki
Jump to: navigation, search
(Synch from sandbox;)
m (1 revision imported)
 
(4 intermediate revisions by 3 users not shown)
Line 7: Line 7:
 
['albumtype'] = nil, -- controled inappropriate functionality in the old cite AV media notes
 
['albumtype'] = nil, -- controled inappropriate functionality in the old cite AV media notes
 
['artist'] = nil, -- unique alias of others used by old cite AV media notes
 
['artist'] = nil, -- unique alias of others used by old cite AV media notes
['authors#'] = nil, -- no need for multiple lists of author names
+
['ARXIV'] = nil, -- not an initialization
 +
['Author'] = nil, -- non-standard capitalization
 +
['authorformat'] = nil, -- primarily used to support Vancouver format which functionality now part of name-list-format
 +
['author-format'] = nil, -- primarily used to support Vancouver format which functionality now part of name-list-format
 +
['author-name-separator'] = nil,-- primarily used to support Vancouver format which functionality now part of name-list-format
 +
['author-separator'] = nil, -- primarily used to support Vancouver format which functionality now part of name-list-format
 +
['began'] = nil, -- module handles date ranges; cite episode and cite series
 +
['BIBCODE'] = nil, -- not an initialization
 +
['callsign'] = nil, -- cite interview removed
 +
['call-sign'] = nil, -- cite interview removed
 +
['chapterlink'] = nil, -- if ever necessary to link to a chapter article, |chapter= can be wikilinked
 +
['chapter-link'] = nil, --
 +
['city'] = nil, -- cite interview removed
 +
['coauthor'] = nil, -- redundant to |authorn=; not made part of metadata
 +
['coauthors'] = nil, -- redundant to |authorn=; not made part of metadata
 
['cointerviewers'] = nil, -- unique alias of others used by old cite interview
 
['cointerviewers'] = nil, -- unique alias of others used by old cite interview
 
['day'] = nil, -- deprecated in {{citation/core}} and somehow undeprecated in Module:Citation/CS1 and now finally removed
 
['day'] = nil, -- deprecated in {{citation/core}} and somehow undeprecated in Module:Citation/CS1 and now finally removed
 
['director'] = nil, -- unique alias of author used by old cite DVD-notes
 
['director'] = nil, -- unique alias of author used by old cite DVD-notes
 +
['doi_brokendate'] = nil,                  -- alias of doi-broken-date
 +
['doi_inactivedate'] = nil,                  -- alias of doi-inactive-date
 
['DoiBroken'] = nil, -- not used, non-standard captialization
 
['DoiBroken'] = nil, -- not used, non-standard captialization
['editors#'] = nil, -- no need for multiple lists of editor names
+
['Editor'] = nil, -- non-standard capitalization
 +
['editorformat'] = nil, -- primarily used to support Vancouver format which functionality now part of name-list-format
 +
['EditorSurname'] = nil, -- non-standard capitalization
 +
['editor-format'] = nil, -- primarily used to support Vancouver format which functionality now part of name-list-format
 +
['EditorGiven'] = nil, -- non-standard capitalization
 +
['editor-name-separator'] = nil,-- primarily used to support Vancouver format which functionality now part of name-list-format
 +
['editor-separator'] = nil, -- primarily used to support Vancouver format which functionality now part of name-list-format
 
['Embargo'] = nil, -- not used, non-standard capitalization
 
['Embargo'] = nil, -- not used, non-standard capitalization
 +
['ended'] = nil, -- module handles date ranges; cite episode and cite series
 +
['month'] = nil, -- functionality supported by |date=
 +
['name-separator'] = nil, -- primarily used to support Vancouver format which functionality now part of name-list-format
 
['notestitle'] = nil, -- unique alias of chapter used by old cite AV media notes
 
['notestitle'] = nil, -- unique alias of chapter used by old cite AV media notes
 +
['PPrefix'] = nil, -- non-standard capitalization
 
['PPPrefix'] = nil, -- not used, non-standard capitalization
 
['PPPrefix'] = nil, -- not used, non-standard capitalization
 +
['pp-prefix'] = nil, -- not used, not documented
 +
['p-prefix'] = nil, -- not used, not documented
 +
['program'] = nil, -- cite interview removed
 
['publisherid'] = nil, -- unique alias of id used by old cite AV media notes and old cite DVD-notes
 
['publisherid'] = nil, -- unique alias of id used by old cite AV media notes and old cite DVD-notes
 +
['Ref'] = nil, -- non-standard capitalization
 +
['separator'] = nil, -- this functionality now provided by |mode=
 +
['template doc demo'] = nil,            -- alias of template doc demo
 
['titleyear'] = nil, -- unique alias of origyear used by old cite DVD-notes
 
['titleyear'] = nil, -- unique alias of origyear used by old cite DVD-notes
 +
['trans_chapter'] = nil,                -- alias of trans-chapter
 +
['trans_title'] = nil,                  -- alias of trans-title
 +
 +
['Author#'] = nil, -- non-standard capitalization
 +
['authors#'] = nil, -- no need for multiple lists of author names
 +
['Editor#'] = nil, -- non-standard capitalization
 +
['editors#'] = nil, -- no need for multiple lists of editor names
 +
['EditorGiven#'] = nil, -- non-standard capitalization
 +
['EditorSurname#'] = nil, -- non-standard capitalization
  
 
]]
 
]]
Line 45: Line 86:
 
['article'] = true,
 
['article'] = true,
 
['arxiv'] = true,
 
['arxiv'] = true,
['ARXIV'] = true,
 
 
['asin'] = true,
 
['asin'] = true,
 
['ASIN'] = true,
 
['ASIN'] = true,
Line 52: Line 92:
 
['at'] = true,
 
['at'] = true,
 
['author'] = true,
 
['author'] = true,
['Author'] = false, -- deprecated; non-standard capitalization
 
 
['author-first'] = true,
 
['author-first'] = true,
['authorformat'] = false, -- deprecated; primarily used to support Vancouver format which functionality now part of name-list-format
 
['author-format'] = false, -- deprecated; primarily used to support Vancouver format which functionality now part of name-list-format
 
 
['author-last'] = true,
 
['author-last'] = true,
 
['authorlink'] = true,
 
['authorlink'] = true,
Line 61: Line 98:
 
['authormask'] = true,
 
['authormask'] = true,
 
['author-mask'] = true,
 
['author-mask'] = true,
['author-name-separator'] = false, -- deprecated; primarily used to support Vancouver format which functionality now part of name-list-format
 
 
['authors'] = true,
 
['authors'] = true,
['author-separator'] = false, -- deprecated; primarily used to support Vancouver format which functionality now part of name-list-format
 
['began'] = false, -- deprecated because module handles date ranges; cite episode and cite series
 
 
['bibcode'] = true,
 
['bibcode'] = true,
['BIBCODE'] = true,
+
['bibcode-access'] = true,
 +
['biorxiv'] = true,
 
['booktitle'] = true,
 
['booktitle'] = true,
 
['book-title'] = true,
 
['book-title'] = true,
['callsign']=true, -- cite interview
 
['call-sign']=true, -- cite interview
 
 
['cartography'] = true,
 
['cartography'] = true,
 
['chapter'] = true,
 
['chapter'] = true,
 
['chapter-format'] = true,
 
['chapter-format'] = true,
['chapterlink'] = false, -- deprecated
 
['chapter-link'] = false, -- deprecated
 
 
['chapterurl'] = true,
 
['chapterurl'] = true,
 
['chapter-url'] = true,
 
['chapter-url'] = true,
['city'] = true, -- cite interview, cite episode, cite serial
+
['chapter-url-access'] = true,
 +
['citeseerx'] = true,
 
['class'] = true, -- cite arxiv and arxiv identifiers
 
['class'] = true, -- cite arxiv and arxiv identifiers
['coauthor'] = false, -- deprecated
+
['collaboration'] = true,
['coauthors'] = false, -- deprecated
+
 
['conference'] = true,
 
['conference'] = true,
 
['conference-format'] = true,
 
['conference-format'] = true,
Line 90: Line 121:
 
['contributionurl'] = true,
 
['contributionurl'] = true,
 
['contribution-url'] = true,
 
['contribution-url'] = true,
 +
['contributor'] = true,
 +
['contributor-first'] = true,
 +
['contributor-last'] = true,
 +
['contributor-given'] = true,
 +
['contributor-surname'] = true,
 +
['contributor-link'] = true,
 +
['contributor-mask'] = true,
 
['credits'] = true, -- cite episode, cite serial
 
['credits'] = true, -- cite episode, cite serial
 
['date'] = true,
 
['date'] = true,
Line 96: Line 134:
 
['degree'] = true,
 
['degree'] = true,
 
['department'] = true,
 
['department'] = true,
 +
['df'] = true,
 
['dictionary'] = true,
 
['dictionary'] = true,
 
['displayauthors'] = true,
 
['displayauthors'] = true,
Line 104: Line 143:
 
['doi'] = true,
 
['doi'] = true,
 
['DOI'] = true,
 
['DOI'] = true,
 +
['doi-access'] = true,
 
['doi-broken'] = true,
 
['doi-broken'] = true,
['doi_brokendate'] = true,
 
 
['doi-broken-date'] = true,
 
['doi-broken-date'] = true,
['doi_inactivedate'] = true,
 
 
['doi-inactive-date'] = true,
 
['doi-inactive-date'] = true,
 
['edition'] = true,
 
['edition'] = true,
 
['editor'] = true,
 
['editor'] = true,
['Editor'] = false, -- deprecated; non-standard capitalization
 
 
['editor-first'] = true,
 
['editor-first'] = true,
['editorformat'] = false, -- deprecated; primarily used to support Vancouver format which functionality now part of name-list-format
 
['editor-format'] = false, -- deprecated; primarily used to support Vancouver format which functionality now part of name-list-format
 
['EditorGiven'] = false, -- deprecated; non-standard capitalization
 
 
['editor-given'] = true,
 
['editor-given'] = true,
 
['editor-last'] = true,
 
['editor-last'] = true,
Line 122: Line 156:
 
['editormask'] = true,
 
['editormask'] = true,
 
['editor-mask'] = true,
 
['editor-mask'] = true,
['editor-name-separator'] = false, -- deprecated; primarily used to support Vancouver format which functionality now part of name-list-format
 
 
['editors'] = true,
 
['editors'] = true,
['editor-separator'] = false, -- deprecated; primarily used to support Vancouver format which functionality now part of name-list-format
 
['EditorSurname'] = false, -- deprecated; non-standard capitalization
 
 
['editor-surname'] = true,
 
['editor-surname'] = true,
 +
['eissn'] = true,
 +
['EISSN'] = true,
 
['embargo'] = true,
 
['embargo'] = true,
 
['encyclopaedia'] = true,
 
['encyclopaedia'] = true,
 
['encyclopedia'] = true,
 
['encyclopedia'] = true,
['ended'] = false, -- deprecated because module handles date ranges; cite episode and cite series
 
 
['entry'] = true,
 
['entry'] = true,
 
['episode'] = true, -- cite serial only TODO: make available to cite episode?
 
['episode'] = true, -- cite serial only TODO: make available to cite episode?
Line 143: Line 175:
 
['format'] = true,
 
['format'] = true,
 
['given'] = true,
 
['given'] = true,
 +
['hdl'] = true,
 +
['HDL'] = true,
 +
['hdl-access'] = true,
 
['host'] = true,
 
['host'] = true,
 
['id'] = true,
 
['id'] = true,
Line 151: Line 186:
 
['inset'] = true,
 
['inset'] = true,
 
['institution'] = true,
 
['institution'] = true,
['interviewer'] = true, --cite interview
+
['interviewer'] = true,
['interviewers'] = true, --cite interview
+
['interviewer-first'] = true,
 +
['interviewer-last'] = true,
 +
['interviewerlink'] = true,
 +
['interviewer-link'] = true,
 +
['interviewermask'] = true,
 +
['interviewer-mask'] = true,
 +
['interviewers'] = true,
 
['isbn'] = true,
 
['isbn'] = true,
 
['ISBN'] = true,
 
['ISBN'] = true,
 
['isbn13'] = true,
 
['isbn13'] = true,
 
['ISBN13'] = true,
 
['ISBN13'] = true,
 +
['ismn'] = true,
 +
['ISMN'] = true,
 
['issn'] = true,
 
['issn'] = true,
 
['ISSN'] = true,
 
['ISSN'] = true,
Line 165: Line 208:
 
['jstor'] = true,
 
['jstor'] = true,
 
['JSTOR'] = true,
 
['JSTOR'] = true,
 +
['jstor-access'] = true,
 
['language'] = true,
 
['language'] = true,
 
['last'] = true,
 
['last'] = true,
Line 192: Line 236:
 
['minutes'] = true,
 
['minutes'] = true,
 
['mode'] = true,
 
['mode'] = true,
['month'] = false, -- deprecated
 
 
['mr'] = true,
 
['mr'] = true,
 
['MR'] = true,
 
['MR'] = true,
 
['name-list-format'] = true,
 
['name-list-format'] = true,
['name-separator'] = false, -- deprecated;  primarily used to support Vancouver format which functionality now part of name-list-format
 
 
['network'] = true,
 
['network'] = true,
 
['newsgroup'] = true,
 
['newsgroup'] = true,
Line 211: Line 253:
 
['ol'] = true,
 
['ol'] = true,
 
['OL'] = true,
 
['OL'] = true,
 +
['ol-access'] = true,
 
['origyear'] = true,
 
['origyear'] = true,
 
['orig-year'] = true,
 
['orig-year'] = true,
 
['osti'] = true,
 
['osti'] = true,
 
['OSTI'] = true,
 
['OSTI'] = true,
 +
['osti-access'] = true,
 
['others'] = true,
 
['others'] = true,
 
['p'] = true,
 
['p'] = true,
Line 228: Line 272:
 
['postscript'] = true,
 
['postscript'] = true,
 
['pp'] = true,
 
['pp'] = true,
['pp-prefix'] = true,
 
['PPrefix'] = true,
 
['p-prefix'] = true,
 
['program']=true, -- cite interview
 
 
['publicationdate'] = true,
 
['publicationdate'] = true,
 
['publication-date'] = true,
 
['publication-date'] = true,
Line 240: Line 280:
 
['quote'] = true,
 
['quote'] = true,
 
['ref'] = true,
 
['ref'] = true,
['Ref'] = true,
 
 
['registration'] = true,
 
['registration'] = true,
 
['rfc'] = true,
 
['rfc'] = true,
 
['RFC'] = true,
 
['RFC'] = true,
 
['scale'] = true,
 
['scale'] = true,
 +
['script-chapter'] = true,
 
['script-title'] = true,
 
['script-title'] = true,
 
['season'] = true,
 
['season'] = true,
Line 252: Line 292:
 
['sectionurl'] = true,
 
['sectionurl'] = true,
 
['section-url'] = true,
 
['section-url'] = true,
['separator'] = false, -- deprecated; this functionality now provided by |mode=
 
 
['series'] = true,
 
['series'] = true,
 
['serieslink'] = true,
 
['serieslink'] = true,
Line 271: Line 310:
 
['subscription'] = true,
 
['subscription'] = true,
 
['surname'] = true,
 
['surname'] = true,
['template doc demo'] = true,
 
 
['template-doc-demo'] = true,
 
['template-doc-demo'] = true,
 
['time'] = true,
 
['time'] = true,
Line 279: Line 317:
 
['titlelink'] = true,
 
['titlelink'] = true,
 
['title-link'] = true,
 
['title-link'] = true,
['trans_chapter'] = true,
 
 
['trans-chapter'] = true,
 
['trans-chapter'] = true,
['trans-map'] = true;
+
['trans-map'] = true,
 
['transcript'] = true,
 
['transcript'] = true,
 
['transcript-format'] = true,
 
['transcript-format'] = true,
 
['transcripturl'] = true,
 
['transcripturl'] = true,
 
['transcript-url'] = true,
 
['transcript-url'] = true,
['trans_title'] = true,
 
 
['trans-title'] = true,
 
['trans-title'] = true,
 +
['translator'] = true,
 +
['translator-first'] = true,
 +
['translator-last'] = true,
 +
['translator-given'] = true,
 +
['translator-surname'] = true,
 +
['translator-link'] = true,
 +
['translator-mask'] = true,
 
['type'] = true,
 
['type'] = true,
 
['url'] = true,
 
['url'] = true,
 
['URL'] = true,
 
['URL'] = true,
 +
['url-access'] = true,
 +
['vauthors'] = true,
 +
['veditors'] = true,
 
['version'] = true,
 
['version'] = true,
 
['via'] = true,
 
['via'] = true,
Line 303: Line 349:
 
local numbered_arguments = {
 
local numbered_arguments = {
 
['author#'] = true,
 
['author#'] = true,
['Author#'] = false, -- deprecated; non-standard capitalization
 
 
['author-first#'] = true,
 
['author-first#'] = true,
 
['author#-first'] = true,
 
['author#-first'] = true,
Line 316: Line 361:
 
['author#-mask'] = true,
 
['author#-mask'] = true,
 
['authormask#'] = true,
 
['authormask#'] = true,
 +
['contributor#'] = true,
 +
['contributor-first#'] = true,
 +
['contributor#-first'] = true,
 +
['contributor-last#'] = true,
 +
['contributor#-last'] = true,
 +
['contributor-given#'] = true,
 +
['contributor#-given'] = true,
 +
['contributor-surname#'] = true,
 +
['contributor#-surname'] = true,
 +
['contributor-link#'] = true,
 +
['contributor#-link'] = true,
 +
['contributor-mask#'] = true,
 +
['contributor#-mask'] = true,
 
['editor#'] = true,
 
['editor#'] = true,
['Editor#'] = false, -- deprecated; non-standard capitalization
 
 
['editor-first#'] = true,
 
['editor-first#'] = true,
 
['editor#-first'] = true,
 
['editor#-first'] = true,
['EditorGiven#'] = false, -- deprecated; non-standard capitalization
 
 
['editor#-given'] = true,
 
['editor#-given'] = true,
 
['editor-given#'] = true,
 
['editor-given#'] = true,
Line 333: Line 389:
 
['editor#-mask'] = true,
 
['editor#-mask'] = true,
 
['editormask#'] = true,
 
['editormask#'] = true,
['EditorSurname#'] = false, -- deprecated; non-standard capitalization
 
 
['editor#-surname'] = true,
 
['editor#-surname'] = true,
 
['editor-surname#'] = true,
 
['editor-surname#'] = true,
 
['first#'] = true,
 
['first#'] = true,
 
['given#'] = true,
 
['given#'] = true,
 +
['interviewer#'] = true,
 +
['interviewer-first#'] = true,
 +
['interviewer#-first'] = true,
 +
['interviewer-last#'] = true,
 +
['interviewer#-last'] = true,
 +
['interviewer-link#'] = true,
 +
['interviewer#-link'] = true,
 +
['interviewer-mask#'] = true,
 +
['interviewer#-mask'] = true,
 
['last#'] = true,
 
['last#'] = true,
 
['subject#'] = true,
 
['subject#'] = true,
Line 344: Line 408:
 
['subject#-link'] = true,
 
['subject#-link'] = true,
 
['subjectlink#'] = true,
 
['subjectlink#'] = true,
 +
['surname#'] = true,
 +
['translator#'] = true,
 +
['translator-first#'] = true,
 +
['translator#-first'] = true,
 +
['translator-last#'] = true,
 +
['translator#-last'] = true,
 +
['translator-given#'] = true,
 +
['translator#-given'] = true,
 +
['translator-surname#'] = true,
 +
['translator#-surname'] = true,
 +
['translator-link#'] = true,
 +
['translator#-link'] = true,
 +
['translator-mask#'] = true,
 +
['translator#-mask'] = true,
 +
}
 +
 +
--[[--------------------------< C I T E  A R X I V  S U P P O R T E D  P A R A M E T E R S >----------------
 +
 +
This is an experiment that attempts to use validate() and a limited list of valid parameters to validate the
 +
parameters provided in a cite arxiv template.  This method might be expanded to other templates being considered.
 +
 +
Because a steady-state signal conveys no useful information, whitelist.basic_arguments[] list items can have three values:
 +
true - these parameters are valid and supported parameters
 +
false - these parameters are deprecated but still supported
 +
nil - these parameters are no longer supported (when setting a parameter to nil, leave a comment stating the reasons for invalidating the parameter)
 +
 +
]]
 +
 +
--[[
 +
This is a list of parameters that once were but now are no longer supported:
 +
['ARXIV'] = nil, -- not an initialization
 +
['version'] = nil, -- this is the cite arxiv parameter; |version= still supported by other cs1|2 templates
 +
 +
]]
 +
 +
local arxiv_basic_arguments = {
 +
['arxiv'] = true,
 +
['class'] = true, -- cite arxiv and arxiv identifiers
 +
['eprint'] = true, -- cite arxiv and arxiv identifiers
 +
}
 +
 +
 +
--[[--------------------------< C I T E  B I O R X I V  S U P P O R T E D  P A R A M E T E R S >------------
 +
 +
This is an experiment that attempts to use validate() and a limited list of valid parameters to validate the
 +
parameters provided in a cite biorxiv template.  This method might be expanded to other templates being considered.
 +
 +
Because a steady-state signal conveys no useful information, whitelist.basic_arguments[] list items can have three values:
 +
true - these parameters are valid and supported parameters
 +
false - these parameters are deprecated but still supported
 +
nil - these parameters are no longer supported (when setting a parameter to nil, leave a comment stating the reasons for invalidating the parameter)
 +
 +
]]
 +
 +
local biorxiv_basic_arguments = {
 +
['biorxiv'] = true,
 +
}
 +
 +
 +
--[[--------------------------< C I T E  C I T E S E E R X  S U P P O R T E D  P A R A M E T E R S >--------
 +
 +
This is an experiment that attempts to use validate() and a limited list of valid parameters to validate the
 +
parameters provided in a cite citeseerx template.  This method might be expanded to other templates being considered.
 +
 +
Because a steady-state signal conveys no useful information, whitelist.basic_arguments[] list items can have three values:
 +
true - these parameters are valid and supported parameters
 +
false - these parameters are deprecated but still supported
 +
nil - these parameters are no longer supported (when setting a parameter to nil, leave a comment stating the reasons for invalidating the parameter)
 +
 +
]]
 +
 +
local citeseerx_basic_arguments = {
 +
['citeseerx'] = true,
 +
}
 +
 +
 +
--[[--------------------------< L I M I T E D  S U P P O R T E D  P A R A M E T E R S >----------------------
 +
 +
This is an experiment that attempts to use validate() and a limited list of valid parameters to validate the
 +
parameters provided in a cite arxiv, cite biorxiv, or cite citeseerx templates.  These parameters are common to
 +
all three templates
 +
 +
Because a steady-state signal conveys no useful information, whitelist.basic_arguments[] list items can have three values:
 +
true - these parameters are valid and supported parameters
 +
false - these parameters are deprecated but still supported
 +
nil - these parameters are no longer supported (when setting a parameter to nil, leave a comment stating the reasons for invalidating the parameter)
 +
 +
]]
 +
 +
local limited_basic_arguments = {
 +
['at'] = true,
 +
['author'] = true,
 +
['author-first'] = true,
 +
['author-last'] = true,
 +
['authorlink'] = true,
 +
['author-link'] = true,
 +
['authormask'] = true,
 +
['author-mask'] = true,
 +
['authors'] = true,
 +
['collaboration'] = true,
 +
['date'] = true,
 +
['df'] = true,
 +
['display-authors'] = true,
 +
['first'] = true,
 +
['given'] = true,
 +
['language'] = true,
 +
['last'] = true,
 +
['lastauthoramp'] = true,
 +
['last-author-amp'] = true,
 +
['mode'] = true,
 +
['name-list-format'] = true,
 +
['nocat'] = true,
 +
['no-cat'] = true,
 +
['notracking'] = true,
 +
['no-tracking'] = true,
 +
['p'] = true,
 +
['page'] = true,
 +
['pages'] = true,
 +
['postscript'] = true,
 +
['pp'] = true,
 +
['quotation'] = true,
 +
['quote'] = true,
 +
['ref'] = true,
 +
['surname'] = true,
 +
['template-doc-demo'] = true,
 +
['title'] = true,
 +
['url'] = true,
 +
['URL'] = true,
 +
['vauthors'] = true,
 +
['year'] = true,
 +
}
 +
local limited_numbered_arguments = {
 +
['author#'] = true,
 +
['author-first#'] = true,
 +
['author#-first'] = true,
 +
['author-last#'] = true,
 +
['author#-last'] = true,
 +
['author-link#'] = true,
 +
['author#link'] = true,
 +
['author#-link'] = true,
 +
['authorlink#'] = true,
 +
['author-mask#'] = true,
 +
['author#mask'] = true,
 +
['author#-mask'] = true,
 +
['authormask#'] = true,
 +
['first#'] = true,
 +
['given#'] = true,
 +
['last#'] = true,
 
['surname#'] = true,
 
['surname#'] = true,
 
}
 
}
--};
 
  
--return whitelist;
+
return {
return {basic_arguments = basic_arguments, numbered_arguments = numbered_arguments};
+
basic_arguments = basic_arguments,
 +
numbered_arguments = numbered_arguments,
 +
limited_basic_arguments = limited_basic_arguments,
 +
limited_numbered_arguments = limited_numbered_arguments,
 +
arxiv_basic_arguments = arxiv_basic_arguments,
 +
biorxiv_basic_arguments = biorxiv_basic_arguments,
 +
citeseerx_basic_arguments = citeseerx_basic_arguments
 +
};

Latest revision as of 03:20, 18 March 2018

Documentation for this module may be created at Module:Citation/CS1/Whitelist/doc


--[[--------------------------< P A R A M E T E R S   N O T   S U P P O R T E D >------------------------------

This is a list of parameters that once were but now are no longer supported:

	['albumlink'] = nil,			-- unique alias of titlelink used by old cite AV media notes
	['albumtype'] = nil,			-- controled inappropriate functionality in the old cite AV media notes
	['artist'] = nil,				-- unique alias of others used by old cite AV media notes
	['ARXIV'] = nil,				-- not an initialization
	['Author'] = nil,				-- non-standard capitalization
	['authorformat'] = nil,			-- primarily used to support Vancouver format which functionality now part of name-list-format
	['author-format'] = nil,		-- primarily used to support Vancouver format which functionality now part of name-list-format
	['author-name-separator'] = nil,-- primarily used to support Vancouver format which functionality now part of name-list-format
	['author-separator'] = nil,		-- primarily used to support Vancouver format which functionality now part of name-list-format
	['began'] = nil,				-- module handles date ranges; cite episode and cite series
	['BIBCODE'] = nil,				-- not an initialization
	['callsign'] = nil,				-- cite interview removed
	['call-sign'] = nil,			-- cite interview removed
	['chapterlink'] = nil,			-- if ever necessary to link to a chapter article, |chapter= can be wikilinked 
	['chapter-link'] = nil,			-- 
	['city'] = nil,					-- cite interview removed
	['coauthor'] = nil,				-- redundant to |authorn=; not made part of metadata
	['coauthors'] = nil,			-- redundant to |authorn=; not made part of metadata
	['cointerviewers'] = nil,		-- unique alias of others used by old cite interview
	['day'] = nil,					-- deprecated in {{citation/core}} and somehow undeprecated in Module:Citation/CS1 and now finally removed
	['director'] = nil,				-- unique alias of author used by old cite DVD-notes
	['doi_brokendate'] = nil,                  -- alias of doi-broken-date
	['doi_inactivedate'] = nil,                  -- alias of doi-inactive-date
	['DoiBroken'] = nil,			-- not used, non-standard captialization
	['Editor'] = nil,				-- non-standard capitalization
	['editorformat'] = nil,			-- primarily used to support Vancouver format which functionality now part of name-list-format
	['EditorSurname'] = nil,		-- non-standard capitalization
	['editor-format'] = nil,		-- primarily used to support Vancouver format which functionality now part of name-list-format
	['EditorGiven'] = nil,			-- non-standard capitalization
	['editor-name-separator'] = nil,-- primarily used to support Vancouver format which functionality now part of name-list-format
	['editor-separator'] = nil,		-- primarily used to support Vancouver format which functionality now part of name-list-format
	['Embargo'] = nil,				-- not used, non-standard capitalization
	['ended'] = nil,				-- module handles date ranges; cite episode and cite series
	['month'] = nil,				-- functionality supported by |date=
	['name-separator'] = nil,		-- primarily used to support Vancouver format which functionality now part of name-list-format
	['notestitle'] = nil,			-- unique alias of chapter used by old cite AV media notes
	['PPrefix'] = nil,				-- non-standard capitalization
	['PPPrefix'] = nil,				-- not used, non-standard capitalization
	['pp-prefix'] = nil,			-- not used, not documented
	['p-prefix'] = nil,				-- not used, not documented
	['program'] = nil,				-- cite interview removed
	['publisherid'] = nil,			-- unique alias of id used by old cite AV media notes and old cite DVD-notes
	['Ref'] = nil,					-- non-standard capitalization
	['separator'] = nil,			-- this functionality now provided by |mode=
	['template doc demo'] = nil,            -- alias of template doc demo
	['titleyear'] = nil,			-- unique alias of origyear used by old cite DVD-notes
	['trans_chapter'] = nil,                -- alias of trans-chapter
	['trans_title'] = nil,                  -- alias of trans-title

	['Author#'] = nil,				-- non-standard capitalization
	['authors#'] = nil,				-- no need for multiple lists of author names
	['Editor#'] = nil,				-- non-standard capitalization
	['editors#'] = nil,				-- no need for multiple lists of editor names
	['EditorGiven#'] = nil,			-- non-standard capitalization
	['EditorSurname#'] = nil,		-- non-standard capitalization

]]

--[[--------------------------< S U P P O R T E D   P A R A M E T E R S >--------------------------------------

Because a steady-state signal conveys no useful information, whitelist.basic_arguments[] list items can have three values:
	true - these parameters are valid and supported parameters
	false - these parameters are deprecated but still supported
	nil - these parameters are no longer supported (when setting a parameter to nil, leave a comment stating the reasons for invalidating the parameter)
	
]]

local whitelist = {}

local basic_arguments = {
	['accessdate'] = true,
	['access-date'] = true,
	['agency'] = true,
	['airdate'] = true,
	['air-date'] = true,
	['archivedate'] = true,
	['archive-date'] = true,
	['archive-format'] = true,
	['archiveurl'] = true,
	['archive-url'] = true,
	['article'] = true,
	['arxiv'] = true,
	['asin'] = true,
	['ASIN'] = true,
	['asin-tld'] = true,
	['ASIN-TLD'] = true,
	['at'] = true,
	['author'] = true,
	['author-first'] = true,
	['author-last'] = true,
	['authorlink'] = true,
	['author-link'] = true,
	['authormask'] = true,
	['author-mask'] = true,
	['authors'] = true,
	['bibcode'] = true,
	['bibcode-access'] = true,
	['biorxiv'] = true,
	['booktitle'] = true,
	['book-title'] = true,
	['cartography'] = true,
	['chapter'] = true,
	['chapter-format'] = true,
	['chapterurl'] = true,
	['chapter-url'] = true,
	['chapter-url-access'] = true,
	['citeseerx'] = true,
	['class'] = true,				-- cite arxiv and arxiv identifiers
	['collaboration'] = true,
	['conference'] = true,
	['conference-format'] = true,
	['conferenceurl'] = true,
	['conference-url'] = true,
	['contribution'] = true,
	['contribution-format'] = true,
	['contributionurl'] = true,
	['contribution-url'] = true,
	['contributor'] = true,
	['contributor-first'] = true,
	['contributor-last'] = true,
	['contributor-given'] = true,
	['contributor-surname'] = true,
	['contributor-link'] = true,
	['contributor-mask'] = true,
	['credits'] = true,				-- cite episode, cite serial
	['date'] = true,
	['deadurl'] = true,
	['dead-url'] = true,
	['degree'] = true,
	['department'] = true,
	['df'] = true,
	['dictionary'] = true,
	['displayauthors'] = true,
	['display-authors'] = true,
	['displayeditors'] = true,
	['display-editors'] = true,
	['docket'] = true,
	['doi'] = true,
	['DOI'] = true,
	['doi-access'] = true,
	['doi-broken'] = true,
	['doi-broken-date'] = true,
	['doi-inactive-date'] = true,
	['edition'] = true,
	['editor'] = true,
	['editor-first'] = true,
	['editor-given'] = true,
	['editor-last'] = true,
	['editorlink'] = true,
	['editor-link'] = true,
	['editormask'] = true,
	['editor-mask'] = true,
	['editors'] = true,
	['editor-surname'] = true,
	['eissn'] = true,
	['EISSN'] = true,
	['embargo'] = true,
	['encyclopaedia'] = true,
	['encyclopedia'] = true,
	['entry'] = true,
	['episode'] = true,															-- cite serial only TODO: make available to cite episode?
	['episodelink'] = true,														-- cite episode and cite serial
	['episode-link'] = true,													-- cite episode and cite serial
	['eprint'] = true,															-- cite arxiv and arxiv identifiers
	['event'] = true,
	['event-format'] = true,
	['eventurl'] = true,
	['event-url'] = true,
	['first'] = true,
	['format'] = true,
	['given'] = true,
	['hdl'] = true,
	['HDL'] = true,
	['hdl-access'] = true,
	['host'] = true,
	['id'] = true,
	['ID'] = true,
	['ignoreisbnerror'] = true,
	['ignore-isbn-error'] = true,
	['in'] = true,
	['inset'] = true,
	['institution'] = true,
	['interviewer'] = true,
	['interviewer-first'] = true,
	['interviewer-last'] = true,
	['interviewerlink'] = true,
	['interviewer-link'] = true,
	['interviewermask'] = true,
	['interviewer-mask'] = true,
	['interviewers'] = true,
	['isbn'] = true,
	['ISBN'] = true,
	['isbn13'] = true,
	['ISBN13'] = true,
	['ismn'] = true,
	['ISMN'] = true,
	['issn'] = true,
	['ISSN'] = true,
	['issue'] = true,
	['jfm'] = true,
	['JFM'] = true,
	['journal'] = true,
	['jstor'] = true,
	['JSTOR'] = true,
	['jstor-access'] = true,
	['language'] = true,
	['last'] = true,
	['lastauthoramp'] = true,
	['last-author-amp'] = true,
	['laydate'] = true,
	['lay-date'] = true,
	['laysource'] = true,
	['lay-source'] = true,
	['laysummary'] = true,
	['lay-summary'] = true,
	['lay-format'] = true,
	['layurl'] = true,
	['lay-url'] = true,
	['lccn'] = true,
	['LCCN'] = true,
	['location'] = true,
	['magazine'] = true,
	['mailinglist'] = true,				-- cite mailing list only
	['mailing-list'] = true,			-- cite mailing list only
	['map'] = true,						-- cite map only
	['map-format'] = true,				-- cite map only
	['mapurl'] = true,					-- cite map only
	['map-url'] = true,					-- cite map only
	['medium'] = true,
	['message-id'] = true,			-- cite newsgroup
	['minutes'] = true,
	['mode'] = true,
	['mr'] = true,
	['MR'] = true,
	['name-list-format'] = true,
	['network'] = true,
	['newsgroup'] = true,
	['newspaper'] = true,
	['nocat'] = true,
	['no-cat'] = true,
	['nopp'] = true,
	['no-pp'] = true,
	['notracking'] = true,
	['no-tracking'] = true,
	['number'] = true,
	['oclc'] = true,
	['OCLC'] = true,
	['ol'] = true,
	['OL'] = true,
	['ol-access'] = true,
	['origyear'] = true,
	['orig-year'] = true,
	['osti'] = true,
	['OSTI'] = true,
	['osti-access'] = true,
	['others'] = true,
	['p'] = true,
	['page'] = true,
	['pages'] = true,
	['people'] = true,
	['periodical'] = true,
	['place'] = true,
	['pmc'] = true,
	['PMC'] = true,
	['pmid'] = true,
	['PMID'] = true,
	['postscript'] = true,
	['pp'] = true,
	['publicationdate'] = true,
	['publication-date'] = true,
	['publicationplace'] = true,
	['publication-place'] = true,
	['publisher'] = true,
	['quotation'] = true,
	['quote'] = true,
	['ref'] = true,
	['registration'] = true,
	['rfc'] = true,
	['RFC'] = true,
	['scale'] = true,
	['script-chapter'] = true,
	['script-title'] = true,
	['season'] = true,
	['section'] = true,
	['section-format'] = true,
	['sections'] = true,					-- cite map only
	['sectionurl'] = true,
	['section-url'] = true,
	['series'] = true,
	['serieslink'] = true,
	['series-link'] = true,
	['seriesno'] = true,
	['series-no'] = true,
	['seriesnumber'] = true,
	['series-number'] = true,
	['series-separator'] = true,
	['sheet'] = true,															-- cite map only
	['sheets'] = true,															-- cite map only
	['ssrn'] = true,
	['SSRN'] = true,
	['station'] = true,
	['subject'] = true,
	['subjectlink'] = true,
	['subject-link'] = true,
	['subscription'] = true,
	['surname'] = true,
	['template-doc-demo'] = true,
	['time'] = true,
	['timecaption'] = true,
	['time-caption'] = true,
	['title'] = true,
	['titlelink'] = true,
	['title-link'] = true,
	['trans-chapter'] = true,
	['trans-map'] = true,
	['transcript'] = true,
	['transcript-format'] = true,
	['transcripturl'] = true,
	['transcript-url'] = true,
	['trans-title'] = true,
	['translator'] = true,
	['translator-first'] = true,
	['translator-last'] = true,
	['translator-given'] = true,
	['translator-surname'] = true,
	['translator-link'] = true,
	['translator-mask'] = true,
	['type'] = true,
	['url'] = true,
	['URL'] = true,
	['url-access'] = true,
	['vauthors'] = true,
	['veditors'] = true,
	['version'] = true,
	['via'] = true,
	['volume'] = true,
	['website'] = true,
	['work'] = true,
	['year'] = true,
	['zbl'] = true,
	['ZBL'] = true,
}

local numbered_arguments = {
	['author#'] = true,
	['author-first#'] = true,
	['author#-first'] = true,
	['author-last#'] = true,
	['author#-last'] = true,
	['author-link#'] = true,
	['author#link'] = true,
	['author#-link'] = true,
	['authorlink#'] = true,
	['author-mask#'] = true,
	['author#mask'] = true,
	['author#-mask'] = true,
	['authormask#'] = true,
	['contributor#'] = true,
	['contributor-first#'] = true,
	['contributor#-first'] = true,
	['contributor-last#'] = true,
	['contributor#-last'] = true,
	['contributor-given#'] = true,
	['contributor#-given'] = true,
	['contributor-surname#'] = true,
	['contributor#-surname'] = true,
	['contributor-link#'] = true,
	['contributor#-link'] = true,
	['contributor-mask#'] = true,
	['contributor#-mask'] = true,
	['editor#'] = true,
	['editor-first#'] = true,
	['editor#-first'] = true,
	['editor#-given'] = true,
	['editor-given#'] = true,
	['editor-last#'] = true,
	['editor#-last'] = true,
	['editor-link#'] = true,
	['editor#link'] = true,
	['editor#-link'] = true,
	['editorlink#'] = true,
	['editor-mask#'] = true,
	['editor#mask'] = true,
	['editor#-mask'] = true,
	['editormask#'] = true,
	['editor#-surname'] = true,
	['editor-surname#'] = true,
	['first#'] = true,
	['given#'] = true,
	['interviewer#'] = true,
	['interviewer-first#'] = true,
	['interviewer#-first'] = true,
	['interviewer-last#'] = true,
	['interviewer#-last'] = true,
	['interviewer-link#'] = true,
	['interviewer#-link'] = true,
	['interviewer-mask#'] = true,
	['interviewer#-mask'] = true,
	['last#'] = true,
	['subject#'] = true,
	['subject-link#'] = true,
	['subject#link'] = true,
	['subject#-link'] = true,
	['subjectlink#'] = true,
	['surname#'] = true,
	['translator#'] = true,
	['translator-first#'] = true,
	['translator#-first'] = true,
	['translator-last#'] = true,
	['translator#-last'] = true,
	['translator-given#'] = true,
	['translator#-given'] = true,
	['translator-surname#'] = true,
	['translator#-surname'] = true,
	['translator-link#'] = true,
	['translator#-link'] = true,
	['translator-mask#'] = true,
	['translator#-mask'] = true,
}

--[[--------------------------< C I T E   A R X I V   S U P P O R T E D   P A R A M E T E R S >----------------

This is an experiment that attempts to use validate() and a limited list of valid parameters to validate the
parameters provided in a cite arxiv template.  This method might be expanded to other templates being considered.

Because a steady-state signal conveys no useful information, whitelist.basic_arguments[] list items can have three values:
	true - these parameters are valid and supported parameters
	false - these parameters are deprecated but still supported
	nil - these parameters are no longer supported (when setting a parameter to nil, leave a comment stating the reasons for invalidating the parameter)
	
]]

--[[
This is a list of parameters that once were but now are no longer supported:
	['ARXIV'] = nil,				-- not an initialization
	['version'] = nil,				-- this is the cite arxiv parameter; |version= still supported by other cs1|2 templates

]]

local arxiv_basic_arguments = {
	['arxiv'] = true,
	['class'] = true,															-- cite arxiv and arxiv identifiers
	['eprint'] = true,															-- cite arxiv and arxiv identifiers
}


--[[--------------------------< C I T E   B I O R X I V   S U P P O R T E D   P A R A M E T E R S >------------

This is an experiment that attempts to use validate() and a limited list of valid parameters to validate the
parameters provided in a cite biorxiv template.  This method might be expanded to other templates being considered.

Because a steady-state signal conveys no useful information, whitelist.basic_arguments[] list items can have three values:
	true - these parameters are valid and supported parameters
	false - these parameters are deprecated but still supported
	nil - these parameters are no longer supported (when setting a parameter to nil, leave a comment stating the reasons for invalidating the parameter)
	
]]

local biorxiv_basic_arguments = {
	['biorxiv'] = true,
}


--[[--------------------------< C I T E   C I T E S E E R X   S U P P O R T E D   P A R A M E T E R S >--------

This is an experiment that attempts to use validate() and a limited list of valid parameters to validate the
parameters provided in a cite citeseerx template.  This method might be expanded to other templates being considered.

Because a steady-state signal conveys no useful information, whitelist.basic_arguments[] list items can have three values:
	true - these parameters are valid and supported parameters
	false - these parameters are deprecated but still supported
	nil - these parameters are no longer supported (when setting a parameter to nil, leave a comment stating the reasons for invalidating the parameter)
	
]]

local citeseerx_basic_arguments = {
	['citeseerx'] = true,
}


--[[--------------------------< L I M I T E D   S U P P O R T E D   P A R A M E T E R S >----------------------

This is an experiment that attempts to use validate() and a limited list of valid parameters to validate the
parameters provided in a cite arxiv, cite biorxiv, or cite citeseerx templates.  These parameters are common to
all three templates

Because a steady-state signal conveys no useful information, whitelist.basic_arguments[] list items can have three values:
	true - these parameters are valid and supported parameters
	false - these parameters are deprecated but still supported
	nil - these parameters are no longer supported (when setting a parameter to nil, leave a comment stating the reasons for invalidating the parameter)
	
]]

local limited_basic_arguments = {
	['at'] = true,
	['author'] = true,
	['author-first'] = true,
	['author-last'] = true,
	['authorlink'] = true,
	['author-link'] = true,
	['authormask'] = true,
	['author-mask'] = true,
	['authors'] = true,
	['collaboration'] = true,
	['date'] = true,
	['df'] = true,
	['display-authors'] = true,
	['first'] = true,
	['given'] = true,
	['language'] = true,
	['last'] = true,
	['lastauthoramp'] = true,
	['last-author-amp'] = true,
	['mode'] = true,
	['name-list-format'] = true,
	['nocat'] = true,
	['no-cat'] = true,
	['notracking'] = true,
	['no-tracking'] = true,
	['p'] = true,
	['page'] = true,
	['pages'] = true,
	['postscript'] = true,
	['pp'] = true,
	['quotation'] = true,
	['quote'] = true,
	['ref'] = true,
	['surname'] = true,
	['template-doc-demo'] = true,
	['title'] = true,
	['url'] = true,
	['URL'] = true,
	['vauthors'] = true,
	['year'] = true,
}
local limited_numbered_arguments = {
	['author#'] = true,
	['author-first#'] = true,
	['author#-first'] = true,
	['author-last#'] = true,
	['author#-last'] = true,
	['author-link#'] = true,
	['author#link'] = true,
	['author#-link'] = true,
	['authorlink#'] = true,
	['author-mask#'] = true,
	['author#mask'] = true,
	['author#-mask'] = true,
	['authormask#'] = true,
	['first#'] = true,
	['given#'] = true,
	['last#'] = true,
	['surname#'] = true,
}

return {
	basic_arguments = basic_arguments,
	numbered_arguments = numbered_arguments,
	limited_basic_arguments = limited_basic_arguments,
	limited_numbered_arguments = limited_numbered_arguments,
	arxiv_basic_arguments = arxiv_basic_arguments,
	biorxiv_basic_arguments = biorxiv_basic_arguments,
	citeseerx_basic_arguments = citeseerx_basic_arguments
};