This is the documentation page for Modiwl:Taxobox

Lua error in Modiwl:Cite at line 166: attempt to concatenate local 'journaltitle' (a nil value). Lua error in Modiwl:Cite at line 166: attempt to concatenate local 'journaltitle' (a nil value).

This module is still unstable. Use with your own caution and report bugs and feature requests at Module talk:Taxobox or Wikidata talk:WikiProject_Taxonomy.

Taxobox.lua is a lua module which can automatically generate taxonomy infobox and is overwritable by classic taxobox parameters like species, unranked_ordo etc.

This module infobox is designed to be a replacement of Wikipedia's Taxobox. It provides configuration options which can control hypernym paths, show or hide certain ranks, specify content language and its configs, and make a callback and pass parameters to "classic" taxobox.

The following code

{{Taxobox
  | qid=Q464424
}}

creates the taxobox on the right hand side. The item to show is given with qid.

If you want to have this taxobox show up on each Wikidata taxon item: [1]

Internal golygu

Method taxobox golygu

The taxobox method provides function runs the above example. The method itself can be invoked with

{{#invoke: Taxobox
| taxobox
| qid=Q464424
| config[count]=10
}}

The number of parent taxons to show is given by config[count].

Method callback golygu

The callback method provides function to retrieve all internal parameters and pass them to an external template. The method can be invoked with like this

{{#invoke: Taxobox
| callback
| qid=Q464424
| template=OtherTaxobox
| config[count]=10
}}

callback accepts all arguments that taxobox accepted. It also accepts an extra argument template to specify name of the template to be expanded.

I18n golygu

Change the i18n messages in Module:I18n/taxobox. I18n also specifys some format strings which can be use to customize the infobox output of certain language.

message description example(s)
rank-format Format of instances of rheng tacson (Q427626), or cytras (Q713623). Will be passed into 2 named arguments when rendering ranks:
{link}
Wiki link to the rank
{label}
Display title of the rank
  • "[[{link}|{label}]]": display name and give a hyperlink to the rank, or
  • "{label}" only display name of the rank
rank-format-<latinrank> This argument is similar to rank-format but can be use to specify the format of certain rank. The "<latinrank>" is a latin name, can be a instance of rheng tacson (Q427626), or cytras (Q713623). For example "rank-format-cladus" for cytras (Q713623). It accepts same 2 named arguments like rank-format
  • "": don't display anything at this rank. Can be used to hide the rank name when the taxon is a clade
  • "<i>(clade)</i>": use italic style
  • "[[{link}|<span style=\"color:gray\">{label}</span>]]": use link and change color
item-format-current-with-vernacular-name Format of instances of tacson (Q16521) or tacson un eitem (Q310890). current means either the item is the main taxon (specified by module argument qid), or the item and all taxa between the item and main taxon (if any) are all tacson un eitem (Q310890). with-vernacular-name means the item's   or label exists and is different from  .

4 named arguments will be passed on redering:

{link}
Wiki link to the taxon item
{vernacular}
The "common name" (the value of   or item label) of taxon item in current language
{scientific}
Full scientific name
{scientificshort}
Short scientific name, for example "P. leo" of Llew (Q140)

Note: Don't use italic style here on scientific names. This style can be set by scientific-name-pattern, scientific-name-repl and other related messages.

  • "<b>{scientificshort}</b>": only display the short scientific name in bold weight
  • "<b>{vernacular} {scientificshort}</b>": display both vernacular and short scientific name in bold weight
  • "[[{link}|{vernacular}]]": display a hyperlink to target taxon with its vernacular name as label
item-format-current-with-vernacular-name Format of instances of tacson (Q16521) or tacson un eitem (Q310890). without-vernacular-name means either both   and label (in specified language) are empty, or the vernacular name is the same as  .

