Module:Autotaxobox/doc: Difference between revisions

Content deleted Content added
no longer beta, I think
another module that is used
 
(74 intermediate revisions by 7 users not shown)
Line 1:
{{High-use|50681risk}}
{{Module rating|protected}}
{{Lua|Module:TaxonItalics|Module:Taxobox ranks}}
<!-- Please place categories where indicated at the bottom of this page and interwikis at Wikidata (see [[Wikipedia:Wikidata]]) -->
 
[[Module:Autotaxobox]] {{Toolbar|style=font-size:90% |separator=dot
{{ml|module=Autotaxobox}}
| 1 = [[:Module talk:Autotaxobox|talk]]
| 2 = {{edit|1=Module:Autotaxobox|2=edit}}
| 3 = {{history|Module:Autotaxobox|hist}}
| 4 = [{{fullurl:Special:WhatLinksHere/:Module:Autotaxobox|limit=999}} links]
| 5 = [[Module:Autotaxobox/doc|doc]]
| 6 = [[Special:PrefixIndex/Module:Autotaxobox|subpages]]
| 7 = [[Module:Autotaxobox/sandbox|sandbox]]
| 8 = [[Module:Autotaxobox/testcases|testcases]]
}}
 
The purpose of this module is to provide support for the [[WP:Automated taxobox system|automated taxobox system]] (including templates such as {{tl|Speciesbox}} and {{tl|Automatic taxobox}}), avoiding Mediawiki template expansion depth errors in the traversal of the taxonomic hierarchies encoded in taxonomy templates.
This module is still under development.
 
