Modul:Statements/dok

Fra Wikipedia, den frie encyklopedi

Dette er dokumentasjonssiden for Modul:Statements

Statements er en eksperimentell modul for å sette inn verdier fra utsagn i eksisterende infobokser, og er et alternativ til parserfunksjonen {{#statements}}. Modulen gjør nesten det samme, men kan også vise kvalifikatorer og referanser. Den har to former; text som gir ren tekst og html som gir html.

Bruk[rediger kilde]

Selv om det er mulig å kalle funksjoner direkte fra andre moduler, så er formålet at modulens funksjoner skal kalles direkte fra maler.

Metoder[rediger kilde]

text
Forenklet utlegg, men tilstrekkelig for testing av eksistens av verdier. Vil ikke vise kvalifikatorer og referanser.
html
Fullt utlegg, med lenking, kvalifikatorer og referanser.

Parametre[rediger kilde]

anonyme
Tittel eller P-id for angivelse av egenskapen som skal brukes.
from
Tittel eller P-id for angivelse av egenskapen som skal brukes. Hvis parameteren mangler eller er tom så vil det koblede elementet brukes.

Eksempler[rediger kilde]

Kode Utlegg
; [[Marokko]]s {{P|31}}
: tekst: {{#invoke:Statements|text|P31|from=Q1028}}
: html: {{#invoke:Statements|html|P31|from=Q1028}}
; Referanser
<references />
Marokkos forekomst av (P31)
tekst: konstitusjonelt monarki, uavhengig stat, middelhavsland, og land
html: konstitusjonelt monarki, uavhengig stat, middelhavsland, og land
Referanser
; [[Marokko]]s {{P|1082}}
: tekst: {{#invoke:Statements|text|P1082|from=Q1028}}
: html: {{#invoke:Statements|html|P1082|from=Q1028}}
; Referanser
<references />
Marokkos folketall (P1082)
tekst: 37 076 584
html: Lua-feil i Modul:Reference_score, linje 40: attempt to call global 'splitTimestamp' (a nil value).
Referanser
; [[Marokko]]s {{P|2046}}
: tekst: {{#invoke:Statements|text|P2046|from=Q1028}}
: html: {{#invoke:Statements|html|P2046|from=Q1028}}
; Referanser
<references />
Marokkos areal (P2046)
tekst: 446 550 km²
html: 446 550 km² (Vest-Sahara) [1]
Referanser
  1. ^ World Development Indicators, «Country Profile»[Hentet fra Wikidata]
; [[Knut Hamsun]]s {{P|26}}
: tekst: {{#invoke:Statements|text|P26|from=Q40826}}
: html: {{#invoke:Statements|html|P26|from=Q40826}}
; Referanser
<references />
Knut Hamsuns ektefelle (P26)
tekst: Marie Hamsun og Bergljot Bech
html: Marie Hamsun (1909, personens død, 19. feb. 1952) og Bergljot Bech (13. mai 1898, skilsmisse, 1906)
Referanser
; [[Knut Hamsun]]s {{P|40}}
: tekst: {{#invoke:Statements|text|P40|from=Q40826}}
: html: {{#invoke:Statements|html|P40|from=Q40826}}
; Referanser
<references />
Knut Hamsuns barn (P40)
tekst: Arild Hamsun, Ellinor Hamsun, Tore Hamsun, og Victoria Hamsun Charlesson
html: Arild Hamsun, Ellinor Hamsun, Tore Hamsun, og Victoria Hamsun Charlesson
Referanser
; [[Arne E. Holm]]s {{P|40}}
: tekst: {{#invoke:Statements|text|P40|from=Q11959015}}
: html: {{#invoke:Statements|html|P40|from=Q11959015}}
; Referanser
<references />
Arne E. Holms barn (P40)
tekst: Bentine Holm
html: Bentine Holm
Referanser

Pågående arbeid[rediger kilde]

Det er noen forhold som trenger ytterligere avklaring, ikke minst om brukere har andre ønsker.

1. Seriekomma og konjunksjon
Lister bruker seriekomma og konjunksjonen «og» («and»). Det er ikke alltid dette er riktig, men i norsk språk brukes konjunksjonene «og» («and») og «eller» («or») litt om hverandre. Nettsamfunnet har divergerende meninger om hva som er rett, se Wikipedia:Torget/Arkiv/2019/januar#Opplistinger.
2. Formatering av tall
Tall bruker standard formatering,det vil si med mellomrom, slik det genereres av funksjonen mw.message.numParam(). Fordi standard formatering ikke bruker w:non-breaking space så kan vi få linjebrekk inne i tall. Det optimale ville vært å bruke narrow non-breaking space, men da vil utlegget bli forskjellig for tall i infoboksen og brødteksten.
3. Overstyring av navn på enheter
Enhetens etikett (label), eller lang form, kan hentes effektivt. Enhetens kortform er derimot lastmessig kostbart å hente, her må hele elementet hentes inn, og derfor er det mulig å predefinere disse. Dette er mest aktuelt for SI-enheter. Eksempelet med areal er litt uheldig da «km²» ikke er en korrekt SI-enhet.
4. Forenkling av parentes
Kvalifikatorer bruker en standardform, men de burde forenkles på samme vis som i brødtekst. Typisk forenkles startdatoen på et ekteskap til året, og navnet på et barn er kun fornavnet. Dette skaper imidlertid tvetydighet. Hvis to ekteskap treffer på samme året så må presisjonen økes med måned eller full dato. Tilsvarende for barn, har de forskjellig etternavn må dette angis. Vi kan unngå problemet ved å plassere fullform i en hoverboble, men det fungerer kun for html-formatet.
5. Angivelse av perioder
Perioder angis normalt som «startdatosluttdato», men det får vi ikke til med standardformatet. Dette er et eksempel på et unntak fra normalt utlegg, og egenskapene skal tas ut av datasettet og håndteres spesielt.
6. Ingen verdi og ukjent verdi
Oppføringer med «ingen verdi» og «ukjent verdi» kan tilpasses egenskapen, slik at navnene blir mer naturlige. Hvis oppføringen for barn (P40) har «ukjent verdi» så blir det isteden vist «ukjent barn» i siste eksempelet.

Notater[rediger kilde]

Typisk kall i wikikode

{{#invoke:Statements|text|P40|from=Q11959015}}

Typisk testkall i consol

=mw.dumpObject(p.getFormattedValues(mw.getCurrentFrame(),'P2046', 'areal',true,'Q1028'))

Formatering av store tall

=mw.message.newRawMessage('Format: $1'):numParams(mw.wikibase.getBestStatements('Q4115189','P2067')[1].mainsnak.datavalue.value.amount):plain()