4 named arguments will be passed on rendering, and they are same to item-format-current-with-vernacular-name.

  • "[[{link}|{scientificshort}]]": display a hyperlink to target taxon with its short scientific name as label
  • "[[{link}|{vernacular}]] ({scientficshort})": display both vernacular and short scientific name, also link to target taxon on from vernacular name
scientific-name-pattern, scientific-name-repl Pattern replacement to generate full scientific name. Can be override per rank by scientific-name-pattern-<latinrank> and scientific-name-repl-<latinrank>.

Not the format of scientific-name-pattern and other *pattern* messages are Lua's patterns, which are similar to (Q125267) but not identical. Read the manual to know how to write ones.

  • (pattern) "^.+$": match all non-empty strings
    • (repl) "%0": do nothing for replacement, or
    • (repl) "<i>%0</i>": put the scientific name in <i> tag so it can be rendered as italic
short-scientific-name-pattern, short-scientific-name-repl Pattern replacement to generate short scientific name. Can be override per rank by short-scientific-name-pattern-<latinrank> and short-scientific-name-repl-<latinrank>.
scientific-name-pattern-<latinrank>, scientific-name-repl-<latinrank> Pattern replcacement to generate full scientific name per rank. The "<latinrank>" is a latin name, can be a instance of rheng tacson (Q427626), or cytras (Q713623). For example "scientific-name-pattern-species" for rhywogaeth (Q7432).
  • (scientific-name-pattern-genus) nil: fallback to scientific-name-pattern's "^.+$"
    • (scientific-name-repl-genus) "<i>%0</i>": italicize full scientific name if its rank is genws (Q34740)
short-scientific-name-pattern-<latinrank>, short-scientific-name-repl-<latinrank> Pattern replcacement to generate short scientific name per rank. The "<latinrank>" is a latin name, can be a instance of rheng tacson (Q427626), or cytras (Q713623). For example "short-scientific-name-pattern-species" for rhywogaeth (Q7432).
  • (short-scientific-name-pattern-species) "^(%w)%w+ (%w+)$": pattern to fetch the first letter of genus name (as %1) and the whole epithet (as %2) from the binomial of a species.
    • (short-scientific-name-repl-species) "<i>%1. %2</i>": for example, the result for Llew (Q140) is "P. leo"
scientific-name-replaces or short-scientific-name-replaces Pattern replacements to apply for all full (or short) scientific names, after the name has been processed by pattern-repl pair described above.

The value for each of two messages is not a string but a table. The table contains multiple pattern-repl pairs which will be applied to scientific names.

Note: Lua's table object doesn't sort, so the replacement sequence CAN NOT be guaranteed. DON'T DEPEND ON THE SEQUENCE YOU SAW!

Input Parameters golygu

The "<latinrank>" below is a latin name, can be an instance of rheng tacson (Q427626), or cytras (Q713623). For example "display[cladus]".

Config Options golygu

  • config[lang]: content language (default: en).
  • config[count]: maximum count of taxon to be recursively iterated (default: 10).
  • config[references]: a space-separated list of item ids. The references to favor in case of alternative claims. Optional.
  • config[usetaxa]: a space-separated list of item ids. The taxa to favor in case of alternative claims. Optional.
  • config[link]: if the value is "sitelink" it will use local wiki site links instead of wikidata item links.
  • config[dryun]: used for callback method. Displaying a <pre> block contains wikitext instead of expanding and rendering the template. Dryrun can be used to find parameters to be overrided.
Examples golygu

Lua error in Modiwl:Cite at line 166: attempt to concatenate local 'journaltitle' (a nil value).

{{#invoke: taxobox
| taxobox
| qid = Q140
| config[usetaxa] = Q27379
|config[count] = 7
}}

Display Options golygu

display[<latinrank>]: if the value is "n", "no", "false" or "hide", the specified rank (in latin name or QID) will be hide. Otherwise the rank will display.

For example, to hide all clades: Lua error in Modiwl:Cite at line 166: attempt to concatenate local 'journaltitle' (a nil value).

{{#invoke:taxobox
|taxobox
|qid=Q140
|display[cladus]=hide
}}


