Template:ISO 4217/code-to-number
Utilising the alpha3 ISO 4217 code. For example, the code number can be derived from the code. Based on the ISO 4217 Standfard definition (per {{ISO 4217/cite}}, (As of October 2022)).
There are 304 unique codes (ADP..ZWR). Codes are reused (as currency in history, in history with different end-date by country, in List Two funds, in entities) resulting in 452 currency definitions (data rows).
General
|iso-code=
|format=
|is-obsolete=
Most parameters work by {{yesno}} principle: yes, 1, true, <anytext>
and no, 0, false, <blank>
are recognised as T/F.
- See also § maintenance-category ISO 4217
|format=
-options can be comma-separated list:|format=option-none, ISO4217-cat, mono, brackets,
(as announced per template)
Base: iso-code
ISO 4217/code
- {{ISO 4217/code}}
Returns valid ISO 4217 code or blank.
|iso-code=
- Basic:
|format=<blank>
returns EITHER the code as exists OR <blank> (no tracking etc)
|format=option-none, ISO4217-cat
Other data (ref, comment) elsewhere. Data (As of 17 October 2022), per source {{ISO 4217/cite}}
iso-code error (maintenance category)
|format=ISO4217-cat
will categorise articles with ISO-codes that do not exist in ISO. Sorted underC
.- (When in Template space, a wikilink to the category will show:
|iso-code=ZZZ
→ Template:ISO 4217/maintenance-category)
option-none (code='None')
|format=option-none
will allow|iso-code=''None'', none, no
(formatting is optional).
- {{ISO 4217/code-none}} will return (show)
|iso-code=''None''
(as formatted).
- Internally, {{ISO 4217/code-none}} returns
_NONE_
or <blank>.
When code "None" is not allowed |format=
, option-none|iso-code=None
input is considered unrecognised code (returns blank).
Will be categorised from mainspace, sorted under N
.
- (In Template space:
|iso-code=None
→ None) - See § maintenance-category ISO4217
Examples
in | plain | is "None"? | |format=option-none option-none=<absent> |
|format=ISO4217-cat
|
number | minor unit |
---|---|---|---|---|---|---|
|iso-code=USD
|
USD | USD | USD | (840) | 0.01 | |
|iso-code=''None''
|
_NONE_ | None None |
None | 0.01 | ||
|iso-code=ZZZ
|
Template:ISO 4217/maintenance-category | Template:ISO 4217/maintenance-category | 0.01 | |||
|iso-code=<blank>
|
Derived value templates
minor unit
- "Minor unit" in ISO 4217: number of decimals for minor unit used in currency trade. For example, USD has Minor unit=2, i.e. 0.01 (dollarcent unit).
Occurring values are: <blank>, N.A., 0, 2, 3, 4
. So, incidentally, 1
(for Template:Cursign 0.1) is not present.
Obsolete currency (historical, List Three): has no minor unit ("blank").
- In enwiki: "<blank>", "N.A.", "0" all return blank, because "Template:Cursign 1" is not a subunit of "Template:Cursign 1".
|iso-code=
,|is-obsolete=
,|format=blank/default (0.001-form), exponent (N.A., <blank>, 0, 2, 3, 4)
- Examples
- <blank> AFA: →
- N.A. XPD: →
- 0 KRW: →
- 1 (not present)
- 2 RUB: 0.01 → 0.01
- 3 OMR: 0.001 → 0.001
- 4 CLF: 0.0001 → 0.0001
Ambiguous code & minor units
- 10 codes are ambiguous: they appear both obsolete and active:
'"`UNIQ--nowiki-00000015-QINU`"'
.
- For example, PEN refers to an obsolete and an active currency. These have different exponents.
|is-obsolete=no/yes
sets the right one. Default is:|is-obsolete=no
(currency PEN is active}})- Example
PEN
is ambiguous, required|is-obsolete=
specifier.USD
is not ambiguous (active,|is-obsolete=
is trivial)ESA
is not ambiguous (historical, List Three;|is-obsolete=
is trivial)Other
not a code
PEN
|is-obsolete=1999
>< (obsolete)|is-obsolete=no
>0.01< (active)|is-obsolete=
>0.01< (active, default)|<absent>=
>0.01< (active, default)
- USD >0.01<
- PEN >0.01<
- FOO >0.01<
- blank ><
- is-obsolete=1999
- USD >0.01<
- PEN ><
- FOO ><
- blank ><
- is-obsolete=no
- USD >0.01<
- PEN >0.01<
- FOO >0.01<
- blank ><
- is-obsolete=yes
- USD >0.01<
- PEN ><
- FOO ><
- blank ><
code-to-number
{{ISO 4217/code-to-number}}
({{../format}})
- Code and number are 1:1 (code=number; number=code).
- Three codes defined to have no number:
XFO, XFU, XRE
(all obsolete) - (As of 17 October 2022): 304 existing unique alpha3-codes (over Lists One, Two and Three). Alphacode can have zero or one number (but not multiple). Numbers can repeat (eg ALL, ALK=008).
|format=<blank>, plain [=default]; brackets
Follows from code. Unknown code=blank. No tracking.
code-is-ambiguous
- 10 codes are ambiguous, they appear both obsolete and active:
'"`UNIQ--nowiki-0000001E-QINU`"'
.
- For example, EUR is active in GERMANY, and obsolete in SERBIA AND MONTENEGRO per withdrawal-date=2006-10 (List Three). (As of 17 October 2022).
- When such code is used, disambiguation may be required (is-obsolete=yes/no), to specify which currency is intended. This is relevant with minor-unit, and manually setting (clarifying)is-obsolete. Used in {{Infobox currency}}.
|format=ISO4217-cat
: The article using an ambiguous code, will be categorised, sort underA
(for checking, not an error indication).
|format=iso-code, ISO4217-cat
|yes-text=anytext, <blank>
(note:|yes-text=<blank>
is counter-intuitive; useful for categorisation)
|yes-text=<blank>
→ no returntext (use for silent categorisation|ISOcat=yes
)- Tracking:
|ISOcat=yes
: when ambiguous then → in Category:Pages using ISO 4217 currency to check (0) (catsort under A) - default
USD
→ >Template:ISO 4217/code-is-ambiguous< PEN
→ >Template:ISO 4217/code-is-ambiguous<|ISOcat=yes
→ >Template:ISO 4217/code-is-ambiguous<|yes-text=_YES-is-ambig_
→ >Template:ISO 4217/code-is-ambiguous<|yes-text=<blank>
→ >Template:ISO 4217/code-is-ambiguous< So status=yes, but yes-returntext is suppressed|yes-text=<blank>
,|ISOcat=yes
→ >Template:ISO 4217/code-is-ambiguous< So status=yes, but yes-returntext is suppressed
Extended content
|
---|
|
code-to-withdrawal-date
- {{ISO 4217/code-to-withdrawal-date}}
- Note:
|is-obsolete=yes/no
required for ambivalent currencies:ANG, EUR, HRK, IDR, MWK, PEN, RON, SDG, SZL, TRY
These codes are both in list-1 and list-3 (active and obsolete).
So one must specify wheteher active (no |is-obsolete=<blank>, no
or obsolete |withdr-date=1999, yes
No tracking. Multiple witdrawal-dats possible
- Used in {{ISO 4217/code-minor-unit}}
Not in mainspace
- (As of 1 Nov 2022)
code-is-obsolete
- w:Template:ISO 4217/code-is-obsolete returns ISO withdrawal-date or blank.
- w:Template:ISO 4217/code-is-obsolete/calc returns ISO withdrawal-date or blank.
|iso-code, is-obsolete=
- {{/testcases}}
The logic
|iso-code=
, determines from ISO 4217. Thew code can be ambiguous.|is-obsolete=
: yes/no (T/F), blank='unknown'{{yesno}}
is applied:|is-obsolete=no, false
=no
(not obsolete, so active),|is-obsolete=<any text>
isyes
(obsolete)
Currency is obsolete? | ||||
---|---|---|---|---|
|is-obsolete=T/F/unk
| ||||
T=obs 01 | F=act 02 | unk 03 | ||
code|iso-code= → T/F/ambig/unk
| ||||
T=obs 10 | OBS 11 | ACT 12 | →OBS 13 | |
F=act 20 | OBS 21 | →ACT 22 | ACT 23 | |
ambig 30 | OBS 31 | ACT 32 | ACT (default) 33 | |
unk 40 | OBS 41 | ACT 42 | ACT (default) 43 |
|code-priority=no
, so|is-obsolete=T/F
decides. Contradicting situation: Obsolete vs. Active. By default
Contradiction solving
Two situations imply a contradiction: the ISO-status contradicts the entered |is-obsolete=
status. This may occur when an infobox covers more than one currency.
The default handling is: |is-obsolete=
takes precedence.
By setting |code-priority=yes
gives ISO code prority (result opposite). This does not resolve the contradiction.
Currency is obsolete? | ||||
---|---|---|---|---|
|code-priority=no (default)
| ||||
|is-obsolete=T/F/unk
| ||||
T=obs 01 | F=act 02 | |||
code|iso-code=... → T/F/...
| ||||
T=obs 10 | OBS 11 | ACT 12 | →||
F=act 20 | OBS 21 | →ACT 22 |
|code-priority=yes
| |
---|---|
OBS 12 | →|
ACT 21 | →
Returns: when Obsolete, a text; when Active, no text (blank). On can apply this as {{#if:{{code-is-obsolete|...}}|Obsolete|Active}}
.
The returntext is:
- When obsolete: 1. the
|is-obsolete=anytext
; 2. the|withdrawal-date=
, 3.|obs-text=...
, 4. "OBS
" - When active: 1.
|act-text=...
2. <blank> - Note that, by entering a blank
|obs-text=
, the returntext will be a blank (so, same as default actual returntext!)
|obs-text=
, |act-text=
overwrites.
- In
{{Infobox currency}}
- For
|obsolete=
,|obsolete=
of the infobox is used:|obsolete={{{obsolete|}}}
Examples
|iso-code=
,|is-obsolete=
- USD, active
- ATS, Austria shilling - withdrawn
- PEN, PERU Nuevo Sol (ambivalent so wsdate needed)
- PEN >Template:ISO 4217/code-to-withdrawal-date< -- defaults to Active
- FOO, not a code
- "None", not a code
- blank
code-entity-list
- w:Template:ISO 4217/code-entity-list ( {{../demo}} · )
Template:ISO 4217/code-count/demo Template:ISO 4217/code-count/demo Template:ISO 4217/code-count/demo Template:ISO 4217/code-count/demo Template:ISO 4217/code-count/demo
- edge
Template:ISO 4217/code-count/demo Template:ISO 4217/code-count/demo
code-count
{{ISO 4217/code-count|iso-code=|list=}}
|list, iso-code=L1, ..., L123
- Number of "XYZ" code repetition per list, and over all tyhree lsits. There are 304 unique codes, repetitions make 450 different lines (code, List, entity, end-date can be repeated).
- Intended for checking and listformatting only (no new information).
See § code-entity-list for demo
code-to-qid
{{ISO 4217/code-to-qid|iso-code=|format=}}
|format=plain, wl, wl-info, <blank>
- (P498), ~265, (As of 08:58, 13 November 2022 (UTC))
Maintenance-category (ISO 4217)
Cat:ISO 4217: →
- Sets Category:Pages using ISO 4217 currency to check (0), used in various templates.
- Distinguishes: mainspace (=categorise), template space (=colon-link :Category:Pages using ...), all other spaces (no effect).
{{ISO 4217/maintenance-category |main-sort= |template-sort= }}
- In template space:
{{ISO 4217/maintenance-category}}
- In the templates, activated by
|ISO4217-cat=
or by|format=.., ISO4217-cat, ..
- Used by: {{ISO 4217/code}}, {{Infobox central bank}}, {{Infobox currency}} (projected as of October 2022)
Backoffice
The templates
- Deployed in mainspace
- {{/format}} · {{../testcases}}
- {{ISO 4217/code-minor-unit}}
- {{ISO 4217/code-to-number}}
- {{ISO 4217/code-is-ambiguous}}
- {{ISO 4217/code-none}}
- {{ISO 4217/code-count}}
- Not yet used in / fit for mainspace
- {{ISO 4217/code-to-withdrawal-date}}
- {{ISO 4217/code-is-obsolete}}
- {{ISO 4217/code-entity-list}}
- {{ISO 4217/code-to-qid}} -- curation; dated (13 Nov 2022)
todo
- IB does cat eponym eg in euro