Abstraktní Wikipedie/Komponenty
Tato page je uchována pro historický zájem. Jakákoli zmíněná pravidla mohou být zastaralá. Pokud chcete téma oživit, můžete použít diskusní stránku nebo zahájit diskusi na komunitním fóru. |
- Jedná se o součást plánu vývoje wiki funkcí.
- Pokračování z architektura abstraktní Wikipedie.
Potřebujeme rozšířit projekty Wikimedia na třech místech:
- v jazykových verzích Wikipedie a dalších klientských projektech využívajících nové možnosti,
- vr Wikidatech, pro vytváření obsahu (abstraktní Wikipedie), a
- v novém projektu Wikifunkce, jehož cílem je vytvořit knihovnu funkcí.
Rozšíření jazykových verzích Wikipedie
Každá lokální Wikipedie si může vybrat jednu z následujících tří možností:
- implicitní integrace s abstraktní Wikipedií;
- explicitní integrace s abstraktní Wikipedií;
- žádná integrace s abstraktní Wikipedií.
Rozšíření pro místní Wikipedie má tyto funkce: jednu novou speciální stránku, dvě nové funkce a tři nová magická slova.
F1: Nová speciální stránka: Abstract
Na každé místní Wikipedii bude k dispozici nová speciální stránka, která se používá s Q-ID nebo názvem místního článku a volitelným jazykem (který je ve výchozím nastavení jazykem místní Wikipedie). Příklady adres URL speciálních stránek vypadají následovně:
https://en.wikipedia.org/wiki/Special:Abstract/Q62
https://en.wikipedia.org/wiki/Special:Abstract/Q62/de
https://en.wikipedia.org/wiki/Special:Abstract/San_Francisco
https://en.wikipedia.org/wiki/Special:Abstract/San_Francisco/de
Pokud je speciální stránka vyvolána bez parametrů, zobrazí se formulář, který umožňuje vybrat Q-ID a jazyk (předvyplněný na místní jazyk).
Na speciální stránce se zobrazí obsah vybraného Q-ID nebo Q-ID s odkazem na příslušný článek ve vybraném jazyce.
F2: Explicitní vytvoření článku
Pokud se místní Wikipedie rozhodne pro možnost integrace s abstraktní Wikipedií prostřednictvím explicitního vytváření článků, udělá to takto.
Přispěvatel přejde na položku na Wikidatech, která ještě nemá odkaz na stránky v cílové místní Wikipedii. Přidá odkaz na stránku, která ještě neexistuje. Tímto způsobem určí název článku. Pokud by například Q62 v angličtině ještě neměl článek, a tedy ani sitelink, může přidat sitelink San_Francisco
pro en.wikipedia.
V místní Wikipedii se vytvoří virtuální článek v hlavním jmenném prostoru. Tento článek má stejný obsah jako výše popsaná speciální stránka, ale najdete ho pod obvyklou adresou URL, tj.
Odkazy na tento článek s nově zadaným názvem vypadají stejně jako ostatní odkazy, tj. odkaz na [[San Francisco]]
bude směřovat na virtuální článek, bude modrý atd. Takové články jsou indexovány pro vyhledávání v dané Wikipedii a také pro externí vyhledávání.
Pokud uživatel klikne na úpravu článku, může si vybrat, zda chce přejít na Wikidata a upravit abstrakt Obsah (preferováno), nebo založit nový článek v místním jazyce od začátku, nebo zhmotnit aktuální překlad jako text a začít jej upravovat lokálně.
Pokud je odstraněn existující místní článek s odkazem na stránky, automaticky se vytvoří virtuální článek (protože známe jeho název a můžeme zachovat odkazy).
Chcete-li smazat virtuální článek, je třeba smazat odkaz na stránky ve Wikidatech.
Všechny změny v místní Wikipedii je třeba provést explicitně, proto tuto možnost nazýváme explicitní tvorba článků. Očekáváme, že tato možnost bude pro místní Wikipedie výchozí, pokud si nezvolí buď implicitní vytváření článků, nebo žádnou integraci.
Viz též diskuze o integraci zde.
F2: Implicitní vytvoření článku
Pokud se místní Wikipedie rozhodne pro implicitní vytváření článků z Wikidat, pak je výsledek volání speciální stránky Abstrakt na všech položkách Wikidat, které nemají odkaz na daná Wikidata, ale vykreslovaly by obsah v daném jazyce, indexován, jako by byl v hlavním jmenném prostoru, a zpřístupněn ve vyhledávání, jako by byl v hlavním jmenném prostoru.
Je zavedeno nové kouzelné slovo pro odkazování na virtuální články z normálních článků, viz F6 LINK_TO_Q
. To lze neviditelně integrovat do vizuálního editoru.
To je zdaleka nejméně práce pro komunitu, aby získala mnoho článků, a může to být dobrá volba pro malé komunity.
F4: Odkazy nebo taby
Každý článek v místní Wikipedii, který je připojen k položce Wikidat, získá nový odkaz, a to buď jako záložku nahoře, nebo jako odkaz v postranním panelu. Tento odkaz zobrazí obsah připojené položky Wikidata vykreslený v místním jazyce. Virtuální články tuto záložku nemají, ale jejich tlačítko Upravit odkazuje přímo na úpravu Obsahu v abstraktní Wikipedii.
F5: Nové magické slovo: ABSTRACT_WIKIPEDIA
Magické slovo je nahrazeno wikitextem, který je výsledkem vykreslení obsahu na položce Wikidat, která je s touto stránkou propojena pomocí odkazů na stránky.
Magické slovo lze použít se dvěma volitelnými parametry, z nichž jeden je Q-ID a druhý jazyk. Pokud není zadáno žádné Q-ID, je výchozí Q-ID položka, se kterou je tato stránka propojena Sitelinkem. Pokud není zadán žádný jazyk, je výchozí jazyk jazyk dané wiki.
Příklady volání:
{{ABSTRACT_WIKIPEDIA}}
{{ABSTRACT_WIKIPEDIA:Q62}}
{{ABSTRACT_WIKIPEDIA:Q62/de}}
Pokud není zadáno žádné Q-ID nebo je zvoleno výchozí, zobrazí se chybové hlášení.
Později bude možné vybrat pojmenované sekce z Obsahu.
Wikipedie, které se rozhodnou nemít žádnou integraci s abstraktní Wikipedií, mohou toto nové kouzelné slovo používat i nadále.
Všimněte si, že zavedení nového kouzelného slova je předběžným plánem. Úkol 2.3 prozkoumá, zda můžeme dosáhnout této funkčnosti i bez toho.
F6: Nové magické slovo: LINK_TO_Q
Toto kouzelné slovo se změní na odkaz buď na místní článek, který je propojen s daným Q-ID, nebo, pokud žádný neexistuje, na stránku Abstract Special s daným Q-ID. To umožňuje psát články s odkazy na virtuální články, které se po vytvoření lokálního obsahu automaticky nahradí.
Příklady volání:
{{LINK_TO_Q:Q62}}
povede k tomu, že
[[San Francisco]]
pokud článek existuje, jinak
[[Special:Abstract/Q62|San Francisco]]
Všimněte si, že zavedení nového kouzelného slova je předběžným plánem. Úkol 2.3 prozkoumá, zda můžeme dosáhnout této funkčnosti i bez toho.
F7: Nové magické slovo: LAMBDA
Zavolá funkci zadanou ve Wikidatech spolu s jejími parametry a vykreslí výstup na stránce.
Například následující volání:
{{LAMBDA:capitalize("san francisco")}}
bude na stránce vypsáno "San Francisco" (za předpokladu, že existuje funkce s lokálním klíčem a s očekávanou definicí a implementací). K analýze volání se používá jazyk místní wiki.
Zvažte také možnost volat určitou verzi funkce, abyste omezili výskyt chyb v dalším průběhu.
Všimněte si, že zavedení nového kouzelného slova je předběžným plánem. Úkol 2.3 prozkoumá, zda můžeme dosáhnout této funkčnosti i bez toho.
Rozšíření Wikidat
K hlavnímu jmennému prostoru Wikidat přidáváme nový pomocný jmenný prostor. Tj. každá stránka položky ve tvaru www.wikidata.org/wiki/Q62
dostane také doprovodnou stránku obsahu www.wikidata.org/wiki/Content:Q62
. Tato stránka obsahuje abstraktní, na jazyce nezávislý Obsah a umožňuje jeho editaci a údržbu.
Mohou být zapotřebí další speciální stránky. Ty budou rozšířeny v druhé části projektu. Vyžaduje to souhlas komunity Wikidat s tím, že bude projekt využíván pro ukládání abstraktního obsahu, a pokud s tím nebudou souhlasit, bude vybrán jiný.
F8: Nový jmenný prostor: Content
Nový jmenný prostor s mnoha složitými interaktivními editačními funkcemi. Poskytuje UX pro tvorbu a údržbu Obsahu a také funkce pro vyhodnocování Obsahu (např. zobrazení, kolik z něj se zobrazuje v jednotlivých jazycích atd.) Jedná se většinou o podmnožinu funkcí jmenného prostoru F11 Function
.
F9: Nový datový typ: Content
Nový datový typ, který obsahuje (krátký) Content. Hlavní případ použití je pro Popisy v položkách a pro Glosy ve smyslech lexémů.
F10: Indexování a užití popisů v položkách a glos ve významech
Indexování a úprava linearizací polí Popis pro Položky a Glosy ve významech a také se ujistíme, že pro pole Popis v Předmětech neexistují žádné duplicitní dvojice Štítek / Popis. Obojí umožníme přepsat ručními úpravami.
Rozšíření jiných projektů Wikimedia
Ostatní projekty Wikimedia obdrží také magická slova F7 LAMBDA
a F5 ABSTRACT_WIKIPEDIA
, ale žádné další funkce, protože se zdá, že pro ně nejsou příliš užitečné. To se může změnit na základě požadavků daných komunit.
Rozšíření pro novou wiki funkcí
Wikifunkce budou novým projektem Wikimedia na nové doméně. Hlavním jmenným prostorem Wikifunkcí bude nový jmenný prostor Function
. Zbytek Wikifunkcí bude tradiční wiki Wikimedia.
F11: Nový jmenný prostor: Function
Umožňuje ukládat funkce, typy, rozhraní, hodnoty, testy atd. Je to jediný jmenný prostor, který obsahuje konstanty (například typy nebo jednotlivé hodnoty), rozhraní funkcí, implementace funkcí, a tedy i konstruktory a renderery. Entity v tomto jmenném prostoru jsou pojmenovány pomocí Z-ID, podobně jako Q-ID položek Wikidat, ale začínají písmenem Z a za ním následuje číslo.
V oboru názvů Z existuje mnoho různých typů entit. Patří mezi ně typy a jiné konstanty (což jsou v podstatě funkce s nulovou aritou), stejně jako klasické funkce s kladnou aritou.
Přispěvatelé mohou vytvářet nové typy funkcí v rámci jmenného prostoru Function
a ty pak používat.
Funkce mohou mít argumenty. Funkce se zadanými argumenty mohou být provedeny a jejich výsledkem je hodnota, jejíž typ je dán definicí funkce.
Jmenný prostor Function
je komplexní a bude mít velmi odlišné zobrazení v závislosti na typu funkce, tj. pro rozhraní, implementace, testy, typy, hodnoty atd. bude nad nimi různé UX, ačkoli jsou interně všechny uloženy jako Z-objekty. Nakonec jsou všechna různá zobrazení generována funkcemi ve Wikifunkcích.
V jmenném prostoru Function
bude možné zmrazovat a rozmrazovat entity. Je to podobné jako chráněná stránka, ale omezuje to pouze úpravu hodnotové části entity, nikoli popisku, popisu atd.
F12: Nové speciální stránky a moduly API
Pro podporu nového jmenného prostoru Function
budou vytvořeny nové speciální stránky a moduly API. Půjde zejména o speciální stránku a modul API, které umožní vyhodnocovat funkce se zadanými parametry funkce. Kromě toho bude obsahovat řadu speciálních stránek a modulů API, které budou podporovat údržbu obsahu (například vyhledávání podle počtu a typů parametrů, stránky se statistikami četnosti volání určitých implementací, testovací stránky atd.) Cílem je implementovat co nejvíce z nich uvnitř Wikifunkcí.
Viz též
- Extension:WikiLambda (na MediaWiki-Wiki)