Classic Parameters golygu

If there are more than one clades between two taxon ranks, you can override them by appending [<number>] index to the unranked_<latinrank> parameter.

For example, there are 3 clades between rank genus and rank species. You can override them like this:

{{#invoke:taxobox
|taxobox
|...
|unranked_species[3] = Cladus closest to genus rank
|unranked_species[2] = The middle clade
|unranked_species[1] = Cladus closest to species rank
|...
}}

Output Parameters golygu

The best way to see all output parameters is to use the config[dryrun] parameter:

{{#invoke:taxobox
|callback
|qid=Q140
|config[dryrun]=yes
}}

The result:

{{Taxobox
|code = 13011
|color = #d3d3a4
|config[dryrun] = yes
|image = 002 The lion king Snyggve in the Serengeti National Park Photo by Giles Laurent.jpg
|iucn_status[id] = 278113
|iucn_status[image] = Status iucn3.1 VU.svg
|iucn_status[label] = Vulnerable
|iucn_status[references] = Q115962546
|name = Lion
|qid = Q140
|range_map = Lion distribution.png
|rank[1][id] = 5868144
|rank[1][is_extinct] = no
|rank[1][is_monotypic] = no
|rank[1][is_subject] = no
|rank[1][latin] = superordo
|rank[1][link] = Q27379
|rank[1][raw_scientific] = Laurasiatheria
|rank[1][scientific] = Laurasiatheria
|rank[1][taxon] = [[Q27379|Laurasiatheria]]
|rank[2][id] = 713623
|rank[2][is_extinct] = no
|rank[2][is_monotypic] = no
|rank[2][is_subject] = no
|rank[2][latin] = cladus
|rank[2][link] = Q7439311
|rank[2][raw_scientific] = Scrotifera
|rank[2][scientific] = Scrotifera
|rank[2][taxon] = [[Q7439311|Scrotifera]]
|rank[3][id] = 713623
|rank[3][is_extinct] = no
|rank[3][is_monotypic] = no
|rank[3][is_subject] = no
|rank[3][latin] = cladus
|rank[3][link] = Q5444079
|rank[3][raw_scientific] = Fereuungulata
|rank[3][scientific] = Fereuungulata
|rank[3][taxon] = [[Q5444079|Fereuungulata]]
|rank[4][id] = 6462265
|rank[4][is_extinct] = no
|rank[4][is_monotypic] = no
|rank[4][is_subject] = no
|rank[4][latin] = grandordo
|rank[4][link] = Q20868
|rank[4][raw_scientific] = Ferae
|rank[4][scientific] = Ferae
|rank[4][taxon] = [[Q20868|Ferae]]
|rank[5][id] = 36602
|rank[5][is_extinct] = no
|rank[5][is_monotypic] = no
|rank[5][is_subject] = no
|rank[5][latin] = ordo
|rank[5][link] = Q25306
|rank[5][raw_scientific] = Carnivora
|rank[5][scientific] = Carnivora
|rank[5][taxon] = [[Q25306|Carnivora]]
|rank[6][id] = 5867959
|rank[6][is_extinct] = no
|rank[6][is_monotypic] = no
|rank[6][is_subject] = no
|rank[6][latin] = subordo
|rank[6][link] = Q27070
|rank[6][raw_scientific] = Feliformia
|rank[6][scientific] = Feliformia
|rank[6][taxon] = [[Q27070|Feliformia]]
|rank[7][id] = 35409
|rank[7][is_extinct] = no
|rank[7][is_monotypic] = no
|rank[7][is_subject] = no
|rank[7][latin] = familia
|rank[7][link] = Q25265
|rank[7][raw_scientific] = Felidae
|rank[7][scientific] = Felidae
|rank[7][taxon] = [[Q25265|Felidae]]
|rank[8][id] = 164280
|rank[8][is_extinct] = no
|rank[8][is_monotypic] = no
|rank[8][is_subject] = no
|rank[8][latin] = subfamilia
|rank[8][link] = Q230177
|rank[8][raw_scientific] = Pantherinae
|rank[8][scientific] = Pantherinae
|rank[8][taxon] = [[Q230177|Pantherinae]]
|rank[9][id] = 34740
|rank[9][is_extinct] = no
|rank[9][is_monotypic] = no
|rank[9][is_subject] = no
|rank[9][latin] = genus
|rank[9][link] = Q127960
|rank[9][raw_scientific] = Panthera
|rank[9][scientific] = <i>Panthera</i>
|rank[9][taxon] = [[Q127960|<i>Panthera</i>]]
|rank[9][vernacular] = Big cats
|rank[10][authority] = [[Q1043|Linnaeus]], 1758
|rank[10][id] = 7432
|rank[10][is_extinct] = no
|rank[10][is_monotypic] = no
|rank[10][is_subject] = yes
|rank[10][latin] = species
|rank[10][link] = Q140
|rank[10][raw_scientific] = Panthera leo
|rank[10][references] = Q1538807
|rank[10][scientific] = <i>Panthera leo</i>
|rank[10][taxon] = <b><i>P. leo</i></b>
|rank[10][vernacular] = Lion
|rank[references] = Q30135917 Q1538807 Q17073815 Q22814967 Q30136284 Q22826076 Q30136117 Q30135809 Q19302303 Q33883775 Q50754531 Q28191107 Q796451 Q82575
|rank[size] = 10
}}