Currently, processing is arbitrarily limited to hierarchies containing at most {{#invoke:Autotaxobox|getMaxSearchLevels}} levels.
Its purpose is to provide support for automated taxobox templates (such as {{tl|Automatic taxobox}} or {{tl|Speciesbox}}), avoiding Mediawiki template expansion depth errors in the traversal of the taxonomic hierarchies encoded in taxonomy templates.
 
See the [[WP:Automated taxobox system/map|automated taxobox system map]] for information on how the module's functions are used in the system.
Currently processing is arbitrarily limited to hierarchies containing at most {{#invoke:Autotaxobox/sandbox|getMaxSearchLevels}} levels.
 
== taxoboxColour ==
Line 27 ⟶ 38:
 
== taxoboxList ==
Given the name of a taxon name, this function returns the rows of taxa in an automated taxobox, based on the taxonomic
hierarchy for the supplied taxon. If the lowest taxon displayed in the taxobox is below the rank of genus, the
supplied taxon will usually be at a higher rank than the taxobox's target taxon, so that there is an offset to be
taken into account.
 
Usage:
 
<code><nowiki>{{</nowiki>#invoke:Autotaxobox|taxoboxList|''taxon_name''<br>
|display_taxa = ''the numbername of taxataxon aboveupwards taxon_namefrom towhich forcethe taxonomic hierarchy is to be displayed by this function''<br>
|display_taxa = ''the number of taxa above taxon to force to be displayed''<br>
|authority = ''taxonomic authority for taxon_name''<br>
|parent_authorityauthority = ''taxonomic authority for taxon_name'sthe lowest level taxon in the taxobox (the taxobox_target) (see also offset parentbelow)''<br>
|gparent_authorityparent_authority = ''taxonomic authority for taxon_nametaxobox_target's grandparentparent''<br>
|ggparent_authoritygparent_authority = ''taxonomic authority for taxon_nametaxobox_target's greatgrandparentgrandparent''<br>
|ggparent_authority = ''taxonomic authority for taxon_nametaxobox_target's greatgreatgrandparentgreatgrandparent''<br>
|gggparent_authority = ''taxonomic authority for taxobox_target's greatgreatgrandparent''<br>
|bold_first = ''bold to embolden taxon_name in its row''<br>
|bold_first = ''bold to embolden taxon in its row''<br>
|offset = ''the offset of taxon from taxobox_target – the number of steps from taxobox_target to taxon''<br>
}}</code>
 
Line 52 ⟶ 67:
|}</pre> →
{| class="wikitable"
{{#invoke:Autotaxobox/sandbox|taxoboxList|Felis|authority=Linnaeus, 1758}}
|}
 
Line 58 ⟶ 73:
Given a taxon name, this function returns the rows of the taxonomy table displayed on the "Template:Taxonomy/''taxon_name''" page, based on the taxonomic hierarchy for the supplied taxon name.
 
When <em>descending</em> the taxonomic hierarchy, if a rank is found that is either at either the same level or a higher level than a rank already encountered (e.g. a family is found below a subfamily), the cell displaying the rank is given a reddish background; if it's the supplied taxon, the article is put into the tracking category [[:Category:Taxonomy templates showing anomalous ranks]]. The numerical values defined in <code>getRankTable()</code> are used to determine the correct sequence of ranks. Ranks without values in this table do not have their order checked.
 
Usage:
Line 69 ⟶ 84:
 
Examples:
<pre>{{#invoke:Autotaxobox|taxonomyList|Felis}}</pre> →
<pre>{| class="wikitable"
{{#invoke:Autotaxobox|taxonomyList|Felis}}
|}</pre> →
{| class="wikitable"
|{{#invoke:Autotaxobox/sandbox|taxonomyList|Felis}}
|}
 
== callTaxonomyKey ==
==showRankTable==
This function prepares for, and then calls, {{tl|Taxonomy key}} to display a taxonomy
Returns a sortable wikitable containing the ranks and corresponding numerical values defined in <code>getRankTable()</code> and used in checking the consistency of a taxonomic hierarchy. A taxon should always have a lower numerical value than one higher in the taxonomic hierarchy.
template page (which in turn invokes [[#taxonomyList|<code>taxonomyList</code>]] from this module). It does this by building up the information the template
requires, following one <code>same_as</code> link if present, and then calling it.
 
It is used by {{tl|Don't edit this line}}.
 
Usage:
 
:<code><nowiki>{{</nowiki>#invoke:Autotaxobox|showRankTable}}callTaxonomyKey</codebr>
|taxon= <br>
|parent= <br>
|rank= <br>
|extinct= <br>
|always_display= <br>
|link_target=value of the 'link' parameter in the taxonomy template<br>
|link_text=value of the unnamed parameter in the taxonomy template<br>
|refs= <br>
|same_as= <br>
}}</code>
 
== showRefs ==
Shows the refs field in a taxonomy template, handing incertae sedis taxa and using '–' for absent refs.
 
Usage:
:<nowiki>{{</nowiki>#invoke:Autotaxobox|showRefs|''taxon_name''|''refs''}}
 
Examples:
:<nowiki>{{</nowiki>#invoke:Autotaxobox|showRefs|Neoscona|<nowiki>{{</nowiki>Taxon info|Neoscona|refs}}}} → {{#invoke:Autotaxobox|showRefs|Neoscona|{{Taxon info|Neoscona|refs}}}}
:<nowiki>{{</nowiki>#invoke:Autotaxobox|showRefs|Incertae sedis/Characidae|}} → {{#invoke:Autotaxobox|showRefs|Incertae sedis/Characidae|}}
 
== taxonLink ==
Returns a wikilink to a taxon, if required including '†' before it and
' (?)' after it, and optionally italicized or bolded without a wikilink.
It can be used externally via {{tl|Taxon link}}. Some parameters can, under
some circumstances, be omitted.
 
Usage:
 
<code><nowiki>{{</nowiki>#invoke:Autotaxobox|taxonLink<br>
|taxon= </code>(having '/?' at the end triggers the output of ' (?)')<code><br>
|extinct= </code>('yes' or 'true' triggers the output of '†')<code><br>
|bold= </code>('yes' makes the core output bold and not wikilinked)<code><br>
|italic= </code>('yes' makes the core output italic)<code><br>
|link_target=''target for the wikilink''<br>
|plain_link_text= ''text of the wikilink'' </code>(without †, italics, etc.)<code><br>
}}</code>
 
Examples:
 
:<nowiki>{{#invoke:Autotaxobox|taxonLink|taxon=Felis|italic=yes}}</nowiki> → {{#invoke:Autotaxobox|taxonLink|taxon=Felis|italic=yes}}
:<nowiki>{{#invoke:Autotaxobox|taxonLink|taxon=Incertae sedis/Animalia}}</nowiki> → {{#invoke:Autotaxobox|taxonLink|taxon=Incertae sedis/Animalia}}
:<nowiki>{{#invoke:Autotaxobox|taxonLink|link_target=Pterosaur|plain_link_text=Pterosauromorpha|extinct=yes}}</nowiki> → {{#invoke:Autotaxobox|taxonLink|link_target=Pterosaur|plain_link_text=Pterosauromorpha|extinct=yes}}
:<nowiki>{{#invoke:Autotaxobox|taxonLink|taxon=Dinosauria/?|link_target=Dinosaur|plain_link_text=Dinosauria|extinct=yes}}</nowiki> → {{#invoke:Autotaxobox|taxonLink|taxon=Dinosauria/?|link_target=Dinosaur|plain_link_text=Dinosauria|extinct=yes}}
 
==taxonInfo==
Given the names of a taxon and the required item of information stored in the taxon's taxonomy template, this function returns the value of the item, following one "same as" link if available and the value would otherwise be the empty string.
 
Usage:
:<code><nowiki>{{</nowiki>#invoke:Autotaxobox|taxonInfo|''taxon_name''|''item_name''}}</code>
 
Parameters:
:The first unnamed parameter should be the name of a taxon for which "Template:Taxonomy/''taxon_name''" exists.
:The possible values of the second unnamed parameter are given at {{tl|Taxon info/doc}}.
 
Examples:
:<nowiki>{{#invoke:Autotaxobox|taxonInfo|Felis|rank}}</nowiki> → {{#invoke:Autotaxobox|taxonInfo|Felis|rank}}
:<nowiki>{{#invoke:Autotaxobox|taxonInfo|Aves/skip|same_as}}</nowiki> → {{#invoke:Autotaxobox|taxonInfo|Aves/skip|same_as}}
:<nowiki>{{#invoke:Autotaxobox|taxonInfo|Aves/skip|parent}}</nowiki> → {{#invoke:Autotaxobox|taxonInfo|Aves/skip|parent}}
 
==Utilities==
These functions are intended to be used only in analysing and understanding the automated taxobox system, including the taxonomic hierarchies, e.g.encoded in taxonomy templates – for example in testing and debugging,. andThey are not forpart directof usethe infunctioning templates used inof the automated taxobox system.
 
===getMaxSearchLevels===
Returns the maximum number of levels of a taxonomic hierarchy encoded in taxonomy templates that the system will search.
 
Usage:
:<code><nowiki>{{</nowiki>#invoke:Autotaxobox|getMaxSearchLevels}}</code> → {{#invoke:Autotaxobox|getMaxSearchLevels}}
 
===find===
Given a taxon name and a rank, this function returns the taxon's ancestor of the given rank.
 
Usage:
:<code><nowiki>{{</nowiki>#invoke:Autotaxobox|find|''taxon_name''|''rank''}}</code>
 
Parameters:
:The first unnamed parameter should be the name of a taxon for which "Template:Taxonomy/''taxon_name''" exists.
:The second unnamed parameter should be the Latinized name of a rank.
 
Examples:
:<code><nowiki>{{</nowiki>#invoke:Autotaxobox|find|Felis|ordo}}</code> → {{#invoke:Autotaxobox|find|Felis|ordo}}
:<code><nowiki>{{</nowiki>#invoke:Autotaxobox|find|Felis|classis}}</code> → {{#invoke:Autotaxobox|find|Felis|classis}}
:<code><nowiki>{{</nowiki>#invoke:Autotaxobox|find|Pteranodon|phylum}}</code> → {{#invoke:Autotaxobox|find|Pteranodon|phylum}}
:<code><nowiki>{{</nowiki>#invoke:Autotaxobox|find|Pteranodon|classis}}</code> → {{#invoke:Autotaxobox|find|Pteranodon|classis}}
 
===nth===
Line 134 ⟶ 232:
:<nowiki>{{#invoke:Autotaxobox|listAll|Plantae}}</nowiki> → {{#invoke:Autotaxobox|listAll|Plantae}}
:<nowiki>{{#invoke:Autotaxobox|listAll|Felis}}</nowiki> → {{#invoke:Autotaxobox|listAll|Felis}}
 
===removeQualifier===
Given a taxon name, this function returns the name with any qualifier (i.e. any part after a "/") removed.
 
Usage:
 
:<code><nowiki>{{</nowiki>#invoke:Autotaxobox|removeQualifier|''taxon_name''}}</code>
 
Examples:
 
:<nowiki>{{#invoke:Autotaxobox|removeQualifier|Eukaryota/display}}</nowiki> → {{#invoke:Autotaxobox|removeQualifier|Eukaryota/display}}
:<nowiki>{{#invoke:Autotaxobox|removeQualifier|Felis}}</nowiki> → {{#invoke:Autotaxobox|removeQualifier|Felis}}
 
<includeonly>{{#ifeq:{{SUBPAGENAME}}|sandbox | |
<!-- Categories below this line, please; interwikis at Wikidata -->
[[Category:Taxobox templates]]
 
}}</includeonly>
<noinclude>
[[Category:Module documentation pages]]
</noinclude>