Wikipedia
hawwiki
https://haw.wikipedia.org/wiki/Ka_papa_kinohi
MediaWiki 1.46.0-wmf.24
first-letter
Pāpaho
Papa nui
Kūkākūkā
Mea hoʻohana
Kūkākūkā o mea hoʻohana
Wikipedia
Kūkākūkā o Wikipikia
Waihona
Kūkākūkā o waihona
MediaWiki
Kūkākūkā o MediaWiki
Anakuhi
Kūkākūkā o anakuhi
Kōkua
Kūkākūkā o kōkua
Māhele
Kūkākūkā o māhele
TimedText
TimedText talk
Module
Module talk
Event
Event talk
Anakuhi:Sfn
10
9868
102912
91439
2026-04-28T17:50:09Z
Nimmzo
21509
{{documentation}} → {{template doc}}
102912
wikitext
text/x-wiki
<includeonly>{{#invoke:Footnotes|sfn}}</includeonly><noinclude>
{{template doc}}
</noinclude>
37v0hnprd5mvztxmmvi2e00s3enityj
B. R. Ambedkar
0
10379
102899
102898
2026-04-28T13:20:13Z
Nimmzo
21509
/* lead section */ +Anakuhi:harvnb /* Nā Kumuwaiwai */ +Anakuhi:Cite book. 1986
102899
wikitext
text/x-wiki
[[File:Dr. Bhimrao Ambedkar.jpg|thumb|right|B. R. Ambedkar]]
'''Bhimrao Ramji Ambedkar''' (14 ʻApelila 1891 - 6 Kekemapa 1956), i kapa ʻia ʻo '''Dr. Babasaheb Ambedkar''', he akeakamai India, jurist, economist, politician a me social reformer. Ua hoʻoikaika ʻo ia i ka neʻe ʻana o ka Buddhist Dalit a neʻe e kūʻē aku i ka hoʻokae kūwaho i nā mea pili ʻole (Dalits). Kākoʻo pū ʻo ia i nā pono o nā wahine a me nā hana. He kūʻokoʻa ʻo ia no ke Kuhina mua mua o ke Kānāwai a me ka Hoʻokolokolo, ka mea hoʻolālā o ke Kumukanawai o India, a me ka makua hoʻokumu o ka Lepupalika ʻo India.<ref>[https://c250.columbia.edu/c250_celebrates/remarkable_columbians/bhimrao_ambedkar.html Bhimrao Ambedkar]</ref><ref>[https://indianexpress.com/article/parenting/learning/ambedkar-jayanti-2019-facts-babasaheb-for-kids-5672744/ Ambedkar Jayanti 2019: Facts on Babasaheb to share with kids | Parenting News, The Indian Express]</ref><ref>{{Cite web |title=How India's Most Downtrodden Embraced the Power of Statues |url=https://www.bloombergquint.com/opinion/in-india-dalits-show-power-of-building-statues |accessdate=2020-11-15 |archive-date=2020-10-26 |archive-url=https://web.archive.org/web/20201026043029/https://www.bloombergquint.com/opinion/in-india-dalits-show-power-of-building-statues |deadurl=yes }}</ref><ref>[https://www.britannica.com/biography/Bhimrao-Ramji-Ambedkar Bhimrao Ramji Ambedkar | Biography, Books, & Facts | Britannica]</ref><ref>[https://www.ndtv.com/india-news/all-you-need-to-know-about-br-ambedkar-on-his-129th-birth-anniversary-2211747 All You Need To Know About BR Ambedkar On His 129th Birth Anniversary]</ref><ref>{{harvnb|Buswell|Lopez|2013|p=34}}</ref>
I 1956, ua hoʻokumu ʻo ia i kahi hoʻohuli lehulehu o Dalits, e hoʻohuli ana i Buddhism me nā mea kākoʻo 600,000. Ua hoʻāla hou ʻo ia i ka Buddhism ma India. Ua manaʻo ʻia ʻo Ambedkar ma ke ʻano he bodhisattva, a me ka Maitreya, i waena o nā Buddhist Navayana.<ref>https://theprint.in/opinion/why-ambedkar-chose-buddhism-over-hinduism-islam-christianity/237599/</ref><ref>https://indianexpress.com/article/explained/buddha-purnima-special-why-ambedkar-coverted-to-buddhism-6397742/</ref><ref>https://www.thequint.com/news/india/br-ambedkar-conversion-to-buddhism</ref><ref>{{harvnb|Queen|Emmanuel|2015|p=529–531}}</ref>
I ka makahiki 1990, ka Bharat Ratna, ka makana kiwila kiʻekiʻe loa o India, i hāʻawi ʻia ma hope iā Ambedkar. ʻO kā Ambedkar hoʻoilina hoʻoilina me nā hoʻomanaʻo hoʻomanaʻo a me nā hōʻike i ka moʻomeheu kaulana. ʻO ka hoʻoilina a Ambedkar ma ke ʻano he reformer socio-politika, kahi hopena hohonu i India hou.<ref>{{harvnb|Joshi|1986|p=11–14}}</ref><ref>{{Cite book |last=Keer |first=D. |url=https://books.google.com/books?id=B-2d6jzRmBQC&pg=PA61 |title=Dr. Ambedkar: Life and Mission |publisher=Popular Prakashan |year=1990 |isbn=9788171542376 |page=61 |archive-url=https://web.archive.org/web/20160730015400/https://books.google.com/books?id=B-2d6jzRmBQC&pg=PA61 |archive-date=30 July 2016 |url-status=live |df=dmy-all}}</ref>
Ua koho ʻia ʻo Ambedkar "ke ʻInikia Nui" (The greatest Indian) i ka makahiki 2012 e kahi balota i hoʻonohonoho ʻia e History TV18 a me CNN IBN.<ref>https://www.outlookindia.com/magazine/story/a-measure-of-the-man/281949</ref>
ʻO Ambedkar Jayanti (ka lā hānau o Ambedkar) kahi hoʻolauleʻa makahiki i hoʻolauleʻa ʻia ma ka 14 ʻApelila, i hoʻolauleʻa ʻia ʻaʻole ma India wale nō akā ma ka honua holoʻokoʻa. Hoʻolauleʻa ʻia ʻo Ambedkar Jayanti ma ke ʻano he lā nui lehulehu ma waena o India.<ref>http://ccis.nic.in/WriteReadData/CircularPortal/D2/D02est/12_6_2015_JCA-2-19032015.pdf {{Webarchive|url=https://web.archive.org/web/20150405042913/http://ccis.nic.in/WriteReadData/CircularPortal/D2/D02est/12_6_2015_JCA-2-19032015.pdf |date=5 April 2015 }} Ambedkar Jayanti from ccis.nic.in on 19 March 2015</ref><ref>http://persmin.gov.in/ Webpage of Ministry of Personnel and Public Grievance & Pension</ref><ref>[http://mea.gov.in/ambedkar-final/mcelebration.htm 125th Dr. Ambedkar Birthday Celebrations Around the World.] mea.gov.in</ref> Ua hoʻolauleʻa ka United Nations iā Ambedkar Jayanti ma 2016, 2017 a me 2018.<ref>{{Cite web |last=Mitra |first=Shreerupa |url=https://www.firstpost.com/world/ambedkar-jayanti-celebrated-for-the-first-time-outside-india-as-un-organises-special-event-2730772.html |title=Ambedkar Jayanti celebrated for the first time outside India as UN organises special event |language=en |website=Firstpost |accessdate=2026-04-27}}</ref><ref>{{Cite news|url=http://www.newindianexpress.com/world/2018/apr/14/un-celebrates-ambedkars-legacy-fighting-inequality-inspiring-inclusion-1801468.html|title=UN celebrates Ambedkar's legacy 'fighting inequality, inspiring inclusion'|work=The New Indian Express|accessdate=2018-11-09}}</ref><ref>{{Cite news|url=https://www.newsstate.com/world-news/babasaheb-ambedkar-jayanti-celebrated-in-united-nations-article-52584.html|title=संयुक्त राष्ट्र में मनाई गई डॉ. बाबासाहेब भीमराव आंबेडकर जयंती |work=newsstate.com |language=en |accessdate=2020-11-15|archive-date=2019-04-19|archive-url=https://web.archive.org/web/20190419065326/https://www.newsstate.com/world-news/babasaheb-ambedkar-jayanti-celebrated-in-united-nations-article-52584.html|deadurl=yes}}</ref>
== Nā kūmole ==
{{papakūmole}}
== Nā Kumuwaiwai ==
* {{Cite book. |last=Joshi |first=Barbara R. |url=https://books.google.com/books?id=y9CUItMT1zQC&pg=PA13 |title=Untouchable!: Voices of the Dalit Liberation Movement |publisher=Zed Books |year=1986 |isbn=9780862324605 |ref=harv}}
* {{Cite book. |editor-last1=Buswell |editor-first1=Robert Jr |editor-last2=Lopez |editor-first2=Donald S. Jr. |title=Princeton Dictionary of Buddhism |date=2013 |publisher=Princeton University Press |isbn=9780691157863 |location=Princeton, NJ |ref=harv}}
* {{cite book. |last1=Queen |first1=Christopher |last2=Emmanuel |first2=Steven M. |title=A Companion to Buddhist Philosophy |url=https://books.google.com/books?id=P_lmCgAAQBAJ |year=2015 |publisher=John Wiley & Sons |isbn=978-1-119-14466-3 |ref=harv}}
m82y7qtg5fwydla6ysig52o3wl5mfjk
102900
102899
2026-04-28T13:30:12Z
Nimmzo
21509
/* lead section */ +Anakuhi:harvnb /* Nā Kumuwaiwai */ +Anakuhi:Cite book. 1990
102900
wikitext
text/x-wiki
[[File:Dr. Bhimrao Ambedkar.jpg|thumb|right|B. R. Ambedkar]]
'''Bhimrao Ramji Ambedkar''' (14 ʻApelila 1891 - 6 Kekemapa 1956), i kapa ʻia ʻo '''Dr. Babasaheb Ambedkar''', he akeakamai India, jurist, economist, politician a me social reformer. Ua hoʻoikaika ʻo ia i ka neʻe ʻana o ka Buddhist Dalit a neʻe e kūʻē aku i ka hoʻokae kūwaho i nā mea pili ʻole (Dalits). Kākoʻo pū ʻo ia i nā pono o nā wahine a me nā hana. He kūʻokoʻa ʻo ia no ke Kuhina mua mua o ke Kānāwai a me ka Hoʻokolokolo, ka mea hoʻolālā o ke Kumukanawai o India, a me ka makua hoʻokumu o ka Lepupalika ʻo India.<ref>[https://c250.columbia.edu/c250_celebrates/remarkable_columbians/bhimrao_ambedkar.html Bhimrao Ambedkar]</ref><ref>[https://indianexpress.com/article/parenting/learning/ambedkar-jayanti-2019-facts-babasaheb-for-kids-5672744/ Ambedkar Jayanti 2019: Facts on Babasaheb to share with kids | Parenting News, The Indian Express]</ref><ref>{{Cite web |title=How India's Most Downtrodden Embraced the Power of Statues |url=https://www.bloombergquint.com/opinion/in-india-dalits-show-power-of-building-statues |accessdate=2020-11-15 |archive-date=2020-10-26 |archive-url=https://web.archive.org/web/20201026043029/https://www.bloombergquint.com/opinion/in-india-dalits-show-power-of-building-statues |deadurl=yes }}</ref><ref>[https://www.britannica.com/biography/Bhimrao-Ramji-Ambedkar Bhimrao Ramji Ambedkar | Biography, Books, & Facts | Britannica]</ref><ref>[https://www.ndtv.com/india-news/all-you-need-to-know-about-br-ambedkar-on-his-129th-birth-anniversary-2211747 All You Need To Know About BR Ambedkar On His 129th Birth Anniversary]</ref><ref>{{harvnb|Buswell|Lopez|2013|p=34}}</ref>
I 1956, ua hoʻokumu ʻo ia i kahi hoʻohuli lehulehu o Dalits, e hoʻohuli ana i Buddhism me nā mea kākoʻo 600,000. Ua hoʻāla hou ʻo ia i ka Buddhism ma India. Ua manaʻo ʻia ʻo Ambedkar ma ke ʻano he bodhisattva, a me ka Maitreya, i waena o nā Buddhist Navayana.<ref>https://theprint.in/opinion/why-ambedkar-chose-buddhism-over-hinduism-islam-christianity/237599/</ref><ref>https://indianexpress.com/article/explained/buddha-purnima-special-why-ambedkar-coverted-to-buddhism-6397742/</ref><ref>https://www.thequint.com/news/india/br-ambedkar-conversion-to-buddhism</ref><ref>{{harvnb|Queen|Emmanuel|2015|p=529–531}}</ref>
I ka makahiki 1990, ka Bharat Ratna, ka makana kiwila kiʻekiʻe loa o India, i hāʻawi ʻia ma hope iā Ambedkar. ʻO kā Ambedkar hoʻoilina hoʻoilina me nā hoʻomanaʻo hoʻomanaʻo a me nā hōʻike i ka moʻomeheu kaulana. ʻO ka hoʻoilina a Ambedkar ma ke ʻano he reformer socio-politika, kahi hopena hohonu i India hou.<ref>{{harvnb|Joshi|1986|p=11–14}}</ref><ref>{{harvnb|Keer|1990|p=61}}</ref>
Ua koho ʻia ʻo Ambedkar "ke ʻInikia Nui" (The greatest Indian) i ka makahiki 2012 e kahi balota i hoʻonohonoho ʻia e History TV18 a me CNN IBN.<ref>https://www.outlookindia.com/magazine/story/a-measure-of-the-man/281949</ref>
ʻO Ambedkar Jayanti (ka lā hānau o Ambedkar) kahi hoʻolauleʻa makahiki i hoʻolauleʻa ʻia ma ka 14 ʻApelila, i hoʻolauleʻa ʻia ʻaʻole ma India wale nō akā ma ka honua holoʻokoʻa. Hoʻolauleʻa ʻia ʻo Ambedkar Jayanti ma ke ʻano he lā nui lehulehu ma waena o India.<ref>http://ccis.nic.in/WriteReadData/CircularPortal/D2/D02est/12_6_2015_JCA-2-19032015.pdf {{Webarchive|url=https://web.archive.org/web/20150405042913/http://ccis.nic.in/WriteReadData/CircularPortal/D2/D02est/12_6_2015_JCA-2-19032015.pdf |date=5 April 2015 }} Ambedkar Jayanti from ccis.nic.in on 19 March 2015</ref><ref>http://persmin.gov.in/ Webpage of Ministry of Personnel and Public Grievance & Pension</ref><ref>[http://mea.gov.in/ambedkar-final/mcelebration.htm 125th Dr. Ambedkar Birthday Celebrations Around the World.] mea.gov.in</ref> Ua hoʻolauleʻa ka United Nations iā Ambedkar Jayanti ma 2016, 2017 a me 2018.<ref>{{Cite web |last=Mitra |first=Shreerupa |url=https://www.firstpost.com/world/ambedkar-jayanti-celebrated-for-the-first-time-outside-india-as-un-organises-special-event-2730772.html |title=Ambedkar Jayanti celebrated for the first time outside India as UN organises special event |language=en |website=Firstpost |accessdate=2026-04-27}}</ref><ref>{{Cite news|url=http://www.newindianexpress.com/world/2018/apr/14/un-celebrates-ambedkars-legacy-fighting-inequality-inspiring-inclusion-1801468.html|title=UN celebrates Ambedkar's legacy 'fighting inequality, inspiring inclusion'|work=The New Indian Express|accessdate=2018-11-09}}</ref><ref>{{Cite news|url=https://www.newsstate.com/world-news/babasaheb-ambedkar-jayanti-celebrated-in-united-nations-article-52584.html|title=संयुक्त राष्ट्र में मनाई गई डॉ. बाबासाहेब भीमराव आंबेडकर जयंती |work=newsstate.com |language=en |accessdate=2020-11-15|archive-date=2019-04-19|archive-url=https://web.archive.org/web/20190419065326/https://www.newsstate.com/world-news/babasaheb-ambedkar-jayanti-celebrated-in-united-nations-article-52584.html|deadurl=yes}}</ref>
== Nā kūmole ==
{{papakūmole}}
== Nā Kumuwaiwai ==
* {{Cite book. |last=Joshi |first=Barbara R. |url=https://books.google.com/books?id=y9CUItMT1zQC&pg=PA13 |title=Untouchable!: Voices of the Dalit Liberation Movement |publisher=Zed Books |year=1986 |isbn=9780862324605 |ref=harv}}
* {{Cite book. |last=Keer |first=D. |url=https://books.google.com/books?id=B-2d6jzRmBQC&pg=PA61 |title=Dr. Ambedkar: Life and Mission |publisher=Popular Prakashan |year=1990 |isbn=9788171542376 |ref=harv}}
* {{Cite book. |editor-last1=Buswell |editor-first1=Robert Jr |editor-last2=Lopez |editor-first2=Donald S. Jr. |title=Princeton Dictionary of Buddhism |date=2013 |publisher=Princeton University Press |isbn=9780691157863 |location=Princeton, NJ |ref=harv}}
* {{cite book. |last1=Queen |first1=Christopher |last2=Emmanuel |first2=Steven M. |title=A Companion to Buddhist Philosophy |url=https://books.google.com/books?id=P_lmCgAAQBAJ |year=2015 |publisher=John Wiley & Sons |isbn=978-1-119-14466-3 |ref=harv}}
9dtyudwvq5060ojyyj6z3gh0p6khe8v
102901
102900
2026-04-28T13:50:04Z
Nimmzo
21509
/* lead section */ Normalize ref with [[Anakuhi:Cite web]]
102901
wikitext
text/x-wiki
[[File:Dr. Bhimrao Ambedkar.jpg|thumb|right|B. R. Ambedkar]]
'''Bhimrao Ramji Ambedkar''' (14 ʻApelila 1891 - 6 Kekemapa 1956), i kapa ʻia ʻo '''Dr. Babasaheb Ambedkar''', he akeakamai India, jurist, economist, politician a me social reformer. Ua hoʻoikaika ʻo ia i ka neʻe ʻana o ka Buddhist Dalit a neʻe e kūʻē aku i ka hoʻokae kūwaho i nā mea pili ʻole (Dalits). Kākoʻo pū ʻo ia i nā pono o nā wahine a me nā hana. He kūʻokoʻa ʻo ia no ke Kuhina mua mua o ke Kānāwai a me ka Hoʻokolokolo, ka mea hoʻolālā o ke Kumukanawai o India, a me ka makua hoʻokumu o ka Lepupalika ʻo India.<ref>{{Cite web |title=C250 Celebrates Columbias ahead of their times. Bhimrao Ambedkar |language=en |url=https://c250.columbia.edu/c250_celebrates/remarkable_columbians/bhimrao_ambedkar.html |website=Columbia University |accessdate=2026-04-28}}</ref><ref>[https://indianexpress.com/article/parenting/learning/ambedkar-jayanti-2019-facts-babasaheb-for-kids-5672744/ Ambedkar Jayanti 2019: Facts on Babasaheb to share with kids | Parenting News, The Indian Express]</ref><ref>{{Cite web |title=How India's Most Downtrodden Embraced the Power of Statues |url=https://www.bloombergquint.com/opinion/in-india-dalits-show-power-of-building-statues |accessdate=2020-11-15 |archive-date=2020-10-26 |archive-url=https://web.archive.org/web/20201026043029/https://www.bloombergquint.com/opinion/in-india-dalits-show-power-of-building-statues |deadurl=yes }}</ref><ref>[https://www.britannica.com/biography/Bhimrao-Ramji-Ambedkar Bhimrao Ramji Ambedkar | Biography, Books, & Facts | Britannica]</ref><ref>[https://www.ndtv.com/india-news/all-you-need-to-know-about-br-ambedkar-on-his-129th-birth-anniversary-2211747 All You Need To Know About BR Ambedkar On His 129th Birth Anniversary]</ref><ref>{{harvnb|Buswell|Lopez|2013|p=34}}</ref>
I 1956, ua hoʻokumu ʻo ia i kahi hoʻohuli lehulehu o Dalits, e hoʻohuli ana i Buddhism me nā mea kākoʻo 600,000. Ua hoʻāla hou ʻo ia i ka Buddhism ma India. Ua manaʻo ʻia ʻo Ambedkar ma ke ʻano he bodhisattva, a me ka Maitreya, i waena o nā Buddhist Navayana.<ref>https://theprint.in/opinion/why-ambedkar-chose-buddhism-over-hinduism-islam-christianity/237599/</ref><ref>https://indianexpress.com/article/explained/buddha-purnima-special-why-ambedkar-coverted-to-buddhism-6397742/</ref><ref>https://www.thequint.com/news/india/br-ambedkar-conversion-to-buddhism</ref><ref>{{harvnb|Queen|Emmanuel|2015|p=529–531}}</ref>
I ka makahiki 1990, ka Bharat Ratna, ka makana kiwila kiʻekiʻe loa o India, i hāʻawi ʻia ma hope iā Ambedkar. ʻO kā Ambedkar hoʻoilina hoʻoilina me nā hoʻomanaʻo hoʻomanaʻo a me nā hōʻike i ka moʻomeheu kaulana. ʻO ka hoʻoilina a Ambedkar ma ke ʻano he reformer socio-politika, kahi hopena hohonu i India hou.<ref>{{harvnb|Joshi|1986|p=11–14}}</ref><ref>{{harvnb|Keer|1990|p=61}}</ref>
Ua koho ʻia ʻo Ambedkar "ke ʻInikia Nui" (The greatest Indian) i ka makahiki 2012 e kahi balota i hoʻonohonoho ʻia e History TV18 a me CNN IBN.<ref>https://www.outlookindia.com/magazine/story/a-measure-of-the-man/281949</ref>
ʻO Ambedkar Jayanti (ka lā hānau o Ambedkar) kahi hoʻolauleʻa makahiki i hoʻolauleʻa ʻia ma ka 14 ʻApelila, i hoʻolauleʻa ʻia ʻaʻole ma India wale nō akā ma ka honua holoʻokoʻa. Hoʻolauleʻa ʻia ʻo Ambedkar Jayanti ma ke ʻano he lā nui lehulehu ma waena o India.<ref>http://ccis.nic.in/WriteReadData/CircularPortal/D2/D02est/12_6_2015_JCA-2-19032015.pdf {{Webarchive|url=https://web.archive.org/web/20150405042913/http://ccis.nic.in/WriteReadData/CircularPortal/D2/D02est/12_6_2015_JCA-2-19032015.pdf |date=5 April 2015 }} Ambedkar Jayanti from ccis.nic.in on 19 March 2015</ref><ref>http://persmin.gov.in/ Webpage of Ministry of Personnel and Public Grievance & Pension</ref><ref>[http://mea.gov.in/ambedkar-final/mcelebration.htm 125th Dr. Ambedkar Birthday Celebrations Around the World.] mea.gov.in</ref> Ua hoʻolauleʻa ka United Nations iā Ambedkar Jayanti ma 2016, 2017 a me 2018.<ref>{{Cite web |last=Mitra |first=Shreerupa |url=https://www.firstpost.com/world/ambedkar-jayanti-celebrated-for-the-first-time-outside-india-as-un-organises-special-event-2730772.html |title=Ambedkar Jayanti celebrated for the first time outside India as UN organises special event |language=en |website=Firstpost |accessdate=2026-04-27}}</ref><ref>{{Cite news|url=http://www.newindianexpress.com/world/2018/apr/14/un-celebrates-ambedkars-legacy-fighting-inequality-inspiring-inclusion-1801468.html|title=UN celebrates Ambedkar's legacy 'fighting inequality, inspiring inclusion'|work=The New Indian Express|accessdate=2018-11-09}}</ref><ref>{{Cite news|url=https://www.newsstate.com/world-news/babasaheb-ambedkar-jayanti-celebrated-in-united-nations-article-52584.html|title=संयुक्त राष्ट्र में मनाई गई डॉ. बाबासाहेब भीमराव आंबेडकर जयंती |work=newsstate.com |language=en |accessdate=2020-11-15|archive-date=2019-04-19|archive-url=https://web.archive.org/web/20190419065326/https://www.newsstate.com/world-news/babasaheb-ambedkar-jayanti-celebrated-in-united-nations-article-52584.html|deadurl=yes}}</ref>
== Nā kūmole ==
{{papakūmole}}
== Nā Kumuwaiwai ==
* {{Cite book. |last=Joshi |first=Barbara R. |url=https://books.google.com/books?id=y9CUItMT1zQC&pg=PA13 |title=Untouchable!: Voices of the Dalit Liberation Movement |publisher=Zed Books |year=1986 |isbn=9780862324605 |ref=harv}}
* {{Cite book. |last=Keer |first=D. |url=https://books.google.com/books?id=B-2d6jzRmBQC&pg=PA61 |title=Dr. Ambedkar: Life and Mission |publisher=Popular Prakashan |year=1990 |isbn=9788171542376 |ref=harv}}
* {{Cite book. |editor-last1=Buswell |editor-first1=Robert Jr |editor-last2=Lopez |editor-first2=Donald S. Jr. |title=Princeton Dictionary of Buddhism |date=2013 |publisher=Princeton University Press |isbn=9780691157863 |location=Princeton, NJ |ref=harv}}
* {{cite book. |last1=Queen |first1=Christopher |last2=Emmanuel |first2=Steven M. |title=A Companion to Buddhist Philosophy |url=https://books.google.com/books?id=P_lmCgAAQBAJ |year=2015 |publisher=John Wiley & Sons |isbn=978-1-119-14466-3 |ref=harv}}
5yb7wuzlidk76gusr3nfk7etmjuj3ew
102907
102901
2026-04-28T15:30:17Z
Nimmzo
21509
/* lead section */ Introducing the very first Short FootNote [[Anakuhi:Sfn]] optimizing Harvard citation no bracket. Sfn is the Short version of [[Anakuhi:harvnb]] without opening <ref> and closing </ref> tags
102907
wikitext
text/x-wiki
[[File:Dr. Bhimrao Ambedkar.jpg|thumb|right|B. R. Ambedkar]]
'''Bhimrao Ramji Ambedkar''' (14 ʻApelila 1891 - 6 Kekemapa 1956), i kapa ʻia ʻo '''Dr. Babasaheb Ambedkar''', he akeakamai India, jurist, economist, politician a me social reformer. Ua hoʻoikaika ʻo ia i ka neʻe ʻana o ka Buddhist Dalit a neʻe e kūʻē aku i ka hoʻokae kūwaho i nā mea pili ʻole (Dalits). Kākoʻo pū ʻo ia i nā pono o nā wahine a me nā hana. He kūʻokoʻa ʻo ia no ke Kuhina mua mua o ke Kānāwai a me ka Hoʻokolokolo, ka mea hoʻolālā o ke Kumukanawai o India, a me ka makua hoʻokumu o ka Lepupalika ʻo India.<ref>{{Cite web |title=C250 Celebrates Columbias ahead of their times. Bhimrao Ambedkar |language=en |url=https://c250.columbia.edu/c250_celebrates/remarkable_columbians/bhimrao_ambedkar.html |website=Columbia University |accessdate=2026-04-28}}</ref><ref>[https://indianexpress.com/article/parenting/learning/ambedkar-jayanti-2019-facts-babasaheb-for-kids-5672744/ Ambedkar Jayanti 2019: Facts on Babasaheb to share with kids | Parenting News, The Indian Express]</ref><ref>{{Cite web |title=How India's Most Downtrodden Embraced the Power of Statues |url=https://www.bloombergquint.com/opinion/in-india-dalits-show-power-of-building-statues |accessdate=2020-11-15 |archive-date=2020-10-26 |archive-url=https://web.archive.org/web/20201026043029/https://www.bloombergquint.com/opinion/in-india-dalits-show-power-of-building-statues |deadurl=yes }}</ref><ref>[https://www.britannica.com/biography/Bhimrao-Ramji-Ambedkar Bhimrao Ramji Ambedkar | Biography, Books, & Facts | Britannica]</ref><ref>[https://www.ndtv.com/india-news/all-you-need-to-know-about-br-ambedkar-on-his-129th-birth-anniversary-2211747 All You Need To Know About BR Ambedkar On His 129th Birth Anniversary]</ref>{{sfn|Buswell|Lopez|2013|p=34}}
I 1956, ua hoʻokumu ʻo ia i kahi hoʻohuli lehulehu o Dalits, e hoʻohuli ana i Buddhism me nā mea kākoʻo 600,000. Ua hoʻāla hou ʻo ia i ka Buddhism ma India. Ua manaʻo ʻia ʻo Ambedkar ma ke ʻano he bodhisattva, a me ka Maitreya, i waena o nā Buddhist Navayana.<ref>https://theprint.in/opinion/why-ambedkar-chose-buddhism-over-hinduism-islam-christianity/237599/</ref><ref>https://indianexpress.com/article/explained/buddha-purnima-special-why-ambedkar-coverted-to-buddhism-6397742/</ref><ref>https://www.thequint.com/news/india/br-ambedkar-conversion-to-buddhism</ref><ref>{{harvnb|Queen|Emmanuel|2015|p=529–531}}</ref>
I ka makahiki 1990, ka Bharat Ratna, ka makana kiwila kiʻekiʻe loa o India, i hāʻawi ʻia ma hope iā Ambedkar. ʻO kā Ambedkar hoʻoilina hoʻoilina me nā hoʻomanaʻo hoʻomanaʻo a me nā hōʻike i ka moʻomeheu kaulana. ʻO ka hoʻoilina a Ambedkar ma ke ʻano he reformer socio-politika, kahi hopena hohonu i India hou.<ref>{{harvnb|Joshi|1986|p=11–14}}</ref><ref>{{harvnb|Keer|1990|p=61}}</ref>
Ua koho ʻia ʻo Ambedkar "ke ʻInikia Nui" (The greatest Indian) i ka makahiki 2012 e kahi balota i hoʻonohonoho ʻia e History TV18 a me CNN IBN.<ref>https://www.outlookindia.com/magazine/story/a-measure-of-the-man/281949</ref>
ʻO Ambedkar Jayanti (ka lā hānau o Ambedkar) kahi hoʻolauleʻa makahiki i hoʻolauleʻa ʻia ma ka 14 ʻApelila, i hoʻolauleʻa ʻia ʻaʻole ma India wale nō akā ma ka honua holoʻokoʻa. Hoʻolauleʻa ʻia ʻo Ambedkar Jayanti ma ke ʻano he lā nui lehulehu ma waena o India.<ref>http://ccis.nic.in/WriteReadData/CircularPortal/D2/D02est/12_6_2015_JCA-2-19032015.pdf {{Webarchive|url=https://web.archive.org/web/20150405042913/http://ccis.nic.in/WriteReadData/CircularPortal/D2/D02est/12_6_2015_JCA-2-19032015.pdf |date=5 April 2015 }} Ambedkar Jayanti from ccis.nic.in on 19 March 2015</ref><ref>http://persmin.gov.in/ Webpage of Ministry of Personnel and Public Grievance & Pension</ref><ref>[http://mea.gov.in/ambedkar-final/mcelebration.htm 125th Dr. Ambedkar Birthday Celebrations Around the World.] mea.gov.in</ref> Ua hoʻolauleʻa ka United Nations iā Ambedkar Jayanti ma 2016, 2017 a me 2018.<ref>{{Cite web |last=Mitra |first=Shreerupa |url=https://www.firstpost.com/world/ambedkar-jayanti-celebrated-for-the-first-time-outside-india-as-un-organises-special-event-2730772.html |title=Ambedkar Jayanti celebrated for the first time outside India as UN organises special event |language=en |website=Firstpost |accessdate=2026-04-27}}</ref><ref>{{Cite news|url=http://www.newindianexpress.com/world/2018/apr/14/un-celebrates-ambedkars-legacy-fighting-inequality-inspiring-inclusion-1801468.html|title=UN celebrates Ambedkar's legacy 'fighting inequality, inspiring inclusion'|work=The New Indian Express|accessdate=2018-11-09}}</ref><ref>{{Cite news|url=https://www.newsstate.com/world-news/babasaheb-ambedkar-jayanti-celebrated-in-united-nations-article-52584.html|title=संयुक्त राष्ट्र में मनाई गई डॉ. बाबासाहेब भीमराव आंबेडकर जयंती |work=newsstate.com |language=en |accessdate=2020-11-15|archive-date=2019-04-19|archive-url=https://web.archive.org/web/20190419065326/https://www.newsstate.com/world-news/babasaheb-ambedkar-jayanti-celebrated-in-united-nations-article-52584.html|deadurl=yes}}</ref>
== Nā kūmole ==
{{papakūmole}}
== Nā Kumuwaiwai ==
* {{Cite book. |last=Joshi |first=Barbara R. |url=https://books.google.com/books?id=y9CUItMT1zQC&pg=PA13 |title=Untouchable!: Voices of the Dalit Liberation Movement |publisher=Zed Books |year=1986 |isbn=9780862324605 |ref=harv}}
* {{Cite book. |last=Keer |first=D. |url=https://books.google.com/books?id=B-2d6jzRmBQC&pg=PA61 |title=Dr. Ambedkar: Life and Mission |publisher=Popular Prakashan |year=1990 |isbn=9788171542376 |ref=harv}}
* {{Cite book. |editor-last1=Buswell |editor-first1=Robert Jr |editor-last2=Lopez |editor-first2=Donald S. Jr. |title=Princeton Dictionary of Buddhism |date=2013 |publisher=Princeton University Press |isbn=9780691157863 |location=Princeton, NJ |ref=harv}}
* {{cite book. |last1=Queen |first1=Christopher |last2=Emmanuel |first2=Steven M. |title=A Companion to Buddhist Philosophy |url=https://books.google.com/books?id=P_lmCgAAQBAJ |year=2015 |publisher=John Wiley & Sons |isbn=978-1-119-14466-3 |ref=harv}}
en4x8eimzpew52gfyg1jdbvv9c4f71s
102908
102907
2026-04-28T16:10:22Z
Nimmzo
21509
/* lead section */ +Sfn: After "Navayana.", click on [10] to hyperlink to /* Nā kūmole */ 10. ↑ Queen & Emmanuel 2015, p. 529–531. Click on the name of an author to hyperlink to /* Nā Kumuwaiwai */ To Do: the book should be highlighted with a blue light background. To return to each caller, press twice Alt + ← Left arrow in browser Edge or Chome.
102908
wikitext
text/x-wiki
[[File:Dr. Bhimrao Ambedkar.jpg|thumb|right|B. R. Ambedkar]]
'''Bhimrao Ramji Ambedkar''' (14 ʻApelila 1891 - 6 Kekemapa 1956), i kapa ʻia ʻo '''Dr. Babasaheb Ambedkar''', he akeakamai India, jurist, economist, politician a me social reformer. Ua hoʻoikaika ʻo ia i ka neʻe ʻana o ka Buddhist Dalit a neʻe e kūʻē aku i ka hoʻokae kūwaho i nā mea pili ʻole (Dalits). Kākoʻo pū ʻo ia i nā pono o nā wahine a me nā hana. He kūʻokoʻa ʻo ia no ke Kuhina mua mua o ke Kānāwai a me ka Hoʻokolokolo, ka mea hoʻolālā o ke Kumukanawai o India, a me ka makua hoʻokumu o ka Lepupalika ʻo India.<ref>{{Cite web |title=C250 Celebrates Columbias ahead of their times. Bhimrao Ambedkar |language=en |url=https://c250.columbia.edu/c250_celebrates/remarkable_columbians/bhimrao_ambedkar.html |website=Columbia University |accessdate=2026-04-28}}</ref><ref>[https://indianexpress.com/article/parenting/learning/ambedkar-jayanti-2019-facts-babasaheb-for-kids-5672744/ Ambedkar Jayanti 2019: Facts on Babasaheb to share with kids | Parenting News, The Indian Express]</ref><ref>{{Cite web |title=How India's Most Downtrodden Embraced the Power of Statues |url=https://www.bloombergquint.com/opinion/in-india-dalits-show-power-of-building-statues |accessdate=2020-11-15 |archive-date=2020-10-26 |archive-url=https://web.archive.org/web/20201026043029/https://www.bloombergquint.com/opinion/in-india-dalits-show-power-of-building-statues |deadurl=yes }}</ref><ref>[https://www.britannica.com/biography/Bhimrao-Ramji-Ambedkar Bhimrao Ramji Ambedkar | Biography, Books, & Facts | Britannica]</ref><ref>[https://www.ndtv.com/india-news/all-you-need-to-know-about-br-ambedkar-on-his-129th-birth-anniversary-2211747 All You Need To Know About BR Ambedkar On His 129th Birth Anniversary]</ref>{{sfn|Buswell|Lopez|2013|p=34}}
I 1956, ua hoʻokumu ʻo ia i kahi hoʻohuli lehulehu o Dalits, e hoʻohuli ana i Buddhism me nā mea kākoʻo 600,000. Ua hoʻāla hou ʻo ia i ka Buddhism ma India. Ua manaʻo ʻia ʻo Ambedkar ma ke ʻano he bodhisattva, a me ka Maitreya, i waena o nā Buddhist Navayana.<ref>https://theprint.in/opinion/why-ambedkar-chose-buddhism-over-hinduism-islam-christianity/237599/</ref><ref>https://indianexpress.com/article/explained/buddha-purnima-special-why-ambedkar-coverted-to-buddhism-6397742/</ref><ref>https://www.thequint.com/news/india/br-ambedkar-conversion-to-buddhism</ref>{{sfn|Queen|Emmanuel|2015|p=529–531}}
I ka makahiki 1990, ka Bharat Ratna, ka makana kiwila kiʻekiʻe loa o India, i hāʻawi ʻia ma hope iā Ambedkar. ʻO kā Ambedkar hoʻoilina hoʻoilina me nā hoʻomanaʻo hoʻomanaʻo a me nā hōʻike i ka moʻomeheu kaulana. ʻO ka hoʻoilina a Ambedkar ma ke ʻano he reformer socio-politika, kahi hopena hohonu i India hou.<ref>{{harvnb|Joshi|1986|p=11–14}}</ref><ref>{{harvnb|Keer|1990|p=61}}</ref>
Ua koho ʻia ʻo Ambedkar "ke ʻInikia Nui" (The greatest Indian) i ka makahiki 2012 e kahi balota i hoʻonohonoho ʻia e History TV18 a me CNN IBN.<ref>https://www.outlookindia.com/magazine/story/a-measure-of-the-man/281949</ref>
ʻO Ambedkar Jayanti (ka lā hānau o Ambedkar) kahi hoʻolauleʻa makahiki i hoʻolauleʻa ʻia ma ka 14 ʻApelila, i hoʻolauleʻa ʻia ʻaʻole ma India wale nō akā ma ka honua holoʻokoʻa. Hoʻolauleʻa ʻia ʻo Ambedkar Jayanti ma ke ʻano he lā nui lehulehu ma waena o India.<ref>http://ccis.nic.in/WriteReadData/CircularPortal/D2/D02est/12_6_2015_JCA-2-19032015.pdf {{Webarchive|url=https://web.archive.org/web/20150405042913/http://ccis.nic.in/WriteReadData/CircularPortal/D2/D02est/12_6_2015_JCA-2-19032015.pdf |date=5 April 2015 }} Ambedkar Jayanti from ccis.nic.in on 19 March 2015</ref><ref>http://persmin.gov.in/ Webpage of Ministry of Personnel and Public Grievance & Pension</ref><ref>[http://mea.gov.in/ambedkar-final/mcelebration.htm 125th Dr. Ambedkar Birthday Celebrations Around the World.] mea.gov.in</ref> Ua hoʻolauleʻa ka United Nations iā Ambedkar Jayanti ma 2016, 2017 a me 2018.<ref>{{Cite web |last=Mitra |first=Shreerupa |url=https://www.firstpost.com/world/ambedkar-jayanti-celebrated-for-the-first-time-outside-india-as-un-organises-special-event-2730772.html |title=Ambedkar Jayanti celebrated for the first time outside India as UN organises special event |language=en |website=Firstpost |accessdate=2026-04-27}}</ref><ref>{{Cite news|url=http://www.newindianexpress.com/world/2018/apr/14/un-celebrates-ambedkars-legacy-fighting-inequality-inspiring-inclusion-1801468.html|title=UN celebrates Ambedkar's legacy 'fighting inequality, inspiring inclusion'|work=The New Indian Express|accessdate=2018-11-09}}</ref><ref>{{Cite news|url=https://www.newsstate.com/world-news/babasaheb-ambedkar-jayanti-celebrated-in-united-nations-article-52584.html|title=संयुक्त राष्ट्र में मनाई गई डॉ. बाबासाहेब भीमराव आंबेडकर जयंती |work=newsstate.com |language=en |accessdate=2020-11-15|archive-date=2019-04-19|archive-url=https://web.archive.org/web/20190419065326/https://www.newsstate.com/world-news/babasaheb-ambedkar-jayanti-celebrated-in-united-nations-article-52584.html|deadurl=yes}}</ref>
== Nā kūmole ==
{{papakūmole}}
== Nā Kumuwaiwai ==
* {{Cite book. |last=Joshi |first=Barbara R. |url=https://books.google.com/books?id=y9CUItMT1zQC&pg=PA13 |title=Untouchable!: Voices of the Dalit Liberation Movement |publisher=Zed Books |year=1986 |isbn=9780862324605 |ref=harv}}
* {{Cite book. |last=Keer |first=D. |url=https://books.google.com/books?id=B-2d6jzRmBQC&pg=PA61 |title=Dr. Ambedkar: Life and Mission |publisher=Popular Prakashan |year=1990 |isbn=9788171542376 |ref=harv}}
* {{Cite book. |editor-last1=Buswell |editor-first1=Robert Jr |editor-last2=Lopez |editor-first2=Donald S. Jr. |title=Princeton Dictionary of Buddhism |date=2013 |publisher=Princeton University Press |isbn=9780691157863 |location=Princeton, NJ |ref=harv}}
* {{cite book. |last1=Queen |first1=Christopher |last2=Emmanuel |first2=Steven M. |title=A Companion to Buddhist Philosophy |url=https://books.google.com/books?id=P_lmCgAAQBAJ |year=2015 |publisher=John Wiley & Sons |isbn=978-1-119-14466-3 |ref=harv}}
6r7a046k8wyxj2eknjouym7e0q2ckr0
102909
102908
2026-04-28T16:20:17Z
Nimmzo
21509
/* lead section */ +2 Sfn. Short FootNote [[Anakuhi:Sfn]] generates at the end of the hyperlink the HTML anchor "#CITEREF" + Author + Year. [[Anakuhi:Cite book.]] associates this HTML anchor to the book if the last parameter of the cite book. is |ref=harv standing for Harvard citation. From this Revision history, click on [[B. R. Ambedkar#CITEREFQueenEmmanuel2015]] to open the Ambedkar's wiki page to the last book of /* Nā Kumuwaiwai */
102909
wikitext
text/x-wiki
[[File:Dr. Bhimrao Ambedkar.jpg|thumb|right|B. R. Ambedkar]]
'''Bhimrao Ramji Ambedkar''' (14 ʻApelila 1891 - 6 Kekemapa 1956), i kapa ʻia ʻo '''Dr. Babasaheb Ambedkar''', he akeakamai India, jurist, economist, politician a me social reformer. Ua hoʻoikaika ʻo ia i ka neʻe ʻana o ka Buddhist Dalit a neʻe e kūʻē aku i ka hoʻokae kūwaho i nā mea pili ʻole (Dalits). Kākoʻo pū ʻo ia i nā pono o nā wahine a me nā hana. He kūʻokoʻa ʻo ia no ke Kuhina mua mua o ke Kānāwai a me ka Hoʻokolokolo, ka mea hoʻolālā o ke Kumukanawai o India, a me ka makua hoʻokumu o ka Lepupalika ʻo India.<ref>{{Cite web |title=C250 Celebrates Columbias ahead of their times. Bhimrao Ambedkar |language=en |url=https://c250.columbia.edu/c250_celebrates/remarkable_columbians/bhimrao_ambedkar.html |website=Columbia University |accessdate=2026-04-28}}</ref><ref>[https://indianexpress.com/article/parenting/learning/ambedkar-jayanti-2019-facts-babasaheb-for-kids-5672744/ Ambedkar Jayanti 2019: Facts on Babasaheb to share with kids | Parenting News, The Indian Express]</ref><ref>{{Cite web |title=How India's Most Downtrodden Embraced the Power of Statues |url=https://www.bloombergquint.com/opinion/in-india-dalits-show-power-of-building-statues |accessdate=2020-11-15 |archive-date=2020-10-26 |archive-url=https://web.archive.org/web/20201026043029/https://www.bloombergquint.com/opinion/in-india-dalits-show-power-of-building-statues |deadurl=yes }}</ref><ref>[https://www.britannica.com/biography/Bhimrao-Ramji-Ambedkar Bhimrao Ramji Ambedkar | Biography, Books, & Facts | Britannica]</ref><ref>[https://www.ndtv.com/india-news/all-you-need-to-know-about-br-ambedkar-on-his-129th-birth-anniversary-2211747 All You Need To Know About BR Ambedkar On His 129th Birth Anniversary]</ref>{{sfn|Buswell|Lopez|2013|p=34}}
I 1956, ua hoʻokumu ʻo ia i kahi hoʻohuli lehulehu o Dalits, e hoʻohuli ana i Buddhism me nā mea kākoʻo 600,000. Ua hoʻāla hou ʻo ia i ka Buddhism ma India. Ua manaʻo ʻia ʻo Ambedkar ma ke ʻano he bodhisattva, a me ka Maitreya, i waena o nā Buddhist Navayana.<ref>https://theprint.in/opinion/why-ambedkar-chose-buddhism-over-hinduism-islam-christianity/237599/</ref><ref>https://indianexpress.com/article/explained/buddha-purnima-special-why-ambedkar-coverted-to-buddhism-6397742/</ref><ref>https://www.thequint.com/news/india/br-ambedkar-conversion-to-buddhism</ref>{{sfn|Queen|Emmanuel|2015|p=529–531}}
I ka makahiki 1990, ka Bharat Ratna, ka makana kiwila kiʻekiʻe loa o India, i hāʻawi ʻia ma hope iā Ambedkar. ʻO kā Ambedkar hoʻoilina hoʻoilina me nā hoʻomanaʻo hoʻomanaʻo a me nā hōʻike i ka moʻomeheu kaulana. ʻO ka hoʻoilina a Ambedkar ma ke ʻano he reformer socio-politika, kahi hopena hohonu i India hou.{{sfn|Joshi|1986|p=11–14}}{{sfn|Keer|1990|p=61}}
Ua koho ʻia ʻo Ambedkar "ke ʻInikia Nui" (The greatest Indian) i ka makahiki 2012 e kahi balota i hoʻonohonoho ʻia e History TV18 a me CNN IBN.<ref>https://www.outlookindia.com/magazine/story/a-measure-of-the-man/281949</ref>
ʻO Ambedkar Jayanti (ka lā hānau o Ambedkar) kahi hoʻolauleʻa makahiki i hoʻolauleʻa ʻia ma ka 14 ʻApelila, i hoʻolauleʻa ʻia ʻaʻole ma India wale nō akā ma ka honua holoʻokoʻa. Hoʻolauleʻa ʻia ʻo Ambedkar Jayanti ma ke ʻano he lā nui lehulehu ma waena o India.<ref>http://ccis.nic.in/WriteReadData/CircularPortal/D2/D02est/12_6_2015_JCA-2-19032015.pdf {{Webarchive|url=https://web.archive.org/web/20150405042913/http://ccis.nic.in/WriteReadData/CircularPortal/D2/D02est/12_6_2015_JCA-2-19032015.pdf |date=5 April 2015 }} Ambedkar Jayanti from ccis.nic.in on 19 March 2015</ref><ref>http://persmin.gov.in/ Webpage of Ministry of Personnel and Public Grievance & Pension</ref><ref>[http://mea.gov.in/ambedkar-final/mcelebration.htm 125th Dr. Ambedkar Birthday Celebrations Around the World.] mea.gov.in</ref> Ua hoʻolauleʻa ka United Nations iā Ambedkar Jayanti ma 2016, 2017 a me 2018.<ref>{{Cite web |last=Mitra |first=Shreerupa |url=https://www.firstpost.com/world/ambedkar-jayanti-celebrated-for-the-first-time-outside-india-as-un-organises-special-event-2730772.html |title=Ambedkar Jayanti celebrated for the first time outside India as UN organises special event |language=en |website=Firstpost |accessdate=2026-04-27}}</ref><ref>{{Cite news|url=http://www.newindianexpress.com/world/2018/apr/14/un-celebrates-ambedkars-legacy-fighting-inequality-inspiring-inclusion-1801468.html|title=UN celebrates Ambedkar's legacy 'fighting inequality, inspiring inclusion'|work=The New Indian Express|accessdate=2018-11-09}}</ref><ref>{{Cite news|url=https://www.newsstate.com/world-news/babasaheb-ambedkar-jayanti-celebrated-in-united-nations-article-52584.html|title=संयुक्त राष्ट्र में मनाई गई डॉ. बाबासाहेब भीमराव आंबेडकर जयंती |work=newsstate.com |language=en |accessdate=2020-11-15|archive-date=2019-04-19|archive-url=https://web.archive.org/web/20190419065326/https://www.newsstate.com/world-news/babasaheb-ambedkar-jayanti-celebrated-in-united-nations-article-52584.html|deadurl=yes}}</ref>
== Nā kūmole ==
{{papakūmole}}
== Nā Kumuwaiwai ==
* {{Cite book. |last=Joshi |first=Barbara R. |url=https://books.google.com/books?id=y9CUItMT1zQC&pg=PA13 |title=Untouchable!: Voices of the Dalit Liberation Movement |publisher=Zed Books |year=1986 |isbn=9780862324605 |ref=harv}}
* {{Cite book. |last=Keer |first=D. |url=https://books.google.com/books?id=B-2d6jzRmBQC&pg=PA61 |title=Dr. Ambedkar: Life and Mission |publisher=Popular Prakashan |year=1990 |isbn=9788171542376 |ref=harv}}
* {{Cite book. |editor-last1=Buswell |editor-first1=Robert Jr |editor-last2=Lopez |editor-first2=Donald S. Jr. |title=Princeton Dictionary of Buddhism |date=2013 |publisher=Princeton University Press |isbn=9780691157863 |location=Princeton, NJ |ref=harv}}
* {{cite book. |last1=Queen |first1=Christopher |last2=Emmanuel |first2=Steven M. |title=A Companion to Buddhist Philosophy |url=https://books.google.com/books?id=P_lmCgAAQBAJ |year=2015 |publisher=John Wiley & Sons |isbn=978-1-119-14466-3 |ref=harv}}
nzzuk4qornradkw6m2k9mfxpfgfk5ck
Module:Footnotes
828
12214
102902
2026-04-28T14:10:10Z
Nimmzo
21509
Lua module for Short FootNote [[Anakuhi:Sfn]] generating HTML anchor #CITEREFauthorYear. Require [[Module:Arguments]]
102902
Scribunto
text/plain
require('strict');
local getArgs = require ('Module:Arguments').getArgs;
--[[--------------------------< A R G S _ D E F A U L T >------------------------------------------------------
a table to specify initial values.
]]
local args_default = {
group = '',
bracket_left = '',
bracket_right = '',
bracket_year_left = '',
bracket_year_right = '',
postscript = '',
page = '',
pages = '',
location = '',
page_sep = ", p. ",
pages_sep = ", pp. ",
ref = '',
template = 'harv', -- if template name not provided in {{#invoke:}} use this
};
--[[--------------------------< T A R G E T _ C H E C K >------------------------------------------------------
look for anchor_id (CITEREF name-list and year or text from |ref=) in anchor_id_list
the 'no target' error may be suppressed with |ignore-err=yes when target cannot be found because target is inside
a template that wraps another template; 'multiple targets' error may not be suppressed
]]
local function target_check (anchor_id, args)
local namespace = mw.title.getCurrentTitle().namespace;
local anchor_id_list_module = mw.loadData ('Module:Footnotes/anchor_id_list');
local anchor_id_list = anchor_id_list_module.anchor_id_list;
local article_whitelist = anchor_id_list_module.article_whitelist;
local template_list = anchor_id_list_module.template_list;
local citeref_patterns = anchor_id_list_module.citeref_patterns
local whitelist_module = mw.loadData ('Module:Footnotes/whitelist');
local whitelist = whitelist_module.whitelist;
local tally = anchor_id_list[anchor_id]; -- nil when anchor_id not in list; else a tally
local msg;
local category;
if not tally then
if args.ignore then
return ''; -- if ignore is true then no message, no category
end
if article_whitelist and article_whitelist[anchor_id] then -- if an article-local whitelist and anchor ID is in it
return ''; -- done
end
local wl_anchor_id = anchor_id; -- copy to be modified to index into the whitelist
if args.year then -- for anchor IDs created by this template (not in |ref=) that have a date
if args.year:match ('%d%l$') or -- use the date value to determine if we should remove the disambiguator
args.year:match ('n%.d%.%l$') or
args.year:match ('nd%l$') then
wl_anchor_id = wl_anchor_id:gsub ('%l$', ''); -- remove the disambiguator
end
end
local t_tbl = whitelist[wl_anchor_id]; -- get list of templates associated with this anchor ID
if t_tbl then -- when anchor ID not whitelisted t_tbl is nil
for _, t in ipairs (t_tbl) do -- spin through the list of templates associated with this anchor ID
if template_list[t] then -- if associated template is found in the list of templates in the article
return ''; -- anchor ID is whitlisted and article has matching template so no error
end
end
end
for _, pattern in ipairs(citeref_patterns) do -- load patterns for wrapper templates on this page
if anchor_id:match(pattern) then -- spin through the special patterns and try to match
return ''
end
end
msg = 'no target: ' .. anchor_id; -- anchor_id not found
mw.log(msg)
if namespace == 10 and not args.show then -- do not generate error message in template namespace
return ''
end
category = '[[Category:Harv and Sfn no-target errors]]';
elseif 1 < tally then
msg = 'multiple targets (' .. tally .. '×): ' .. anchor_id; -- more than one anchor_id in this article
mw.log(msg)
if namespace == 10 and not args.show then -- do not generate error message in template namespace
return ''
end
category = 0 == namespace and '[[Category:Harv and Sfn multiple-target errors]]' or ''; -- only categorize in article space
return '<span class="error harv-error" style="display: inline; font-size:100%"> ' .. args.template .. ' error: ' .. msg .. ' ([[:Category:Harv and Sfn template errors|help]])</span>' .. category;
end
-- category = 0 == namespace and '[[Category:Harv and Sfn template errors]]' or ''; -- only categorize in article space
category = 0 == namespace and category or ''; -- only categorize in article space
-- display based on args.show (no display by default)
local display = args.show and 'inline' or 'none'
return msg and '<span class="error harv-error" style="display: '..display..'; font-size:100%"> ' .. args.template .. ' error: ' .. msg .. ' ([[:Category:Harv and Sfn template errors|help]])</span>' .. category or '';
end
--[[--------------------------< I S _ Y E A R >----------------------------------------------------------------
evaluates param to see if it is one of these forms with or without lowercase letter disambiguator:
YYYY
n.d.
nd
c. YYYY
YYYY–YYYY (separator is endash)
YYYY–YY (separator is endash)
return true when param has a recognized form; false else
]]
local patterns_date= {
'^%d%d%d%d?%l?$',
'^n%.d%.%l?$',
'^nd%l?$',
'^c%. %d%d%d%d?%l?$',
'^%d%d%d%d–%d%d%d%d%l?$',
'^%d%d%d%d–%d%d%l?$',
}
local function is_year (param, args)
args.year = ''; -- used for harv error;
for _, pattern in ipairs (patterns_date) do
if mw.ustring.match (param, pattern) then
args.year = param; -- used for harv error;
return true;
end
end
end
--[[--------------------------< C O R E >----------------------------------------------------------------------
returns an anchor link (CITEREF) formed from one to four author names, year, and insource location (|p=, |pp=, loc=)
]]
local function core( args )
local result;
local err_msg = ''
if args.P5 ~= '' then
if is_year (args.P5, args) then
result = table.concat ({args.P1, ' et al. ', args.bracket_year_left, args.P5, args.bracket_year_right});
else
args.P5 = ''; -- when P5 not a year don't include in anchor
result = table.concat ({args.P1, ' et al.'}); -- and don't render it
end
elseif args.P4 ~= '' then
if is_year (args.P4, args) then
result = table.concat ({args.P1, ', ', args.P2, ' & ', args.P3, ' ', args.bracket_year_left, args.P4, args.bracket_year_right}); -- three names and a year
else
result = table.concat ({args.P1, ' et al.'}); -- four names
end
elseif args.P3 ~= '' then
if is_year (args.P3, args) then
result = table.concat ({args.P1, ' & ', args.P2, ' ', args.bracket_year_left, args.P3, args.bracket_year_right}); -- two names and a year
else
result = table.concat ({args.P1, ', ', args.P2, ' ', ' & ', args.P3}); -- three names
end
elseif args.P2 ~= '' then
if is_year (args.P2, args) then
result = table.concat ({args.P1, ' ', args.bracket_year_left, args.P2, args.bracket_year_right}); -- one name and year
else
result = table.concat ({args.P1, ' & ', args.P2}); -- two names
end
else
result = args.P1; -- one name
end
-- when author-date result ends with a dot (typically when the last positional parameter holds 'n.d.')
-- and when no in-source location (no |p=, |pp=, or |loc=)
-- and when the first or only character in args.postscript is a dot
-- remove the author-date result trailing dot
-- the author-date result trailing dot will be replaced later with the content of args.postscript (usually a dot)
if ('.' == result:sub(-1)) and ('.' == args.postscript:sub(1)) and ('' == args.page) and ('' == args.pages) and ('' == args.location) then
result = result:gsub ('%.$', '');
end
if args.ref ~= 'none' then
local anchor_id;
if args.ref ~= '' then
anchor_id = mw.uri.anchorEncode (args.ref);
err_msg = target_check (anchor_id, args);
result = table.concat ({'[[#', anchor_id, '|', result, ']]'});
else
anchor_id = mw.uri.anchorEncode (table.concat ({'CITEREF', args.P1, args.P2, args.P3, args.P4, args.P5}));
err_msg = target_check (anchor_id, args);
result = table.concat ({'[[#', anchor_id, '|', result, ']]'});
end
end
if args.page ~= '' then
result = table.concat ({result, args.page_sep, args.page});
elseif args.pages ~= ''then
result = table.concat ({result, args.pages_sep, args.pages});
end
if args.location ~= '' then
result = table.concat ({result, ', ', args.location});
end
result = table.concat ({args.bracket_left, result, args.bracket_right, args.postscript}):gsub ('%s+', ' '); -- strip redundant spaces
return result .. err_msg;
end
--[[--------------------------< H Y P H E N _ T O _ D A S H >--------------------------------------------------
Converts a hyphen to a dash under certain conditions. The hyphen must separate
like items; unlike items are returned unmodified. These forms are modified:
letter - letter (A - B)
digit - digit (4-5)
digit separator digit - digit separator digit (4.1-4.5 or 4-1-4-5)
letterdigit - letterdigit (A1-A5) (an optional separator between letter and
digit is supported – a.1-a.5 or a-1-a-5)
digitletter - digitletter (5a - 5d) (an optional separator between letter and
digit is supported – 5.a-5.d or 5-a-5-d)
any other forms are returned unmodified.
str may be a comma- or semicolon-separated list
This code copied from Module:Citation/CS1. The only modification is to require Module:Citation/CS1/Utilities
so that it has access to the functions is_set() and has_accept_as_written()
]]
local function hyphen_to_dash( str )
local utilities = require ('Module:Citation/CS1/Utilities'); -- only modification so that this function has access to is_set() and has_accept_as_written()
if not utilities.is_set (str) then
return str;
end
local accept; -- Boolean
str = str:gsub ('&[nm]dash;', {['–'] = '–', ['—'] = '—'}); -- replace — and – entities with their characters; semicolon mucks up the text.split
str = str:gsub ('-', '-'); -- replace HTML numeric entity with hyphen character
str = str:gsub (' ', ' '); -- replace entity with generic keyboard space character
local out = {};
local list = mw.text.split (str, '%s*[,;]%s*'); -- split str at comma or semicolon separators if there are any
for _, item in ipairs (list) do -- for each item in the list
item, accept = utilities.has_accept_as_written (item); -- remove accept-this-as-written markup when it wraps all of item
if not accept and mw.ustring.match (item, '^%w*[%.%-]?%w+%s*[%-–—]%s*%w*[%.%-]?%w+$') then -- if a hyphenated range or has endash or emdash separators
if item:match ('^%a+[%.%-]?%d+%s*%-%s*%a+[%.%-]?%d+$') or -- letterdigit hyphen letterdigit (optional separator between letter and digit)
item:match ('^%d+[%.%-]?%a+%s*%-%s*%d+[%.%-]?%a+$') or -- digitletter hyphen digitletter (optional separator between digit and letter)
item:match ('^%d+[%.%-]%d+%s*%-%s*%d+[%.%-]%d+$') or -- digit separator digit hyphen digit separator digit
item:match ('^%d+%s*%-%s*%d+$') or -- digit hyphen digit
item:match ('^%a+%s*%-%s*%a+$') then -- letter hyphen letter
item = item:gsub ('(%w*[%.%-]?%w+)%s*%-%s*(%w*[%.%-]?%w+)', '%1–%2'); -- replace hyphen, remove extraneous space characters
else
item = mw.ustring.gsub (item, '%s*[–—]%s*', '–'); -- for endash or emdash separated ranges, replace em with en, remove extraneous whitespace
end
end
table.insert (out, item); -- add the (possibly modified) item to the output table
end
local temp_str = ''; -- concatenate the output table into a comma separated string
temp_str, accept = utilities.has_accept_as_written (table.concat (out, ', ')); -- remove accept-this-as-written markup when it wraps all of concatenated out
if accept then
temp_str = utilities.has_accept_as_written (str); -- when global markup removed, return original str; do it this way to suppress boolean second return value
return temp_str;
else
return temp_str; -- else, return assembled temp_str
end
end
--[[--------------------------< A R G S _ F E T C H >---------------------------------------------------------
Because all of the templates share a common set of parameters, a single common function to fetch those parameters
from frame and parent frame.
]]
local function args_fetch (frame, ps)
local args = args_default; -- create a copy of the default table
local pframe = frame:getParent(); -- point to the template's parameter table
for k, v in pairs (frame.args) do -- override defaults with values provided in the #invoke: if any
args[k] = v;
end
args.postscript = pframe.args.postscript or pframe.args.ps or ps;
if 'none' == args.postscript then
args.postscript = '';
end
args.group = pframe.args.group or '';
args.page = pframe.args.p or pframe.args.page or '';
args.pages = pframe.args.pp or pframe.args.pages or '';
args.pages = ('' ~= args.pages) and hyphen_to_dash (args.pages) or '';
args.location = pframe.args.at or pframe.args.loc or '';
args.ref = pframe.args.ref or pframe.args.Ref or '';
args.ignore = ('yes' == pframe.args['ignore-false-positive']) or ('yes' == pframe.args['ignore-err']);
for i, v in ipairs ({'P1', 'P2', 'P3', 'P4', 'P5'}) do -- loop through the five positional parameters and trim if set else empty string
args[v] = (pframe.args[i] and mw.text.trim (pframe.args[i])) or '';
end
if args.P5 and not is_year (args.P5, args) then
local i = 6; -- initialize the indexer to the sixth positional parameter
while pframe.args[i] do -- in case there are too many authors loop through the authors looking for a year
local v = mw.text.trim (pframe.args[i]); -- trim
if is_year (v, args) then -- if a year
args.P5 = v; -- overwrite whatever was in args.P5 with year
break; -- and abandon the search
end
i = i + 1; -- bump the indexer
end
end
return args;
end
--[[--------------------------< H A R V A R D _ C I T A T I O N >----------------------------------------------
common entry point for:
{{harvard citation}} aka {{harv}}
{{Harvard citation no brackets}} aka {{harvnb}}
{{harvcol}}
{{harvcolnb}}
{{harvcoltxt}}
{{Harvard citation text}} aka {{harvtxt}}
{{Harvp}}
Distinguishing features (brackets and page separators) are specified in this module's {{#invoke}} in the respective templates.
]]
local function harvard_citation (frame)
local args = args_fetch (frame, ''); -- get the template and invoke parameters; default postscript is empty string
return core (args);
end
--[[--------------------------< S T R I P _ U R L >------------------------------------------------------------
used by sfn() and sfnm(). This function fixes an issue with reference tooltip gadget where the tooltip is not displayed
when an insource locator (|p=, |pp=, |loc=) has an external wikilink that contains a # character
strip uri-reserved characters from urls in |p=, |pp-, and |loc= parameters The researved characters are:
!#$&'()*+,/:;=?@[]
]]
local function strip_url (pages)
local escaped_uri;
if not pages or ('' == pages) then
return pages;
end
for uri in pages:gmatch ('%[(%a[%w%+%.%-]*://%S+)') do -- for each external link get the uri
escaped_uri = uri:gsub ("([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" ); -- save a copy with lua pattern characters escaped
uri = uri:gsub ("[!#%$&'%(%)%*%+,/:;=%?@%[%]%.%%]", ''); -- remove reserved characters and '%' because '%20' (space character) is a lua 'invalid capture index'
pages = pages:gsub (escaped_uri, uri, 1); -- replace original uri with the stripped version
end
return pages;
end
--[[--------------------------< S F N >------------------------------------------------------------------------
entry point for {{sfn}} and {{sfnp}}
]]
local function sfn (frame)
local args = args_fetch (frame, '.'); -- get the template and invoke parameters; default postscript is a dot
local result = core (args); -- go make a CITEREF anchor
-- put it all together and then strip redundant spaces
local name = table.concat ({'FOOTNOTE', args.P1, args.P2, args.P3, args.P4, args.P5, strip_url (args.page), strip_url (args.pages), strip_url (args.location)}):gsub ('%s+', ' ');
return frame:extensionTag ({name='ref', args={group=args.group, name=name}, content=result});
end
--[[--------------------------< S F N M >----------------------------------------------------------------------
common entry point for {{sfnm}} and {{sfnmp}}
Distinguishing features (brackets) are specified in this module's {{#invoke}} in the respective templates.
]]
local function sfnm (frame)
local args = args_default; -- create a copy of the default table
local pframe = frame:getParent(); -- point to the template's parameter table
local n = 1; -- index of source; this is the 'n' in na1, ny, etc
local first_pnum = 1; -- first of a pair of positional parameters
local second_pnum = 2; -- second of a pair of positional parameters
local last_ps = 0; -- index of the last source with |nps= set
local last_index = 0; -- index of the last source; these used to determine which of |ps= or |nps= will terminate the whole rendering
local out = {}; -- table to hold rendered sources
local footnote = {'FOOTNOTE'}; -- all author, date, insource location stuff becomes part of the reference's footnote id; added as we go
for k, v in pairs (frame.args) do -- override defaults with values provided in the #invoke: if any
args[k] = v;
end
while true do
if not pframe.args[table.concat ({n, 'a1'})] and not pframe.args[first_pnum] then
break; -- no na1 or matching positional parameter so done
end
if pframe.args[table.concat ({n, 'a1'})] then -- does this source use named parameters?
for _, v in ipairs ({'P1', 'P2', 'P3', 'P4', 'P5'}) do -- initialize for this source
args[v] = '';
end
for i, v in ipairs ({'P1', 'P2', 'P3', 'P4', 'P5'}) do -- extract author and year parameters for this source
args[v] = pframe.args[table.concat ({n, 'a', i})] or ''; -- attempt to assign author name
if '' == args[v] then -- when there wasn't an author name
args[v] = pframe.args[table.concat ({n, 'y'})] or ''; -- attempt to assign year
break; -- done with author/date for this source
end
end
else -- this source uses positional parameters
args.P1 = mw.text.trim (pframe.args[first_pnum]); -- yes, only one author supported
args.P2 = (pframe.args[second_pnum] and mw.text.trim (pframe.args[second_pnum])) or ''; -- when positional author, year must also be positional
for _, v in ipairs ({'P3', 'P4', 'P5'}) do -- blank the rest of these for this source
args[v] = '';
end
first_pnum = first_pnum + 2; -- source must use positional author and positional year
second_pnum = first_pnum + 1; -- bump these for possible next positional source
end
args.postscript = pframe.args[table.concat ({n, 'ps'})] or '';
if 'none' == args.postscript then -- this for compatibility with other footnote templates; does nothing
args.postscript = '';
end
args.group = pframe.args.group or ''; -- reference group
args.ref = pframe.args[table.concat ({n, 'ref'})] or ''; -- alternate reference for this source
args.page = pframe.args[table.concat ({n, 'p'})] or ''; -- insource locations for this source
args.pages = pframe.args[table.concat ({n, 'pp'})] or '';
args.pages = ('' ~= args.pages) and hyphen_to_dash (args.pages) or '';
args.location = pframe.args[table.concat ({n, 'loc'})] or pframe.args[table.concat ({n, 'at'})] or '';
args.ignore = ('yes' == pframe.args[table.concat ({n, 'ignore-false-positive'})]) or ('yes' == pframe.args[table.concat ({n, 'ignore-err'})]);
table.insert (out, core (args)); -- save the rendering of this source
for k, v in ipairs ({'P1', 'P2', 'P3', 'P4', 'P5'}) do -- create the FOOTNOTE id
if '' ~= args[v] then
table.insert (footnote, args[v]);
end
end
for k, v in ipairs ({'page', 'pages', 'location'}) do -- these done separately so that we can strip uri-reserved characters from extlinked page numbers
if '' ~= args[v] then
table.insert (footnote, strip_url (args[v]))
end
end
last_index = n; -- flags used to select terminal postscript from nps or from end_ps
if '' ~= args.postscript then
last_ps = n;
end
n = n+1; -- bump for the next one
end
local name = table.concat (footnote):gsub ('%s+', ' '); -- put the footnote together and strip redundant space
args.end_ps = pframe.args.postscript or pframe.args.ps or '.'; -- this is the postscript for the whole not for the individual sources
if 'none' == args.end_ps then -- not an original sfnm parameter value; added for compatibility with other footnote templates
args.end_ps = '';
end
local result = table.concat ({table.concat (out, '; '), (last_index == last_ps) and '' or args.end_ps});
return frame:extensionTag ({name='ref', args={group=args.group, name=name}, content=result});
end
--[[--------------------------< S F N R E F >------------------------------------------------------------------
implements {{sfnref}}
]]
local function sfnref (frame)
local args = getArgs (frame);
local out = {};
for i=1, 5 do -- get the first five args if there are five args
if args[i] then
out[i] = args[i];
else
break; -- less than 5 args break out
end
end
if 5 == #out then -- when we have seen five args there may bemore
local i = 6; -- initialize the indexer to the sixth positional parameter
while args[i] do -- in case there are too many authors loop through the authors looking for a year
if is_year (args[i], args) then -- if a year
out[5] = args[i]; -- overwrite whatever was in args[5] with year
break; -- and abandon the search
end
i = i + 1; -- bump the indexer
end
end
return mw.uri.anchorEncode ('CITEREF' .. table.concat (out));
end
--[[--------------------------< E X P O R T E D F U N C T I O N S >------------------------------------------
]]
return {
harvard_citation = harvard_citation,
sfn = sfn,
sfnm = sfnm,
sfnref = sfnref,
target_check = target_check,
};
3ecgpqdblqy50cj0ke12x56x7g6qre8
Module:Footnotes/anchor id list
828
12215
102903
2026-04-28T14:30:29Z
Nimmzo
21509
Caller [[Module:Footnotes]]
102903
Scribunto
text/plain
require('strict');
local data = mw.loadData ('Module:Footnotes/anchor id list/data');
local whitelist = mw.loadData ('Module:Footnotes/whitelist');
local Lang_obj = mw.language.getContentLanguage(); -- used by template_list_add() to uppercase first letter of template name TODO: better way to do that?
local redirects_date = {
['date'] = true,
['datetomos'] = true,
['formatdate'] = true,
['isotodmymdy'] = true,
['isotomos'] = true,
}
local redirects_patent = { -- special case cs1-like templates because uses different parameters for name and date in anchor ID
['Cite patent'] = true,
['Citeref patent'] = true,
['Ref patent'] = true,
}
local redirects_sfnref = {
['sfnref'] = true,
['harvid'] = true,
}
local aliases_author = { -- these use pseudo-patterns in the same way as cs1|2; '#' represents 1 or more enumerator digits
'last#',
'author#',
'surname#',
'author-last#',
'author#-last',
'subject#',
'host#',
}
local aliases_contributor = {
'contributor#',
'contributor-last#',
'contributor#-last',
'contributor-surname#',
'contributor#-surname',
}
local aliases_editor = {
'editor#',
'editor-last#',
'editor#-last',
'editor-surname#',
'editor#-surname',
}
local aliases_harvc_author = {
'last#',
'author#',
}
local aliases_inventor = { -- cite patent
'inventor#',
'inventor-last#',
'inventor#-last',
'inventor-surname#',
'inventor#-surname',
'invent#',
'invent-#',
}
local alias_patterns_date = { -- normal lua patterns for most cs1|2-like templates
'|%s*year%s*=%s*',
'|%s*date%s*=%s*',
'|%s*publication%-?date%s*=%s*',
'|%s*air%-?date%s*=%s*',
}
local alias_patterns_harvc_date = { -- normal lua patterns for harvc template
'|%s*anchor%-year%s*=%s*',
'|%s*year%s*=%s*',
}
local alias_patterns_patent_date = { -- normal lua patterns for cite patent templates
'|%s*issue%-date%s*=%s*',
'|%s*gdate%s*=%s*',
'|%s*publication%-date%s*=%s*',
'|%s*pubdate%s*=%s*',
}
local patterns_date = { -- normal lua patterns
-- '(%d%d%d%d–%d%d%d%d%l?)$', -- YYYY–YYYY four-digit year range at end (Season YYYY–YYYY); with or without dab
'(%d%d%d%d)%D+(%d%d%d%d%l?)$', -- any range with four-digit years; with or without dab; not two captures
'^(%d%d%d%d–%d%d%l?)$', -- YYYY–YY two-digit year range; with or without dab
'^(c%. %d%d%d%d?%l?)$', -- three- or four-digit circa year; with or without dab
'(%d%d%d%d?%l?)$', -- three- or four-digit year at end of date (dmy or mdy); with or without dab
'^(%d%d%d%d?%l?)', -- three- or four-digit year at beginning of date (ymd or YYYY); with or without dab
'^(n%.d%.%l?)$', -- 'no date' with dots; with or without dab
'^(nd%l?)$', -- 'no date' without dots; with or without dab
}
local patterns_tags = {
'<nowiki>.-</nowiki>',
'<!%-%-.-%-%->',
'<pre>.-</pre>',
'<syntaxhighlight.->.-</syntaxhighlight>',
'<source.->.-</source>', -- deprecated alias of syntaxhighlight tag
}
local template_skip = { -- templates to be skipped for whatever reason; mostly because they resemble cs1-like templates
['Citation-attribution'] = true,
}
local global_article_content = nil
local global_anchor_id_list = nil -- exported tables
local global_template_list = nil
local global_article_whitelist = nil
--[[--------------------------< A R T I C L E _ C O N T E N T _ G E T >----------------------------------------
get article content, remove certain html-like tags and their content so that this code doesn't include any citation
templates inside the tags as valid tagets; they are not.
]]
local function article_content_get ()
if global_article_content then return global_article_content end
local article_content = mw.title.getCurrentTitle():getContent() or ''; -- get the content of the article or ''; new pages edited w/ve do not have 'content' until saved; ve does not preview; phab:T221625
for _, tag in ipairs (patterns_tags) do
article_content = article_content:gsub (tag, ''); -- remove certain html-like tags and their content
end
global_article_content = article_content
return article_content
end
--[[--------------------------< S F N R E F _ G E T >----------------------------------------------------------
make an anchor id from the contents of {{sfnref}} or {{harvid}}. this function assumes that {{sfnref}} and {{harvid}}
are correctly formed.
]]
local function sfnref_get (template)
template = template:gsub ('{{%s*(.-)%s*}}', '%1'); -- strip bounding template markup and trim
local parts = mw.text.split (template, '%s*|%s*'); -- split at the pipe and remove extraneous space characters
local anchor_id = {};
if redirects_sfnref[parts[1]:lower()] then
anchor_id[1] = 'CITEREF';
else
return nil; -- not an sfnref or harvid template
end
local i = 2; -- indexer into parts{} table
local j = 2; -- indexer into anchor_id{} table which already has 'CITEREF' at [1]
while parts[i] and 7 > j do -- loop through what should be just positional parameters for names and year (2-6 four names and a date)
if not parts[i]:find ('=') then -- look for equal sign (named paraneter in a template that doesn't support named parameters)
anchor_id[j] = parts[i]; -- positional parameters are saved
j = j+1; -- bump the anchor_id{} indexer
end
i = i+ 1; -- bump the parts{} indexer
end
return table.concat (anchor_id, '');
end
--[[--------------------------< D A T E _ G E T >--------------------------------------------------------------
extract year from one of |year=, |date=, |publicationdate=, or |publication-date in that order. Does not error
check (that is left to the cs1|2 templates to do)
also gets date from |<date alias>={{date|...}}
]]
local function date_get (template, aliases)
local rvalue;
for _, pattern in ipairs (aliases) do -- spin through the date alias patterns
rvalue = tostring(template):match (pattern); -- is this |<date alias>= used (tostring() because something makes match() think template is a table)
if rvalue then
rvalue = tostring(template):match (pattern .. '(%b{})'); -- is rvalue a template?
if rvalue then
rvalue = rvalue:gsub ('{{%s*(.-)%s*}}', '%1'); -- strip bounding template markup and trim
local parts = mw.text.split (rvalue, '%s*|%s*'); -- split at the pipe and remove extraneous space characters
if redirects_date[parts[1]:lower()] then -- if parts[1] names {{date}} or redirect
rvalue = parts[2]; -- assume that date template is properly formed, first positional parameter is the date
else
return ''; -- |date= holds some other template than {{date}} or redirect
end
else
rvalue = template:match (pattern .. '([^|}]+)');
if rvalue then -- if rvalue is something
rvalue = mw.text.trim (rvalue); -- trim it
end
if not rvalue or '' == rvalue then -- if rvale was nothing or trimed to nothing
rvalue = nil; -- ensure that it is unset so we can try the next parameter in the list
end
end
if rvalue then
for _, pattern in ipairs (patterns_date) do -- spin through the recognized date formats
-- date = rvalue:match (pattern); -- attempt to extract year portion according to the pattern
local date, date2 = rvalue:match (pattern); -- attempt to extract year portion according to the pattern; <date2> gets second year in any range
if date then
if date2 then -- when a second year
date = table.concat ({date, '–', date2}); -- build a date range
end
return date; -- matched so return;
end
end
break; -- found a date but it was malformed so abandon
end
end
end
return ''; -- no date param or date param doesn't hold a recognized date; empty string for concatenation
end
--[[--------------------------< V N A M E S _ G E T >----------------------------------------------------------
extract names from |vauthors= or |veditors=; there is no |vcontributors= parameter.
splits the v parameter value at the comma; correctly handles accept-as-witten markup when used to wrap a comma-
separated names (corporate)
]]
local function vnames_get (params, vparam)
local vnames = {}; -- first four author or editor names go here
local split = {}; -- temp table to assist in decoding accept-as-witten-markup
if params[vparam] then -- test for |vauthors= or |veditor=
split = mw.text.split (params[vparam], '%s*,%s*'); -- this will separate portions of ((Black, Brown, White, an Co.))
local i = 1; -- an indexer
while split[i] do
if split[i]:match ('^%(%(.*[^%)][^%)]$') then -- first segment of comma-separated accept-as-witten; this segment has the opening doubled parens
local name = split[i];
i=i+1; -- bump indexer to next segment
while split[i] do
name = name .. ', ' .. split[i]; -- concatenate with previous segments
if split[i]:match ('^.*%)%)$') then -- if this table member has the closing doubled parens
break; -- and done reassembling so
end
i=i+1; -- bump indexer
end
table.insert (vnames, name); -- and add accept-as-witten name to the vnames table
else
table.insert (vnames, split[i]); -- and add name to the vnames table
end
i=i+1; -- bump indexer
if 5 == i then break; end -- limit to four names
end
for i, vname in ipairs (vnames) do
if not vname:match ('%(%(.-%)%)') then -- without accept-this-value-as-written markup
vnames[i] = vname:gsub ('(.-)%s+%u+$', '%1'); -- extract and save surname(s)
end
end
for i, vname in ipairs (vnames) do -- repeat, this time for accept-this-value-as-written markup
vnames[i] = vname:gsub ('%(%((.-)%)%)', '%1'); -- remove markup if present and save the whole name
end
end
return 0 ~= #vnames and table.concat (vnames) or nil -- return a concatenation of the vnames; nil else
end
--[[--------------------------< N A M E S _ G E T >------------------------------------------------------------
cs1|2 makes anchor id from contributor, author, or editor name-lists in that order
get the names from the cs1|2 template; if there are no contributor names, try author names, then try editor names.
returns concatenated names in enumeration order when successful; nil else
empty name (nameholding parameter n is present without value) and missing name (nameholding parameter n is not
present) are included as empty string with all other names
]]
local function names_get (params, aliases_list)
local names = {}; -- first four author or editor names go here
local enum_alias; -- alias with '#' replaced with a digit
for enum=1, 4 do -- four names only
for i, alias in ipairs (aliases_list) do
if not names[enum] then -- hanven't found a previous alias with this [enum]? see if we can find this alias with this enum
enum_alias = alias:gsub ('#', enum); -- replace '#' to make 'lastn'
if 1 == enum then -- because |last= and last1= are exact aliases
if params[enum_alias] then -- test |last1= first
names[enum] = params[enum_alias]; -- found so save the value assigned to |last1=
break; -- next enum
else
enum_alias = alias:gsub ('#', ''); -- replace '#' to make 'last'
if params[enum_alias] then
names[enum] = params[enum_alias]; -- found so save the value assigned to |last=
break; -- next enum
end
end
else -- here for enum 2, 3, 4
if params[enum_alias] then
names[enum] = params[enum_alias]; -- found so save the value assigned to |lastn=
break; -- next enum
end
end
end
end
end
for enum=1, 4 do -- spin through the names table and
local name = names[enum];
if not name then -- when nameholding parameter n is not present (nil)
name = ''; -- convert to empty string for concatenation
end
name = name:gsub('%(%((.-)%)%)', '%1'); -- remove accept-as-written markup if present
names[enum] = name; -- save the modified name
end
local name_str = table.concat (names); -- concatenate the names
return '' ~= name_str and name_str or nil; -- return the concatenation if not empty string; nil else
end
--[[--------------------------< T E M P L A T E _ S T R I P >--------------------------------------------------
removes the citation or havrc template's {{ and }} markup then removes, in whole, any templates found inside the
citation or harvc template.
Templates are not allowed in parameters that are made part of COinS metadata; yet, they will appear. cs1|2 does
not see the template markup but instead sees the result of the template as html. cs1|2 strips the html which
leaves the displayed value for the anchor id. We can't do that here so, because templates aren't allowed in
parameters, we simply discard any templates found in the cs1|2 template.
this may leave a |lastn= parameter empty which will be treated as if it were really empty as cs1|2 do (three authors,
|last2= empty -> CITEREFLast1Last3YYYY (the harv and sfn render: 'Last1, & Last3 YYYY' with CITEREFLast1Last3YYYY).
]]
local function template_strip (template)
template = template:gsub ('^{{%s*', ''):gsub ('%s*}}$', '', 1); -- remove outer {{ and }} (cs1|2 template delimiters with trailing/leading whitespace)
template = template:gsub ('%b{}', ''); -- remove any templates from the cs1|2 template
return template;
end
--[[--------------------------< E S C A P E _ L U A _ M A G I C _ C H A R S >----------------------------------
Returns a string where all of lua's magic characters have been escaped. This is important because functions like
string.gsub() treat their pattern and replace strings as patterns, not literal strings.
]]
local function escape_lua_magic_chars (argument)
argument = argument:gsub("%%", "%%%%"); -- replace % with %%
argument = argument:gsub("([%^%$%(%)%.%[%]%*%+%-%?])", "%%%1"); -- replace all other lua magic pattern characters
return argument;
end
--[=[-------------------------< W I K I L I N K _ S T R I P >--------------------------------------------------
Wikilink markup does not belong in an anchor id and can / does confuse the code that parses apart citation and
harvc templates so here we remove any wiki markup:
[[link|label]] -> label
[[link]] -> link
]=]
local function wikilink_strip (template)
for wikilink in template:gmatch ('%[%b[]%]') do -- get a wikilink
template = template:gsub ('%[%b[]%]', '__57r1P__', 1); -- install a marker
if wikilink:match ('%[%[.-|(.-)%]%]') then
wikilink = wikilink:match ('%[%[.-|(.-)%]%]'); -- extract label from complex [[link|label]] wikilink
else
wikilink = wikilink:match ('%[%[(.-)%]%]'); -- extract link from simple [[link]] wikilinks
end
wikilink = escape_lua_magic_chars (wikilink); -- in case there are lua magic characters in wikilink
template = template:gsub ('__57r1P__', wikilink, 1); -- replace the marker with the appropriate text
end
return template;
end
--[[--------------------------< T E M P L A T E _ N A M E _ G E T >--------------------------------------------
return the citation or harvc template's name; convert to lower case and trim leading and trailing whitespace;
when the template is a sandbox the subpage portion of the template name is omitted from the returned template name
{{Cite book/new |...}} returns cite book
]]
local function template_name_get (template)
local template_name = template:match ('^{{%s*([^/|}]+)'); -- get template name; ignore subpages ~/new, ~/sandbox; parser functions
if not template_name or template_name:match ('^#') then -- parser functions, magic words don't count as templates
return nil; -- could not get template name from (possibly corrupt) template; extraneous opening { mid template can cause this;
end;
template_name = template_name:gsub ('%s*$', ''); -- trim trailing whitespace; leading whitespace already removed
return Lang_obj:ucfirst (template_name); -- first character in template name must be uppercase (same as canonical template name) TODO: better way to do this?
end
--[[--------------------------< T E M P L A T E _ P A R A M S _ G E T >----------------------------------------
parse apart a template's parameters and store in the params table where key is the parameter's name and value is
the parameter's value; empty parameters are not saved
]]
local function template_params_get (template, params_t)
template = wikilink_strip (template); -- because piped wikilinks confuse code that builds params_t{} and because wikilinks not allowed in an anchor id
-- strip templates after getting |ref= value because |ref={{sfnref}} and |ref={{harvid}} are allowed
template = template_strip (template); -- because template markup can confuse code that builds params_t{} and because templates in name parameters are not allowed
local temp_t = mw.text.split (template, '%s*|%s*'); --split on the pipe
for _, param in ipairs (temp_t) do
if param:find ('=', 1, true) then -- a named parameter?
local k, v = param:match ('%s*([^=]-)%s*=%s*([^|}]+)');
if v then -- there must be a value
if '' ~= v and not v:match ('^%s$') then -- skip when value is empty string or only whitespace
params_t[k] = mw.text.trim (v); -- add trimmed value else
end
end
end
end
end
--[[--------------------------< C I T E R E F _ M A K E _ H A R V C >------------------------------------------
makes anchor_id from {{harvc}} or redirects
]]
local function anchor_id_make_harvc (template)
local date = date_get (template, alias_patterns_harvc_date); -- get date; done here because might be in {{date}}; return date if valid; empty string else
local anchor_id;
local params = {}; -- table of harvc parameters
local id; -- custom anchor id for this {{harvc}} template
id = template:match ('|%s*id%s*=%s*(%b{})'); -- in case |id={{sfnref}}; done here because templates will be stripped
template_params_get (template, params); -- build a table of template parameters and their values; this strips wikilinks and templates
if id then -- when set is {{sfnref}} or {{harvid}} template
return sfnref_get (id); -- returns content of {{sfnref}} or {{harvid}}; nil else
end
if params.id then -- custom anchor for this {{harvc}} template (text)
return params.id; -- |id= value as written
end
anchor_id = names_get (params, aliases_harvc_author); -- get the harvc contributor names
if anchor_id then -- if names were gotten
return 'CITEREF' .. anchor_id .. date;
end
return nil; -- no names; no anchor_id
end
--[[--------------------------< A N C H O R _ I D _ M A K E _ W R A P P E R >----------------------------------
for wrapper templates
inspect externally visible |ref= to decide what to do:
|ref= - empty or missing: get names and date from whitelist defaults; override defaults from externally visible template parameters
|ref=harv - same as empty or missing
|ref={{SfnRef|name|name|name|name|year}} - assemble an anchor id from {{sfnref}} positional parameters
|ref={{Harvid|name|name|name|name|year}} - assemble an anchor id from {{harvid}} positional parameters
|ref=none - skip; do nothing because an anchor id intentionally suppressed; TODO: keep with a type code of '0'?
|ref=<text> - save param value because may match an anchor id override value in {{harv}} template |ref= parameter or {{harvc}} |id= parameter
]]
local function anchor_id_make_wrapper (template)
local ref; -- content of |ref=
local template_name; -- name of the template
local anchor_id; -- the assembled anchor id from this template
local date;
local name_default;
local date_default;
local vol;
local params = {}; -- table of template parameters
template_name = template_name_get (template); -- get first char uppercase trimmed template name; ignore subpages ~/new, ~/sandbox
if not template_name or template_skip[template_name] then
return nil; -- could not extract template name from (possibly corrupted) template (extraneous opening { in the template will cause this)
end
date = date_get (template, alias_patterns_date); -- get date; done here because might be in {{date}}
-- if '' == date then
-- date = whitelist.wrapper_templates[template_name][2] or ''; -- no externally visible date so get default date
-- end
ref = template:match ('|%s*ref%s*=%s*(%b{})'); -- first look for |ref={{sfnref}} or |ref={{harvid}} because we will strip templates from the wrapper template
if not ref then
if template:match ('|%s*ref%s*=([^|}]+)') then -- |ref={{template}} not found; if there is a |ref= param with an assigned value
ref = template:match ('|%s*ref%s*=([^|}]+)'); -- get the value; whitespace is a 'value'
if ref then -- nil when |ref=|... or when |ref=}} (no spaces between assignment operator and pipe or closing brace)
ref = mw.text.trim (ref); -- something, could be just whitespace, so trim leading / trailing whitespace
if '' == ref then -- trimming a string of whitespace makes an empty string
ref = nil; -- make empty ref same as missing ref
end
end
end
end
template_params_get (template, params); -- build a table of template parameters and their values
local wrap_data = whitelist.wrapper_templates[template_name]
if wrap_data[1] then -- is this wrapper a simple-default wrapper?
name_default = wrap_data[1]; -- get the default names
date_default = wrap_data[2]; -- get the default date
else
vol = params['volume'] or 'default';
local fascicle = params['fascicle'] -- some templates use "fascicle" to mean "subvolume"
if fascicle then
local subvol = vol..'/'..fascicle -- if fascicle is used, subvolume = "vol/fascicle"
if wrap_data[subvol] then -- if subvolume exists, use it, otherwise fall back to volume
vol = subvol
end
end
if not wrap_data[vol] then -- make sure this volume exists
vol = 'default'; -- doesn't exist, use default volume
end
name_default = wrap_data[vol][1]; -- get the default names
date_default = wrap_data[vol][2]; -- get the default date
end
if 'harv' == ref or not ref then -- |ref=harv specified or |ref= missing or empty
anchor_id = names_get (params, aliases_contributor) or -- get contributor, author, or editor names
names_get (params, aliases_author) or
vnames_get (params, 'vauthors') or -- |vauthors=
names_get (params, aliases_editor) or
vnames_get (params, 'veditors') or -- |veditors=
name_default; -- default names from whitelist
-- whitelist.wrapper_templates[template_name][1]; -- default names from whitelist
if '' == date then -- if date not provided in the template
date = date_default; -- use the default date from whitelist
end
if anchor_id then -- if names were gotten
anchor_id = 'CITEREF' .. anchor_id .. date;
end
elseif ref:match ('%b{}') then -- ref holds a template
anchor_id = sfnref_get (ref); -- returns content of {{sfnref}} or {{harvid}}; nil else
elseif 'none' == ref then -- |ref=none
return nil; -- anchor id expicitly suppressed
else
anchor_id = ref; -- |ref=<text> may match an anchor id override value in {{harv}} template |ref= parameter
end
return anchor_id; -- anchor_id text; nil else
end
--[[--------------------------< A N C H O R _ I D _ M A K E _ C S 1 2 >----------------------------------------
for cs1|2 template and cs1-like templates
inspect |ref= to decide what to do:
|ref= - empty or missing: get names and date from template parameters; all cs1|2 create CITEREF anchor IDs
|ref=harv - get names and date from template parameters
|ref={{SfnRef|name|name|name|name|year}} - assemble an anchor id from {{sfnref}} positional parameters
|ref={{Harvid|name|name|name|name|year}} - assemble an anchor id from {{harvid}} positional parameters
|ref=none - skip; do nothing because an anchor id intentionally suppressed; TODO: keep with a type code of '0'?
|ref=<text> - save param value because may match an anchor id override value in {{harv}} template |ref= parameter or {{harvc}} |id= parameter
]]
local function anchor_id_make_cs12 (template)
local ref; -- content of |ref=
local template_name; -- name of the template
local anchor_id; -- the assembled anchor id from this template
local date;
local params = {}; -- table of template parameters
template_name = template_name_get (template); -- get first char uppercase trimmed template name; ignore subpages ~/new, ~/sandbox
if not template_name or template_skip[template_name] then
return nil; -- could not extract template name from (possibly corrupted) template (extraneous opening { in the template will cause this)
end
if redirects_patent[template_name] then
date = date_get (template, alias_patterns_patent_date); -- get date; done here because might be in {{date}}
else
date = date_get (template, alias_patterns_date);
end
ref = template:match ('|%s*ref%s*=%s*(%b{})'); -- first look for |ref={{sfnref}} or |ref={{harvid}} because we will strip templates from the cs1|2 template
if not ref then
if template:match ('|%s*ref%s*=([^|}]+)') then -- |ref={{template}} not found; if there is a |ref= param with an assigned value
ref = template:match ('|%s*ref%s*=([^|}]+)'); -- get the value; whitespace is a 'value'
if ref then -- nil when |ref=|... or when |ref=}} (no spaces between assignment operator and pipe or closing brace)
ref = mw.text.trim (ref); -- something, could be just whitespace, so trim leading / trailing whitespace
if '' == ref then -- trimming a string of whitespace makes an empty string
ref = nil; -- make empty ref same as missing ref
end
end
end
end
template_params_get (template, params); -- build a table of template parameters and their values
if 'harv' == ref or not ref then -- |ref=harv specified or |ref= missing or empty
if redirects_patent[template_name] then -- if this is a cite patent template
anchor_id = names_get (params, aliases_inventor); -- inventor names only
else -- cs1|2 template
anchor_id = names_get (params, aliases_contributor) or -- get contributor, author, or editor names
names_get (params, aliases_author) or
vnames_get (params, 'vauthors') or -- |vauthors=
names_get (params, aliases_editor) or
vnames_get (params, 'veditors'); -- |veditors=
end
if anchor_id then -- if names were gotten
anchor_id = 'CITEREF' .. anchor_id .. date;
end
elseif ref:match ('%b{}') then -- ref holds a template
anchor_id = sfnref_get (ref); -- returns content of {{sfnref}} or {{harvid}}; nil else
elseif 'none' == ref and not redirects_patent[template_name] then -- |ref=none; not supported by cite patent
return nil; -- anchor id expicitly suppressed
else
anchor_id = ref; -- |ref=<text> may match an anchor id override value in {{harv}} template |ref= parameter
end
return anchor_id; -- anchor_id text; nil else
end
--[[--------------------------< L I S T _ A D D >--------------------------------------------------------------
adds an <item> to <list> table; for anchor IDs, the boolean <encode> argument must be set true; no return value
]]
local function list_add (item, list, encode)
if item then -- if there was an item
if encode then -- for anchor IDs ...
item = mw.uri.anchorEncode (item); -- encode to remove wikimarkup, convert spaces to underscores etc
end
if not list[item] then -- if not already saved
list[item] = 1; -- save it
else -- here when this item already saved
list[item] = list[item] + 1; -- to indicate that there are multiple items
end
end
end
--[[--------------------------< A N C H O R _ I D _ M A K E _ A N C H O R >------------------------------------
make anchor IDs from {{anchor}}; there may be more than one because {{anchor}} is not limited to the number of
anchors it may hold.
]]
local function anchor_id_make_anchor (template, anchor_id_list)
template = template:gsub ('^{{[^|]+|', ''):gsub ('}}$', '', 1); -- remove outer {{ and }} and template name
template = wikilink_strip (template); -- strip any wikilink markup (there shouldn't be any but just in case)
local params = {};
local anchor_id;
for param in template:gmatch ('%b{}') do -- loop through the template; remove and save templates (presumed to be sfnref or harvid)
table.insert (params, param); -- save it
template = template:gsub ('%b{}', '', 1); -- remove it from source template
end
for _, t in ipairs (params) do -- spin through the templates in params
anchor_id = sfnref_get (t); -- attempt to decode {{sfnref}} and {{harvid}}
if anchor_id then -- nil when not {{sfnref}} or {{harvid}}
list_add (anchor_id, anchor_id_list, true); -- add anchor ID to the list
end
end
template = template:gsub ('|%s*|', '|'); -- when pipe follows pipe with or without white space, remove extraneous pipe
template = template:gsub ('^|', ''):gsub('|$', ''); -- remove extraneous leading and trailing pipes
params = mw.text.split (template, '%s*|%s*'); -- split at the pipe and remove extraneous space characters
for _, t in ipairs (params) do -- spin through the anchor IDs
anchor_id = mw.text.trim (t); -- trim white space
if '' ~= anchor_id then -- should always have something
list_add (anchor_id, anchor_id_list, true); -- add anchor ID to the list
end
end
end
--[[--------------------------< T E M P L A T E _ L I S T _ A D D >--------------------------------------------
makes a list of templates use in the article.
]]
local function template_list_add (template, template_list)
local template = template:match ('{{%s*(.-)[|}]'); -- keep the case of the template - this is different from template_name_get()
if template and not template:match ('^#') then -- found a template or magic word; ignore magic words
template=mw.text.trim (template); -- trim whitespace
template = Lang_obj:ucfirst (template); -- first character in template name must be uppercase (same as canonical template name) TODO: better way to do this?
list_add (template, template_list); -- add to list with (unused) tally
end
end
--[[--------------------------< A N C H O R _ I D _ L I S T _ M A K E >----------------------------------------
makes a list of anchor ids from cs1|2, cs1|2-like, vcite xxx, harvc, anchor, wikicite templates
Because cs1|2 wrapper templates can, and often do, hide the author and date parameters inside the wrapper,
these parameters are not available in the article's wikisource so {{harv}}, {{sfn}}, and {{harvc}} templates that
link correctly to those wrapper templates will incorrectly show error messages. Use |ignore-err=yes in the {{harv}},
{{sfn}}, and {{harvc}} templates to supress the error message.
creates a list of templates used in the article for use with the whitelist
creates a list of article-local whitelisted anchor IDs from {{sfn whitelist}}
]]
local function anchor_id_list_make ()
local anchor_id_list = {}
local template_list = {}
local article_whitelist = {}
local article_content = article_content_get (); -- attempt to get this article's content
if article_content == '' then -- when there is no article content
return ''; -- no point in continuing
end
local template; -- place to hold the template that we found
local template_name;
local anchor_id; -- place to hold an anchor id as it is extracted / decoded
local find_pattern = '%f[{]{{[^{]';
local tstart, tend = article_content:find (find_pattern); -- find the first template; do not find template variables: {{{template var|}}}
while tstart do
template = article_content:match ('%b{}', tstart); -- get the whole template
if not template then
break; -- template is nil for some reason (last template missing closing }} for example) so declare ourselves done
end
template_name = template_name_get (template); -- get first char uppercase trimmed template name; ignore subpages ~/new, ~/sandbox
template_list_add (template, template_list); -- add this template's name to the list
if data.known_templates_cs12 [template_name] then
anchor_id = anchor_id_make_cs12 (template); -- extract an anchor id from this template
list_add (anchor_id, anchor_id_list, true)
elseif data.known_templates_vcite [template_name] then
local ref = template:match ('|%s*ref%s*=%s*(%b{})'); -- first look for |ref={{sfnref}} or |ref={{harvid}} because we will strip templates from the vcite template
if ref then -- |ref={{template}}
anchor_id = sfnref_get (ref); -- returns content of {{sfnref}} or {{harvid}}; nil else
list_add (anchor_id, anchor_id_list, true);
else
local params = {};
template_params_get (template, params); -- build a table of template parameters and their values
anchor_id = params['ref']; -- when both set, vcite uses value from |ref=
if not anchor_id and params['harvid'] then
anchor_id = 'CITEREF' .. params['harvid']; -- in vcite, |harvid= auto-adds 'CITEREF' prefix to the value in |harvid=
end
list_add (anchor_id, anchor_id_list, true);
end
elseif data.known_templates_harvc [template_name] then
anchor_id = anchor_id_make_harvc (template); -- extract an anchor id from this template
list_add (anchor_id, anchor_id_list, true);
elseif data.known_templates_wikicite [template_name] then
local ref = template:match ('|%s*ref%s*=%s*(%b{})'); -- first look for |ref={{sfnref}} or |ref={{harvid}}
if ref then
anchor_id = sfnref_get (ref);
elseif template:match ('|%s*ref%s*=([^|}]+)') then
anchor_id = template:match ('|%s*ref%s*=([^|}]+)'); -- plain-text
elseif template:match ('|%s*id%s*=%s*(%b{})') then
ref = template:match ('|%s*id%s*=%s*(%b{})');
anchor_id = 'Reference-' .. sfnref_get (ref);
elseif template:match ('|%s*id%s*=([^|}]+)') then
anchor_id = 'Reference-' .. template:match ('|%s*id%s*=([^|}]+)'); -- plain-text
else
anchor_id = nil; -- no matches, ensure that anchor_id has no value
end
if anchor_id then
list_add (anchor_id, anchor_id_list, true);
end
elseif data.known_templates_anchor [template_name] then
anchor_id_make_anchor (template, anchor_id_list); -- extract anchor ids from this template if any
elseif data.known_templates_sfn_whitelist [template_name] then
template = template:gsub ('^{{[^|]+|', ''):gsub ('}}$', '', 1); -- remove outer {{ and }} and template name
template = mw.text.trim (template, '%s|'); -- trim leading trailing white space and pipes
template = mw.text.split (template, '%s*|%s*'); -- make a table of the template's parameters
for _, anchor_id in ipairs (template) do -- spin through this template's parameter
if '' ~= anchor_id and not article_whitelist[anchor_id] then
anchor_id = mw.uri.anchorEncode (anchor_id)
article_whitelist[anchor_id] = 1; -- add to the whitelist
end
end
elseif template_name and whitelist.wrapper_templates[template_name] then
anchor_id = anchor_id_make_wrapper (template); -- extract an anchor id from this template if possible
list_add (anchor_id, anchor_id_list, true);
elseif template_name and template_name:match ('^Cit[ea]') then -- not known, not known wrapper; last gasp, try as cs1-like
anchor_id = anchor_id_make_cs12 (template); -- extract an anchor id from this template if possible
list_add (anchor_id, anchor_id_list, true);
end
tstart, tend = article_content:find (find_pattern, tend); -- search for another template; begin at end of last search
end
mw.logObject (anchor_id_list, 'anchor_id_list');
mw.logObject (template_list, 'template_list');
mw.logObject (article_whitelist, 'article_whitelist');
global_anchor_id_list = anchor_id_list
global_template_list = template_list
global_article_whitelist = article_whitelist
end
--[[--------------------------< C I T E R E F _ P A T T E R N S _ M A K E >--------------------------------------------
Scans template_list to look for wrapper templates that generate citerefs that require Lua patterns.
This scan is only done once per page load, to save time
]]
local function citeref_patterns_make()
if not global_template_list then return end
local citeref_patterns = {}
local template_patterns = whitelist.wrapper_template_patterns
for _, p in ipairs(template_patterns) do
for _, t in ipairs(p[1]) do -- loop through list of template wrappers
if global_template_list[t] then -- if wrapper is found in article, record corresponding patterns
for _, pat in ipairs(p[2]) do
table.insert(citeref_patterns, pat)
end
break
end
end
end
mw.logObject(citeref_patterns,'citeref_patterns')
return citeref_patterns
end
--[[--------------------------< E X P O R T E D _ T A B L E S >------------------------------------------------
]]
-- First create global_anchor_id_list, global_template_list, global_article_whitelist
anchor_id_list_make()
-- Then stuff them (and derived tables) into return table
return {
anchor_id_list = global_anchor_id_list or {}, -- table of anchor ids available in this article
article_whitelist = global_article_whitelist or {}, -- table of anchor ids with false-positive error message to be suppressed
template_list = global_template_list or {}, -- table of templates used in this article
citeref_patterns = citeref_patterns_make() or {} -- table of Lua patterns to search for citeref from wrappers
}
0orpdb6kvjbedhkjrp2xgq9fc8lbvmb
Module:Footnotes/anchor id list/data
828
12216
102904
2026-04-28T14:40:05Z
Nimmzo
21509
Caller [[Module:Footnotes/anchor id list]]
102904
Scribunto
text/plain
-- copied from Module:Ref info/data - maybe overkill here?
-- for this application make lists from the redirect lists and force all template names first character uppercase
require('strict');
--[[--------------------------< C S 1 _ T E M P L A T E _ P A T T E R N S >------------------------------------
These are patterns for cs1 templates and their redirects. These patterns exclude redirects that are vcite-like
which redirects should be deleted because vcite is not cs1.
]]
local cs1_template_patterns = { -- lua patterns of the cannonical names and redirects
'[Cc]ite ar[Xx]iv', -- arXiv is the canonical name
'[Cc]ite ArXiv',
'[Cc]ite AV media', -- canonical
'[Cc]ite audio', '[Cc]ite AV', '[Cc]ite AV ?Media', '[Cc]ite av media',
'[Cc]ite cd', '[Cc]ite DVD', '[Cc]ite dvd', '[Cc]ite film',
'[Cc]ite image', '[Cc]ite media', '[Cc]ite movie',
'[Cc]ite music video', '[Cc]ite radio', '[Cc]ite song',
'[Cc]ite ?video', '[Cc]ite visual', '[Cc]ite You[Tt]ube',
'[Cc]ita vídeo', -- non-English redirect; TODO: tally separately?
'[Cc]ite AV media notes', -- canonical
'[Cc]ite album[ %-]notes', '[Cc]ite av media notes',
'[Cc]ite DVD[ %-]notes', '[Cc]ite dvd%-notes', '[Cc]ite liner notes',
'[Cc]ite music release notes', '[Ll]iner notes',
'[Cc]ite bio[Rr]xiv', -- bioRxiv is the canonical form
'[Cc]ite [Bb]ook', -- book is the canonical form
'[Bb]ook cite', '[Bb]ook reference', '[Bb]ook reference url',
'[Cc] book', '[Cc]it book', '[Cc]ite books', '[Cc]ite chapter',
'[Cc]ite ebook', '[Cc]ite manual', '[Cc]ite page',
'[Cc]ite publication', '[Cc]ite score',
'[Cc]ite work', '[Cc]ite%-?book',
'[Bb]okref', '[Cc]itace monografie', '[Cc]itar livro', -- non-English redirects; TODO: tally separately?
'[Cc]iteer boek', '[Oo]uvrage', '[Rr]ef%-llibre', '서적 인용',
'[Cc]ite citeseerx', -- canonical
'[Cc]ite conference', -- canonical
'[Cc]ita conferenza', '[Cc]ite proceedings', '[Cc]onference reference', -- cita conferenza is non-English; TODO: tally separately?
'[Cc]ite ?encyclopedia', -- cite encyclopedia is the canonical name
'[Cc]ite contribution', '[Cc]ite dic', '[Cc]ite dictionary',
'[Cc]ite encyclopaedia', '[Cc]ite encyclopædia', '[Ee]ncyclopedia',
'[Cc]ite [Ee]pisode', -- episode is the canonical form
'[Cc]ite show',
'[Cc]ite interview', -- canonical
'[Cc]ite ?journal', -- cite journal is the canonical form
'[Cc] journal', '[Cc]itation journal', '[Cc]ite abstract',
'[Cc]ite document', '[Cc]ite Journal', '[Cc]ite journal zh',
'[Cc]ite ?paper', '[Vv]cite2 journal',
'[Cc]ita pubblicazione', '[Cc]itace periodika', '[Cc]itar jornal', -- non-English redirects; TODO: tally separately?
'[Cc]itar publicació', '[Cc]ytuj pismo', '[Tt]idskriftsref',
'Навод из стручног часописа', '저널 인용',
'[Cc]ite [Mm]agazine', -- magazine is the canonical form
'[Cc]ite mag', '[Cc]ite magazine article', '[Cc]ite newsletter',
'[Cc]ite periodical',
'[Cc]ite mailing ?list', -- mailing list is the canonical form
'[Cc]ite list',
'[Cc]ite maps?', -- map is the canonical form
'[Cc]ite[ %-]?news', -- cite news is the canonical form
'[Cc] news', '[Cc]it news', '[Cc]itation news', '[Cc]ite article',
'[Cc]ite n', '[Cc]ite new', '[Cc]ite newspaper', '[Cc]ite News',
'[Cc]ite news%-q', '[Cc]ite news2', '[Cc]itenewsauthor', '[Cc]ute news',
'[Cc]itar notícia', '[Hh]aber kaynağı', '[Tt]idningsref', 'استشهاد بخبر', -- non-English redirects; TODO: tally separately?
'뉴스 인용',
'[Cc]ite newsgroup', -- canonical
'[Cc]ite usenet',
'[Cc]ite podcast', -- canonical
'[Cc]ite [Pp]ress release', -- press release is the canonical form
'[Cc]ite media release', '[Cc]ite news release', '[Cc]ite pr',
'[Cc]ite press', '[Cc]ite press release%.', '[Cc]ite press[%-]?release',
'[Cc]ite report', -- canonical
'[Cc]ite serial', -- canonical
'[Cc]ite sign', -- canonical
'[Cc]ite plaque',
'[Cc]ite speech', -- canonical
'[Cc]ite ssrn', -- canonical
'[Cc]ite SSRN',
'[Cc]ite tech ?report', -- techreport is the canonical form
'[Cc]ite standard', '[Cc]ite technical report', '[Tt]echrep reference',
'[Cc]ite thesis', -- canonical
'[Cc]ite dissertation',
'[Cc]itar tese', -- non-English redirect; TODO: tally separately?
'[Cc]ite [Ww]eb', -- web is the canonical form
'[Cc] web', '[Cc]it web', '[Cc]ite blog', '[Cc]ite URL', '[Cc]ite url',
'[Cc]ite w', '[Cc]ite wb', '[Cc]ite we', '[Cc]ite web%.',
'[Cc]ite webpage', '[Cc]ite website', '[Cc]ite website article',
'[Cc]ite%-?web', '[Cc]itweb', '[Cc]w', '[Rr]ef web', '[Ww]eb citation',
'[Ww]eb cite', '[Ww]eb link', '[Ww]eb[ %-]reference', '[Ww]eblink',
'[Cc]hú thích web', '[Cc]ita web', '[Cc]itace elektronické monografie', -- non-English redirects; TODO: tally separately?
'[Cc]itat web', 'مرجع ويب', 'یادکرد وب', '웹 인용',
}
--[[--------------------------< C S 2 _ T E M P L A T E _ P A T T E R N S >------------------------------------
These are patterns for cs2 templates redirects.
]]
local cs2_template_patterns = { -- lua patterns of the cannonical names and redirects
'[Cc]itation',
'[Cc]ite', '[Cc]ite citation', '[Cc]ite study',
'[Cc]ite [Tt]echnical standard',
}
--[[--------------------------< V C I T E _ T E M P L A T E _ P A T T E R N S >--------------------------------
These are patterns for Vcite-family templates and their redirects.
]]
local vcite_template_patterns = {
'[Vv]cite book', -- canonical
'[Vv]ancite book', '[Vv]ancite report', '[Vv]cite encyclopedia',
'[Vv]cite report',
'[Vv]cite journal', -- canonical
'[Cc]it journal', '[Cc]it paper', '[Vv]ancite journal', '[Vv]cite paper',
'[Vv]cite news', -- canonical
'[Vv]ancite news',
'[Vv]cite web', -- canonical
'[Vv]ancite web',
}
--[[--------------------------< H A R V C _ T E M P L A T E _ P A T T E R N S >--------------------------------
These are patterns for the harvc template and its redirects.
]]
local harvc_template_patterns = {
'[Hh]arvc', -- canonical
'[Cc]itec',
}
--[[--------------------------< C S 1 _ L I K E _ T E M P L A T E _ P A T T E R N S >--------------------------
These are patterns for miscellaneous templates and their redirects that 'look like' cs1 templates (begin with cite ...)
Because they 'look like' cs1 templates they are handled as if they were cs1 templates. These templates are NOT
wrapper templates; names and dates are always to be extracted from the article instantiation of the template.
]]
local cs1_like_template_patterns = {
}
--[[--------------------------< W I K I C I T E _ T E M P L A T E _ P A T T E R N S >--------------------------
These are patterns for the wikicite template and its redirects.
]]
local wikicite_template_patterns = {
'[Ww]ikicite', -- canonical
}
--[[--------------------------< A N C H O R _ T E M P L A T E _ P A T T E R N S >------------------------------
These are patterns for the anchor template and its redirects.
]]
local anchor_template_patterns = {
'[Aa]nchors?', -- anchor is canonical form
'[Aa]nchor for redirect',
'[Aa]nchro',
'[Aa]ncor',
}
--[[--------------------------< S F N _ W H I T E L I S T _ P A T T E R N S >----------------------------------
These are patterns for the anchor template and its redirects.
]]
local sfn_whitelist_patterns = {
'[Ss]fn whitelist', -- canonical
'[Hh]arv whitelist',
}
--[[--------------------------< K N O W N _ T E M P L A T E S >------------------------------------------------
These tables are created from the *_template_patterns tables. To make these tables, entries in the source tables
are evaluated to replace lua patterns with the appropriate characters to create names for the output tables.
First charqacter is always uppercase
For example:
[Cc]ite ar[Xx]iv
becomes
Cite arXiv
Cite arxiv
]]
local known_templates_cs12 = {}; -- the exported tables
local known_templates_vcite = {};
local known_templates_harvc = {};
local known_templates_wikicite = {};
local known_templates_anchor = {};
local known_templates_sfn_whitelist = {};
local function add_stripped (list, name)
if not list[name] then
list[name] = true;
end
end
local function pattern_convert (pattern, list)
local lead, tail, c, l, name;
local first_char_patterns = {
'^%[(%a)%a%]', -- leading character (usually uppercase)
'^%[%a(%a)%]', -- leading character (usually lowercase)
}
c = tostring (pattern:match ('%u')); -- tostring() required because I don't know why; lua chokes complaining that c is not a string
name = pattern:gsub ('^%[%a%a%]', c); -- replace bracketed first character [Xx] with selected character from the match
if name:match ('(.-)%[(%a)(%a)%](.*)') then -- mixed case optional letters
lead, c, l, tail = name:match ('(.-)%[(%a)(%a)%](.*)');
add_stripped (list, lead .. c .. tail); -- uppercase
add_stripped (list, lead .. l .. tail); -- lowercase
elseif name:match ('^([^%[]+)(%[ %%%-%]%?)(.+)$') then -- [ %-]?
lead, c, tail = name:match ('^([^%[]+)(%[ %%%-%]%?)(.+)$');
add_stripped (list, lead .. tail); -- neither char
add_stripped (list, lead .. ' ' .. tail); -- space
add_stripped (list, lead .. '-' .. tail); -- hyphen
elseif name:match ('^([^%[]+)(%[%%%-%]%?)(.+)$') then -- [%-]?
lead, c, tail = name:match ('^([^%[]+)(%[%%%-%]%?)(.+)$');
add_stripped (list, lead .. tail); -- no hyphen
add_stripped (list, lead .. '-' .. tail); -- hyphen
elseif name:match ('^([^%[]+)(%[ %%%-%])(.+)$') then -- [ %-]
lead, c, tail = name:match ('^([^%[]+)(%[ %%%-%])(.+)$');
add_stripped (list, lead .. ' ' .. tail); -- space
add_stripped (list, lead .. '-' .. tail); -- hyphen
elseif name:match ('^([^%?]+)(%%%-%?)(.+)$') then -- %-?
lead, c, tail = name:match ('^([^%?]+)(%%%-%?)(.+)$');
add_stripped (list, lead .. tail); -- no hyphen
add_stripped (list, lead .. '-' .. tail); -- hyphen
elseif name:match ('^(.-)(%%%-)(.+)$') then -- %-
lead, c, tail = name:match ('^(.-)(%%%-)(.+)$');
add_stripped (list, lead .. '-' .. tail); -- hyphen
elseif name:match ('^(.-)(.)%?(.*)$') then -- .?
lead, c, tail = name:match ('^(.-)(.)%?(.*)$');
add_stripped (list, lead .. tail); -- no character
add_stripped (list, lead .. c .. tail); -- character
else
add_stripped (list, name); -- no patterns so save as is
end
end
for _, t in ipairs ({
{cs1_template_patterns, known_templates_cs12},
{cs2_template_patterns, known_templates_cs12},
{cs1_like_template_patterns, known_templates_cs12},
{vcite_template_patterns, known_templates_vcite},
{harvc_template_patterns, known_templates_harvc},
{wikicite_template_patterns, known_templates_wikicite},
{anchor_template_patterns, known_templates_anchor},
{sfn_whitelist_patterns, known_templates_sfn_whitelist},
}) do
for _, pattern in ipairs (t[1]) do -- for each patern in *_template_patterns
pattern_convert (pattern, t[2]) -- convert and store in known_templates_*
end
end
--[[--------------------------< E X P O R T S >----------------------------------------------------------------
]]
return
{
known_templates_anchor = known_templates_anchor,
known_templates_cs12 = known_templates_cs12,
known_templates_harvc = known_templates_harvc,
known_templates_vcite = known_templates_vcite,
known_templates_wikicite = known_templates_wikicite,
known_templates_sfn_whitelist = known_templates_sfn_whitelist,
}
4kr83fhwx07biki1lpdvtstxfzdkm31
Module:Footnotes/whitelist
828
12217
102905
2026-04-28T14:50:07Z
Nimmzo
21509
Caller [[Module:Footnotes/anchor id list]]
102905
Scribunto
text/plain
--[[--------------------------< W R A P P E R _ T E M P L A T E _ D E F A U L T S >----------------------------
A list of wrapper templates by their canonical names – spelling and capitalization is important. Each wrapper
template has a table of two values: [1] is the wrapper's default name-list as it is used in an anchor ID; [2] is
the default year. This table is indexed indirectly through the wrapper_templates table.
This table is not available externally.
]]
local wrapper_template_defaults = { -- keys are canonical template names
['Americana'] = {'Rines', '1920'}, -- tables with default name and default year
['Cite bryonames'] = {'BrindaAtwood', ''},
['Cite EB1911'] = {'Chisholm', '1911'}, -- tables with default name and default year
['Encyclopaedia Islamica'] = {'Islamica', ''},
['EB1911'] = {'Chisholm', '1911'},
['EI3'] = {'FleetKrämerMatringeNawas', ''},
['FEIS'] = {'', ''},
['Jepson eFlora'] = {'Jepson_Flora_Project', ''},
['Cite Merriam-Webster'] = {'Merriam-Webster', ''},
['Cite NatureServe'] = {'NatureServe', ''},
['ODNB'] = {'', ''}, -- there is no default anchor ID; this forces evaluation of {{cite ODNB}} redirects
['PLANTS'] = {'NRCS', ''},
['Silvics'] = {'BurnsHonkala', '1990'}
}
--[[--------------------------< W R A P P E R _ T E M P L A T E _ D E F A U L T S _ V O L >--------------------
For wrapper templates that use |volume= to specify default name (often editor names) and year. Wrapper templates
are indexed by their canonical names – spelling and capitalization is important. Each wrapper template has a table
of values for every volume. Volumes may be indexed by Arabic or Roman numerals. Each volume index has a table of
twp values" [1] is the wrapper's default name-list as it is used in an anchor ID; [2] is the default year. Each
wrapper template in this table must have a ['default'] key for those occasions when |volume= is omitted or empty.
This table is indexed indirectly through the wrapper_templates table.
This table is not available externally.
]]
-- Helper function to create Encyclopedia Iranica volume table
local iranica_years = {
['1'] = 1985,
['1/1'] = 1982, ['1/2'] = 1982, ['1/3'] = 1983, ['1/4'] = 1983, ['1/5'] = 1983, ['1/6'] = 1984, ['1/7'] = 1984,
['2'] = 1987,
['2/1'] = 1985, ['2/2'] = 1985, ['2/3'] = 1986, ['2/4'] = 1986, ['2/5'] = 1986, ['2/6'] = 1986,
['3'] = 1989,
['3/1'] = 1987, ['3/2'] = 1987, ['3/3'] = 1988, ['3/4'] = 1988, ['3/5'] = 1988, ['3/6'] = 1988, ['3/7'] = 1988, ['3/8'] = 1988,
['4'] = 1990,
['4/1'] = 1989, ['4/2'] = 1989, ['4/3'] = 1989, ['4/4'] = 1989, ['4/5'] = 1989, ['4/6'] = 1990, ['4/7'] = 1990, ['4/8'] = 1989,
['5'] = 1992,
['5/1'] = 1990, ['5/2'] = 1990, ['5/3'] = 1991, ['5/4'] = 1991, ['5/5'] = 1991, ['5/6'] = 1991,
['6'] = 1993,
['6/1'] = 1992, ['6/2'] = 1992,
['7'] = 1996,
['7/1'] = 1994, ['7/2'] = 1994, ['7/3'] = 1994, ['7/4'] = 1995, ['7/5'] = 1995, ['7/6'] = 1995,
['8'] = 1998,
['8/1'] = 1997, ['8/2'] = 1997, ['8/3'] = 1997,
['9'] = 1999,
['9/1'] = 1998,
['10'] = 2001,
['10/1'] = 1999, ['10/2'] = 2000, ['10/3'] = 2000, ['10/4'] = 2000,
['11'] = 2003,
['11/1'] = 2001, ['11/2'] = 2002, ['11/3'] = 2002, ['11/4'] = 2002, ['11/5'] = 2002,
['12'] = 2004,
['12/1'] = 2003, ['12/2'] = 2003, ['12/3'] = 2003,
['13'] = 2006,
['13/1'] = 2004, ['13/2'] = 2004, ['13/3'] = 2004, ['13/4'] = 2004,
['14'] = 2008,
['14/1'] = 2007, ['14/2'] = 2007, ['14/3'] = 2007,
['15'] = 2011,
['15/1'] = 2009, ['15/2'] = 2009, ['15/3'] = 2009, ['15/4'] = 2010, ['15/5'] = 2010, ['15/6'] = 2011,
['16'] = 2020,
['16/1'] = 2012, ['16/2'] = 2013, ['16/3'] = 2017,
['default'] = '1982–2021'
}
local iranica_volumes = {}
for k, yr in pairs(iranica_years) do
iranica_volumes[k] = {'Yarshater', tostring(yr)}
end
-- Helper function to create "TDV Encyclopedia of Islam" volume table
local TDV_years = {
['1'] = '1988', ['2'] = '1989', ['3'] = '1991', ['4'] = '1991', ['5'] = '1992',
['6'] = '1992', ['7'] = '1993', ['8'] = '1993', ['9'] = '1994', ['10'] = '1994',
['11'] = '1995', ['12'] = '1995', ['13'] = '1996', ['14'] = '1996', ['15'] = '1997',
['16'] = '1997', ['17'] = '1998', ['18'] = '1998', ['19'] = '1999', ['20'] = '1999',
['21'] = '2000', ['22'] = '2000', ['23'] = '2001', ['24'] = '2001', ['25'] = '2002',
['26'] = '2002', ['27'] = '2003', ['28'] = '2003', ['29'] = '2004', ['30'] = '2005',
['31'] = '2006', ['32'] = '2006', ['33'] = '2007', ['34'] = '2007', ['35'] = '2008',
['36'] = '2009', ['37'] = '2009', ['38'] = '2010', ['39'] = '2010', ['40'] = '2011',
['41'] = '2012', ['42'] = '2012', ['43'] = '2013', ['44'] = '2013',
['Supplement 1'] = '2016', ['Supplement 2'] = '2016', ['default'] = '1988–2016'
}
local TDV_volumes = {}
for k, yr in pairs(TDV_years) do
TDV_volumes[k] = {'TDVIA', yr}
end
local wrapper_template_defaults_vol = { -- primary keys are canonical template names; TODO: do these keys have to be canonical template names?
['Cite Catholic Encyclopedia'] = { -- secondary keys are volume
['1'] = {'Herbermann', '1907'},
['2'] = {'Herbermann', '1907'},
['3'] = {'Herbermann', '1908'},
['4'] = {'Herbermann', '1908'},
['5'] = {'Herbermann', '1909'},
['6'] = {'Herbermann', '1909'},
['7'] = {'Herbermann', '1910'},
['8'] = {'Herbermann', '1910'},
['9'] = {'Herbermann', '1910'},
['10'] = {'Herbermann', '1911'},
['11'] = {'Herbermann', '1911'},
['12'] = {'Herbermann', '1911'},
['13'] = {'Herbermann', '1912'},
['14'] = {'Herbermann', '1912'},
['15'] = {'Herbermann', '1912'},
['default'] = {'Herbermann', '1913'},
},
['Cite EB9'] = {
['1'] = {'Baynes', '1878'}, ['I'] = {'Baynes', '1878'},
['2'] = {'Baynes', '1878'}, ['II'] = {'Baynes', '1878'},
['3'] = {'Baynes', '1878'}, ['III'] = {'Baynes', '1878'},
['4'] = {'Baynes', '1878'}, ['IV'] = {'Baynes', '1878'},
['5'] = {'Baynes', '1878'}, ['V'] = {'Baynes', '1878'},
['6'] = {'Baynes', '1878'}, ['VI'] = {'Baynes', '1878'},
['7'] = {'Baynes', '1878'}, ['VII'] = {'Baynes', '1878'},
['8'] = {'Baynes', '1878'}, ['VIII'] = {'Baynes', '1878'},
['9'] = {'Baynes', '1879'}, ['IX'] = {'Baynes', '1879'},
['10'] = {'Baynes', '1879'}, ['X'] = {'Baynes', '1879'},
['11'] = {'BaynesSmith', '1880'}, ['XI'] = {'BaynesSmith', '1880'},
['12'] = {'BaynesSmith', '1881'}, ['XII'] = {'BaynesSmith', '1881'},
['13'] = {'BaynesSmith', '1881'}, ['XIII'] = {'BaynesSmith', '1881'},
['14'] = {'BaynesSmith', '1882'}, ['XIV'] = {'BaynesSmith', '1882'},
['15'] = {'BaynesSmith', '1883'}, ['XV'] = {'BaynesSmith', '1883'},
['16'] = {'BaynesSmith', '1883'}, ['XVI'] = {'BaynesSmith', '1883'},
['17'] = {'BaynesSmith', '1884'}, ['XVII'] = {'BaynesSmith', '1884'},
['18'] = {'BaynesSmith', '1885'}, ['XVIII'] = {'BaynesSmith', '1885'},
['19'] = {'BaynesSmith', '1885'}, ['XIX'] = {'BaynesSmith', '1885'},
['20'] = {'BaynesSmith', '1886'}, ['XX'] = {'BaynesSmith', '1886'},
['21'] = {'BaynesSmith', '1886'}, ['XXI'] = {'BaynesSmith', '1886'},
['22'] = {'BaynesSmith', '1887'}, ['XXII'] = {'BaynesSmith', '1887'},
['23'] = {'BaynesSmith', '1888'}, ['XXIII'] = {'BaynesSmith', '1888'},
['24'] = {'BaynesSmith', '1888'}, ['XXIV'] = {'BaynesSmith', '1888'},
['default'] = {'Baynes', '1875–1889'},
},
['The Cambridge History of Iran'] = {
['1'] = {'Fischer', '1968'},
['2'] = {'Gershevitch', '1985'},
['3a'] = {'Yarshater', '1983'},
['3b'] = {'Yarshater', '1983'},
['4'] = {'Frye', '1975'},
['5'] = {'Boyle', '1968'},
['6'] = {'LockhartJackson', '1986'},
['7'] = {'AveryHamblyMelville', '1991'},
['default'] = {'', '1968–1991'}
},
['Encyclopædia Iranica'] = iranica_volumes,
['Encyclopaedia of Islam, New Edition'] = {
['1'] = {'GibbKramersLévi-ProvençalSchacht', '1960'},
['2'] = {'LewisPellatSchacht', '1965'},
['3'] = {'LewisMénagePellatSchacht', '1971'},
['4'] = {'van_DonzelLewisPellatBosworth', '1978'},
['5'] = {'Bosworthvan_DonzelLewisPellat', '1986'},
['6'] = {'Bosworthvan_DonzelPellat', '1991'},
['7'] = {'Bosworthvan_DonzelHeinrichsPellat', '1993'},
['8'] = {'Bosworthvan_DonzelHeinrichsLecomte', '1995'},
['9'] = {'Bosworthvan_DonzelHeinrichsLecomte', '1997'},
['10'] = {'BearmanBianquisBosworthvan_Donzel', '2000'},
['11'] = {'BearmanBianquisBosworthvan_Donzel', '2002'},
['12'] = {'BearmanBianquisBosworthvan_Donzel', '2004'},
['atlas'] = {'Brice', '1981'},
['abridged'] = {'van_Donzel', '1994'},
['default'] = {'BearmanBianquisBosworthvan_Donzel', '1960–2005'},
},
['TDV Encyclopedia of Islam'] = TDV_volumes,
['New Cambridge Medieval History'] = {
['1'] = {'Fouracre', '2005'},
['2'] = {'McKitterick', '1995'},
['3'] = {'Reuter', '2000'},
['4a'] = {'LuscombeRiley-Smith', '2004'},
['4b'] = {'LuscombeRiley-Smith', '2004'},
['5'] = {'Abulafia', '1999'},
['6'] = {'Jones', '2000'},
['7'] = {'Allmand', '1998'},
['default'] = {'', '1995–2005'},
},
['The History of al-Tabari'] = {
['1'] = {'Rosenthal', '1989'},
['2'] = {'Brinner', '1986'},
['3'] = {'Brinner', '1991'},
['4'] = {'Perlmann', '1987'},
['5'] = {'Bosworth', '1999'},
['6'] = {'WattMcDonald', '1989'},
['7'] = {'McDonald', '1987'},
['8'] = {'Fishbein', '1997'},
['9'] = {'Poonawala', '1990'},
['10'] = {'Donner', '1993'},
['11'] = {'Blankinship', '1993'},
['12'] = {'Friedmann', '1992'},
['13'] = {'Juynboll', '1989'},
['14'] = {'Smith', '1994'},
['15'] = {'Humphreys', '1990'},
['16'] = {'Brockett', '1997'},
['17'] = {'Hawting', '1996'},
['18'] = {'Morony', '1987'},
['19'] = {'Howard', '1990'},
['20'] = {'Hawting', '1989'},
['21'] = {'Fishbein', '1990'},
['22'] = {'Rowson', '1989'},
['23'] = {'Hinds', '1990'},
['24'] = {'Powers', '1989'},
['25'] = {'Blankinship', '1989'},
['26'] = {'Hillenbrand', '1989'},
['27'] = {'Williams', '1985'},
['28'] = {'McAuliffe', '1995'},
['29'] = {'Kennedy', '1990'},
['30'] = {'Bosworth', '1989'},
['31'] = {'Fishbein', '1992'},
['32'] = {'Bosworth', '1987'},
['33'] = {'Bosworth', '1991'},
['34'] = {'Kraemer', '1989'},
['35'] = {'Saliba', '1985'},
['36'] = {'Waines', '1992'},
['37'] = {'Fields', '1987'},
['38'] = {'Rosenthal', '1985'},
['39'] = {'Landau-Tasseron', '1998'},
['40'] = {'Popovkin', '2007'},
['default'] = {'Yarshater', '1985–2007'},
},
}
--[[--------------------------< W R A P P E R _ T E M P L A T E S >--------------------------------------------
A list of wrapper templates and their redirects – spelling and capitalization is important; first character is
always uppercase. Each wrapper template gets its value from a k/v pair in the wrapper_template_defaults table.
article reader queries this table to see if template_name is a wrapper template
]]
local wrapper_templates = { -- keys are names of wrapper templates and their redirects
['Americana'] = wrapper_template_defaults['Americana'], -- canonical name; this template calls Cite Americana
['Cite bryonames'] = wrapper_template_defaults['Cite bryonames'],
['Catholic Encyclopedia'] = wrapper_template_defaults_vol['Cite Catholic Encyclopedia'],
['1913Catholic'] = wrapper_template_defaults_vol['Cite Catholic Encyclopedia'],
['Catholic'] = wrapper_template_defaults_vol['Cite Catholic Encyclopedia'],
['Catholic encyclopedia'] = wrapper_template_defaults_vol['Cite Catholic Encyclopedia'],
['CatholicEncyclopedia'] = wrapper_template_defaults_vol['Cite Catholic Encyclopedia'],
['CE13'] = wrapper_template_defaults_vol['Cite Catholic Encyclopedia'],
['CE1913'] = wrapper_template_defaults_vol['Cite Catholic Encyclopedia'],
['Cite Americana'] = wrapper_template_defaults['Americana'], -- canonical name
['Cite Catholic Encyclopedia'] = wrapper_template_defaults_vol['Cite Catholic Encyclopedia'],
['CathEncy'] = wrapper_template_defaults_vol['Cite Catholic Encyclopedia'],
['Cite Catholic Encyclopædia'] = wrapper_template_defaults_vol['Cite Catholic Encyclopedia'],
['Cite CE1913'] = wrapper_template_defaults_vol['Cite Catholic Encyclopedia'],
['Cite EB1911'] = wrapper_template_defaults['Cite EB1911'], -- canonical name
['1911EB'] = wrapper_template_defaults['Cite EB1911'], -- redirects
['EB1911 cite'] = wrapper_template_defaults['Cite EB1911'],
['Wikisource1911Enc Citation'] = wrapper_template_defaults['Cite EB1911'],
['Wikisource1911Enc citation'] = wrapper_template_defaults['Cite EB1911'],
['Cite EB9'] = wrapper_template_defaults_vol['Cite EB9'], -- canonical
['Eb9'] = wrapper_template_defaults_vol['Cite EB9'],
['The Cambridge History of Iran'] = wrapper_template_defaults_vol['The Cambridge History of Iran'],
['Cambridge History of Iran'] = wrapper_template_defaults_vol['The Cambridge History of Iran'],
['Encyclopædia Iranica'] = wrapper_template_defaults_vol['Encyclopædia Iranica'],
['Encyclopædia Iranica Online'] = wrapper_template_defaults_vol['Encyclopædia Iranica'],
['Encyclopaedia Iranica'] = wrapper_template_defaults_vol['Encyclopædia Iranica'],
['Cite Encyclopædia Iranica Online'] = wrapper_template_defaults_vol['Encyclopædia Iranica'],
['Encyclopaedia Islamica'] = wrapper_template_defaults['Encyclopaedia Islamica'],
['TDV Encyclopedia of Islam'] = wrapper_template_defaults_vol['TDV Encyclopedia of Islam'],
['TDV İslâm Ansiklopedisi'] = wrapper_template_defaults_vol['TDV Encyclopedia of Islam'],
['Cite ODNB'] = wrapper_template_defaults['ODNB'], -- canonical
['Cite odnb'] = wrapper_template_defaults['ODNB'],
['DNBweb'] = wrapper_template_defaults['ODNB'],
['OBDNweb'] = wrapper_template_defaults['ODNB'],
['ODNB'] = wrapper_template_defaults['ODNB'],
['ODNBref'] = wrapper_template_defaults['ODNB'],
['ODNBweb'] = wrapper_template_defaults['ODNB'],
['EB1911'] = wrapper_template_defaults['EB1911'], -- canonical name; this template calls Cite EB1911
['1911'] = wrapper_template_defaults['EB1911'], -- redirects
['1911s'] = wrapper_template_defaults['EB1911'],
['Britannica 1911'] = wrapper_template_defaults['EB1911'],
['Encyclopedia Britannica 1911'] = wrapper_template_defaults['EB1911'],
['Encyclopædia Britannica 1911'] = wrapper_template_defaults['EB1911'],
['EB9'] = wrapper_template_defaults_vol['Cite EB9'], -- canonical; this template calls Cite EB9
['Encyclopaedia of Islam, New Edition'] = wrapper_template_defaults_vol['Encyclopaedia of Islam, New Edition'], -- canonical
['EI2'] = wrapper_template_defaults_vol['Encyclopaedia of Islam, New Edition'],
['Encyclopaedia of Islam, THREE'] = wrapper_template_defaults['EI3'], -- canonical
['EI3'] = wrapper_template_defaults['EI3'],
['FEIS'] = wrapper_template_defaults['FEIS'],
['Jepson eFlora'] = wrapper_template_defaults['Jepson eFlora'],
['Cite Jepson eFlora'] = wrapper_template_defaults['Jepson eFlora'],
['Cite NatureServe'] = wrapper_template_defaults['Cite NatureServe'],
['New Cambridge Medieval History'] = wrapper_template_defaults_vol['New Cambridge Medieval History'], -- canonical
['Cite Merriam-Webster'] = wrapper_template_defaults['Cite Merriam-Webster'],
['Merriam-Webster'] = wrapper_template_defaults['Cite Merriam-Webster'],
['MW'] = wrapper_template_defaults['Cite Merriam-Webster'],
['MerriamWebsterDictionary'] = wrapper_template_defaults['Cite Merriam-Webster'],
['Cite MW'] = wrapper_template_defaults['Cite Merriam-Webster'],
['M-W'] = wrapper_template_defaults['Cite Merriam-Webster'],
['PLANTS'] = wrapper_template_defaults['PLANTS'],
['NRCS Plant Profile'] = wrapper_template_defaults['PLANTS'],
['NRCS Plants Profile'] = wrapper_template_defaults['PLANTS'],
['Cite PLANTS'] = wrapper_template_defaults['PLANTS'],
['Cite usda plants'] = wrapper_template_defaults['PLANTS'],
['The History of al-Tabari'] = wrapper_template_defaults_vol['The History of al-Tabari'], -- canonical
['The History of Al-Tabari'] = wrapper_template_defaults_vol['The History of al-Tabari'], -- redirects
['The History of al-Ṭabarī'] = wrapper_template_defaults_vol['The History of al-Tabari'], -- redirects
['Silvics'] = wrapper_template_defaults['Silvics'],
}
--[[--------------------------< T E M P L A T E _ N A M E S >--------------------------------------------------
This table holds the names of templates and the names of their redirects. Template names must be written exactly
as they are named at their templatespace page. This same also applies to redirects.
The indexes in this table are not critical but should be short and concise.
]]
local template_names = {
['ADB'] = {'Allgemeine Deutsche Biographie', 'Cite ADB'},
['Butt_Stations'] = {'Butt-Stations', 'Butt-stations'},
['Cam_Hist_Iran'] = {'Cambridge History of Iran', 'The Cambridge History of Iran'},
['DNB'] = {'Cite DNB', 'DNB', 'DNB Cite', 'Cite DNBSupp', 'DNBSupp', 'Cite DNB12', 'Cite DNBIE', 'DNB12', 'DNBIE', 'DNBfirst'},
['EI2'] = {'Encyclopaedia of Islam, New Edition','EI2'},
['ME-ref'] = {'ME-ref', 'Me-ref'},
['ODB'] = {'ODB', 'Oxford Dictionary of Byzantium'},
['ODLA'] = {'ODLA', 'Oxford Dictionary of Late Antiquity'},
['NDB'] = {'Cite NDB', 'NDB'},
['Iranica'] = {'Encyclopædia Iranica Online', 'Encyclopædia Iranica', 'Encyclopaedia Iranica', 'Cite Encyclopædia Iranica Online'},
['Tabari'] = {'The History of al-Tabari','The History of al-Ṭabarī'}
}
--[[--------------------------< W R A P P E R _ T E M P L A T E _ P A T T E R N S >----------------------------
A list of pairs: each pair is a (list of wrapper templates, list of corresponding whitelisted patterns).
The main code will sweep through the list of wrapper templates, checking if they are used, the match against corresponding whitelisted patterns.
]]
local wrapper_template_patterns = {
{{'Acad','Alumni Cantabrigienses','Venn'},{'ACAD%u%u%u?%u?%d+%u%u?'}},
{{'Cite AHD','Australian Heritage Database'},{'AHD%d+'}},
{{'Cite Austrian gazette'},{'[BR]GBl_[12]%d%d%d%-?I?I?%/%d+','StGBl_[12]%d%d%d%/%d+','GBlÖ_[12]%d%d%d%/%d+'}},
{{'Cite Bach Digital harvard','BDh'},{'[%d%a_%pöüäß→]+_at_Bach_Digital'}},
{{'Cite DNB', 'DNB', 'DNB Cite', 'Cite DNBSupp', 'DNBSupp', 'Cite DNB12', 'Cite DNBIE', 'DNB12', 'DNBIE', 'DNBfirst'},
{'CITEREF%a[%a%-_\']*188[5-9]', -- 1885–1889
'CITEREF%a[%a%-_\']*189%d', -- 1890–1899
'CITEREF%a[%a%-_\']*190[0-1]', -- 1900–1901
'CITEREF%a[%a%-_\']*1903', -- 1903 IE
'CITEREF%a[%a%-_\']*1912', -- 1912 supplement
}},
{{'Cite gnis2','GNIS 0'},{'%a.*_USGS$'}},
{{'Historic Environment Scotland','HEScotland'},{'Historic_Environment_Scotland%u%u%u?%u?%d'}},
{{'London Gazette'},{'Gazette%d+'}},
{template_names['ME-ref'],{'Tolkien19%d%d'}},
{{'National Heritage List for England','Images of England','IoEEntry','Heritage Gateway',
'NHLE','English Heritage List entry','IoE','National Heritage List for England entry','Historic England',
'Historic England research records','Cite PastScape','PastScape','HERR'},{'Historic_England%d+'}},
{{'Cite QHR','Cite CHIMS'},{'QHR%d+'}}
}
local noDefault = {'', ''}
-- ensure that all templates with patterns are classified as wrapper templates
for _, wtp in ipairs(wrapper_template_patterns) do
for _, t in ipairs(wtp[1]) do
if not wrapper_templates[t] then
wrapper_templates[t] = noDefault
end
end
end
--[[--------------------------< W H I T E L I S T >------------------------------------------------------------
This is a list of anchor IDs known to be associated with specific wrapper templates. The anchor ID serves as an
index into the table. The assigned value is another table that lists the associated template and any redirects.
Except for year disambiguators, anchor IDs must have the same form as the anchor creator makes; must be the
anchor-encoded form. Remove the year disambiguator.
Template names must be written exactly as they are named at their templatespace page. This same also applies to
redirects. Module:Footnotes reads the template names left to right so most-commonly-used template or redirect name
should appear first. When there are more than one name and when those templates have various anchor IDs the template
namelist should be added to the template_names{} table.
Note that references to Template:EB1911 are listed under "E" in the alphabetical list below to keep them organized.
]]
local whitelist = {
----------< # >----------
['CITEREF2013_Statistical_Yearbook_of_the_Republic_of_Croatia'] = {'Croatia Yearbook 2013'},
----------< A >----------
['CITEREFAGA_1884–1897'] = {'Schubert\'s compositions (references)'},
['CITEREFATOC2009'] = {'ATOCConnectingCommunitiesReportS10'},
['CITEREFAbramowitzStegun1983'] = {'Abramowitz Stegun ref'},
['CITEREFAbulafia1999'] = {'New Cambridge Medieval History'},
['CITEREFActa_Lipsiensium1723'] = {'Bach\'s compositions (sources)'},
['CITEREFAdamsFranzosa2009'] = {'Adams Franzosa Introduction to Topology Pure and Applied'},
['CITEREFAdaschErnstKeim1978'] = {'Adasch Topological Vector Spaces'},
['CITEREFAffleck1978'] = {'Affleck-On Track'},
['CITEREFAhlgrimm1969'] = {'Bach\'s compositions (sources)'},
['CITEREFAhrons1927'] = {'Book-Ahrons-British Steam Railway Locomotive'},
['CITEREFAl-Kindi1912'] = {'The Governors and Judges of Egypt'},
['CITEREFAlbert_Schumann1886'] = {'Cite ADB'},
['CITEREFAlden1916'] = {'Shakespeare sonnets bibliography'},
['CITEREFAldrich1969'] = {'Aldrich-LocosGER7'},
['CITEREFAleksidze2018'] = template_names['ODLA'],
['CITEREFAlexiou2010'] = {'Cite flatiron'},
['CITEREFAliprantisBorder2006'] = {'Aliprantis Border Infinite Dimensional Analysis A Hitchhiker\'s Guide Third Edition'},
['CITEREFAllamaniPanagiotopoulou1978'] = {'Ιστορία του Ελληνικού Έθνους'},
['CITEREFAllcockDaviesle_FlemingMaskelyne1951'] = {'RCTS-LocosGWR-1'},
['CITEREFAllcockDaviesle_FlemingMaskelyne1968'] = {'RCTS-LocosGWR-1'},
['CITEREFAllenBoddyBrownFry1970'] = {'RCTS-LocosLNER-8A', 'RCTS-LocosLNER'},
['CITEREFAllenBoddyBrownFry1971'] = {'RCTS-LocosLNER-8B', 'RCTS-LocosLNER'},
['CITEREFAllenBoddyBrownFry1983'] = {'RCTS-LocosLNER-8A', 'RCTS-LocosLNER'},
['CITEREFAllmand1998'] = {'New Cambridge Medieval History'},
['CITEREFAmerican_Railway_Association1922'] = {'1922 Locomotive Cyclopedia'},
['CITEREFAnderson1952'] = {'Naval Wars in the Levant 1559–1853'},
['CITEREFAngelov2018'] = template_names['ODLA'],
['CITEREFApostol1976'] = {'Apostol IANT'},
['CITEREFArkhangel'skiiPonomarev1984'] = {'Arkhangel\'skii Ponomarev Fundamentals of General Topology Problems and Exercises'},
['CITEREFArrey_von_Dommer1875'] = {'Cite ADB'},
['CITEREFAsmus1966'] = template_names['NDB'],
['CITEREFAspreas1929'] = {'Great Military and Naval Encyclopaedia'},
['CITEREFAtkins2007'] = {'Shakespeare sonnets bibliography'},
['CITEREFAudiKondevWangHuang2017'] = {'NUBASE2016'},
['CITEREFAvdoyan2018'] = template_names['ODLA'],
['CITEREFAwdry1990'] = {'Awdry-RailCo', 'Carnarvonshire Railway'},
['CITEREFRamelli2018'] = {'Oxford Dictionary of Late Antiquity'},['CITEREFA_History_of_the_Crusades'] = {'Setton-A History of the Crusades'},
----------< B >----------
['CITEREFBabinger1962'] = {'DBI', 'Dizionario Biografico degli Italiani'},
['CITEREFBabinger1978'] = {'Mehmed the Conqueror and His Time'},
['CITEREFBabinger1992'] = {'Mehmed the Conqueror and His Time'},
['CITEREFBachAgricola1754'] = {'Bach\'s compositions (sources)'},
['CITEREFBadura-SkodaBranscombe2008'] = {'Schubert\'s compositions (references)'},
['CITEREFBagley1999'] = {'Cite Cambridge History of China'},
['CITEREFBaldwin1969'] = {'Setton-A History of the Crusades'},
['CITEREFBaldwin1985'] = {'Setton-A History of the Crusades'},
['CITEREFBaldwin1991'] = template_names['ODB'],
['CITEREFBaldwinKazhdan1991'] = template_names['ODB'],
['CITEREFBaldwinTalbot1991'] = template_names['ODB'],
['CITEREFBaltzer1916'] = {'Baltzer-Kolonialbahnen'},
['CITEREFBanach1932'] = {'Banach Théorie des Opérations Linéaires'},
['CITEREFBangFrankKowanskiVondrak2007'] = {'Forgotten Railroads Through Westchester County'},
['CITEREFBartusis1991'] = template_names['ODB'],
['CITEREFBaxter1971'] = {'Baxter-BritishLocoCat1'},
['CITEREFBaxter1977'] = {'Baxter-BritishLocoCat1', 'Baxter: British Locomotive Catalogue 1825–1923'},
['CITEREFBaxter1978'] = {'Baxter-BritishLocoCat2A', 'Baxter: British Locomotive Catalogue 1825–1923'},
['CITEREFBaxter1979'] = {'Baxter-BritishLocoCat2B', 'Baxter: British Locomotive Catalogue 1825–1923'},
['CITEREFBaxter1982'] = {'Baxter-BritishLocoCat3A', 'Baxter-BritishLocoCat3B', 'Baxter: British Locomotive Catalogue 1825–1923'},
['CITEREFBaxter1982a'] = {'Baxter-BritishLocoCat3A', 'Baxter: British Locomotive Catalogue 1825–1923'},
['CITEREFBaxter1984'] = {'Baxter-BritishLocoCat4', 'Baxter: British Locomotive Catalogue 1825–1923'},
['CITEREFBaxter1986'] = {'Baxter-BritishLocoCat5A', 'Baxter: British Locomotive Catalogue 1825–1923'},
['CITEREFBaxter1988'] = {'Baxter-BritishLocoCat5B', 'Baxter: British Locomotive Catalogue 1825–1923'},
['CITEREFBaxter2012'] = {'Baxter-BritishLocoCat6', 'Baxter: British Locomotive Catalogue 1825–1923'},
['CITEREFBeißwenger1991'] = {'Bach\'s compositions (sources)'},
['CITEREFBek2001'] = {'Cite Grove'},
['CITEREFBelke1996'] = {'Tabula Imperii Byzantini'},
['CITEREFBelkeMersisch1990'] = {'Tabula Imperii Byzantini'},
['CITEREFBelkeRestle1984'] = {'Tabula Imperii Byzantini'},
['CITEREFBellini2008'] = {'DBI', 'Dizionario Biografico degli Italiani'},
['CITEREFBernhard_von_Poten1889'] = template_names['ADB'],
['CITEREFBernhard_von_Poten1898'] = template_names['ADB'],
['CITEREFBezilla1980'] = {'Bezilla-PRR-Electric-Traction'},
['CITEREFBianquis1998'] = {'The Cambridge History of Egypt', 'Cambridge History of Egypt'},
['CITEREFBierstedt1988'] = {'Bierstedt An Introduction to Locally Convex Inductive Limits'},
['CITEREFBirken1976'] = {'Die Provinzen des Osmanischen Reiches'},
['CITEREFBirtchnell1972'] = {'A Short History of Berkhamsted'},
['CITEREFBlake1966'] = {'DisraeliRef'},
['CITEREFBlanken2019'] = {'Bach\'s compositions (sources)'},
['CITEREFBlankinship1994'] = {'The End of the Jihâd State', 'The End of the Jihad State'},
['CITEREFBlautSchulze2008'] = {'Bach\'s compositions (sources)'},
['CITEREFBloom2007'] = {'Cite Routledge Broadway', 'Cite Broadway Routledge', 'Cite Routledge Guide to Broadway', 'Routledge Guide to Broadway'},
['CITEREFBoatner1988'] = {'Civil War Dictionary'},
['CITEREFBock1978'] = {'Audie-bock-directors'},
['CITEREFBodde1986'] = {'Cite Cambridge History of China'},
['CITEREFBoddyBrownFryHennigan1968'] = {'RCTS-LocosLNER-4', 'RCTS-LocosLNER'},
['CITEREFBoddyBrownFryHennigan1975'] = {'RCTS-LocosLNER-2B', 'RCTS-LocosLNER'},
['CITEREFBoddyBrownFryHennigan1977'] = {'RCTS-LocosLNER-9A', 'RCTS-LocosLNER-9B', 'RCTS-LocosLNER'},
['CITEREFBoddyBrownFryHennigan1979'] = {'RCTS-LocosLNER-3A', 'RCTS-LocosLNER'},
['CITEREFBoddyBrownHenniganHoole1984'] = {'RCTS-LocosLNER-6C', 'RCTS-LocosLNER'},
['CITEREFBoddyBrownHenniganNeve1981'] = {'RCTS-LocosLNER-3B', 'RCTS-LocosLNER'},
['CITEREFBoddyBrownNeveYeadon1983'] = {'RCTS-LocosLNER-6B', 'RCTS-LocosLNER'},
['CITEREFBoddyFryHenniganHoole1988'] = {'RCTS-LocosLNER-10A', 'RCTS-LocosLNER'},
['CITEREFBoddyFryHenniganHoole1990'] = {'RCTS-LocosLNER-10B', 'RCTS-LocosLNER'},
['CITEREFBoddyFryHenniganProud1963'] = {'RCTS-LocosLNER-1', 'RCTS-LocosLNER'},
['CITEREFBoddyNeveTeeYeadon1982'] = {'RCTS-LocosLNER-6A', 'RCTS-LocosLNER'},
['CITEREFBoddyNeveYeadon1973'] = {'RCTS-LocosLNER-2A', 'RCTS-LocosLNER'},
['CITEREFBody1989'] = {'Body-Railways-Vol2'},
['CITEREFBon1969'] = {'La Morée franque'},
['CITEREFBonner2010'] = {'New Cambridge History of Islam'},
['CITEREFBonnett2005'] = {'Bonnett Practical Rail Engineering'},
['CITEREFBonporti1712'] = {'Bach\'s compositions (sources)'},
['CITEREFBooth2000'] = {'Shakespeare sonnets bibliography'},
['CITEREFBorsari1964'] = {'DBI', 'Dizionario Biografico degli Italiani'},
['CITEREFBossert1914'] = {'Schaff-Herzog'},
['CITEREFBottoMitchell2002'] = {'Cite ATT Broadway', 'Cite At This Theatre Broadway', 'Cite Broadway At This Theatre', 'Cite Broadway ATT'},
['CITEREFBourbaki1987'] = {'Bourbaki Topological Vector Spaces', 'Bourbaki Topological Vector Spaces Part 1 Chapters 1–5'},
['CITEREFBourbaki1989'] = {'Bourbaki General Topology Part I Chapters 1-4', 'Bourbaki General Topology Part II Chapters 5-10', 'Bourbaki Algebra I Chapters 1-3 Springer'},
['CITEREFBourbaki1994'] = {'Bourbaki EHM'},
['CITEREFBournoutian2018'] = {'Cite Armenia and Imperial Decline'},
['CITEREFBowen1928'] = {'The Life and Times of Ali ibn Isa'},
['CITEREFBowmanCameronGarnsey2005'] = {'Cambridge Ancient History'},
['CITEREFBoyd1970'] = {'Boyd-MidWales'},
['CITEREFBoyd1975'] = {'Boyd-FR1'},
['CITEREFBoyd1985'] = {'Boyd-NCaerns2Penrhyn'},
['CITEREFBoyd1986'] = {'Boyd-NCaerns3Dinorwic'},
['CITEREFBoyd1988'] = {'Boyd-SCaerns1'},
['CITEREFBoyd1989'] = {'Boyd-SCaerns2'},
['CITEREFBoyd1990'] = {'Boyd-NCaerns1'},
['CITEREFBradshaw1968'] = {'Bradshaw-1910April'},
['CITEREFBradshaw1985'] = {'Bradshaw-1922July'},
['CITEREFBradshaw2011'] = {'Bradshaw-1895December'},
['CITEREFBradshaw2012'] = {'Bradshaw-1850March'},
['CITEREFBrand1968'] = {'Byzantium Confronts the West'},
['CITEREFBrand1991'] = {'DBI', 'ODB', 'Oxford Dictionary of Byzantium'},
['CITEREFBray2010'] = {'Bray-SDJR'},
['CITEREFBrett2010'] = {'New Cambridge History of Islam'},
['CITEREFBrown2008'] = {'The Cambridge History of the Byzantine Empire'},
['CITEREFBrown2021'] = {'Cite Gaia EDR3'},
['CITEREFBryan1886'] = {'Bryan (3rd edition)'},
['CITEREFBryan1889'] = {'Bryan (3rd edition)'},
['CITEREFBützerJeker1980'] = {'Grosser Eisenbahn-Atlas Schweiz'},
['CITEREFBuhle1909'] = {'Bach\'s compositions (sources)'},
['CITEREFBunbury1857'] = {'DGRG'},
['CITEREFBurant1987'] = {'Cite DCB'},
['CITEREFBurch1911'] = {'Burch Electric Traction'},
['CITEREFBurke1866'] = {'O\'Donnell family tree'},
['CITEREFBurrowsWallace1999'] = {'Cite gotham'},
['CITEREFBury1911'] = {'The Imperial Administrative System of the Ninth Century'},
['CITEREFButcherNicholson2018'] = template_names['ODLA'],
['CITEREFButt1995'] = template_names['Butt_Stations'],
----------< C >----------
['CITEREFCIC1983'] = {'CIC1983bib'},
['CITEREFCalifornia1988'] = {'CA-Rail Passenger Development Plan-1988'},
['CITEREFCallwell1999'] = {'Muni Chronology'},
['CITEREFCaltrans1984'] = {'Countrystudy'},
['CITEREFCameronWard-PerkinsWhitby2000'] = {'Cambridge Ancient History'},
['CITEREFCanepa2018'] = template_names['ODLA'],
['CITEREFCanny2008'] = {'O\'Donnell family tree'},
['CITEREFCappelCutlerKazhdan1991'] = template_names['ODB'],
['CITEREFCarl_von_Prantl1879'] = {'Cite ADB'},
['CITEREFCarlson2010'] = {'Dlmf'},
['CITEREFCaro1974'] = {'Cite Power Broker'},
['CITEREFCarpenter1977'] = template_names['ME-ref'],
['CITEREFCarpenter1981'] = template_names['ME-ref'],
['CITEREFCarpenter2023'] = template_names['ME-ref'],
['CITEREFCarra_de_VauxHodgson1965'] = {'EI2'},
['CITEREFCarter2006'] = {'Carter-RailwaysMotivePowerArgentina'},
['CITEREFCasserley1968'] = {'Casserley-joint'},
['CITEREFCasserleyJohnston1966'] = {'Casserley-LocoGrouping3'},
['CITEREFCasserleyJohnston1974'] = {'Casserley-LocoGrouping3', 'Casserley-LocoGrouping2', '0-7110-0554-0'},
['CITEREFCasway1984'] = {'O\'Donnell family tree'},
['CITEREFCavanna_Ciappina2001'] = {'DBI'},
['CITEREFCaveBucklandBeardsell2002'] = {'Cave-First Fifty'},
['CITEREFCawley2001'] = {'Medieval Lands by Charles Cawley', 'MLCC'},
['CITEREFCawley2001'] = {'Medieval Lands by Charles Cawley'},
['CITEREFCawley2010'] = {'MLCC'},
['CITEREFCawley2011'] = {'MLCC'},
['CITEREFCawley2012'] = {'Medieval Lands by Charles Cawley'},
['CITEREFChaffeeTwitchett2015'] = {'Cite Cambridge History of China'},
['CITEREFChaléardChanson-JabeurBéranger2006'] = {'Chaléard-Le cdf en Afrique'},
['CITEREFChambers1728'] = {'Cyclopaedia 1728'},
['CITEREFChasiotis1975'] = {'Ιστορία του Ελληνικού Έθνους'},
['CITEREFCheyneBlack1899'] = {'Biblica', 'Cite Biblica'},
['CITEREFCheyneBlack1899–1903'] = {'Cite Biblica'},
['CITEREFCheyneBlack1901'] = {'Cite Biblica'},
['CITEREFCheyneBlack1902'] = {'Cite Biblica'},
['CITEREFCheyneBlack1903'] = {'Cite Biblica'},
['CITEREFChisholm1911'] = {'Cite EB1911','EB1911','1911EB','EB1911 cite','1911','1911s','Britannica 1911','Encyclopedia Britannica 1911','Encyclopædia Britannica 1911','Wikisource1911Enc Citation','Wikisource1911Enc citation'},
['CITEREFChisholm1922'] = {'EB1922', 'Cite EB1922'},
['CITEREFChoniates1984'] = {'O City of Byzantium'},
['CITEREFChrista_Jost1999'] = template_names['NDB'],
['CITEREFChung1994'] = {'Country study'},
['CITEREFChurchmanHurst2001'] = {'Churchman & Hurst Railways of New Zealand'},
['CITEREFChurchman_&_Hurst2001'] = {'Churchman & Hurst Railways of New Zealand'},
['CITEREFChurella2013'] = {'Churella-PRR-1'},
['CITEREFClementsMcMahon2008'] = {'ClementsMcMahon-GSR Locomotives'},
['CITEREFClinker1978'] = {'Clinker-Stations'},
['CITEREFClinker1988'] = {'Clinker-Stations'},
['CITEREFCoates1990'] = {'Coates-Reading'},
['CITEREFColbyWilliams1916'] = {'New International Encyclopedia', 'NIE'},
['CITEREFColledgeWarlow2006'] = {'Colledge', 'Cite Colledge2006'},
['CITEREFColledgeWarlow2010'] = {'Cite Colledge2010'},
['CITEREFCollins2016'] = {'Cite Collins 2016'},
['CITEREFColvin1947'] = {'Colvin1947'},
['CITEREFConolly1998'] = {'IanAllan-PreGroup-Atlas1998'},
['CITEREFConway1990'] = {'Conway A Course in Functional Analysis'},
['CITEREFCookZimmermann1992'] = {'Cook-Western Maryland'},
['CITEREFCosentino2008'] = {'DBI'},
['CITEREFCotsonis2020'] = {'Catalogue of Byzantine Seals at Dumbarton Oaks and in the Fogg Museum of Art'},
['CITEREFCoulthard-Clark2002'] = {'Australian Dictionary of Biography'},
['CITEREFCousin1910'] = {'A Short Biographical Dictionary of English Literature', 'Cite SBDEL'},
['CITEREFCoverdale_&_Colpitts1946'] = {'Coverdale & Colpitts 1', 'Coverdale & Colpitts 2', 'Coverdale & Colpitts 3', 'Coverdale & Colpitts 4'},
['CITEREFCox1967'] = {'Cox-Upper Darby'},
['CITEREFCox2011'] = {'Cox-Dixie'},
['CITEREFCrevier1993'] = {'Crevier 1993'},
['CITEREFCrockett2007'] = {'Australian Dictionary of Biography'},
['CITEREFCroke2018'] = template_names['ODLA'],
['CITEREFCrone1980'] = {'Slaves on Horses'},
['CITEREFCrone2003'] = {'Slaves on Horses'},
['CITEREFCroughtonKidnerYoung1982'] = {'Croughton-PrivateStations'},
['CITEREFCruickshanks1970'] = {'HistoryofParliament'},
['CITEREFCsászár1978'] = {'Császár General Topology'},
['CITEREFCudahy2002'] = {'Cudahy-Hudson'},
['CITEREFCudahy2003'] = {'Cudahy-Subways'},
['CITEREFCurta2006'] = {'Southeastern Europe in the Middle Ages, 500–1250'},
----------< D >----------
['CITEREFDBI'] = {'DBI', 'Dizionario Biografico degli Italiani'},
['CITEREFDZS2015'] = {'Croatia Yearbook 2015'},
['CITEREFDadelsen1957'] = {'Bach\'s compositions (sources)'},
['CITEREFDaftary1990'] = {'Daftary-The Ismailis'},
['CITEREFDaftary2007'] = {'Daftary-The Ismailis'},
['CITEREFDaniel2010'] = {'New Cambridge History of Islam'},
['CITEREFDanielsDench1963'] = {'Daniels-NoMore'},
['CITEREFDanielsDench1973'] = {'Daniels-NoMore'},
['CITEREFDarleyCanepa2018'] = {'Oxford Dictionary of Late Antiquity'},
['CITEREFDaryaee2018'] = template_names['ODLA'],
['CITEREFDaryaeeCanepa2018'] = template_names['ODLA'],
['CITEREFDavid1961'] = {'Bach\'s compositions (sources)'},
['CITEREFDavidson2010'] = {'HistoryofParliament'},
['CITEREFDavidsonThrush2010'] = {'HistoryofParliament'},
['CITEREFDavies1956'] = {'RCTS-LocosGWR-11'},
['CITEREFDavies1996'] = {'Davies-PLMLocoList'},
['CITEREFDavies1997'] = {'Davies-NordLocoList'},
['CITEREFDavies2001'] = {'Davies-EstLocoList3', 'Davies-ÉtatLocoList'},
['CITEREFDavies2003'] = {'Davies-SNCFLocoList'},
['CITEREFDaviesFirthLuckingThomas1966'] = {'RCTS-LocosGWR-10'},
['CITEREFDe_Negri1997'] = {'DBI'},
['CITEREFDendy_MarshallKidner1982'] = {'Dendy Marshall-Southern Railway'},
['CITEREFDer_Matossian2020'] = {'Cite The First Republic of Armenia'},
['CITEREFDeutsch1951'] = {'Schubert\'s compositions (references)'},
['CITEREFDeutsch1978'] = {'Schubert\'s compositions (references)'},
['CITEREFDeutsche_Autos,_Band_2,2001'] = {'Deutsche Autos-2'},
['CITEREFDeutsche_Autos,_Band_3,2001'] = {'Deutsche Autos-3'},
['CITEREFDeutsche_Autos,_Band_4,2001'] = {'Deutsche Autos-4'},
['CITEREFDeutsche_Autos,_Band_5,2001'] = {'Deutsche Autos-5'},
['CITEREFDeutsche_Autos,_Band_6,2001'] = {'Deutsche Autos-6'},
['CITEREFDewick2005'] = {'Dewick-Atlas'},
['CITEREFDiamonstein-Spielvogel2011'] = {'Cite landmarks'},
['CITEREFDickens2018'] = template_names['ODLA'],
['CITEREFDienKnapp2019'] = {'Cite Cambridge History of China'},
['CITEREFDirksen1998'] = {'Bach\'s compositions (sources)'},
['CITEREFDirksen2010'] = {'Bach\'s compositions (sources)'},
['CITEREFDirksen2016'] = {'Bach\'s compositions (sources)'},
['CITEREFDixmier1984'] = {'Dixmier General Topology'},
['CITEREFDoganis1930'] = {'Great Military and Naval Encyclopaedia'},
['CITEREFDoleckiMynard2016'] = {'Dolecki Mynard Convergence Foundations Of Topology'},
['CITEREFDolkart1998'] = {'Cite morningside'},
['CITEREFDonaghy1972'] = {'Donaghy-LMR'},
['CITEREFDonohue2003'] = {'The Buwayhid Dynasty in Iraq'},
['CITEREFDorin1972'] = {'Dorin-North Western'},
['CITEREFDow1985'] = {'Dow-GC1', 'Dow-GC2', 'Dow-GC3'},
['CITEREFDowney2007'] = {'Downey-Chicago'},
['CITEREFDrummond1964'] = {'HistoryofParliament'},
['CITEREFDrury1985'] = {'Drury Historical Guide 1985'},
['CITEREFDrury1993'] = {'Drury-North American Steam'},
['CITEREFDugundji1966'] = {'Dugundji Topology'},
['CITEREFDuke1995'] = {'Duke-Santa Fe-1'},
['CITEREFDukeKeilty1990'] = {'Duke-RDC'},
['CITEREFDumbarton_Oaks_Hagiography_Database'] = {'Dumbarton Oaks Hagiography Database'},
['CITEREFDunbar1969'] = {'Dunbar-Railroads'},
['CITEREFDuncan-Jones2010'] = {'Shakespeare sonnets bibliography'},
['CITEREFDunlop1895'] = {'O\'Donnell family tree'},
['CITEREFDunn2013'] = {'Dunn-Comeng-5'},
['CITEREFDurham1998'] = {'California\'s Geographic Names'},
['CITEREFDurrant1972'] = {'Durrant-Steam Locos Eastern Europe'},
['CITEREFDurrant1981'] = {'Durrant-Garratt-Rev'},
['CITEREFDurrantLewisJorgensen1981'] = {'Durrant-SteamAfrica'},
['CITEREFDömlingKohlhase1971'] = {'Bach\'s compositions (sources)'},
['CITEREFDürr1952'] = {'Bach\'s compositions (sources)'},
['CITEREFDürr1954'] = {'Bach\'s compositions (sources)'},
['CITEREFDürr1987'] = {'Bach\'s compositions (sources)'},
['CITEREFDürrJones2006'] = {'Bach\'s compositions (sources)'},
['CITEREFDürrKobayashi1998'] = {'Bach\'s compositions (sources)'},
----------< E >----------
['CITEREFEarle2018'] = {'Gymnosperm Database'},
['CITEREFEaston1897'] = {'Eastons', 'EBD'},
['CITEREFEbata2019'] = {'BDh'},
['CITEREFEbata2020'] = {'BDh'},
['CITEREFEdwards1995'] = {'Edwards Functional Analysis Theory and Applications'},
['CITEREFEichberg1976'] = {'Bach\'s compositions (sources)'},
['CITEREFEl-Hibri2010'] = {'New Cambridge History of Islam'},
['CITEREFEl-Hibri2021'] = {'The Abbasid Caliphate: A History'},
['CITEREFEldredgeHorenstein2014'] = {'Cite concrete'},
['CITEREFElsholz1982'] = {'Schubert\'s compositions (references)'},
['CITEREFEppstein1966'] = {'Bach\'s compositions (sources)'},
['CITEREFEppstein1982'] = {'Bach\'s compositions (sources)'},
['CITEREFEquasis'] = {'Csr', 'Cite ship register'},
['CITEREFEuDaly2009'] = {'Complete Book of North American Railroading'},
['CITEREFEuDalySchaferJessupBoyd2009'] = {'Complete Book of North American Railroading'},
----------< F >----------
['CITEREFFairbank1978'] = {'Cite Cambridge History of China'},
['CITEREFFairbank1983'] = {'Cite Cambridge History of China'},
['CITEREFFairbankFeuerwerker1986'] = {'Cite Cambridge History of China'},
['CITEREFFairbankLiu1980'] = {'Cite Cambridge History of China'},
['CITEREFFang1943'] = {'Cite ECCP'},
['CITEREFFarinella2001'] = {'DBI'},
['CITEREFFeder1958'] = {'Bach\'s compositions (sources)'},
['CITEREFFederal_Writers'_Project1939'] = {'Cite fednyc'},
['CITEREFFernandez1983'] = {'Fernandez1983'},
['CITEREFFerneyhough1980'] = {'Ferneyhough-LMR'},
['CITEREFFiaccadori1991'] = template_names['ODB'],
['CITEREFFine1991'] = {'The Early Medieval Balkans'},
['CITEREFFine1994'] = {'The Late Medieval Balkans'},
['CITEREFFitzpatrickLink1960'] = {'Nebraska Place-Names'},
['CITEREFFleetKrämerMatringeNawas'] = {'Encyclopaedia of Islam, THREE','EI3'},
['CITEREFFletcher,_Great_Tank_Scandal'] = {'Book-Fletcher-Great Tank Scandal'},
['CITEREFFletcher,_Universal_Tank'] = {'Book-Fletcher-Universal Tank'},
['CITEREFFlora_of_China'] = {'EFloras'},
['CITEREFFlora_of_North_America'] = {'EFloras'},
['CITEREFFlora_of_North_America2009'] = {'EFloras'},
['CITEREFFluckMarshallWilson1996'] = {'FluMarWil-LocRailCR'},
['CITEREFFonstad1991'] = template_names['ME-ref'],
['CITEREFFordCrowther1922'] = {'Ford1922'},
['CITEREFForkelTerry1920'] = {'Bach\'s compositions (sources)'},
['CITEREFFornaçon,_Siegfried1957'] = template_names['NDB'],
['CITEREFForrestal1999'] = {'Forrestal-Wineries'},
['CITEREFForster1990'] = {'Cite DCB'},
['CITEREFFoss1991'] = template_names['ODB'],
['CITEREFFoster1971'] = template_names['ME-ref'],
['CITEREFFoster1996'] = {'Foster-Field Guide'},
['CITEREFFouracre2005'] = {'New Cambridge Medieval History'},
['CITEREFFrailey2010'] = {'Frailey-Twilight'},
['CITEREFFranke1994'] = {'Cite Cambridge History of China', 'The Cambridge History of China'},
['CITEREFFranke1994'] = {'Cite Cambridge History of China'},
['CITEREFFrankeTwitchett1994'] = {'Cite Cambridge History of China'},
['CITEREFFranz_Schnorr_von_Carolsfeld1883'] = {'Cite ADB'},
['CITEREFFriedrich_Wilhelm_Bautz1975'] = {'BBKL'},
['CITEREFFriedrich_Wilhelm_Bautz1990'] = {'BBKL'},
['CITEREFFry1964'] = {'RCTS-LocosLNER-7', 'RCTS-LocosLNER'},
['CITEREFFry1966'] = {'RCTS-LocosLNER-5', 'RCTS-LocosLNER'},
['CITEREFFryHooleMannersNeve1981'] = {'RCTS-LocosLNER-3C', 'RCTS-LocosLNER'},
['CITEREFFubini2012'] = {'DBI', 'Dizionario Biografico degli Italiani'},
['CITEREFFudenbergTirole1991'] = {'Cite Fudenberg Tirole 1991'},
['CITEREFFultonHarris1991'] = {'Fulton-Harris'},
----------< G >----------
['CITEREFGaines2008'] = {'Cite Gaines 2008'},
['CITEREFGardner2005'] = {'MSW3 Microbiotheria'},
['CITEREFGardoni2015'] = {'DBI', 'Dizionario Biografico degli Italiani'},
['CITEREFGareyJohnson1979'] = {'Garey-Johnson'},
['CITEREFGarth2003'] = template_names['ME-ref'],
['CITEREFGeanakoplos1959'] = {'Emperor Michael Palaeologus and the West'},
['CITEREFGeorg_von_Dadelsen1953'] = template_names['NDB'],
['CITEREFGiannasi1975'] = {'DBI', 'Dizionario Biografico degli Italiani'},
['CITEREFGibb1923'] = {'The Arab Conquests in Central Asia'},
['CITEREFGibbs1964'] = {'Gibbs-Graveyard'},
['CITEREFGil1997'] = {'A History of Palestine, 634-1099', 'A History of Palestine, 634–1099'},
['CITEREFGillham1988'] = {'Gillham-Electric'},
['CITEREFGillham2001'] = {'Gillham-Waterloo-City'},
['CITEREFGilliland1969'] = {'Gilliland'},
['CITEREFGilliland1994'] = {'Pop Chronicles 40s'},
['CITEREFGilliverMarshallWeiner2006'] = template_names['ME-ref'],
['CITEREFGilmanPeckColby1905'] = {'Cite NIE', 'New International Encyclopedia', 'NIE'},
['CITEREFGilmanPeckColby1916'] = {'New International Encyclopedia', 'NIE'},
['CITEREFGleaves1921'] = {'Gleaves'},
['CITEREFGlischinski1997'] = {'Glischinski-Santa Fe'},
['CITEREFGlöckner1983'] = {'Bach\'s compositions (sources)'},
['CITEREFGoldberg1981'] = {'Goldberg-Amtrak'},
['CITEREFGordon2001'] = {'Gordon-The Breaking of a Thousand Swords'},
['CITEREFGraham1974'] = {'Cite DCB'},
['CITEREFGrant1994'] = {'Grant-Death'},
['CITEREFGrant2010'] = {'Grant-Twilight'},
['CITEREFGrant2017'] = {'Grant-RailCo'},
['CITEREFGreenlaw2007'] = {'Greenlaw-Via Rail'},
['CITEREFGreenwoodEarnshaw1997'] = {'Greenwood&Earnshaw2nd'},
['CITEREFGregory1991'] = template_names['ODB'],
['CITEREFGregoryKazhdan1991'] = template_names['ODB'],
['CITEREFGregoryŠevčenko1991'] = template_names['ODB'],
['CITEREFGrete_Schemann1957'] = template_names['NDB'],
['CITEREFGrey2002'] = {'Australian Dictionary of Biography'},
['CITEREFGrierson1903'] = {'Cite LSI', 'LSI', 'Linguistic Survey of India'},
['CITEREFGrierson1908'] = {'Cite LSI', 'LSI', 'Linguistic Survey of India'},
['CITEREFGrierson1919'] = {'Cite LSI', 'LSI', 'Linguistic Survey of India'},
['CITEREFGrierson1967'] = {'Cite LSI', 'LSI', 'Linguistic Survey of India'},
['CITEREFGriffith1991'] = template_names['ODB'],
['CITEREFGriffithsSmith1999'] = {'Griffiths-Sheds1'},
['CITEREFGriffithsSmith2000'] = {'Griffiths-Sheds2'},
['CITEREFGrothendieck1955'] = {'Grothendieck Produits Tensoriels Topologiques et Espaces Nucléaires'},
['CITEREFGrothendieck1973'] = {'Grothendieck Topological Vector Spaces'},
['CITEREFGrothendieckDieudonné1960'] = {'EGA'},
['CITEREFGrothendieckDieudonné1961'] = {'EGA'},
['CITEREFGrothendieckDieudonné1963'] = {'EGA'},
['CITEREFGrothendieckDieudonné1964'] = {'EGA'},
['CITEREFGrothendieckDieudonné1965'] = {'EGA'},
['CITEREFGrothendieckDieudonné1966'] = {'EGA'},
['CITEREFGrothendieckDieudonné1967'] = {'EGA'},
['CITEREFGrothendieckDieudonné1971'] = {'EGA'},
['CITEREFGroves2005'] = {'MSW3 Primates', 'MSW3 Groves'},
['CITEREFGrubb2005'] = {'MSW3 Artiodactyla'},
['CITEREFGuilland1967'] = {'Recherches sur les institutions byzantines'},
['CITEREFGulino2005'] = {'DBI', 'Dizionario Biografico degli Italiani'},
['CITEREFGunzburg1984'] = {'Gunzburg-History WAGR Steam'},
['CITEREFGunzburg1989'] = {'Gunzburg-MRWA Locomotives'},
----------< H >----------
['CITEREFHaarer2018'] = template_names['ODLA'],
['CITEREFHaldon1999'] = {'Warfare, State and Society in the Byzantine World, 565–1204'},
['CITEREFHalliday1985'] = {'Halliday-AustWineCompend'},
['CITEREFHalliday2008'] = {'Halliday-JHWAtlasAust2008'},
['CITEREFHalliday2009'] = {'Halliday-AustWineEncyc'},
['CITEREFHalm1991'] = {'Das Reich des Mahdi'},
['CITEREFHalm2003'] = {'Die Kalifen von Kairo'},
['CITEREFHalm2014'] = {'Kalifen und Assassinen'},
['CITEREFHalmos1982'] = {'Halmos A Hilbert Space Problem Book 1982'},
['CITEREFHalpenny1990'] = {'Canadabio'},
['CITEREFHammondAnderson1993'] = template_names['ME-ref'],
['CITEREFHammondScull1995'] = template_names['ME-ref'],
['CITEREFHammondScull2005'] = template_names['ME-ref'],
['CITEREFHammondScull2006'] = template_names['ME-ref'],
['CITEREFHans_Heinrich_Borcherdt1955'] = template_names['NDB'],
['CITEREFHans_Knudsen1972'] = template_names['NDB'],
['CITEREFHansen1988'] = {'Book-Hansen-US Nuclear Weapons'},
['CITEREFHartshorne1977'] = {'Hartshorne AG'},
['CITEREFHasumi2003'] = {'Hasumi-shiguehiko-ozu-2003'},
['CITEREFHaswell-Smith2004'] = {'Haswell-Smith'},
['CITEREFHaugic1908'] = {'Schaff-Herzog'},
['CITEREFHawting1987'] = {'The First Dynasty of Islam'},
['CITEREFHawting2000'] = {'The First Dynasty of Islam'},
['CITEREFHaynes2011'] = {'RubberBible92nd'},
['CITEREFHeinichen1728'] = {'Bach\'s compositions (sources)'},
['CITEREFHeinrich_Welti1890'] = {'Cite ADB'},
['CITEREFHelgen2005'] = {'MSW3 Scandentia'},
['CITEREFHellmann1965'] = {'Bach\'s compositions (sources)'},
['CITEREFHenderson2004'] = {'Cite History of New York Playhouses'},
['CITEREFHenrici1725'] = {'Bach\'s compositions (sources)'},
['CITEREFHenryOrsmond1928'] = {'Raiatea family tree'},
['CITEREFHermann_Palm1876'] = {'Cite ADB'},
['CITEREFHerr2000'] = {'Herr-LN'},
['CITEREFHeschel2007'] = {'Encyclopaedia Judaica', 'Cite EJ', 'Cite Encyclopaedia Judaica'},
['CITEREFHidyHidyScottHofsummer2004'] = {'Hidy-Great Northern'},
['CITEREFHildHellenkemper1990'] = {'Tabula Imperii Byzantini'},
['CITEREFHildHellenkemper1994'] = {'Tabula Imperii Byzantini'},
['CITEREFHildRestle1981'] = {'Tabula Imperii Byzantini'},
['CITEREFHills,_Power_from_Steam'] = {'Book-Hills-Power from Steam'},
['CITEREFHills1989'] = {'Book-Hills-Power from Steam'},
['CITEREFHilmarJestremski2004'] = {'Schubert\'s compositions (references)'},
['CITEREFHilton1980'] = {'Hilton-Amtrak'},
['CITEREFHilton1990'] = {'Hilton Narrow Gauge'},
['CITEREFHiltonDue1960'] = {'Hilton-Interurban'},
['CITEREFHinton1986'] = {'HistoryofParliament'},
['CITEREFHirsch1906'] = {'Cite JE1906'},
['CITEREFHistoric_England'] = {'NHLE', 'National Heritage List for England'},
['CITEREFHistoric_England_Benty_Grange'] = {'NHLE'},
['CITEREFHistoric_Environment_Scotland'] = {'Canmore'},
['CITEREFHistoric_Environment_Scotland1972'] = {'Historic Environment Scotland'},
['CITEREFHistoric_Environment_Scotland1976'] = {'Historic Environment Scotland'},
['CITEREFHistoric_Environment_Scotland2020'] = {'Historic Environment Scotland'},
['CITEREFHistoric_Environment_Scotland:_Rusco_Tower2020'] = {'Historic Environment Scotland'},
['CITEREFHob.'] = {'Schubert\'s compositions (references)'},
['CITEREFHoffmanSmith2005'] = {'MSW3 Lagomorpha'},
['CITEREFHoffmann1738'] = {'Bach\'s compositions (sources)'},
['CITEREFHofmann1983'] = {'Bach\'s compositions (sources)'},
['CITEREFHofmann1987'] = {'Bach\'s compositions (sources)'},
['CITEREFHofmann1999'] = {'Bach\'s compositions (sources)'},
['CITEREFHolland1972'] = {'Holland-Vol 2'},
['CITEREFHolland1988'] = {'Cite DCB'},
['CITEREFHolland1989'] = {'Holland1989'},
['CITEREFHolland2001'] = {'Holland-Classic'},
['CITEREFHollingsworth1980'] = {'Hollingsworth-Atlas-Rigby'},
['CITEREFHollingsworth1991'] = template_names['ODB'],
['CITEREFHollingsworthCutler1991'] = template_names['ODB'],
['CITEREFHolmgren2003'] = {'EFloras'},
['CITEREFHoltBiddle1986'] = {'Holt-NorthWest'},
['CITEREFHolton1989'] = {'Holton-Reading-1'},
['CITEREFHonigmann1935'] = {'Byzance et les Arabes'},
['CITEREFHopley1983'] = {'Australian Dictionary of Biography'},
['CITEREFHort1911'] = {'DCBL'},
['CITEREFHorváth1966'] = {'Horváth Topological Vector Spaces and Distributions Volume 1 1966'},
['CITEREFHounshell1984'] = {'Hounshell1984'},
['CITEREFHovannisian1967'] = {'Cite Armenia on the Road to Independence'},
['CITEREFHovannisian1971'] = {'Cite The Republic of Armenia Volume 1'},
['CITEREFHovannisian1982'] = {'Cite The Republic of Armenia Volume 2'},
['CITEREFHovannisian1996'] = {'Cite The Republic of Armenia Volume 3', 'Cite The Republic of Armenia Volume 4'},
['CITEREFHowes1995'] = {'Howes Modern Analysis and Topology 1995'},
['CITEREFHudson1997'] = {'Country study'},
['CITEREFHughes1979'] = {'Hughes-SteamLocosIndia3'},
['CITEREFHughes1990'] = {'Hughes-IndianLocos1'},
['CITEREFHughes1992'] = {'Hughes-IndianLocos2'},
['CITEREFHughes1994'] = {'Hughes-IndianLocos3'},
['CITEREFHughes1996'] = {'Hughes-IndianLocos4'},
['CITEREFHummel1943'] = {'Cite ECCP'},
['CITEREFHumphreys2018'] = template_names['ODLA'],
['CITEREFHunter-Crawley2018'] = template_names['ODLA'],
['CITEREFHunter1949'] = {'Hunter-Steamboats-1949'},
['CITEREFHunter1993'] = {'Hunter-Steamboats-1993'},
['CITEREFHunter2008'] = {'Country study'},
['CITEREFHunter2012'] = {'Cite HGOC', 'Cite Hunter'},
['CITEREFHutterer2005'] = {'MSW3 Soricomorpha'},
['CITEREFHütter2012'] = {'Hütter-50bis53'},
['CITEREFHütter2015'] = {'Hütter-54bis59'},
['CITEREFHütter2021'] = {'Hütter-60bis91'},
----------< I >----------
['CITEREFIacocca1984'] = {'Iacocca1984'},
['CITEREFIbn_Khallikan1843'] = {'Ibn Khallikan\'s Biographical Dictionary'},
['CITEREFImber2002'] = {'Imber-The Ottoman Empire, 1300–1650'},
['CITEREFInalcik1989'] = {'Setton-A History of the Crusades'},
['CITEREFIshino1998'] = {'Teishajo'},
['CITEREFIvey1919'] = {'Ivey-Marquette'},
----------< J >----------
['CITEREFJackson1908'] = {'Schaff-Herzog'},
['CITEREFJackson1995'] = {'Cite enc-nyc'},
['CITEREFJackson2010'] = {'Cite enc-nyc2'},
['CITEREFJacobs1904'] = {'Cite Jewish Encyclopedia'},
['CITEREFJarchow1981'] = {'Jarchow Locally Convex Spaces'},
['CITEREFJohn_O'Donovan1856'] = {'Cite AFM'},
['CITEREFJohnson1906'] = {'BDA1906', 'Cite BDA1906'},
['CITEREFJohnstonWelshSchafer2001'] = {'Johnston-Streamliner'},
['CITEREFJones2000'] = {'New Cambridge Medieval History'},
['CITEREFJones2011'] = {'Cite EPD'},
['CITEREFJordan2002'] = {'Jordan-WineWABest'},
['CITEREFJoshi1983'] = {'Joshi Introduction to General Topology'},
['CITEREFJoslen2003'] = {'Joslen-OOB'},
['CITEREFJowett1867'] = {'DGRBM', 'Cite DGRBM'},
['CITEREFJowett1989'] = {'Jowett-Atlas', 'Carnarvonshire Railway'},
['CITEREFJowett2000'] = {'Jowett-Nationalised'},
['CITEREFJullien2018'] = template_names['ODLA'],
['CITEREFJupp1986'] = {'HistoryofParliament'},
----------< K >----------
['CITEREFK.'] = {'Schubert\'s compositions (references)'},
['CITEREFKadinsky2016'] = {'Cite Hidden Waters NYC'},
['CITEREFKaegi1991'] = template_names['ODB'],
['CITEREFKalla-Bishop1986'] = {'Kalla-Bishop-FS-Steam'},
['CITEREFKamp1981'] = {'DBI', 'Dizionario Biografico degli Italiani'},
['CITEREFKang2008'] = {'Country study'},
['CITEREFKarl_Frohnmeyer1953'] = template_names['NDB'],
['CITEREFKarnow1989'] = {'Cite-Karnow'},
['CITEREFKartesz2014'] = {'BONAP'},
['CITEREFKazemzadeh1951'] = {'Cite The Struggle for Transcaucasia'},
['CITEREFKazemzadeh1951'] = {'The Struggle for Transcaucasia'},
['CITEREFKazhdan1991'] = template_names['ODB'],
['CITEREFKazhdanCutler1991'] = template_names['ODB'],
['CITEREFKazhdanJeffreys1991'] = template_names['ODB'],
['CITEREFKazhdanŠevčenko1991'] = template_names['ODB'],
['CITEREFKeefe2006'] = {'Schubert\'s compositions (references)'},
['CITEREFKeightley1999'] = {'Cite Cambridge History of China'},
['CITEREFKeller1937'] = {'Bach\'s compositions (sources)'},
['CITEREFKelley1975'] = {'Kelley General Topology'},
['CITEREFKelly1988'] = {'Cite GEIL'},
['CITEREFKellyBurrage1920'] = {'Cite AMB1920'},
['CITEREFKennedy1998'] = {'The Cambridge History of Egypt', 'Cite Kennedy 1998', 'Cambridge History of Egypt'},
['CITEREFKennedy2001'] = {'Kennedy-The Armies of the Caliphs'},
['CITEREFKennedy2004'] = {'The Prophet and the Age of the Caliphates'},
['CITEREFKennedy2007'] = {'Kennedy-The Great Arab Conquests'},
['CITEREFKennedy2016'] = {'The Prophet and the Age of the Caliphates'},
['CITEREFKenyon2011'] = {'Bach\'s compositions (sources)'},
['CITEREFKerrigan1995'] = {'Shakespeare sonnets bibliography'},
['CITEREFKhaleelulla1982'] = {'Khaleelulla Counterexamples in Topological Vector Spaces'},
['CITEREFKhan2012'] = {'Cite Banglapedia'},
['CITEREFKim1994'] = {'Country study'},
['CITEREFKirnberger1774'] = {'Bach\'s compositions (sources)'},
['CITEREFKirnberger1780'] = {'Bach\'s compositions (sources)'},
['CITEREFKlein2006'] = {'Klein-UP-2'},
['CITEREFKobayashi1978'] = {'Bach\'s compositions (sources)'},
['CITEREFKoderHild1976'] = {'Tabula Imperii Byzantini'},
['CITEREFKoderSoustalKoder1998'] = {'Tabula Imperii Byzantini'},
['CITEREFKoeppel2015'] = {'Cite citygrid'},
['CITEREFKofos1977'] = {'Ιστορία του Ελληνικού Έθνους'},
['CITEREFKohler1902'] = {'Cite Jewish Encyclopedia'},
['CITEREFKolde1914'] = {'Schaff-Herzog'},
['CITEREFKoliopoulos1978'] = {'Ιστορία του Ελληνικού Έθνους'},
['CITEREFKolmogorovFomin1957'] = {'Kolmogorov Fomin Elements of the Theory of Functions and Functional Analysis'},
['CITEREFKonrad_Ameln1985'] = template_names['NDB'],
['CITEREFKorkotyan1932'] = {'Cite The Population of Soviet Armenia'},
['CITEREFKoska2011'] = {'Bach\'s compositions (sources)'},
['CITEREFKratville1962'] = {'Kratville-SSL'},
['CITEREFKretzschmar1910'] = {'Bach\'s compositions (sources)'},
['CITEREFKube2009'] = {'Schubert\'s compositions (references)'},
['CITEREFKubrusly2011'] = {'Kubrusly The Elements of Operator Theory 2nd Edition 2011'},
['CITEREFKulp1972'] = {'Kulp-Lehigh and New England'},
['CITEREFKuznik2008'] = {'Bach\'s compositions (sources)'},
['CITEREFKöthe1969'] = {'Köthe Topological Vector Spaces I'},
['CITEREFKöthe1979'] = {'Köthe Topological Vector Spaces II'},
['CITEREFKöthe1983'] = {'Köthe Topological Vector Spaces I'},
['CITEREFKülzer2008'] = {'Tabula Imperii Byzantini'},
----------< L >----------
['CITEREFLa_Porta2018'] = template_names['ODLA'],
['CITEREFLacourcière1974'] = {'Cite DCB'},
['CITEREFLadefogedMaddieson1996'] = {'SOWL'},
['CITEREFLandau-Tasseron2010'] = {'New Cambridge History of Islam'},
['CITEREFLandauCondit1996'] = {'Cite nysky'},
['CITEREFLandmann1907'] = {'Bach\'s compositions (sources)'},
['CITEREFLang2002'] = {'Lang Algebra'},
['CITEREFLane1973'] = {'Venice: A Maritime Republic'},
['CITEREFLaërtius1925'] = {'Cite Lives of the Eminent Philosophers', 'Cite LotEP'},
['CITEREFLe_Quien1740'] = {'Oriens Christianus'},
['CITEREFLe_Strange1900'] = {'Baghdad During the Abbasid Caliphate'},
['CITEREFLe_Strange1905'] = {'Lands of the Eastern Caliphate'},
['CITEREFLe_Strange1922'] = {'Baghdad During the Abbasid Caliphate'},
['CITEREFLeblanc1979'] = {'Cite DCB'},
['CITEREFLee1903'] = {'Cite DNBIE'},
['CITEREFLee2018'] = template_names['ODLA'],
['CITEREFLegifrance'] = {'Cite Legifrance', 'Cite Légifrance'},
['CITEREFLeisingerWollny1993'] = {'Bach\'s compositions (sources)'},
['CITEREFLev1999'] = {'Saladin in Egypt'},
['CITEREFLevitan2001'] = {'Springer'},
['CITEREFLewin1925'] = {'Lewin-EarlyRail'},
['CITEREFLewis1969'] = {'Setton-A History of the Crusades'},
['CITEREFLewis1986'] = {'Lewis-Shortline-1986'},
['CITEREFLewis1991'] = {'Lewis-Shortline-1991'},
['CITEREFLewis1996'] = {'Lewis-Shortline-1996'},
['CITEREFLi2002'] = {'Cite Cambridge History of China'},
['CITEREFLiederNet_Archive'] = {'Schubert\'s compositions (references)'},
['CITEREFLighthouses_of_Australia_Inc'] = {'Cite loa'},
['CITEREFLilieLudwigPratschZielke1998–2013'] = {'Prosopographie der mittelbyzantinischen Zeit'},
['CITEREFLilieLudwigPratschZielke1999'] = {'Prosopographie der mittelbyzantinischen Zeit', 'PMBZ'},
['CITEREFLilieLudwigPratschZielke2000'] = {'Prosopographie der mittelbyzantinischen Zeit'},
['CITEREFLilieLudwigPratschZielke2001'] = {'Prosopographie der mittelbyzantinischen Zeit'},
['CITEREFLilieLudwigPratschZielke2002'] = {'Prosopographie der mittelbyzantinischen Zeit'},
['CITEREFLilieLudwigPratschZielke2009'] = {'Prosopographie der mittelbyzantinischen Zeit'},
['CITEREFLilieLudwigPratschZielke2013'] = {'Prosopographie der mittelbyzantinischen Zeit'},
['CITEREFLind1986'] = {'Lind-Limiteds'},
['CITEREFLindsay1968'] = {'Lindsay-CanalScot'},
['CITEREFLittle1974'] = {'Cite DCB'},
['CITEREFLoeweShaughnessy1999'] = {'Cite Cambridge History of China'},
['CITEREFLohrThielmann1988'] = {'Lohr-EFA2.7'},
['CITEREFLongnon1969'] = {'Setton-A History of the Crusades'},
['CITEREFLoverance2018'] = template_names['ODLA'],
['CITEREFLukonin1983'] = {'Cambridge History of Iran'},
['CITEREFLurie'] = {'Lurie-HA'},
['CITEREFLuscombeRiley-Smith2004'] = {'New Cambridge Medieval History'},
['CITEREFLuttrell1975'] = {'Setton-A History of the Crusades'},
['CITEREFLuttrell1987'] = {'DBI'},
['CITEREFLynch2004'] = {'Lynch-Penn Central'},
['CITEREFLynch2005'] = {'Lynch-New Haven passenger'},
['CITEREFLynch2018'] = template_names['ODLA'],
['CITEREFLéger1990'] = {'Cite DCB'},
['CITEREFle_Fleming1953'] = {'RCTS-LocosGWR-8'},
['CITEREFle_Fleming1954'] = {'RCTS-LocosGWR-7'},
['CITEREFle_Fleming1958'] = {'RCTS-LocosGWR-5'},
['CITEREFle_Fleming1960'] = {'RCTS-LocosGWR-8'},
['CITEREFle_Fleming1962'] = {'RCTS-LocosGWR-9'},
----------< M >----------
['CITEREFMacDermot1927'] = {'Infobox GWR'},
['CITEREFMacDermot1931'] = {'Infobox GWR'},
['CITEREFMacFarquharFairbank1987'] = {'Cite Cambridge History of China'},
['CITEREFMacFarquharFairbank1991'] = {'Cite Cambridge History of China'},
['CITEREFMachinery's_Handbook1996'] = {'MachinerysHandbook25e'},
['CITEREFMacMullen1970'] = {'MacMullen-Paddle-Wheel'},
['CITEREFMadelung1978'] = {'EI2'},
['CITEREFMagdalino2002'] = {'The Empire of Manuel I Komnenos'},
['CITEREFMaiken1989'] = {'Maiken-Night Trains'},
['CITEREFMailer2004'] = {'Mailer-Omaha Road'},
['CITEREFManfred_Knedlik2007'] = {'BBKL'},
['CITEREFMarre1995'] = {'Marre-diesel-50'},
['CITEREFMarshall1823'] = {'Cite RNB1823'},
['CITEREFMarshall1824'] = {'Cite RNB1823'},
['CITEREFMarshall1825'] = {'Cite RNB1823'},
['CITEREFMarshall1827'] = {'Cite RNB1823'},
['CITEREFMarshall1828'] = {'Cite RNB1823'},
['CITEREFMarshall1829'] = {'Cite RNB1823'},
['CITEREFMarshall1830'] = {'Cite RNB1823'},
['CITEREFMarshall1831'] = {'Cite RNB1823'},
['CITEREFMarshall1832'] = {'Cite RNB1823'},
['CITEREFMarshall1833'] = {'Cite RNB1823'},
['CITEREFMarshall1835'] = {'Cite RNB1823'},
['CITEREFMarshall1969'] = {'Lancashire & Yorkshire Railway 1'},
['CITEREFMarshall1970'] = {'Lancashire & Yorkshire Railway 2'},
['CITEREFMarshall1972'] = {'Lancashire & Yorkshire Railway 3'},
['CITEREFMarshall2001'] = {'Marshall-INGSR'},
['CITEREFMartin_Persch1992'] = {'BBKL'},
['CITEREFMartin_Persch1993'] = {'BBKL'},
['CITEREFMartin_Persch1996'] = {'BBKL'},
['CITEREFMartindale1980'] = {'Prosopography of the Later Roman Empire', 'PLRE'},
['CITEREFMartindale1992'] = {'Prosopography of the Later Roman Empire', 'PLRE'},
['CITEREFMartindaleJonesMorris1971'] = {'Prosopography of the Later Roman Empire', 'PLRE'},
['CITEREFMaul2005'] = {'Bach\'s compositions (sources)'},
['CITEREFMayGray2006'] = {'MayGray-WAGRPassCar'},
['CITEREFMcArthurMcArthur2003'] = {'Cite ogn', 'Cite OGN', 'Cite Oregon Geographic Names'},
['CITEREFMcCorduck2004'] = {'McCorduck 2004'},
['CITEREFMcCurdyRogers1902'] = {'Cite Jewish Encyclopedia'},
['CITEREFMcDonnell2015'] = {'McDonnell-Locomotives-2nd'},
['CITEREFMcGeerNesbittOikonomides2001'] = {'Catalogue of Byzantine Seals at Dumbarton Oaks and in the Fogg Museum of Art'},
['CITEREFMcGeerNesbittOikonomides2005'] = {'Catalogue of Byzantine Seals at Dumbarton Oaks and in the Fogg Museum of Art'},
['CITEREFMcGhee2008'] = {'Cite McGhee 2008'},
['CITEREFMcKitterick1995'] = {'New Cambridge Medieval History'},
['CITEREFMeiningen1704'] = {'Bach\'s compositions (sources)'},
['CITEREFMeints1992'] = {'Meints-Companies'},
['CITEREFMeints2005'] = {'Meints-Lines'},
['CITEREFMelamed1988'] = {'Bach\'s compositions (sources)'},
['CITEREFMelamed1995'] = {'Bach\'s compositions (sources)'},
['CITEREFMennell1892'] = {'Dictionary of Australasian Biography'},
['CITEREFMetcalfe2009'] = {'The Muslims of Medieval Italy'},
['CITEREFMiddleton1961'] = {'Middleton-Interurban'},
['CITEREFMiddleton2001'] = {'Middleton-Electrified-2nd'},
['CITEREFMiddleton2002'] = {'Middleton-PRR-Under-Wire'},
['CITEREFMiddletonSmerkDiehl2007'] = {'Encyclopedia of North American Railroads'},
['CITEREFMillar2011'] = {'NZR Steam Locomotive'},
['CITEREFMiller1908'] = {'The Latins in the Levant', 'Latins in the Levant'},
['CITEREFMiller1921'] = {'Essays on the Latin Orient'},
['CITEREFMills1977'] = {'Mills-Columbia'},
['CITEREFMinnich2008'] = {'Country study'},
['CITEREFMiramar_Ship_Index'] = {'Csr', 'Cite ship register'},
['CITEREFMitchell1965'] = {'Mitchell TOC'},
['CITEREFMittermeierKonstantHawkinsLouis2006'] = {'LoM2'},
['CITEREFMittermeierLouisRichardsonSchwitzer2010'] = {'LoM3'},
['CITEREFMittermeierTattersallKonstantMeyers1994'] = {'LoM1'},
['CITEREFMoore1875'] = {'Cite CEM'},
['CITEREFMorana1993'] = {'Bach\'s compositions (sources)'},
['CITEREFMoschonas1975'] = {'Ιστορία του Ελληνικού Έθνους'},
['CITEREFMoteTwitchett1988'] = {'Cite Cambridge History of China'},
['CITEREFMozartHaydnHaydn2008'] = {'Schubert\'s compositions (references)'},
['CITEREFMullié1852'] = {'Cite Mullié', 'Mullié'},
['CITEREFMunkres1974'] = {'Munkres Topology'},
['CITEREFMunkres2000'] = {'Munkres Topology'},
['CITEREFMurray2006'] = {'Murray-Illinois Central'},
['CITEREFMusserCarleton2005'] = {'MSW3 Muroidea'},
['CITEREFMyersWang2002'] = {'Cite Cambridge History of China'},
['CITEREFMyrick1992'] = {'Railroads of Nevada and Eastern California 1', 'Railroads of Nevada and Eastern California 2'},
['CITEREFMüller,_Hans-Christian1966'] = template_names['NDB'],
----------< N >----------
['CITEREFNSA_II,_15'] = {'Schubert\'s compositions (references)'},
['CITEREFNSA_scores'] = {'Schubert\'s compositions (references)'},
['CITEREFNSA_website'] = {'Schubert\'s compositions (references)'},
['CITEREFNariciBeckenstein2011'] = {'Narici Beckenstein Topological Vector Spaces'},
['CITEREFNemiroffBonnell1998'] = {'Cite APOD'},
['CITEREFNemiroffBonnell2004'] = {'Cite APOD'},
['CITEREFNemiroffBonnell2005'] = {'Cite APOD'},
['CITEREFNemiroffBonnell2006'] = {'Cite APOD'},
['CITEREFNemiroffBonnell2007'] = {'Cite APOD'},
['CITEREFNersessian2018'] = template_names['ODLA'],
['CITEREFNesbittMorrisson2009'] = {'Catalogue of Byzantine Seals at Dumbarton Oaks and in the Fogg Museum of Art'},
['CITEREFNesbittOikonomides1991'] = {'Catalogue of Byzantine Seals at Dumbarton Oaks and in the Fogg Museum of Art'},
['CITEREFNesbittOikonomides1994'] = {'Catalogue of Byzantine Seals at Dumbarton Oaks and in the Fogg Museum of Art'},
['CITEREFNesbittOikonomides1996'] = {'Catalogue of Byzantine Seals at Dumbarton Oaks and in the Fogg Museum of Art'},
['CITEREFNestruev2020'] = {'Nestruev Smooth Manifolds and Observables 2020'},
['CITEREFNeukirch1999'] = {'Neukirch ANT'},
['CITEREFNeukirchSchmidtWingberg2000'] = {'Neukirch et al. CNF'},
['CITEREFNew_Cambridge_Medieval_History'] = {'New Cambridge Medieval History'},
['CITEREFNew_York_City_Landmarks_Preservation_CommissionDolkartPostal2009'] = {'Cite nycland'},
['CITEREFNewbould1999'] = {'Schubert\'s compositions (references)'},
['CITEREFNicholson2018'] = template_names['ODLA'],
['CITEREFNicholsonCanepaDaryaee2018'] = template_names['ODLA'],
['CITEREFNicol1968'] = {'The Byzantine Family of Kantakouzenos'},
['CITEREFNicol1984'] = {'The Despotate of Epiros, 1267–1479'},
['CITEREFNicol1988'] = {'Byzantium and Venice: A Study in Diplomatic and Cultural Relations'},
['CITEREFNicol1992'] = {'The Immortal Emperor: The Life and Legend of Constantine Palaiologos, Last Emperor of the Romans'},
['CITEREFNicol1993'] = {'The Last Centuries of Byzantium, 1261–1453', 'The Last Centuries of Byzantium'},
['CITEREFNicol1994'] = {'The Byzantine Lady: Ten Portraits, 1250–1500'},
['CITEREFNock1974'] = {'Nock-EustonGlasgow'},
----------< O >----------
['CITEREFO'Byrne1849'] = {'Cite NBD1849'},
['CITEREFO'ConnorRobertson'] = {'MacTutor Biography', 'MacTutor'},
['CITEREFO'ConnorRobertson1996'] = {'MacTutor Biography', 'MacTutor'},
['CITEREFO'ConnorRobertson2000'] = {'MacTutor Biography', 'MacTutor'},
['CITEREFO'ConnorRobertson2004'] = {'MacTutor Biography', 'MacTutor'},
['CITEREFO'Donoghue1897'] = {'Cite DNB'},
['CITEREFODB'] = template_names['ODB'],
['CITEREFODLA'] = template_names['ODLA'],
['CITEREFOdisheli2018'] = template_names['ODLA'],
['CITEREFOfficial_Army_Register1865'] = {'Official Army Register of the Volunteer Force of the United States Army'},
['CITEREFOfficial_Army_Register1867'] = {'Official Army Register of the Volunteer Force of the United States Army'},
['CITEREFOfficial_Guide_of_the_Railways1950'] = {'Official Guide of the Railways'},
['CITEREFOgorek2012'] = {'Ogorek-South Shore'},
['CITEREFOikonomides1991'] = template_names['ODB'],
['CITEREFOikonomou1977'] = {'Ιστορία του Ελληνικού Έθνους'},
['CITEREFOrmsby1982'] = {'Cite DCB'},
----------< P >----------
['CITEREFPLP'] = {'Prosopographisches Lexikon der Palaiologenzeit', 'PLP'},
['CITEREFPalmer1875'] = {'Cite ADB'},
['CITEREFPalmerStewart1965'] = {'Palmer & Stewart'},
['CITEREFParkhouse,_BRHIC,_Vol_1'] = {'Book-Parkhouse-BRHIC-1'},
['CITEREFPatience1996'] = {'Patience-SteamTwilight'},
['CITEREFPatton2005'] = {'MSW3 Geomyidae'},
['CITEREFPawson1979'] = {'Pawson-Delaware Valley'},
['CITEREFPaxtonBourne1985'] = {'Paxton-Bourne'},
['CITEREFPeck1898'] = {'HDCA'},
['CITEREFPerlis2001'] = {'Springer'},
['CITEREFPerreault2004'] = {'Bach\'s compositions (sources)'},
['CITEREFPeterson2002'] = {'Cite Cambridge History of China'},
['CITEREFPeterson2016'] = {'Cite Cambridge History of China'},
['CITEREFPetropoulosKoumarianou1977'] = {'Ιστορία του Ελληνικού Έθνους'},
['CITEREFPetrucci1982'] = {'DBI'},
['CITEREFPfau2008'] = {'Bach\'s compositions (sources)'},
['CITEREFPikros1977'] = {'Ιστορία του Ελληνικού Έθνους'},
['CITEREFPinkepank1973'] = {'Pinkepank diesel spotters guide 2'},
['CITEREFPlantlist2016'] = {'Plantlist'},
['CITEREFPlaten1976'] = {'Bach\'s compositions (sources)'},
['CITEREFPloumidisAlexiou1974'] = {'Ιστορία του Ελληνικού Έθνους'},
['CITEREFPmbZ'] = {'Prosopographie der mittelbyzantinischen Zeit', 'PMBZ'},
['CITEREFPolemis1968'] = {'Polemis-The Doukai'},
['CITEREFPope2007'] = {'Encyclopaedia Judaica', 'Cite EJ', 'Cite Encyclopaedia Judaica'},
['CITEREFPopplewell'] = {'Popplewell-Gazetteer'},
['CITEREFPopplewell1989'] = {'Popplewell-Gazetteer'},
['CITEREFPotts2018'] = template_names['ODLA'],
['CITEREFPottsCanepa2018'] = template_names['ODLA'],
['CITEREFPourshariati2017'] = {'Encyclopædia Iranica Online'},
['CITEREFPozza1992'] = {'DBI', 'Dizionario Biografico degli Italiani'},
['CITEREFPrawer1985'] = {'Setton-A History of the Crusades'},
['CITEREFPritsak1991'] = template_names['ODB'],
['CITEREFProsopographie_der_mittelbyz._Zeit'] = {'Prosopographie der mittelbyzantinischen Zeit'},
----------< Q >----------
['CITEREFQuick2009'] = {'Quick-Stations'},
['CITEREFQuick2019'] = {'Quick-stations-5'},
['CITEREFQuick2020'] = {'Quick-stations-5'},
['CITEREFQuick2022'] = {'Quick-stations-5'},
['CITEREFQuick2023'] = {'Quick-stations-5.05'},
----------< R >----------
['CITEREFRailway_Atlas2010'] = {'Eisenbahnatlas Italien'},
['CITEREFRailway_Atlas2012'] = {'Eisenbahnatlas Schweiz'},
['CITEREFRailway_Atlas2020'] = {'Eisenbahnatlas Deutschland'},
['CITEREFRailway_Atlas2021'] = {'Eisenbahnatlas Österreich'},
['CITEREFRailway_Atlas2024'] = {'Eisenbahnatlas Schweiz 2024'},
['CITEREFRamaer1974'] = {'Ramaer-SteamLocosEAR'},
['CITEREFRansome-Wallis1971'] = {'Ransome-Wallis 1'},
['CITEREFRansome-Wallis2001'] = {'Ransome-Wallis Encyclopedia'},
['CITEREFRateliff2007'] = template_names['ME-ref'],
['CITEREFRavegnano2000'] = {'DBI'},
['CITEREFReed1953'] = {'RCTS-LocosGWR-2'},
['CITEREFReed1956'] = {'RCTS-LocosGWR-3'},
['CITEREFReed1975'] = {'Reed-Streamline era'},
['CITEREFReed1997'] = {'Schubert\'s compositions (references)'},
['CITEREFReinhard_Tenberg1990'] = {'BBKL'},
['CITEREFRettinghaus2020'] = {'BDh'},
['CITEREFReuter2000'] = {'New Cambridge Medieval History'},
['CITEREFReynolds1921'] = {'Cite Collier\'s', 'Collier\'s'},
['CITEREFReynoldsOroszi2000'] = {'Reynolds-BO'},
['CITEREFRezakhani2018'] = template_names['ODLA'],
['CITEREFRichter2018'] = {'BDh'},
['CITEREFRigo2005'] = template_names['ODB'],
['CITEREFRines1920'] = {'Americana','Cite Americana'},
['CITEREFRipleyDana1863'] = {'New American Cyclopedia'},
['CITEREFRipleyDana1864'] = {'New American Cyclopedia'},
['CITEREFRipleyDana1879'] = {'Cite AmCyc'},
['CITEREFRistaino1988'] = {'Country study'},
['CITEREFRobert_Eitner1891'] = {'Cite ADB'},
['CITEREFRobertson1983'] = {'Robertson-OriginScot'},
['CITEREFRobertson1998'] = {'Robertson-Western Railroad-4'},
['CITEREFRobins2017'] = {'Cite New York Art Deco'},
['CITEREFRockafellarWets2009'] = {'Rockafellar Wets Variational Analysis 2009 Springer'},
['CITEREFRoe1916'] = {'Roe1916'},
['CITEREFRoe1937'] = {'Roe1937'},
['CITEREFRolt1965'] = {'Rolt1965'},
['CITEREFRoltKichenside1982'] = {'Rolt-Red'},
['CITEREFRose1857'] = {'Cite Newgenbio'},
['CITEREFRosenfeld1974'] = template_names['NDB'],
['CITEREFRosenzweigBlackmar1992'] = {'Cite Central Park History', 'Cite Central Park history'},
['CITEREFRowe2002'] = {'Cite Cambridge History of China'},
['CITEREFRowledge1975'] = {'Rowledge-Engines of the LMS'},
['CITEREFRowledge1993'] = {'Rowledge-Irish Steam Register'},
['CITEREFRowlett'] = {'Cite rowlett', 'Cite Rowlett'},
['CITEREFRowlett2007'] = {'Cite rowlett', 'Cite Rowlett'},
['CITEREFRowlett2012'] = {'Cite rowlett', 'Cite Rowlett'},
['CITEREFRowlett2013'] = {'Cite rowlett', 'Cite Rowlett'},
['CITEREFRowlett2016'] = {'Cite rowlett', 'Cite Rowlett'},
['CITEREFRowlett2017'] = {'Cite rowlett', 'Cite Rowlett'},
['CITEREFRowling1997'] = {'HP1ref'},
['CITEREFRowling1998'] = {'HP2ref'},
['CITEREFRowling1999'] = {'HP3ref'},
['CITEREFRowling2000'] = {'HP4ref'},
['CITEREFRowling2003'] = {'HP5ref'},
['CITEREFRowling2005'] = {'HP6ref'},
['CITEREFRowling2007'] = {'HP7ref'},
['CITEREFRudin1973'] = {'Rudin Walter Functional Analysis'},
['CITEREFRudin1991'] = {'Rudin Walter Functional Analysis'},
['CITEREFRunciman1951'] = {'Runciman-A History of the Crusades'},
['CITEREFRunciman1951–1954'] = {'Runciman-A History of the Crusades'},
['CITEREFRunciman1952'] = {'Runciman-A History of the Crusades'},
['CITEREFRunciman1954'] = {'Runciman-A History of the Crusades'},
['CITEREFRunciman1989'] = {'Runciman-A History of the Crusades'},
['CITEREFRussell1985'] = {'Setton-A History of the Crusades', 'Encyclopædia Iranica Online', 'Encyclopædia Iranica', 'Encyclopaedia Iranica', 'Cite Encyclopædia Iranica Online'},
['CITEREFRussellNorvig2003'] = {'Russell Norvig 2003'},
['CITEREFRybczynski2000'] = {'Rybczynski2000'},
----------< S >----------
['CITEREFSR_staff2013'] = {'Houston family tree'},
['CITEREFSalo2004'] = template_names['ME-ref'],
['CITEREFSanders1998'] = {'The Cambridge History of Egypt', 'Cambridge History of Egypt'},
['CITEREFSanders2003'] = {'Sanders-Indiana'},
['CITEREFSanders2006'] = {'Sanders-Heartland'},
['CITEREFSanders2007'] = {'Sanders-Akron'},
['CITEREFSarikakis1974'] = {'Ιστορία του Ελληνικού Έθνους'},
['CITEREFSaunders2001'] = {'Saunders-Merging Lines'},
['CITEREFSaunders2013'] = {'Saunders-Giants of the Seas'},
['CITEREFSavadaShaw1992'] = {'Country study'},
['CITEREFSchaeferWolff1999'] = {'Schaefer Wolff Topological Vector Spaces'},
['CITEREFSchafer1991'] = {'All Aboard Amtrak'},
['CITEREFSchafer1996'] = {'Schafer-Classic-Railroads-1'},
['CITEREFSchafer1998'] = {'Schafer-Vintage Diesel'},
['CITEREFSchafer2000'] = {'Schafer-More-Classic'},
['CITEREFSchafer2003'] = {'Schafer-Classic-Railroads-3'},
['CITEREFSchaferSolomon1997'] = {'Schafer-Pennsylvania'},
['CITEREFSchaferWelsh1997'] = {'Schafer-Classic'},
['CITEREFSchaferWelsh2002'] = {'Schafer-Streamliners'},
['CITEREFSchaferWelshHolland2001'] = {'Schafer-American passenger train'},
['CITEREFSchaff-Herzog'] = {'Schaff-Herzog'},
['CITEREFScharf1996'] = {'Scharf-History'},
['CITEREFSchechter1996'] = {'Schechter Handbook of Analysis and Its Foundations'},
['CITEREFScheide1960'] = {'Bach\'s compositions (sources)'},
['CITEREFSchicht1805'] = {'Bach\'s compositions (sources)'},
['CITEREFSchilling1997'] = {'Schilling-pop-culture'},
['CITEREFSchlitter2005'] = {'MSW3 Tubulidentata'},
['CITEREFSchmieder1950'] = {'Bach\'s compositions (sources)'},
['CITEREFSchmieder1990'] = {'Bach\'s compositions (sources)'},
['CITEREFSchmitz1870'] = {'Cite DGRBM'},
['CITEREFSchnabel1987'] = {'Schnabel-EFA2.5'},
['CITEREFSchneider1907'] = {'Bach\'s compositions (sources)'},
['CITEREFSchneider1912'] = {'Bach\'s compositions (sources)'},
['CITEREFScholze1736'] = {'Bach\'s compositions (sources)'},
['CITEREFSchroeter1961'] = {'Schroeter-Eisenbahnen'},
['CITEREFSchroeterRamaer1993'] = {'Schroeter-Ramaer-Eisenbahnen'},
['CITEREFSchubert-online'] = {'Schubert\'s compositions (references)'},
['CITEREFSchubert1968'] = {'Schubert Topology'},
['CITEREFSchulenberg2010'] = {'Bach\'s compositions (sources)'},
['CITEREFSchulenberg2013'] = {'Bach\'s compositions (sources)'},
['CITEREFSchulze1980'] = {'Bach\'s compositions (sources)'},
['CITEREFSchulze1983'] = {'Bach\'s compositions (sources)'},
['CITEREFSchulze1984'] = {'Bach\'s compositions (sources)'},
['CITEREFSchwieterman2001'] = {'Schwieterman-Leaves-Eastern'},
['CITEREFSchwieterman2004'] = {'Schwieterman-Leaves-Western'},
['CITEREFScottNegus2011'] = {'Scott-Negus-Cellar Door'},
['CITEREFScribbins1970'] = {'Scribbins-Hiawatha'},
['CITEREFScribbins2007'] = {'Scribbins-Hiawatha-2007'},
['CITEREFScribbins2008'] = {'Scribbins-400-2008', 'Scribbins-Remembered'},
['CITEREFSearle'] = {'Cite sslidx'},
['CITEREFSearle1980'] = {'Searle 1980'},
['CITEREFSemmensGoldfinch2003'] = {'Book-Semmens-Goldfinch-How Steam Locomotives Really Work'},
['CITEREFSetton1975'] = {'Setton-A History of the Crusades'},
['CITEREFSetton1976'] = {'The Papacy and the Levant'},
['CITEREFSetton1978'] = {'The Papacy and the Levant'},
['CITEREFSetton1984'] = {'The Papacy and the Levant'},
['CITEREFSettonHazard1975'] = {'Setton-A History of the Crusades'},
['CITEREFSfyroeras1975'] = {'Ιστορία του Ελληνικού Έθνους'},
['CITEREFShaughnessy1997'] = {'Shaughnessy-DH'},
['CITEREFShaw1978'] = {'Shaw-RailroadAccidents'},
['CITEREFShiji'] = {'Cite Shiji'},
['CITEREFShindo2004'] = {'Kaneto-shindo-shinario-jinsei'},
['CITEREFShippey2001'] = template_names['ME-ref'],
['CITEREFShippey2005'] = template_names['ME-ref'],
['CITEREFShoshani2005'] = {'MSW3 Shoshani'},
['CITEREFShtern2001'] = {'Springer', 'SpringerEOM'},
['CITEREFSiegele1957'] = {'Bach\'s compositions (sources)'},
['CITEREFSilanos2014'] = {'DBI', 'Dizionario Biografico degli Italiani'},
['CITEREFSilke2006'] = {'O\'Donnell family tree'},
['CITEREFSima'] = {'Cite Shiji'},
['CITEREFSimaSima'] = {'Cite Shiji'},
['CITEREFSimmons2005'] = {'MSW3 Chiroptera'},
['CITEREFSimon1966'] = {'Simon-Wines Australia'},
['CITEREFSimonWarner2011'] = {'Amtrak By the Numbers'},
['CITEREFSimonWarnerEuDaly2023'] = {'Amtrak by the Numbers 2'},
['CITEREFSinclair1911'] = {'DCBL'},
['CITEREFSinger1905'] = {'Jewish Encyclopedia'},
['CITEREFSix1934'] = {'Cite Six', 'Cite six'},
['CITEREFSkjærvø2018'] = template_names['ODLA'],
['CITEREFSkoulatos1980'] = {'Les personnages byzantins de l\'Alexiade'},
['CITEREFSloan1964'] = {'Sloan1964'},
['CITEREFSmid2008'] = {'Smid2008'},
['CITEREFSmid2010'] = {'Smid2010'},
['CITEREFSmith1854'] = {'Cite DGRG', 'DGRG'},
['CITEREFSmith1870'] = {'DGRBM', 'Cite DGRBM'},
['CITEREFSmith1873'] = {'DGRBM', 'Cite DGRBM'},
['CITEREFSmith1876'] = {'DGRBM', 'Cite DGRBM'},
['CITEREFSmith1880'] = {'DGRBM', 'Cite DGRBM'},
['CITEREFSmith2010'] = {'Smith-Cruise Ships-2010'},
['CITEREFSmithJohnstonAlvesHackländer2018'] = {'Lagomorphs2018'},
['CITEREFSolomentsev2001'] = {'Springer', 'SpringerEOM'},
['CITEREFSolomon2000'] = {'Solomon-American Diesel', 'Solomon-UP'},
['CITEREFSolomon2003'] = {'Solomon-Masterpieces'},
['CITEREFSolomon2004'] = {'Solomon-Amtrak'},
['CITEREFSolomon2005'] = {'Solomon-CSX', 'Solomon-SP-Passenger'},
['CITEREFSolomon2006'] = {'Solomon-EMD Locomotives'},
['CITEREFSolomon2007'] = {'Solomon-SP'},
['CITEREFSolomon2011'] = {'Solomon-Modern Diesel', 'Solomon-Electro-Motive'},
['CITEREFSolomon2012'] = {'Solomon-North American Locomotives'},
['CITEREFSolomon2014'] = {'Solomon-GE and EMD'},
['CITEREFSolomonSchafer2007'] = {'Solomon-New York Central'},
['CITEREFSolopova2009'] = template_names['ME-ref'],
['CITEREFSorensen1956'] = {'Sorensen1956'},
['CITEREFSoustal1991'] = {'Tabula Imperii Byzantini'},
['CITEREFSoustalKoder1981'] = {'Tabula Imperii Byzantini'},
['CITEREFSpielhoff1991'] = {'Spielhoff-EL'},
['CITEREFSpitta1894'] = {'Bach\'s compositions (sources)'},
['CITEREFSpitta1899'] = {'Bach\'s compositions (sources)'},
['CITEREFSpringirth2016'] = {'Springirth-Philadelphia'},
['CITEREFSpyropoulos1928'] = {'Great Military and Naval Encyclopaedia'},
['CITEREFStagner1993'] = {'Stagner-Transition'},
['CITEREFStansfield1999'] = {'Stansfield-AyrRenfrew'},
['CITEREFStatistical_Yearbook_of_the_Republic_of_Croatia_2015'] = {'Croatia Yearbook 2015'},
['CITEREFStaufer1993'] = {'Staufer-Pennsy_III'},
['CITEREFStauferPennypacker1962'] = {'Staufer-Pennsy'},
['CITEREFStauferPennypacker1968'] = {'Staufer-Pennsy Power II'},
['CITEREFStaunton1988'] = {'Australian Dictionary of Biography'},
['CITEREFSternFishmanTilove2006'] = {'Cite New York 2000', 'Cite NY2000', 'Cite ny2000', 'Cite NY 2000', 'Cite ny 2000', 'Stern: New York' },
['CITEREFSternGilmartinMassengale1983'] = {'Cite New York 1900', 'Cite NY1900', 'Cite NY1900', 'Cite ny1900', 'Cite ny 1900', 'Stern: New York'},
['CITEREFSternGilmartinMellins1987'] = {'Cite New York 1930', 'Cite NY 1930', 'Cite NY1930', 'Cite ny1930', 'Cite ny 1930', 'Stern: New York'},
['CITEREFSternMellinsFishman1995'] = {'Cite New York 1960', 'Cite NY1960', 'Cite NY 1960', 'Cite ny1960', 'Cite ny 1960', 'Stern: New York'},
['CITEREFSternMellinsFishman1999'] = {'Cite New York 1880', 'Cite NY1880', 'Cite NY 1880', 'Cite ny1880', 'Cite ny 1880', 'Stern: New York'},
['CITEREFStewart1974'] = {'When Steam Was King'},
['CITEREFStrachey1981'] = template_names['ME-ref'],
['CITEREFStrickland1983'] = {'Strickland Locomotive Directory'},
['CITEREFStähelin1909'] = {'Schaff-Herzog'},
['CITEREFSuetin2001'] = {'Springer', 'SpringerEOM'},
['CITEREFSusanne_Schurr1992'] = {'BBKL'},
['CITEREFSusanne_Siebert1992'] = {'BBKL'},
['CITEREFSvolopoulos1977'] = {'Ιστορία του Ελληνικού Έθνους'},
['CITEREFSwartz1992'] = {'Swartz An Introduction to Functional Analysis'},
----------< T >----------
['CITEREFLondon_Gazette'] = {'London Gazette'},
['CITEREFTaber1977'] = {'Taber-DLW-19th'},
['CITEREFTaberTaber1980'] = {'Taber-DLW-20th-1'},
['CITEREFTaberTaber1981'] = {'Taber-DLW-20th-2'},
['CITEREFTabor1956'] = {'RCTS-LocosGWR-4'},
['CITEREFTabor1959'] = {'RCTS-LocosGWR-6'},
['CITEREFTalbot1991'] = template_names['ODB'],
['CITEREFTalbotKazhdan1991'] = template_names['ODB'],
['CITEREFTao2009'] = {'Cite Cambridge History of China', 'The Cambridge History of China'},
['CITEREFTao2009'] = {'Cite Cambridge History of China'},
['CITEREFTauranac1985'] = {'Cite Elegant New York'},
['CITEREFTer-Ghewondyan1976'] = {'The Arab Emirates in Bagratid Armenia'},
['CITEREFThe_London_Gazette1950'] = {'London Gazette'},
['CITEREFThe_London_Gazette_26_September_1919'] = {'London Gazette'},
['CITEREFThielemann2012'] = {'Bach\'s compositions (sources)'},
['CITEREFThomas1970'] = {'HistoryofParliament'},
['CITEREFThomas1971'] = {'Thomas-History-VI'},
['CITEREFThrush2010'] = {'HistoryofParliament'},
['CITEREFTikhomirov2001'] = {'Springer'},
['CITEREFTittel1966'] = {'Bach\'s compositions (sources)'},
['CITEREFTodt1996'] = {'BBKL'},
['CITEREFTodtVest2014'] = {'Tabula Imperii Byzantini'},
['CITEREFTolkien2007'] = template_names['ME-ref'],
['CITEREFTolkien2014'] = template_names['ME-ref'],
['CITEREFTolkien2015'] = template_names['ME-ref'],
['CITEREFTolkien2017'] = template_names['ME-ref'],
['CITEREFTolkien2018'] = template_names['ME-ref'],
['CITEREFTolkien2024'] = template_names['ME-ref'],
['CITEREFTolkienSwann1978'] = template_names['ME-ref'],
['CITEREFTolkienSwann2002'] = {'ME-ref'},
['CITEREFTolkienTolkien1992'] = template_names['ME-ref'],
['CITEREFTonks1988'] = {'Tonks ironstone'},
['CITEREFTonks1989'] = {'Tonks ironstone'},
['CITEREFTonks1992'] = {'Tonks ironstone'},
['CITEREFTopping1975'] = {'Setton-A History of the Crusades', 'Wisconsin History of the Crusades'},
['CITEREFTorri2013'] = {'Bach\'s compositions (sources)'},
['CITEREFTougher2018'] = template_names['ODLA'],
['CITEREFTourret1995'] = {'Tourret-Allied Military Locomotives'},
['CITEREFTrapp1991'] = template_names['ODB'],
['CITEREFTrappBeyerSturm-Schnabl1983'] = {'Prosopographisches Lexikon der Palaiologenzeit'},
['CITEREFTrappWaltherBeyer1976'] = {'Prosopographisches Lexikon der Palaiologenzeit'},
['CITEREFTrappWaltherBeyerSturm-Schnabl1978'] = {'Prosopographisches Lexikon der Palaiologenzeit'},
['CITEREFTreadgold1988'] = {'The Byzantine Revival, 780–842'},
['CITEREFTreadgold1997'] = {'A History of the Byzantine State and Society'},
['CITEREFTrèves2006'] = {'Trèves François Topological vector spaces, distributions and kernels'},
['CITEREFTsutsiev2014'] = {'Cite Atlas of the Ethno-Political History of the Caucasus'},
['CITEREFTurim1998'] = {'Turim-oshima'},
['CITEREFTuring1950'] = {'Turing 1950'},
['CITEREFTwitchett1979'] = {'Cite Cambridge History of China'},
['CITEREFTwitchettLoewe1986'] = {'Cite Cambridge History of China'},
['CITEREFTwitchettMote1988'] = {'Cite Cambridge History of China'},
['CITEREFTwitchettSmith2009'] = {'Cite Cambridge History of China'},
----------< U >----------
['CITEREFUS-NHub_Music_Deposit_31_(Klavierbüchlein_für_W._F._Bach)_at_Bach_Digital'] = {'Bach\'s compositions (sources)'},
['CITEREFUwe_Eckardt2001'] = {'BBKL'},
['CITEREFunknown_author1881'] = {'Cite ADB'},
['CITEREFunknown_author1882'] = {'Cite ADB'},
----------< V >----------
['CITEREFVakalopoulos1975'] = {'Ιστορία του Ελληνικού Έθνους'},
['CITEREFVan_Cleve1969'] = {'Setton-A History of the Crusades'},
['CITEREFVan_Hoorickx1971'] = {'Schubert\'s compositions (references)'},
['CITEREFVan_Hoorickx_1974–1976'] = {'Schubert\'s compositions (references)'},
['CITEREFVan_Lint2018'] = template_names['ODLA'],
['CITEREFVan_Riemsdijk,_Compound_Locomotives'] = {'Book-Van Riemsdijk-Compound Locomotives'},
['CITEREFVan_Riemsdijk1994'] = {'Book-Van Riemsdijk-Compound Locomotives'},
['CITEREFVan_Tricht2011'] = {'The Latin Renovatio of Byzantium'},
['CITEREFVandenberghen1989'] = {'Vandenberghen-SNCB12.2'},
['CITEREFVarzos1984'] = {'Η Γενεαλογία των Κομνηνών', 'Varzos-Genealogy of the Komnenoi'},
['CITEREFVasiliev1935'] = {'Byzance et les Arabes'},
['CITEREFVasiliev1968'] = {'Byzance et les Arabes'},
['CITEREFVenables1911'] = {'DCBL'},
['CITEREFVendler1997'] = {'Shakespeare sonnets bibliography'},
['CITEREFVenn1954'] = {'VennAC'},
['CITEREFVentura1963'] = {'DBI', 'Dizionario Biografico degli Italiani'},
['CITEREFVetter1713'] = {'Bach\'s compositions (sources)'},
['CITEREFVevainaCanepa2018'] = template_names['ODLA'],
['CITEREFVeysey1958'] = {'Veysey-PE-1958'},
['CITEREFVischer1912'] = {'Schaff-Herzog'},
['CITEREFVolkmer1991'] = {'Volkmer-Pennsy-Electric'},
['CITEREFvan_Leyden1956'] = {'Bach\'s compositions (sources)'},
['CITEREFvan_Lint2018'] = template_names['ODLA'],
['CITEREFvon_Prantl1879'] = {'Cite ADB'},
----------< W >----------
['CITEREFWagnerBäzoldZschechLüderitz1990'] = {'Wagner-EFA2.3.2'},
['CITEREFWalter1967'] = {'DBI', 'Dizionario Biografico degli Italiani'},
['CITEREFWalter_Asmus1966'] = template_names['NDB'],
['CITEREFWarner1992'] = {'Generals in Blue'},
['CITEREFWayner1972'] = {'Wayner - Car names, numbers, consists'},
['CITEREFWayner1973'] = {'Wayner-Spotter-2nd'},
['CITEREFWebb2018'] = template_names['ODLA'],
['CITEREFWechsler1979'] = {'Cite Cambridge History of China', 'The Cambridge History of China'},
['CITEREFWechsler1979'] = {'Cite Cambridge History of China'},
['CITEREFWegman2008'] = {'Wegman-Illustrated'},
['CITEREFWeibel1994'] = {'Weibel IHA'},
['CITEREFWeinrebHibbertKeayKeay2008'] = {'London encyclopedia'},
['CITEREFWeisbrod1991'] = {'Weisbrod-EFA1.5'},
['CITEREFWeisbrodMüllerPetznik1978'] = {'Weisbrod-EFA1.2'},
['CITEREFWellhausen1927'] = {'The Arab Kingdom and its Fall'},
['CITEREFWells1982'] = {'Accents of English'},
['CITEREFWells1990'] = {'Cite LPD'},
['CITEREFWells2000'] = {'Cite LPD'},
['CITEREFWells2008'] = {'Cite LPD'},
['CITEREFWelsh2006'] = {'Welsh-Broadway'},
['CITEREFWelsh2008'] = {'Welsh-UP'},
['CITEREFWerner_Raupp2001'] = {'BBKL'},
['CITEREFWestcott1911'] = {'DCBL'},
['CITEREFWestermayer,_Georg1882'] = {'Cite ADB'},
['CITEREFWham1997'] = {'Wham-Ayrshire'},
['CITEREFWhishaw1842'] = {'Whishaw-RailofGB-2ndEd'},
['CITEREFWhishaw1969'] = {'Whishaw-RailofGB'},
['CITEREFWhite1985'] = {'White-Passenger-1985'},
['CITEREFWhite1993'] = {'White - American railroad freight car'},
['CITEREFWhiteWillenskyLeadon2010'] = {'Cite aia5'},
['CITEREFWhitehurst1973'] = {'Whitehurst GW Engines from 1940'},
['CITEREFWhittow1996'] = {'The Making of Byzantium, 600–1025'},
['CITEREFWickman1982'] = {'Country study'},
['CITEREFWiesehöfer2018'] = template_names['ODLA'],
['CITEREFWilansky2008'] = {'Wilansky Topology for Analysis 2008'},
['CITEREFWilansky2013'] = {'Wilansky Modern Methods in Topological Vector Spaces'},
['CITEREFWillard2004'] = {'Willard General Topology'},
['CITEREFWilliams1998'] = {'Williams-Philadelphia'},
['CITEREFWilliams2003'] = {'Bach\'s compositions (sources)'},
['CITEREFWillis1750'] = {'Cite Notitia Parliamentaria'},
['CITEREFWilson2017'] = {'Wilson-Guide'},
['CITEREFWilsonFiske1889'] = {'Appletons\'', 'Cite Appletons\'', 'Appletons'},
['CITEREFWilsonFiske1891'] = {'Appletons\'', 'Cite Appletons\'', 'Appletons'},
['CITEREFWilsonFiske1892'] = {'Appletons\'', 'Cite Appletons\'', 'Appletons'},
['CITEREFWilsonFiske1900'] = {'Appletons\'', 'Cite Appletons\'', 'Appletons'},
['CITEREFWilsonLacherMittermeier2016'] = {'HMW2016 Volume 6'},
['CITEREFWiltshire2000'] = {'Lloyd-Margaret River'},
['CITEREFWinfieldLyon2004'] = {'Winfield'},
['CITEREFWinkler1883'] = template_names['ADB'],
['CITEREFWitakowski2018'] = template_names['ODLA'],
['CITEREFWolff1969'] = {'Setton-A History of the Crusades'},
['CITEREFWollny2015'] = {'Bach\'s compositions (sources)'},
['CITEREFWood1907'] = {'Cite Nuttall', 'Nuttall'},
['CITEREFWoodsKilpatrick2005'] = {'MSW3 Hystricognathi'},
['CITEREFWorden2008'] = {'Country study'},
['CITEREFWortley2010'] = {'John Skylitzes: A Synopsis of Byzantine History, 811–1057'},
['CITEREFWozencraft2005'] = {'MSW3 Carnivora'},
['CITEREFWright1979'] = {'Cite Cambridge History of China', 'The Cambridge History of China'},
['CITEREFWright1979'] = {'Cite Cambridge History of China'},
['CITEREFWright2000'] = {'Bach\'s compositions (sources)'},
['CITEREFWrightWinter1922'] = {'1922 Locomotive Cyclopedia'},
['CITEREFWägliJacobi2010'] = {'Schienennetz Schweiz'},
----------< X >----------
----------< Y >----------
['CITEREFYenne2005'] = {'Yenne-Chiefs'},
['CITEREFYonge1990'] = {'Quail-4'},
['CITEREFYonge1994'] = {'Quail-5'},
['CITEREFYonge2002'] = {'Quail-5'},
['CITEREFYonge2008'] = {'Quail-5'},
['CITEREFYonge2016'] = {'Quail-2-2016'},
['CITEREFYongePadgettSzwenk2013'] = {'Quail-4-Paper-3rdEd'},
['CITEREFYu1986'] = {'Cite Cambridge History of China'},
----------< Z >----------
['CITEREFZahn1889–1893'] = {'Bach\'s compositions (sources)'},
['CITEREFZeiniWiesehöfer2018'] = template_names['ODLA'],
['CITEREFZekulich2000'] = {'Zekulich-WineWA'},
['CITEREFZimmermann2004'] = {'Zimmermann-Burlington'},
['CITEREFZimmermann2007'] = {'Zimmermann-GrandLuxe'},
['CITEREFZuccaric._1747'] = {'Bach\'s compositions (sources)'},
['CITEREFZălinescu2002'] = {'Zălinescu Convex Analysis in General Vector Spaces 2002'},
----------< OTHER >----------
['CITEREFΙστορία_του_Ελληνικού_Έθνους'] = {'Ιστορία του Ελληνικού Έθνους'},
['CITEREFΜεγάλη_Στρατιωτικὴ_καὶ_Ναυτικὴ_Ἐγκυκλοπαιδεία'] = {'Great Military and Naval Encyclopaedia'},
['CITEREFКавказский_календарь_на_1910_год'] = {'Cite Kavkazskiy Kalendar 1910'},
['CITEREFКавказский_календарь_на_1913_год'] = {'Cite Kavkazskiy Kalendar 1913'},
['CITEREFКавказский_календарь_на_1915_год'] = {'Cite Kavkazskiy Kalendar 1915'},
['CITEREFКавказский_календарь_на_1917_год'] = {'Cite Kavkazskiy Kalendar 1917'},
----------< UNSORTED >----------
}
-- Auto-classify templates mentioned in whitelist as wrapper templates
for _, tlist in pairs(whitelist) do
for _, t in ipairs(tlist) do
if not wrapper_templates[t] then
wrapper_templates[t] = noDefault
end
end
end
--[[--------------------------< S S T S I N T E G R A T I O N >----------------------------------------------
]]
local success, ssts_registry = pcall(require, 'Module:SST/registry')
if success and type(ssts_registry) == 'table' then
if ssts_registry.defaults then
for t_name, data in pairs(ssts_registry.defaults) do
wrapper_templates[t_name] = data
end
end
if ssts_registry.patterns then
for _, pattern_block in ipairs(ssts_registry.patterns) do
table.insert(wrapper_template_patterns, pattern_block)
end
end
end
--[[--------------------------< E X P O R T E D T A B L E S >------------------------------------------------
]]
return {
whitelist = whitelist,
wrapper_template_patterns = wrapper_template_patterns,
wrapper_templates = wrapper_templates
}
k3sdfh0zhh3m9lou8ocnr6sbdi51q2z
Module:SST/registry
828
12218
102906
2026-04-28T15:00:12Z
Nimmzo
21509
Caller [[Module:Footnotes/whitelist]]
102906
Scribunto
text/plain
--[[--------------------------< S S T S _ R E G I S T R Y >----------------------------------------------
Specific-Source Template System registry (WP:SSTS)
WARNING: DO NOT EDIT THIS MODULE
This is an auto-generated compiled registry for the Specific-Source Template System (WP:SSTS).
Any manual edits made to this page WILL BE OVERWRITTEN by a bot.
If you need to correct an author, year, or citation pattern, you must edit the
specific Lua shard (module) associated with that template (e.g., Module:SST/shards/...).
This registry will automatically update at least once daily to reflect those changes.
]]
local registry = {
defaults = {
['Vivian: Porsche 924 928 944 968'] = {'Vivian', '1993'},
['Trask and Strom 1976'] = {'TraskStrom', '1976'},
['Sloniger: Porsche 924 928 944'] = {'Sloniger', '1987'},
['Brooklands: On Mercedes 1963-1970'] = {'Clarke', '1987'},
['Brooklands-MBRT63'] = {'Clarke', '1987'},
['Alfieri: Mercedes-Benz SL'] = {'Alfieri', '2016'},
['Chapman: SUV'] = {'Chapman', '2005'},
['Bock: Japanese Film Directors'] = {'Bock', '1978'},
['Audie-bock-directors'] = {'Bock', '1978'},
['Weber: Porsche: The Essence of Performance'] = {'Weber', '2000'},
['Cranswick: Porsche 928, 924, 944 and 968'] = {'Cranswick', '2008'},
['Clarke-AustWineCompan'] = {'Clarke', '2004'},
['Book-Semmens-Goldfinch-How Steam Locomotives Really Work'] = {'SemmensGoldfinch', '2000'},
['Cole: The Classic Car Adventure'] = {'Cole', '2017'},
['Lintelmann: NSU Personenwagen: Eine Chronik'] = {'Lintelmann', '1987'},
['Leffingwell: Porsche Legends'] = {'Leffingwell', '1993'},
['Das Reich des Mahdi'] = {'Halm', '1991'},
['Steidl: NSU Personenwagen'] = {'Steidl', '2009'},
['Anoar Ali: 150th Anniversary Memorial Book 1869-2019'] = {'Ali', ''},
['150th Anniversary Memorial Book 1869-2019'] = {'Ali', ''},
['Kittler: Mercedes-Benz Personenwagen seit 1886'] = {'Kittler', '2008'},
['Wood: Great Marques of Germany'] = {'Wood', '1985'},
['Schneider: NSU: Automobile 1905–1977'] = {'Schneider', '2008'},
['Zekulich-SpiritSwan'] = {'Zekulich', '2014'},
['McComb: Mercedes-Benz V8s'] = {'McComb', '1980'},
['Davies Dwornik Gault Strom 1978'] = {'DaviesDwornikGaultStrom', '1978'},
['Forrestal-Wineries'] = {'Forrestal', '1999'},
['Freeman: Mercedes-Benz: 1959-70'] = {'FreemanRiveleHallinger', '1983'},
['Slade: Original Mercedes-Benz Coupes'] = {'Slade', '2004'},
['Bass: Mercedes-Benz 280-560SL & SLC: W107 series'] = {'Bass', '2017'},
['Rocke: Das neue große Mercedes-S-Klasse-Buch'] = {'Röcke', '2003'},
['Noakes: Mercedes SL Series: The Complete Story'] = {'Noakes', '2004'},
['Noakes-MSL'] = {'Noakes', '2004'},
['Blake: Disraeli'] = {'Blake', '1966'},
['DisraeliRef'] = {'Blake', '1966'},
['Lands of the Eastern Caliphate'] = {'Strange', '1905'},
['State and Society in Fatimid Egypt'] = {'Lev', '1991'},
['Bols: Mercedes-Benz Personenwagen'] = {'Bols', '2007'},
['Schneider: Die NSU-Story'] = {'Schneider', '2012'},
['Baaden: Das neue grosse Mercedes SL'] = {'BaadenRöcke', '2002'},
['Hofner: Die S-Klasse von Mercedes-Benz'] = {'Hofner', '1997'},
['Trask and Guest 1975'] = {'TraskGuest', '1975'},
['Rybczynski2000'] = {'Rybczynski', '2000'},
['Koehling: Mercedes-Benz, The Modern SL Cars'] = {'Koehling', '2013'},
['A History of Palestine, 634–1099'] = {'Gil', '1997'},
['Die Provinzen des Osmanischen Reiches'] = {'Birken', '1976'},
['Arth: NSU-Automobile'] = {'Arth', '2015'},
['Brooklands: On Audi & Auto Union 1980'] = {'Clarke', '1986'},
['Brooklands-AAURT80'] = {'Clarke', '1986'},
['Saladin in Egypt'] = {'Lev', '1999'},
['Zekulich-WineWA'] = {'Zekulich', '2000'},
['O City of Byzantium'] = {'Choniates', '1984'},
['Lehbrink: Faszination Mercedes'] = {'Lehbrink', '2012'},
['Cárdenas: 66 petites histoires du Pays Catalan'] = {'Cárdenas', '2014'},
['66 PHPC'] = {'Cárdenas', '2014'},
['Leffingwell: Porsche 70 Years'] = {'Leffingwell', '2017'},
['Arizona SHS Interactive Map'] = {'Division', ''},
['ADOT SHS'] = {'Division', ''},
['Brooklands: Mercedes 190 & 300'] = {'Clarke', '1989'},
['Book-Ahrons-British Steam Railway Locomotive'] = {'Ahrons', '1927'},
['Engelen: Mercedes-Benz C-Klasse: 201-205'] = {'Engelen', '2020'},
['Staud: Mercedes-Benz: The Grand Cabrios & Coupes'] = {'StaudLewandowski', '2016'},
['Simon-Wines Australia'] = {'Simon', '1966'},
['Ludvigsen: German Racing Silver'] = {'Ludvigsen', '2009'},
['Plowman: The SITMAR Liners'] = {'Plowman', '2004'},
['Plowman-Sitmar'] = {'Plowman', '2004'},
['Häußermann: Mercedes-Benz S-Class'] = {'Häußermann', '2006b'},
['Mellon: Mercedes: Coupes 1974-84 Repair Manual'] = {'', '2001'},
['Chilton-MCSW 1974-84'] = {'', '2001'},
['Shindo: 100 sai no ryugi'] = {'Shindo', '2012'},
['100sainoryugi'] = {'Shindo', '2012'},
['Brooklands: Mercedes AMG Gold Portfolio 1983-1999'] = {'Clarke', '2007'},
['Taylor: Mercedes-Benz: Cars of the 1990s'] = {'Taylor', '2009'},
['Jordan-WineWABest'] = {'Jordan', '2002'},
['The Life and Times of Ali ibn Isa'] = {'Bowen', '1928'},
['Bentley: Mercedes-Benz Technical Companion'] = {'America', '2005'},
['Bentley-MB Technical'] = {'America', '2005'},
['Gibbs: Pacific Graveyard'] = {'Gibbs', '1992'},
['Gibbs-Graveyard'] = {'Gibbs', '1992'},
['Neate-High Asia'] = {'Neate', '1989'},
['Brooklands: Mercedes-Benz 190SL 300SL 300SLR'] = {'Clarke', '2011'},
['Cite IPH'] = {'', '2017'},
['Cite AIA5'] = {'WhiteWillenskyLeadon', '2010'},
['Bond-Pemberton'] = {'Bond', '2008'},
['Schlegelmilch: Mercedes'] = {'SchlegelmilchLehbrinkOsterroth', '2013'},
['Schlegelmilch-M-2013'] = {'SchlegelmilchLehbrinkOsterroth', '2013'},
['Thierry: Armenian Art'] = {'Thierry', '1989'},
['Armenian Art 1989'] = {'Thierry', '1989'},
['Meredith: Mercedes-Benz Saloons'] = {'Meredith', '2003'},
['Austen: Porsche 924 944 968'] = {'Austen', '2013'},
['Nitskey: Mercedes-Benz Production Models Book 1946-1995'] = {'Nitske', '1995'},
['Sessler: Mercedes-Benz SL Series'] = {'Sessler', '2011'},
['Schneider: NSU Autos und Motorräder 1900–1977'] = {'Schneider', '2011'},
['Wieder: The Great American Convertible'] = {'WiederHall', '1977'},
['Vieweg: Alles über die Mercedes'] = {'Vieweg', '2000'},
['Brooklands: On Mercedes Sports & GT Cars 1970-1980'] = {'Clarke', '1980'},
['Brooklands-MBRTS>C70'] = {'Clarke', '1980'},
['Parkhouse: West Gloucester & Wye Valley Lines'] = {'Parkhouse', '2013a'},
['Book-Parkhouse-BRHIC-1'] = {'Parkhouse', '2013a'},
['Geiling: NSU: Fahrzeuge'] = {'Geiling', '2009'},
['Les personnages byzantins de l\'Alexiade'] = {'Skoulatos', '1980'},
['Taylor: Factory-Original Mercedes SL'] = {'Taylor', '2013'},
['Brooklands: Mercedes 230SL'] = {'Clarke', '2010'},
['Strom 1979'] = {'Strom', '1979'},
['Nicholls-The Establishment Boys'] = {'Nicholls', '2021'},
['The Latins in the Levant'] = {'Miller', '1908'},
['Essays on the Latin Orient'] = {'Miller', '1921'},
['Niemann: Personenwagen von Mercedes-Benz'] = {'Niemann', '2006'},
['Staud: Faszination und Mythos'] = {'StaudKittler', '2001'},
['Venice, Austria, and the Turks in the Seventeenth Century'] = {'Setton', '1991'},
['Fletcher: Universal Tank'] = {'Fletcher', '1989b'},
['Book-Fletcher-Universal Tank'] = {'Fletcher', '1989b'},
['Strom Trask Guest 1975'] = {'StromTraskGuest', '1975'},
['The Making of Byzantium, 600–1025'] = {'Whittow', '1996'},
['The Despotate of Epiros, 1267–1479'] = {'Nicol', '1984'},
['Fletcher: The Great Tank Scandal'] = {'Fletcher', '1989a'},
['Cite OCSC'] = {'WondrichRothbaum', '2021'},
['Hansen: Swords of Armageddon'] = {'Hansen', '2007'},
['Book-Hansen-Swords of Armageddon'] = {'Hansen', '2007'},
['Bosworth-The New Islamic Dynasties'] = {'Bosworth', '1996'},
['The Latin Renovatio of Byzantium'] = {'Tricht', '2011'},
['Meredith: Mercedes-Benz SL Sports Cars'] = {'Meredith', '1999'},
['Larimer: Mercedes-Benz Buyer\'s Guide'] = {'Larimer', '2004'},
['Bongers: Porsche Data Book'] = {'Bongers', '2006'},
['Brooklands: On Audi & Auto Union 1952-1980'] = {'Clarke', '1986'},
['Brooklands-AAURT52'] = {'Clarke', '1986'},
['The Byzantine Revival, 780–842'] = {'Treadgold', '1988'},
['Alexander-Four Bishops'] = {'Alexander', '1957'},
['A History of the Byzantine State and Society'] = {'Treadgold', '1997'},
['Hovannisian: Armenian Van-Vaspurakan'] = {'Hovannisian', '2000'},
['Armenian Van-Vaspurakan 2000'] = {'Hovannisian', '2000'},
['Morgan: Original Porsche 924 944 968'] = {'Morgan', '1998'},
['Naval Wars in the Levant 1559–1853'] = {'Anderson', '1952'},
['The Imperial Administrative System of the Ninth Century'] = {'BuryPhilotheus', '1911'},
['Genoa and the Genoese'] = {'Epstein', '1996'},
['Pitt: Porsche 924 944 968'] = {'Pitt', '2006'},
['Wood: Porsche: The Legend'] = {'Wood', '1997'},
['Smale: Porsche 924 928 944 968'] = {'Smale', '2015'},
['Oswald: Mercedes-Benz Personenwagen 1886-1986'] = {'Oswald', '2018'},
['Eckert-Buildings of Michigan'] = {'Eckert', '1993'},
['Hardy-AustWinePictAtlas'] = {'Hardy', '1997'},
['Chilton: Mercedes-Benz: 1968-73'] = {'Staff', '1974'},
['Chilton-MB 1968-73'] = {'Staff', '1974'},
['The Abbasid Caliphate: A History'] = {'El-Hibri', '2021'},
['Lintelmann: Mercedes-Benz SL'] = {'Lintelmann', '2010'},
['Meredith: Original Mercedes SL'] = {'Meredith', '1996'},
['Halliday-AustWineEncyc'] = {'Halliday', '2009'},
['Nebraska Place-Names'] = {'FitzpatrickLink', '1960'},
['Smith: Cruise Ships 2010'] = {'Smith', '2010'},
['Smith-Cruise Ships-2010'] = {'Smith', '2010'},
['Nixon: Racing the Silver Arrows'] = {'Nixon', '2003'},
['Arth: NSU: Alle Automobile von 1905 bis 1977'] = {'Arth', '2016'},
['Cite AIA4'] = {'WhiteWillensky', '2000'},
['Brooklands: Mercedes SLs & SLCs Gold Portfolio 1971-1989'] = {'Clarke', '1990'},
['Byzantium and Venice: A Study in Diplomatic and Cultural Relations'] = {'Nicol', '1988'},
['Brooklands: Mercedes-Benz SL SLK CLK Portfolio 1990-2003'] = {'Clarke', '2004'},
['Hartmann: Das große Mercedes-Cabrio-Buch'] = {'Hartmann', '2017'},
['The Late Medieval Balkans'] = {'Fine', '1994'},
['The Byzantine Family of Kantakouzenos'] = {'Nicol', '1968'},
['Book-Van Riemsdijk-Compound Locomotives'] = {'Riemsdijk', '1994'},
['Mills: Stern-wheelers up Columbia'] = {'Mills', '1977'},
['Mills-Columbia'] = {'Mills', '1977'},
['Book-Hills-Power from Steam'] = {'Hills', '1989'},
['Lloyd-Margaret River'] = {'Wiltshire', '2000'},
['Saunders: Giants of the Seas'] = {'Saunders', '2013'},
['Saunders-Giants of the Seas'] = {'Saunders', '2013'},
['Malin 1976'] = {'Malin', '1976'},
['The Visual History of Type'] = {'McNeil', '2017'},
['Holmes: Ultimate Convertibles'] = {'Holmes', '2007'},
['Warfare, State and Society in the Byzantine World, 565–1204'] = {'Haldon', '1999'},
['Cite Wright Companion'] = {'Storrer', '1993'},
['Koehling: Mercedes-Benz the Early SL Cars'] = {'Koehling', '2014'},
['Kennedy-The Armies of the Caliphs'] = {'Kennedy', '2001'},
['Ghost Towns of California'] = {'Miller', '1978'},
['Polemis-The Doukai'] = {'Polemis', '1968'},
['Sugahara: Mercedes-Benz Grand Prix Race Cars 1934–1955'] = {'Sugahara', '2004'},
['Langworth: The Great American Convertible'] = {'Langworth', '1988'},
['John Skylitzes: A Synopsis of Byzantine History, 811–1057'] = {'Wortley', '2010'},
['Jackson: Japanese Super Cars'] = {'Jackson', '1992'},
['Laban: Mercedes SL Series'] = {'Laban', '1992'},
['Cite The Age of the Galley'] = {'MorrisonGardiner', '1995'},
['The Byzantine Lady: Ten Portraits, 1250–1500'] = {'Nicol', '1994'},
['Bruno: Mercedes Benz Personenwagen 1886–1980'] = {'Bruno', '2014'},
['Bass: Mercedes-Benz Pagoda 230, 250 & 280 SL'] = {'Bass', '2007'},
['The Arab Emirates in Bagratid Armenia'] = {'Ter-Ghewondyan', '1976'},
['Halliday-AustWineCompend'] = {'Halliday', '1985'},
['Brooklands: On Mercedes 1980-1987'] = {'Clarke', '1987'},
['Brooklands-MBRT80'] = {'Clarke', '1987'},
['Gordon-The Breaking of a Thousand Swords'] = {'Gordon', '2001'},
['Bruse: NSU Fotoalbum 1906–1977'] = {'BruseStorz', '2010'},
['Lederer: Mercedes-Benz Ponton & Heckflosse'] = {'Lederer', '1997'},
['Wirth: Mercedes-Benz Supercars'] = {'Wirth', '2012'},
['Fuths: Porsche 924 944 968 928'] = {'Fuths', '2020'},
['Schneider: NSU 1873-1984'] = {'Schneider', '1988'},
['Caro: The Power Broker'] = {'Caro', '1974'},
['Cite Power Broker'] = {'Caro', '1974'},
['Brooklands: Mercedes SLs Performance Portfolio 1989-1994'] = {'Clarke', '1996'},
['The World\'s Writing Systems'] = {'', '1996'},
['A Short History of Berkhamsted'] = {'Birtchnell', '1972'},
['Bradsher: High and Mighty'] = {'Bradsher', '2002'},
['Schrader: Porsche 924 944 968'] = {'Schrader', '2018'},
['Brooklands: Mercedes AMG Ultimate Portfolio 2000'] = {'Clarke', '2007'},
['Book-Hansen-US Nuclear Weapons'] = {'Hansen', '1988'},
['The Immortal Emperor: The Life and Legend of Constantine Palaiologos, Last Emperor of the Romans'] = {'Nicol', '1992'},
['Kennedy-The Great Arab Conquests'] = {'Kennedy', '2007'},
['The Governors and Judges of Egypt'] = {'Al-Kindi', '1912'},
['Pitt: Mercedes-Benz SL & SLR'] = {'Pitt', '2009'},
['Häußermann: Mercedes-Benz: The Large Coupes'] = {'Häußermann', '2006a'},
['Hirsch: The Last American Convertibles'] = {'HirschWeith', '1979'},
['Gault et al 1975'] = {'GaultGuestMurrayDzurisin', '1975'},
['Gault et al. 1975'] = {'GaultGuestMurrayDzurisin', '1975'},
['Plowman: Australian Cruise Ships'] = {'Plowman', '2007'},
['Plowman-Aust Cruise Ships'] = {'Plowman', '2007'},
['MacMullen: Paddle-Wheel Days in California'] = {'MacMullen', '1970'},
['MacMullen-Paddle-Wheel'] = {'MacMullen', '1970'},
['Günther: Das grosse Mercedes-SL-Buch'] = {'GüntherHübner', '1990'},
['Églises romanes oubliées du Roussillon'] = {'Mallet', '2003'},
['Emperor Michael Palaeologus and the West'] = {'Geanakoplos', '1959'},
['Wilhelms 1976'] = {'Wilhelms', '1976'},
['The Arab Kingdom and its Fall'] = {'Wellhausen', '1927'},
['Venice: A Maritime Republic'] = {'Lane', '1973'},
['Rocke: Das große Mercedes-S-Klasse-Buch'] = {'Röcke', '1991'},
['Taylor: Mercedes-Benz S-Class 1972-2013'] = {'Taylor', '2014'},
['Botto: At This Theatre'] = {'BottoMitchell', '2002'},
['Cite ATT Broadway'] = {'BottoMitchell', '2002'},
['Scott-Negus-Cellar Door'] = {'ScottNegus', '2011'},
['The End of the Jihâd State'] = {'Blankinship', '1994'},
['Brooklands: On Mercedes 1971-1979'] = {'Clarke', '1987'},
['Brooklands-MBRT71'] = {'Clarke', '1987'},
['The Oxford Guide to the Uralic Languages'] = {'Bakró-NagyLaaksoSkribnik', '2022'},
['Brooklands: Mercedes-Benz SLs & SLCs Ultimate Portfolio 1971-1989'] = {'Clarke', '2004'},
['Byzantium Confronts the West'] = {'Brand', '1968'},
['Henshaw: The Ultimate Guide to SUVs and Off-Road Vehicles'] = {'Henshaw', '2005'},
['The Arab Conquests in Central Asia'] = {'Gibb', '1923'},
['La Morée franque'] = {'Bon', '1969'},
['History of Yolo County'] = {'Gregory', '1913'},
['Cotton: Porsche 924, 944 & 968'] = {'Cotton', '2000'},
['Kalifen und Assassinen'] = {'Halm', '2014'},
['The Muslims of Medieval Italy'] = {'Metcalfe', '2009'},
['AIA Guide to Boston'] = {'SouthworthSouthworth', '2008'},
['Cite aiaboston'] = {'SouthworthSouthworth', '2008'},
['MacLaren-Mapper of Mountains'] = {'MacLaren', '2005'},
['The Buwayhid Dynasty in Iraq'] = {'Donohue', '2003'},
['Ghost Towns of Northern California'] = {'VarneySusan', '2001'},
['Brooklands: On Mercedes 1952-1962'] = {'Clarke', '1987'},
['Brooklands-MBRT52'] = {'Clarke', '1987'},
['Smith: Cruise Ships 2014'] = {'Smith', '2014'},
['Smith-Cruise Ships-2014'] = {'Smith', '2014'},
['The Geometrical Foundation of Natural Structure (book)'] = {'Williams', '1979'},
['Die Kalifen von Kairo'] = {'Halm', '2003'},
['Walker: NSU: The Complete Story'] = {'Walker', '2009'},
},
patterns = {
{
{'Cite PHAK'},
{'CITEREF.*%d%d%d%d'}
},
{
{'Daftary-The Ismailis'},
{'CITEREFDaftary1990', 'CITEREFDaftary2007'}
},
{
{'Baxter: British Locomotive Catalogue 1825–1923', 'Baxter-BritishLocoCat5A', 'Baxter-BritishLocoCat6', 'Baxter-BritishLocoCat3B', 'Baxter-BritishLocoCat3A', 'Baxter-BritishLocoCat4', 'Baxter-BritishLocoCat5B', 'Baxter-BritishLocoCat2B', 'Baxter-BritishLocoCat2A', 'Baxter-BritishLocoCat1', 'Baxter: British Locomotive Catalogue 1825-1923'},
{'CITEREFBaxter1977', 'CITEREFBaxter1978', 'CITEREFBaxter1979', 'CITEREFBaxter1982', 'CITEREFBaxter1982a', 'CITEREFBaxter1984', 'CITEREFBaxter1986', 'CITEREFBaxter1988', 'CITEREFBaxter2012'}
},
{
{'Baghdad During the Abbasid Caliphate'},
{'CITEREFStrange1900', 'CITEREFStrange1922'}
},
{
{'Mercedes-Benz (Koch)'},
{'CITEREFKittler2002', 'CITEREFRohdeKoch2000'}
},
{
{'Deutsche Autos', 'Oswald: Deutsche Autos'},
{'CITEREFKittler2001a', 'CITEREFKittler2001b', 'CITEREFKittler2005', 'CITEREFOswald2001a', 'CITEREFOswald2001b', 'CITEREFOswald2001c', 'CITEREFSchrader2002'}
},
{
{'Wisconsin History of the Crusades'},
{'CITEREFSettonBaldwin1969', 'CITEREFSettonHazard1975', 'CITEREFSettonHazard1977', 'CITEREFSettonHazardZacour1989', 'CITEREFSettonWolffHazard1969', 'CITEREFSettonZacourHazard1985'}
},
{
{'Cite AWH'},
{'CITEREF.*%d%d%d%d'}
},
{
{'Hofner: Mercedes-Benz Typenkunde', 'Mercedes-Benz Typenkunde'},
{'CITEREFHofner2010a', 'CITEREFHofner2010b', 'CITEREFHofner2011'}
},
{
{'London encyclopedia'},
{'CITEREFWeinrebHibbertKeayKeay1983', 'CITEREFWeinrebHibbertKeayKeay1993', 'CITEREFWeinrebHibbertKeayKeay2008'}
},
{
{'Barrington Atlas', 'Barrington', 'Cite Barrington'},
{'CITEREFTalbert,_Vol_12000', 'CITEREFTalbert,_Vol_22000', 'CITEREFTalbert2000'}
},
{
{'The Cambridge History of Egypt'},
{'CITEREFDaly1998', 'CITEREFPetry1998'}
},
{
{'The Last Centuries of Byzantium, 1261–1453'},
{'CITEREFNicol1972', 'CITEREFNicol1993'}
},
{
{'The Papacy and the Levant', 'The Papacy and the Levant, 1204–1571', 'The Papacy and the Levant, 1204-1571'},
{'CITEREFSetton1976', 'CITEREFSetton1978', 'CITEREFSetton1984', 'CITEREFSetton1984a'}
},
{
{'Canadian census corrections', '2021 Canadian census corrections', '2021CDNcc'},
{'CITEREF.*%d%d%d%d'}
},
{
{'Harry Potter reference'},
{'CITEREFRowling1997', 'CITEREFRowling1998', 'CITEREFRowling1999', 'CITEREFRowling2000', 'CITEREFRowling2001', 'CITEREFRowling2001a', 'CITEREFRowling2003', 'CITEREFRowling2005', 'CITEREFRowling2007'}
},
{
{'The Cambridge History of Iran'},
{'CITEREFAveryHamblyMelville1991', 'CITEREFBoyle1968', 'CITEREFFischer1968', 'CITEREFFrye1975', 'CITEREFGershevitch1985', 'CITEREFLockhartJackson1986', 'CITEREFYarshater1983'}
},
{
{'Slaves on Horses'},
{'CITEREFCrone1980', 'CITEREFCrone2003'}
},
{
{'Imber-The Ottoman Empire, 1300–1650'},
{'CITEREFImber2002', 'CITEREFImber2009', 'CITEREFImber2019'}
},
{
{'Magdalino-The Empire of Manuel I Komnenos'},
{'CITEREFMagdalino1993', 'CITEREFMagdalino2002'}
},
{
{'Scharf: History of the Confederate States Navy', 'Scharf-History'},
{'CITEREFScharf1887', 'CITEREFScharf1996'}
},
{
{'Parliamentary manuals', 'Cite parl'},
{'CITEREFDemeter1969', 'CITEREFMason2000', 'CITEREFRiddickButcher1985', 'CITEREFRobert1876', 'CITEREFRobert1893', 'CITEREFRobert1915', 'CITEREFRobert1943', 'CITEREFRobert1951', 'CITEREFRobert1970', 'CITEREFRobert1981', 'CITEREFRobert1990', 'CITEREFRobert2000', 'CITEREFSturgis1950', 'CITEREFSturgis1965', 'CITEREFSturgis1988', 'CITEREFSturgis2001'}
},
{
{'The First Dynasty of Islam'},
{'CITEREFHawting1987', 'CITEREFHawting2000'}
},
{
{'The Byzantine Empire, 1025–1204: A Political History'},
{'CITEREFAngold1984', 'CITEREFAngold1997'}
},
{
{'Black and Bolton Biographical Register', 'Black and Bolton 2001'},
{'CITEREFBlackBolton2001a', 'CITEREFBlackBolton2001b'}
},
{
{'Porsche: Excellence Was Expected'},
{'CITEREFExcellence_was_Expected,_Book_1,2019', 'CITEREFExcellence_was_Expected,_Book_2,2019', 'CITEREFExcellence_was_Expected,_Book_3,2019', 'CITEREFExcellence_was_Expected,_Book_4,2019', 'CITEREFExcellence_was_Expected,_Vol_1,2003', 'CITEREFExcellence_was_Expected,_Vol_2,2003', 'CITEREFExcellence_was_Expected,_Vol_3,2003'}
},
{
{'Cite Roman Missal'},
{'CITEREFSodiTriacca2012'}
},
{
{'Census UK CoB', '2011CensusScotlandCoB', '2011CensusNICoB', '2021CensusEngWalCoB', '2021CensusNICoB', '2022CensusScotlandCoB', '2011CensusEngWalCoB'},
{'CITEREFNISRACOB2011', 'CITEREFNISRACOB2021', 'CITEREFNRSCOB2011', 'CITEREFNRSCOB2022', 'CITEREFONSCOB2011', 'CITEREFONSCOB2021'}
},
{
{'Hunter: Steamboats on the Western Rivers', 'Hunter-Steamboats-1993', 'Hunter-Steamboats-1949'},
{'CITEREFHunter1949', 'CITEREFHunter1993'}
},
{
{'Mehmed the Conqueror and His Time'},
{'CITEREFBabinger1978', 'CITEREFBabinger1992'}
},
{
{'The Early Medieval Balkans'},
{'CITEREFFine1983', 'CITEREFFine1991'}
},
{
{'Standard Catalog of American Cars 1946–1975'},
{'CITEREFGunnell1982', 'CITEREFGunnell1987', 'CITEREFGunnell1992', 'CITEREFGunnell1997'}
},
{
{'Ιστορία του Ελληνικού Έθνους'},
{'CITEREFChristopoulosBastias1970', 'CITEREFChristopoulosBastias1971', 'CITEREFChristopoulosBastias1972', 'CITEREFChristopoulosBastias1973', 'CITEREFChristopoulosBastias1974', 'CITEREFChristopoulosBastias1975', 'CITEREFChristopoulosBastias1976', 'CITEREFChristopoulosBastias1977', 'CITEREFChristopoulosBastias1978', 'CITEREFChristopoulosBastias1979', 'CITEREFChristopoulosBastias1980', 'CITEREFChristopoulosBastias2000'}
},
{
{'Hovannisian: The Republic of Armenia', 'Cite The Republic of Armenia Volume 1'},
{'CITEREFHovannisian1971', 'CITEREFHovannisian1982', 'CITEREFHovannisian1996a', 'CITEREFHovannisian1996b'}
},
{
{'The Breweries of Australia'},
{'CITEREFDeutsher1999', 'CITEREFDeutsher2012'}
},
{
{'Beaulieu Encyclopedia of the Automobile'},
{'CITEREFGeorgano2001'}
},
{
{'AF Cite Book'},
{'CITEREFColfer2001', 'CITEREFColfer2002', 'CITEREFColfer2003', 'CITEREFColfer2004', 'CITEREFColfer2005', 'CITEREFColfer2006', 'CITEREFColfer2007', 'CITEREFColfer2008', 'CITEREFColfer2010'}
},
{
{'Catalogue of Byzantine Seals at Dumbarton Oaks and in the Fogg Museum of Art'},
{'CITEREFCotsonis2020', 'CITEREFMcGeerNesbittOikonomides2001', 'CITEREFMcGeerNesbittOikonomides2005', 'CITEREFNesbittMorrisson2009', 'CITEREFNesbittOikonomides1991', 'CITEREFNesbittOikonomides1994', 'CITEREFNesbittOikonomides1996'}
},
{
{'Mercedes-Benz The 1960s'},
{'CITEREFKoehling2021'}
},
{
{'James Halliday\'s Wine Atlas of Australia'},
{'CITEREFHalliday2006', 'CITEREFHalliday2008', 'CITEREFHalliday2014'}
},
{
{'Eminent Scotsmen'},
{'CITEREFChambersThomson1857'}
},
{
{'Azerbaijani Soviet Encyclopedia'},
{'CITEREFАСЕ1976', 'CITEREFАСЕ1978', 'CITEREFАСЕ1979', 'CITEREFАСЕ1980', 'CITEREFАСЕ1981', 'CITEREFАСЕ1982', 'CITEREFАСЕ1983', 'CITEREFАСЕ1984', 'CITEREFАСЕ1986', 'CITEREFАСЕ1987'}
},
{
{'The Prophet and the Age of the Caliphates'},
{'CITEREFKennedy1986', 'CITEREFKennedy2004', 'CITEREFKennedy2016', 'CITEREFKennedy2023'}
},
{
{'Stern: New York', 'Cite New York 1930', 'Cite New York 1900', 'Cite New York 1960', 'Cite New York 2000', 'Cite New York 1880', 'Cite New York'},
{'CITEREFSternFishmanTilove2006', 'CITEREFSternGilmartinMassengale1983', 'CITEREFSternGilmartinMellins1987', 'CITEREFSternMellinsFishman1995', 'CITEREFSternMellinsFishman1999'}
},
{
{'Oswald: Mercedes-Benz Personenwagen', 'Mercedes-Benz Personenwagen'},
{'CITEREFEngelen2002', 'CITEREFEngelen2003', 'CITEREFOswald2001d', 'CITEREFOswald2001e'}
},
{
{'Runciman-A History of the Crusades'},
{'CITEREFRunciman1951', 'CITEREFRunciman1952', 'CITEREFRunciman1954'}
},
{
{'Hofner: Mercedes-Benz Automobile'},
{'CITEREFHofnerSchrader2005'}
},
{
{'Mercedes-Benz since 1945'},
{'CITEREFTaylor1985', 'CITEREFTaylor1986', 'CITEREFTaylor1994'}
},
{
{'Colledge: Ships RN', 'Cite Colledge2006', 'Cite Colledge2010', 'Colledge', 'Cite Colledge2020'},
{'CITEREFColledge1969', 'CITEREFColledge1970', 'CITEREFColledge1987', 'CITEREFColledge1989', 'CITEREFColledgeWarlow2003', 'CITEREFColledgeWarlow2006', 'CITEREFColledgeWarlow2010', 'CITEREFColledgeWarlowBush2020'}
},
{
{'Unbegaun: Russian Surnames', 'Unbegaun'},
{'CITEREFUnbegaun1989', 'CITEREFUnbegaun1995'}
},
{
{'Biographical Dictionary of Women in Science', 'BDWS'},
{'CITEREFOgilvieHarvey2000'}
},
{
{'Bauer: Die Straßenbahnen in Ostdeutschland'},
{'CITEREFBauerKuschinski1993', 'CITEREFBauerKuschinski1994', 'CITEREFBauerKuschinski1995'}
},
{
{'Canadian census designated place results', '1996 Canadian census designated place results', '1996CDNcdplr'},
{'CITEREF.*%d%d%d%d'}
},
{
{'Varzos-Genealogy of the Komnenoi', 'Η Γενεαλογία των Κομνηνών'},
{'CITEREFVarzos,_Vol._A1,1984', 'CITEREFVarzos,_Vol._A2,1984', 'CITEREFVarzos,_Vol._B,1984'}
},
{
{'Amacad Book of Members'},
{'CITEREF.*%d%d%d%d'}
},
{
{'Canadian census unincorporated place results', '1951 Canadian census unincorporated place results', '2021CDNcuipr', '1956 Canadian census unincorporated place results', '1951CDNcuipr', '1956CDNcuipr', '1961 Canadian census unincorporated place results', '1966 Canadian census unincorporated place results', '1961CDNcuipr', '1966CDNcuipr', '1971 Canadian census unincorporated place results', '1971CDNcuipr', '1976 Canadian census unincorporated place results', '1976CDNcuipr', '1981 Canadian census unincorporated place results', '1981CDNcuipr', '1986 Canadian census unincorporated place results', '1986CDNcuipr', '1991 Canadian census unincorporated place results', '1991CDNcuipr', 'CDNcuipr'},
{'CITEREF.*%d%d%d%d'}
},
{
{'Barrett: Illustrated Buyer\'s Guide Mercedes-Benz', 'Barrett: llustrated Buyer\'s Guide Mercedes-Benz'},
{'CITEREFBarrett1994', 'CITEREFBarrett1998'}
},
{
{'Höltge: Straßen und Stadtbahnen in Deutschland'},
{'CITEREFHöltge1992', 'CITEREFHöltge1994', 'CITEREFHöltge1999', 'CITEREFHöltgeKochems2006', 'CITEREFHöltgeKöhler1992', 'CITEREFKochemsHöltge2011'}
},
{
{'Standard Catalog of American Cars 1805-1942'},
{'CITEREFKimesJr1985', 'CITEREFKimesJr1989', 'CITEREFKimesJr1996'}
},
{
{'British Red Data Books'},
{'CITEREFBratton1991', 'CITEREFShirt1987', 'CITEREFWigginton1999'}
},
{
{'Byzance et les Arabes'},
{'CITEREFCanard1950', 'CITEREFHonigmann1935', 'CITEREFVasiliev1935', 'CITEREFVasiliev1968'}
},
}
}
return registry
htd0wzverkdlywl9k2owqprafd0ruw8
Anakuhi:Sfn/doc
10
12219
102910
2026-04-28T17:30:12Z
Nimmzo
21509
Added Sfn doc
102910
wikitext
text/x-wiki
<!-- Add categories where indicated at the bottom of this page and interwikis at Wikidata -->
ʻO ka maʻamau pōkole moʻolelo wāwae {{tl|sfn}} ['''s'''hortened '''f'''oot'''n'''ote] he hōʻailona kuhikuhi e hoʻokaʻawale i Nā kūmole.
* Hoʻokumu ʻo Sfn i kahi kuhikuhi hōʻailona mea kākau–lā i loko o ka wāwae, me kahi loulou i ka puke pili ma Nā Kumuwaiwai.
* E hui pū ʻo Sfn i nā wāwae like ʻole aʻe i ka hiki ʻole ke hoʻokomo inoa i kahi kuhikuhi i ka ʻohana ma <syntaxhighlight lang="html" inline><ref name="SharedRef"></ref></syntaxhighlight>
== TemplateData ==
[[Anakuhi:Cite book.]] has only one |last=
<syntaxhighlight lang="html" line>
{{sfn|<lastName>|<yearOfBook>|p=<pageNumber>}}
</syntaxhighlight>
<syntaxhighlight lang="html" line highlight=1 copy>
i India hou.{{sfn|Joshi|1986|p=11–14}}
</syntaxhighlight>
Sfn is shorter with regard to Harvard citation: [[Anakuhi:harvnb]]
<syntaxhighlight lang="html" line>
<ref>{{harvnb|<lastName>|<yearOfBook>|p=<pageNumber>}}</ref>
</syntaxhighlight>
With two authors |last1= and |last2=
<syntaxhighlight lang="html" line start=2>
{{sfn|<lastName1>|<lastName2>|<yearOfBook>|p=<pageNumber>}}
</syntaxhighlight>
<syntaxhighlight lang="html" line highlight=1 start=2 copy>
ʻo India.{{sfn|Buswell|Lopez|2013|p=34}}
</syntaxhighlight>
When the page is unknown, indicate the chapter:
<syntaxhighlight lang="html" line start=3>
{{sfn|<lastName>|<yearOfBook>|loc=<locationInBook>}}
</syntaxhighlight>
<templatedata>
{
"params": {
"1": {
"description": "Last name",
"required": true,
"example": "Smith",
"type": "line",
"suggested": true,
"label": "Author last name"
},
"2": {
"description": "Optional last name of second author",
"required": false,
"type": "string",
"label": "Second last name"
},
"3": {
"description": "Year of book",
"required": true,
"example": "2026",
"type": "number",
"label": "Year"
},
"p": {
"description": "Page number in source, if the relevant information is on one page (use the «pp» parameter for multiple pages, and the «loc» parameter for other location data)",
"suggested": true,
"example": "42",
"type": "line",
"label": "Page"
},
"pp": {
"description": "Page numbers in source",
"example": "23–24",
"type": "line",
"label": "Pages"
},
"loc": {
"description": "Location in source",
"example": "section 7",
"type": "line",
"label": "Location"
},
"group": {
"label": "Group",
"description": "The reference group for the footnote",
"type": "string"
}
},
"description": "This template creates a short author–date citation in a footnote. It allows you to link inline citation using Harvard citations (a form of short citations using parenthetical references) to their corresponding full bibliographic citations.",
"format": "inline"
}
</templatedata>
<includeonly>{{sandbox other||
<!-- Categories below this line; interwikis at Wikidata -->
[[Category:Author–date citation templates]]
[[Category:Footnote templates]]
[[Category:Templates that generate named references]]
}}</includeonly>
i8rc7vpecbjly0p4ixkyvz7nelgcbdi
102911
102910
2026-04-28T17:40:09Z
Nimmzo
21509
+template doc page transcluded +template doc page viewed directly
102911
wikitext
text/x-wiki
<includeonly>{{template doc page transcluded}}</includeonly><noinclude>{{template doc page viewed directly}}</noinclude>
ʻO ka maʻamau pōkole moʻolelo wāwae {{tl|sfn}} ['''s'''hortened '''f'''oot'''n'''ote] he hōʻailona kuhikuhi e hoʻokaʻawale i Nā kūmole.
* Hoʻokumu ʻo Sfn i kahi kuhikuhi hōʻailona mea kākau–lā i loko o ka wāwae, me kahi loulou i ka puke pili ma Nā Kumuwaiwai.
* E hui pū ʻo Sfn i nā wāwae like ʻole aʻe i ka hiki ʻole ke hoʻokomo inoa i kahi kuhikuhi i ka ʻohana ma <syntaxhighlight lang="html" inline><ref name="SharedRef"></ref></syntaxhighlight>
== TemplateData ==
[[Anakuhi:Cite book.]] has only one |last=
<syntaxhighlight lang="html" line>
{{sfn|<lastName>|<yearOfBook>|p=<pageNumber>}}
</syntaxhighlight>
<syntaxhighlight lang="html" line highlight=1 copy>
i India hou.{{sfn|Joshi|1986|p=11–14}}
</syntaxhighlight>
Sfn is shorter with regard to Harvard citation: [[Anakuhi:harvnb]]
<syntaxhighlight lang="html" line>
<ref>{{harvnb|<lastName>|<yearOfBook>|p=<pageNumber>}}</ref>
</syntaxhighlight>
With two authors |last1= and |last2=
<syntaxhighlight lang="html" line start=2>
{{sfn|<lastName1>|<lastName2>|<yearOfBook>|p=<pageNumber>}}
</syntaxhighlight>
<syntaxhighlight lang="html" line highlight=1 start=2 copy>
ʻo India.{{sfn|Buswell|Lopez|2013|p=34}}
</syntaxhighlight>
When the page is unknown, indicate the chapter:
<syntaxhighlight lang="html" line start=3>
{{sfn|<lastName>|<yearOfBook>|loc=<locationInBook>}}
</syntaxhighlight>
<templatedata>
{
"params": {
"1": {
"description": "Last name",
"required": true,
"example": "Smith",
"type": "line",
"suggested": true,
"label": "Author last name"
},
"2": {
"description": "Optional last name of second author",
"required": false,
"type": "string",
"label": "Second last name"
},
"3": {
"description": "Year of book",
"required": true,
"example": "2026",
"type": "number",
"label": "Year"
},
"p": {
"description": "Page number in source, if the relevant information is on one page (use the «pp» parameter for multiple pages, and the «loc» parameter for other location data)",
"suggested": true,
"example": "42",
"type": "line",
"label": "Page"
},
"pp": {
"description": "Page numbers in source",
"example": "23–24",
"type": "line",
"label": "Pages"
},
"loc": {
"description": "Location in source",
"example": "section 7",
"type": "line",
"label": "Location"
},
"group": {
"label": "Group",
"description": "The reference group for the footnote",
"type": "string"
}
},
"description": "This template creates a short author–date citation in a footnote. It allows you to link inline citation using Harvard citations (a form of short citations using parenthetical references) to their corresponding full bibliographic citations.",
"format": "inline"
}
</templatedata>
<includeonly>{{sandbox other||
<!-- Categories below this line; interwikis at Wikidata -->
[[Category:Author–date citation templates]]
[[Category:Footnote templates]]
[[Category:Templates that generate named references]]
}}</includeonly>
39236eof4vn2t9ch4xsnqh4mpm5o64b
102913
102911
2026-04-28T18:00:05Z
Nimmzo
21509
+syntaxhighlight +inline +hyperlink to [[B. R. Ambedkar#CITEREFJoshi1986]]
102913
wikitext
text/x-wiki
<noinclude>{{template doc page viewed directly}}</noinclude>
ʻO ka maʻamau pōkole moʻolelo wāwae <syntaxhighlight lang="html" inline>{{sfn}}</syntaxhighlight> ['''s'''hortened '''f'''oot'''n'''ote] he hōʻailona kuhikuhi e hoʻokaʻawale i Nā kūmole.
* Hoʻokumu ʻo Sfn i kahi kuhikuhi hōʻailona mea kākau–lā i loko o ka wāwae, me kahi loulou i ka puke pili ma Nā Kumuwaiwai.
* E hui pū ʻo Sfn i nā wāwae like ʻole aʻe i ka hiki ʻole ke hoʻokomo inoa i kahi kuhikuhi i ka ʻohana ma <syntaxhighlight lang="html" inline><ref name="SharedRef"></ref></syntaxhighlight>
== TemplateData ==
[[Anakuhi:Cite book.]] has only one <syntaxhighlight lang="html" inline>|last=</syntaxhighlight> and must ends with <syntaxhighlight lang="html" inline>|ref=harv}}</syntaxhighlight>
<syntaxhighlight lang="html" line>
{{sfn|<lastName>|<yearOfBook>|p=<pageNumber>}}
</syntaxhighlight>
Hyperlink to [[B. R. Ambedkar#CITEREFJoshi1986]]:
<syntaxhighlight lang="html" line highlight=1 copy>
i India hou.{{sfn|Joshi|1986|p=11–14}}
</syntaxhighlight>
Sfn is shorter with regard to Harvard citation: [[Anakuhi:harvnb]]
<syntaxhighlight lang="html" line>
<ref>{{harvnb|<lastName>|<yearOfBook>|p=<pageNumber>}}</ref>
</syntaxhighlight>
With two authors <syntaxhighlight lang="html" inline>|last1=</syntaxhighlight> and <syntaxhighlight lang="html" inline>|last2=</syntaxhighlight>
<syntaxhighlight lang="html" line start=2>
{{sfn|<lastName1>|<lastName2>|<yearOfBook>|p=<pageNumber>}}
</syntaxhighlight>
<syntaxhighlight lang="html" line highlight=1 start=2 copy>
ʻo India.{{sfn|Buswell|Lopez|2013|p=34}}
</syntaxhighlight>
When the page is unknown, indicate the chapter:
<syntaxhighlight lang="html" line start=3>
{{sfn|<lastName>|<yearOfBook>|loc=<locationInBook>}}
</syntaxhighlight>
<templatedata>
{
"params": {
"1": {
"description": "Last name",
"required": true,
"example": "Smith",
"type": "line",
"suggested": true,
"label": "Author last name"
},
"2": {
"description": "Optional last name of second author",
"required": false,
"type": "string",
"label": "Second last name"
},
"3": {
"description": "Year of book",
"required": true,
"example": "2026",
"type": "number",
"label": "Year"
},
"p": {
"description": "Page number in source, if the relevant information is on one page (use the «pp» parameter for multiple pages, and the «loc» parameter for other location data)",
"suggested": true,
"example": "42",
"type": "line",
"label": "Page"
},
"pp": {
"description": "Page numbers in source",
"example": "23–24",
"type": "line",
"label": "Pages"
},
"loc": {
"description": "Location in source",
"example": "section 7",
"type": "line",
"label": "Location"
},
"group": {
"label": "Group",
"description": "The reference group for the footnote",
"type": "string"
}
},
"description": "This template creates a short author–date citation in a footnote. It allows you to link inline citation using Harvard citations (a form of short citations using parenthetical references) to their corresponding full bibliographic citations.",
"format": "inline"
}
</templatedata>
<!-- Categories below this line; interwikis at Wikidata when sandbox other will work
<includeonly>{{sandbox other||
[[Category:Author–date citation templates]]
[[Category:Footnote templates]]
[[Category:Templates that generate named references]]
}}</includeonly>
-->
h8dq4q5rukdp4qanix31ixdllosnu2a
102914
102913
2026-04-28T18:30:04Z
Nimmzo
21509
ʻends → end.
102914
wikitext
text/x-wiki
<noinclude>{{template doc page viewed directly}}</noinclude>
ʻO ka maʻamau pōkole moʻolelo wāwae <syntaxhighlight lang="html" inline>{{sfn}}</syntaxhighlight> ['''s'''hortened '''f'''oot'''n'''ote] he hōʻailona kuhikuhi e hoʻokaʻawale i Nā kūmole.
* Hoʻokumu ʻo Sfn i kahi kuhikuhi hōʻailona mea kākau–lā i loko o ka wāwae, me kahi loulou i ka puke pili ma Nā Kumuwaiwai.
* E hui pū ʻo Sfn i nā wāwae like ʻole aʻe i ka hiki ʻole ke hoʻokomo inoa i kahi kuhikuhi i ka ʻohana ma <syntaxhighlight lang="html" inline><ref name="SharedRef"></ref></syntaxhighlight>
== TemplateData ==
[[Anakuhi:Cite book.]] has only one <syntaxhighlight lang="html" inline>|last=</syntaxhighlight> and must end with <syntaxhighlight lang="html" inline>|ref=harv}}</syntaxhighlight>:
<syntaxhighlight lang="html" line>
{{sfn|<lastName>|<yearOfBook>|p=<pageNumber>}}
</syntaxhighlight>
Hyperlink to [[B. R. Ambedkar#CITEREFJoshi1986]]:
<syntaxhighlight lang="html" line highlight=1 copy>
i India hou.{{sfn|Joshi|1986|p=11–14}}
</syntaxhighlight>
Sfn is shorter with regard to Harvard citation no bracket: [[Anakuhi:harvnb]]
<syntaxhighlight lang="html" line>
<ref>{{harvnb|<lastName>|<yearOfBook>|p=<pageNumber>}}</ref>
</syntaxhighlight>
With two authors <syntaxhighlight lang="html" inline>|last1=</syntaxhighlight> and <syntaxhighlight lang="html" inline>|last2=</syntaxhighlight>:
<syntaxhighlight lang="html" line start=2>
{{sfn|<lastName1>|<lastName2>|<yearOfBook>|p=<pageNumber>}}
</syntaxhighlight>
<syntaxhighlight lang="html" line highlight=1 start=2 copy>
ʻo India.{{sfn|Buswell|Lopez|2013|p=34}}
</syntaxhighlight>
When the page is unknown, indicate the chapter:
<syntaxhighlight lang="html" line start=3>
{{sfn|<lastName>|<yearOfBook>|loc=<locationInBook>}}
</syntaxhighlight>
<templatedata>
{
"params": {
"1": {
"description": "Last name",
"required": true,
"example": "Kamakawiwoʻole",
"type": "line",
"suggested": true,
"label": "Author last name"
},
"2": {
"description": "Optional last name of second author",
"required": false,
"type": "string",
"label": "Second last name"
},
"3": {
"description": "Year of book",
"required": true,
"example": "2026",
"type": "number",
"label": "Year"
},
"p": {
"description": "Page number in source, if the relevant information is on one page (use the «pp» parameter for multiple pages, and the «loc» parameter for other location data)",
"suggested": true,
"example": "42",
"type": "line",
"label": "Page"
},
"pp": {
"description": "Page numbers in source",
"example": "23–24",
"type": "line",
"label": "Pages"
},
"loc": {
"description": "Location in source",
"example": "Mokuna 1",
"type": "line",
"label": "Location"
},
"group": {
"label": "Group",
"description": "The reference group for the footnote",
"type": "string"
}
},
"description": "This template creates a short author–date citation in a footnote. It allows you to link inline citation using Harvard citations (a form of short citations using parenthetical references) to their corresponding full bibliographic citations.",
"format": "inline"
}
</templatedata>
<!-- Categories below this line; interwikis at Wikidata when sandbox other will work
<includeonly>{{sandbox other||
[[Category:Author–date citation templates]]
[[Category:Footnote templates]]
[[Category:Templates that generate named references]]
}}</includeonly>
-->
jz1p3pb89k6kipqfewrqmrzap2pcs0o
Kawaii Kon
0
12220
102915
2026-04-29T05:47:33Z
Very Sad Dinosaur013
20270
Created by translating the page "[[:en:Special:Redirect/revision/1345314725|Kawaii Kon]]"
102915
wikitext
text/x-wiki
ʻO Kawaii Kon kahi hui anime ʻAmelika i mālama ʻia ma Honolulu, Hawaiʻi
4bhkji5zt9z5el6p9b2e22tl24xx3rc
Ma ka Puʻuwai
0
12221
102916
2026-04-29T06:19:35Z
Very Sad Dinosaur013
20270
Created by translating the page "[[:en:Special:Redirect/revision/1350629743|AtHeart]]"
102916
wikitext
text/x-wiki
ʻO '''AtHeart''' (Korean: 앳하트) he hui kaikamahine Kōlea Hema i hoʻokumu ʻia e ka hui ʻoliʻoli ʻo [[Titan Content.]] Aia ka hui i ʻehiku mau lālā: Michi, Arin, Katelyn, Bome, Seohyeon, Aurora, a me Nahyun.
1vt3wfel8yb4xq95cvhzba1h17u8sih
AtHeart
0
12222
102917
2026-04-29T06:21:45Z
Very Sad Dinosaur013
20270
Created by translating the page "[[:en:Special:Redirect/revision/1350629743|AtHeart]]"
102917
wikitext
text/x-wiki
ʻO '''AtHeart''' (Korean: 앳하트) he hui kaikamahine Kōlea Hema i hoʻokumu ʻia e ka hui ʻoliʻoli ʻo Titan Content. Aia ka hui i ʻehiku mau lālā: Michi, Arin, Katelyn, Bome, Seohyeon, Aurora, a me Nahyun.
== Nā Papa Hōʻikeʻike ==
=== Nā pāʻani i hoʻolōʻihi ʻia ===
=== Nā poʻe hoʻokahi ===
f15l0jswdwnf0xyshg9ixf9kzqbg45w