All output parameters can be overrided by specifying same name input parameters. For example this will replace genws (Q34740) to "Foo" and Isdeulu (Q164280) "Bar":

Lua error in Modiwl:Cite at line 166: attempt to concatenate local 'journaltitle' (a nil value).


{{#invoke:taxobox
|taxobox
|qid=Q140
|subfamilia=<strong style="color: green">Bar</strong>
|rank[9][taxon]=<strong style="color: red">Foo</strong>
}}

Supported properties golygu

The taxobox currently supports:

  •   for taxon images and red list status
  •  : for tacson un eitem (Q310890) and (Q14594740)
  •  
  •   also mark the taxon extinct if the value is difodwyd (Q237350)
  •  
  •  
  •  
  •   for references
  •  
  •  
  •  
  •   also mark the taxon extinct if present
  •  
  •  
  •   mark the taxon extinct if present
  •  
  •   if ICNafp applies, otherwise:
  •  , otherwise the last name of English language (en) is shown.
  •   for authority string format and color.
  •  , common name of a language to override the item label of the language

Wikipedia use golygu

This module is designed to be a replacement for Wikipedia taxoboxes. However, it is still unstable and need plenty extra template works to allow a classic Nodyn:Blwch tacson (Q52496) to accept the new callback parameters. Suggestion and bug reports are welcome at Module talk:Taxobox or Wikidata talk:WikiProject_Taxonomy.

References golygu

  1. Integrated Taxonomic Information System
  2. Martin Schorr, Dennis R. Paulson, Klaas-Douwe B. Dijkstra, Cyrille Deliry and Federico Lozano, World Odonata List, University of Alabama
  3. National Center for Biotechnology Information (ed.), Q13711410 (no title property provided!)
  4. Fossilworks
  5. Klaas-Douwe B. Dijkstra, Günter Bechly, Seth M. Bybee, Rory A. Dow, Henri J. Dumont, Günther Fleck, Rosser W. Garrison, Matti Hämäläinen, Vincent J. Kalkman, Haruki Karube, Michael L. May, Albert G. Orr, Dennis R. Paulson, Andrew C. Rehn, Günther Theischinger, John W. H. Trueman, Jan van Tol, Natalia von Ellenrieder and Jessica Ware, "The classification and diversity of dragonflies and damselflies (Odonata)", [[Q18642812|Zootaxa]], vol. 3703, 1, , doi: 10.11646/ZOOTAXA.3703.1.9