Gebruiker:Bmulckhu/kladblok40
In het vervolg op de migratie Axiell en andere projecten voor het koppelen van external data is het vaak nodig om geïmporteerde (semantische) data definitief op te slaan. Meestal zou dit betekenen dat een semantische waarde moet worden geplaatst in een infobox. Eerdere testen hebben nog geen gewenst resultaat opgeleverd.
Zie oorsprong: TheaterEncyclopedie:Koppeling_met_Adlib#PoC.
Mogelijke oplossingen zijn het gebruik van transclusie en substitutie van MediaWiki zelf of een extern (python) script.
Na de migratie van Axiell was deze kwestie niet meer actueel doordat Tinbot alle waarden heeft gekopieerd. Voor de koppeling met NA en Wikidata blijft deze kwestie nog wel spelen
Zie ook:
- https://www.mediawiki.org/wiki/Help:Substitution
- Idem maar met meer voorbeelden en uitleg over recursieve substituties: https://en.wikipedia.org/wiki/Help:Substitution
- kladblok 23 : transclusie
- Gecompliceerd voorbeeld in Sjabloon:Date
Voorbeeld / test 1
{{Weergave AXIELL-nr|priref=2}}
Resultaat: 500000002, 500000002
{{subst:Weergave AXIELL-nr|priref=2}}
Resulteert in de opgeslagen wikitekst:
{{#ask: [[HeeftAxiellRecord::+]] {{#if:2|[[HeeftPriref::2]]}} {{#if:|[[HeeftProductieCode::{{{pc}}}]]}}| ?HeeftNummer#=|mainlabel=-}}
Wordt weergegevens als: 500000002, 500000002
CONCLUSIE: De weergave is correct, maar dit is niet het gewenste resultaat; de wens is dat opgeslagen tekst gelijk is aan wat wordt weergegeven.
MOGELIJK VERVOLG:
{{subst:#ask: [[HeeftAxiellRecord::+]] [[HeeftPriref::2]] | ?HeeftNummer#=|mainlabel=-}}
Bovenstaande geeft resultaat: 500000002, 500000002
Voorbeeld / test 1B
Sjabloon:Weergave en substitutie AXIELL-nr
{{subst:Weergave en substitutie AXIELL-nr|priref=2}}
Resultaat:
500000004, 500000004
500000004, 500000004
Lees: https://en.wikipedia.org/wiki/Help:Substitution voor betere uitleg met voorbeelden
Voorbeeld / test 2
Gebruik van Expand Templates; zie:
- https://www.mediawiki.org/wiki/Help:ExpandTemplates
- https://www.mediawiki.org/wiki/API:Expandtemplates
Via de API:
https://theaterencyclopedie.nl/w/api.php?action=expandtemplates&text={{Weergave AXIELL-nr|priref=2}}&prop=wikitext
Resultaat:
{ "expandtemplates": { "wikitext": "500000002, 500000002" } }
Dit is een interessant resultaat, maar ook dit resultaat moet op zijn beurt weer geïmporteerd en vervolgens gesubstitueerd worden. Wellicht mogelijk maar omslachtig.
Ontwikkeling Sjabloon:Eigenschap substitutie
Testeigenschap en -waarde: Waarde1, Waarde2
M.b.v. Sjabloon (zonder substitutie): {{subst:#show:Gebruiker:Bmulckhu/kladblok40|?Testeigenschap#}} - Sjabloon:Eigenschap substitutie
{{subst:Eigenschap substitutie|Testeigenschap}}
Waarde1, Waarde2