Pl:Data items

From OpenStreetMap Wiki
Jump to navigation Jump to search

an unequal sign

Ten artykuł jest przetłumaczoną wersją, ale treść jest niezsynchronizowana z tekstem oryginalnym w języku angielskim. Proszę zaktualizuj to tłumaczenie jeśli to możliwe.

Wprowadzenie

Elementy danych są sposobem na udokumentowanie wszystkich metadanych OSM, takich jak klucze i tagi w każdym języku na tej Wiki, w strukturyzowany sposób, przydatny zarówno dla użytkowników, jak i narzędzi.

  • Narzędzia, takie jak edytor iD i Taginfo, są teraz w stanie uzyskać informacje o znacznikach bez złożonego i podatnego na błędy analizowania znaczników Wiki. Dane te mogą zawierać sugestie tagów, reguły sprawdzania poprawności, typowe pułapki, presety i inne.
  • Konsumenci danych mogą uzyskać strukturyzowane metadane, pomagające w przetwarzaniu głównej bazy danych OSM.
  • Teraz Wiki może przedstawić dane jako karty informacyjne i tabele, bez powielania informacji i skomplikowanych szablonów hakerów.
  • Wszystkie metadane mogą być analizowane za pomocą zapytań Sophox (patrz przykłady zapytań).

Ta strona opisuje sposób przechowywania strukturyzowanych metadanych znaczników na tej Wiki przy użyciu elementów danych dostarczonych przez rozszerzenie Wikibase – tego samego oprogramowania, które uruchamia Wikidata (initial discussion).
Celem tego projektu NIE jest zastąpienie podstawowego magazynu znaczników bazy danych OSM, ani używanie nieprzejrzystych identyfikatorów zamiast zrozumiałem dla człowieka łańcuchów key=value do tagowania obiektów/właściwości.
Próbujemy tylko udoskonalić dokumentację metadanych, dzięki czemu jest ona bardziej przydatna różnym narzędziom.

Jak możesz pomóc?

  • Dodaj opisy tagów i tłumaczenia. Zobacz następujące 3-minutowe wideo.
Jak dodawać opisy tagów
Poszukujemy wolontariuszy...  kliknij Rozwiń, po prawej stronie -->
Dodaj opisy i tłumaczenia
Społeczność i treść.
  • Utworzenie portalu Wiki, prawdopodobnie podobnego do portalu społeczności Wikidata (ale prostszego), w którym społeczność może:
    • zaproponuj nowe właściwości.
    • napisać poradniki/dokumenty.
    • omówić strukturę danych Wikibase
  • Utworzyć moduły Lua do generowania tabel znaczników, takich jak {{Template:Bridge:movable}}, {{Map Features:highway}}, lub {{Template:Religions}}.
    • Notatka implementacyjna: Wikibase łączy tylko Tagi z odpowiednim Kluczem, ale Klucze nie zawierają wszystkich możliwych Tagów. Aby wygenerować tabelę, musimy mieć gdzieś listę elementów. Możemy utworzyć nową właściwość klucza Wikibase, która wyświetli wszystkie tagi i użyć bota do jej utrzymania, lub możemy wyświetlić wszystkie potrzebne tagi jako parametry szablonu, np. dla drogi, {{...|motorway|trunk|primary|secondary|...}}. Lista jako parametr szablonu nie musi być zlokalizowana i może określać prawidłową kolejność elementów (niedostępna w Wikibase). Kod Lua użyłby mw.wikibase.getEntityIdForTitle("Key:highway=motorway") do znalezienia właściwych danych.
Tematyka techniczna.
  • Dodawanie obsługi Wikibase do zewnętrznych narzędzi.
Proste użycie: pobieramy zlokalizowany opis klucza/tagu.
Złożone użycie: pozwalamy użytkownikowi dodać brakujący opis lub nawet edytować go, szczególnie gdy użytkownik tworzy nowy klucz.
  • Proste reguły sprawdzania poprawności portów, np. oparte na regex, aby korzystać z danych Wikibase.
  • Pomaganie w analizowaniu różnych tabel danych znaczników. Nawet jeśli możemy generować tylko zwykłe pliki z danymi, user:Yurik może szybko je zaimportować.
zadania w toku
wykonane!

Znacznik Klucz

Każdy Klucz OSM jest przechowywany jako oddzielna strona w obszarze nazw elementów. Na przykład, zobacz bridge:movable (Q104), który opisuje bridge:movable=*:

Właściwość typ Przykład wartości Opis
description string enThe mechanism by which a movable bridge moves to clear the way below.
plMechanizm, za pomocą którego ruchomy most przesuwa się, aby oczyścić drogę poniżej.
Jest to podstawowy sposób opisu znacznika za pomocą właściwych zdań (pierwsze słowo pisane wielką literą, kończące się kropką).
Nie może zawierać żadnych znaczników Wiki ani HTML. Musi mieć mniej niż 250 znaków.
Podczas tłumaczenia zwykle wystarczy tylko dodać opis właściwości.
label string enbridge:movable Nadal nie ma decyzji w sprawie używania etykiet dla elementów danych klucz/tag, więc najlepiej, na razie, go nie używać. Obecnie bot ustawia angielską etykietę na wartość klucza, dokładnie tak samo jak P16 poniżej.

Niektóre języki mają nativekey (ojczysty klucz), który został dodany do etykiet. Nie należy dodawać kopii angielskiej etykiety do innych języków.
Zauważmy, że tak samo jak "en", lokalna etykieta musi być unikalna w tym języku.

sitelink string Key:bridge:movable Link do stron Key: ..., nawet jeśli strona nie istnieje. Link do podstron wyświetla się w prawym górnym rogu strony.
jest to (P2)
ta klasa, której ten przedmiot jest szczególnym przykładem i elementem (zazwyczaj podmiotem indywidualnym z odpowiednią nazwą); różni się od P3 (podklasy)
Element klucz (Q7) Wskaż typ obiektu. Zapisz to do Q7 dla kluczy.
stały identyfikator klucza (P16)
Ciąg reprezentujący identyfikator klucza. Po ustawieniu elementu klucza, tej wartości nigdy nie należy zmieniać.
String bridge:movable Pokazuje dokładną postać klucza używanego w OSM. Nie można go zmienić po utworzeniu elementu. Ze względu na ograniczenia techniczne, klucze Key:water tap, Key:water_tap, Key:water_tap_ mają identyczne strony Wiki/linki jak – Key:water tap. W takim przypadku należy ustawić tę właściwość na wiele ciągów znaków, ale oznaczyć jeden jako preferred (mała strzałka w górę po lewej stronie wartości).
użycie na węzłach (P33)
Wskazuje, czy ten klucz lub tag powinien być używany na węzłach. Użyj kwalifikatora P26, żeby ograniczyć do określonego regionu językowego. Użyj odnośnika P11, żeby dodać link do dyskusji.

użycie na liniach (P34)

Wskazuje, czy ten klucz lub tag powinien być używany na liniach. Użyj kwalifikatora P26, żeby ograniczyć do określonego regionu językowego. Użyj odnośnika P11, żeby dodać link do dyskusji.

użycie na obszarach (P35)

Wskazuje, czy ten klucz lub tag powinien być używany na obszarach (zamkniętych liniach) oraz relacjach multipolygon. Użyj kwalifikatora P26, żeby ograniczyć do określonego regionu językowego. Użyj odnośnika P11, żeby dodać link do dyskusji.

użycie na relacjach (P36)

Wskazuje, czy ten klucz lub tag powinien być używany na relacjach (nie dotyczy relacji multipolygon). Użyj kwalifikatora P26, żeby ograniczyć do określonego regionu językowego. Użyj odnośnika P11, żeby dodać link do dyskusji.
Element dozwolone (Q8000)
lub

zabronione (Q8001)

Określa, czy ten klucz jest dozwolony na węzłach/liniach/obszarach/relacjach. W przyszłości możemy chcieć używać innych statusów, takich jak zatwierdzony (Q15), ale nie jest to jeszcze obsługiwane. Zobacz też przechowywanie regionalnych różnic poniżej.
image (DEPRECATED) (P4)
image of relevant illustration of the subject
Plik Wikipedia Commons MovableBridge roll.gif Ilustracja z Wikimedia Commons. Ograniczenia techniczne nie pozwalają aby własne ilustracje OSM były tu używane. Przesyłaj nasze lokalne obrazy na Wikipedia Commons na podstawie odpowiedniej licencji (zalecane) lub powinna być użyta obraz (P28). Aby użyć innej ilustracji dla określonego regionu językowego, dodaj inną wartość, oraz wartości ograniczone do języka (P26). Należy się upewnić, że ustawiony jest status 'preferred dla domyślnej ilustracji.
obraz (P28)
Obraz odpowiedniej ilustracji tematu.
String Noexit.jpg Ilustracja przechowywana na OSM Wiki, bez przedrostka File:. Jeśli to możliwe, używamy image (DEPRECATED) (P4) z ilustracją z Wikipedia Commons. Zobacz poprzedni wiersz.
grupa (P25)
Wskazuje, do której grupy należy dany tag lub klucz. Cel musi mieć atrybut instance-of = group.
Element mosty (Q4712) Grupa, do której należy ten element. W bieżącym modelu każdy Klucz należy do jednej grupy. Teoretycznie możemy go użyć dołączając wielu grup, zmieniając znaczenie group na coś takiego jak etykieta/meta-tag.
status (P6)
Status akceptacji przez społeczność. Użyj odnośnika, żeby podać link do strony dyskusji dotyczącej propozycji (P11).
  dyskusja na temat propozycji (P11)
  Link do strony propozycji klucza lub tagu. Można użyć jako odnośnika do statusu (P6).
Element zatwierdzony (Q15)
  odnośnik do propozycji
status społecznościowy wraz z odnośnikiem do strony dyskusji (opcjonalnie)
rodzaj klucza (P9)
Rodzaj elementu klucza, np. enum, identyfikator zewnętrzny. Nie należy użytwać tego z grupami lub statusami.
Element dobrze znane wartości (Q8) Opisuje rodzaj wartości, jaką ten Klucz ma mieć. Jeśli istnieje dobrze znana lista wartości, używamy Q8. Inne rodzaje to TBD.
walidacja wartości regex (P13)
Wyrażenie regularne w celu sprawdzenia poprawności wartości znacznika. Może być również używany do nazw ról. Zakłada się owijanie ^( i )$. Nie używaj do wartości nienumerycznych, np. noexit=yes powinno być znacznikiem, a nie wyrażeniem regularnym.
string [0-9]+ Normalne wyrażenie, którego można użyć do sprawdzenia poprawności wartości tego klucza. W tym przypadku wartością musi mieć co najmniej jedna cyfra. Walidatory dodadzą symbole ^ i $ symbols.
Zobacz przykład population (Q574).

Znacznik Wartość

W przypadku kluczy takich jak highway istnieje lista dobrze znanych wartości, takich jak residential, service, footway. Wartości te są przechowywane podobnie jak klucze. Zobacz bridge:movable=bascule (Q888) który opisuje znacznik bridge:movable=bascule. Zobacz te wszystkie elementy które linkują do bridge:movable.

Właściwość Rodzaj Przykład wartości Opis
description string enA type of movable bridge, a bascule bridge contains one or two spans, one end of which is free and swings upwards. A counterweight at the pivoting end of the span or spans balances the weight as the free end rises.
plMost zwodzony jest to rodzaj mostu w którym co najmniej jedno przęsło jest podnoszone. Mosty zwodzone mogą być jedno- lub dwuskrzydłowe.
Jest to podstawowy sposób opisu znacznika za pomocą właściwych zdań (pierwsze słowo pisane wielką literą, kończące się kropką). Nie może zawierać żadnych znaczników Wiki ani HTML. Musi mieć mniej niż 250 znaków. Podczas tłumaczenia zwykle wystarczy tylko dodać opis do właściwości.
label string enbridge:movable=bascule Używanie etykiet nadal jest nieco niezdecydowane dla elementów danych klucz/tag, więc najlepiej ich nie używać.Na razie bot ustawia angielską etykietę podobną do wartość tagu, dokładnie tak samo jak P19 poniżej. Niektóre języki mają nativekey=nativevalue (lokalne key/value) który również zostały dodany do etykiet. Nie należy dodawać kopii angielskiej etykiety do innych języków. Zauważ, że tak samo jak dla "EN", lokalna etykieta musi być unikalna w tym języku.
sitelink string Tag:bridge:movable=bascule Linkuje do stron Tag:..., nawet jeśli strona nie istnieje. Link do podstron wyświetla się w prawym górnym rogu strony elementu.
jest to (P2) Element znacznik (Q2) Wskazuje rodzaj elementu. Ustawiamy na Q2 dla tagów.
stały identyfikator tagu (P19) String bridge:movable=bascule Pokazuje dokładną postać klucza używanego w OSM. Nie można go zmieniać po utworzeniu elementu. Ze względu na ograniczenia techniczne, tagi Tag:water tap=yes, Tag:water_tap=yes, i Tag:water_tap=yes_ mają identyczne strony Wiki/linki do podstrony – Tag:water tap=yes. W takim przypadku należy ustawić tę właściwość na wiele ciągów znaków, ale oznaczyć jeden jako preferred (mała strzałka w górę po lewej stronie wartości).
klucz tagu (P10) Element bridge:movable (Q104) Każdy element tagu łączy się z odpowiednim elementem klucza, dzięki czemu łatwiej jest wyszukiwać i sprawdzać poprawność.

Tagi mogą również używać image (DEPRECATED) (P4), obraz (P28), grupa (P25), status (P6), walidacja wartości regex (P13). Zobacz ich opis w sekcję Znacznik Klucz powyżej.

Znacznik Relacja

Podobnie jak klucze i tagi, oto przykład relacja ograniczenia (Q16054) skopiowane z relacji restriction.

Właściwość Rodzaj Przykład wartości Opis
description string ... Jest to podstawowy opis relacji, używający właściwych zdań kończących się kropką z pierwszym słowem napisanym wielką literą. Nie może zawierać żadnych znaczników Wiki ani HTML. Musi mieć mniej niż 250 symboli. Podczas tłumaczenia zwykle wystarczy tylko dodać opis do obiektu.
label string enrestriction relation Krótki opis relacji. Nie należy dodawać kopii angielskiej etykiety do innych języków.
sitelink string Relacja restriction Linki do odpowiedniej strony Wiki Relation:..., nawet jeśli strona nie istnieje. Link do podstron wyświetla się w prawym górnym rogu strony znacznika.
jest to (P2) Element rodzaj relacji (Q6) Wskazuje rodzaj elementu. Musi mieć wartość Q6 dla relacji.
stały identyfikator rodzaju relacji (P41)
Ciąg znaków reprezentujący identyfikator roli, np. „motorway”. Po ustawieniu na elemencie danych relacji ta wartość nigdy nie powinna być zmieniana.
String Relacja restriction Pokazuje dokładną formę identyfikatora relacji używanego w OSM. Nie można go zmienić po utworzeniu elementu. Z powodu ograniczeń technicznych linki do podstron relacji destination sign, destination_sign, i destination_sign_ mają identyczny link do strony wiki – destination sign. W takim przypadku ustawiamy tę właściwość na wiele ciągów wyrazów, ale oznaczamy jedną z Preferred rank preferowaną rangę.
tag tego rodzaju relacji (P40)
Linkuje do odpowiadającego tej relacji tagu, np. type=multipolygon.
Element type=restriction (Q16013) Każdy element relacji łączy się z odpowiednim tagiem type, dzięki czemu łatwiej jest wyszukiwać i sprawdzać.

Relacje mogą również korzystać z image (DEPRECATED) (P4), obraz (P28), grupa (P25), status (P6). Zobacz ich opis w sekcji Znacznik Klucz, powyżej.

Role w relacjach

Człony relacji mogą być oznaczenie jako role, np. rola inner and rola outer linie w relacji multipolygon. Każda role dla każdego rodzaju relacji ma własny element danych.
Przykład dla boundary=admin_centre (Q16060).

Właściwość Rodzaj Przykład wartości Opis
description string ... Jest to podstawowy opis roli w relacji, używający właściwych zdań kończących się kropką z pierwszym słowem pisanym duża literą. Nie może zawierać żadnych znaczników Wiki ani HTML. Musi mieć mniej niż 250 symboli. Podczas tłumaczenia zwykle wystarczy tylko dodać opis do przedmiotu.
label string enboundary=admin_centre (Q16060) Krótki opis relacji. Nie należy dodawać kopii angielskiej etykiety do innych języków.
sitelink string Relacja boundary=admin_center Linki do Strony Wiki Relation:<relation>=<role>, nawet jeśli strona nie istnieje.

Jeśli rola jest pusta, używamy formy Relation:relation= . Jeśli rola ma część zmienną, np. route=platform:<number>, ustawiamy link podstrony do części stałej -- Relation:route=platform:, i używamy walidacja wartości regex (P13) do sprawdzenia części zmiennej. Link do podstron wyświetla się w prawym górnym rogu strony przedmiotu.

jest to (P2) Element rola jako człon relacji (Q4667) Wskazuje rodzaj elementu. Musi być ustawiony na Q4667 dla ról członu relacji.
identyfikator członu roli relacji (P21)
Ciąg znaków w formacie relationtype=role. Powinien być ustawiony tylko na elementach tagu. Po ustawieniu elementu roli jego wartość nigdy nie powinna zostać zmieniona.
String boundary=admin_center Pokazuje dokładną formę identyfikatora roli relacji używaną w OSM. Nie można go zmienić po utworzeniu elementu.
Z powodu ograniczeń technicznych linki do podstron relacji boundary=admin_center, boundary=admin center, i boundary=admin_center_ mają identyczny Wiki link do podstrony – boundary=admin center. W takim przypadku ustawiamy tę właściwość dla wiele ciągów wyrazów, ale oznaczamy jedną z Preferred rank preferowaną rangą.
należy do relacji (P43)
Linkuje do odpowiadającej tej roli (np. inner) rodzaju relacji (np. multipolygon).
Element relacja boundary (Q16019) Każda rola członu relacji łączy się z odpowiednim elementem relacji, ułatwiając wyszukiwanie i sprawdzanie poprawności.
walidacja wartości regex (P13)
Wyrażenie regularne w celu sprawdzenia poprawności wartości znacznika. Może być również używany do nazw ról. Zakłada się owijanie ^( i )$. Nie używaj do wartości nienumerycznych, np. noexit=yes powinno być znacznikiem, a nie wyrażeniem regularnym.
string platform:[0-9]+ Wyrażenie regularne, za pomocą którego można zweryfikować zmienną część roli. W tym przypadku wartość musi wynosić co najmniej jedną cyfrę, np. dla roli route=platform:<number> . Walidatory skonwertują wyrażenie regularne na ^platform:[0-9]+$ (dla podanego przykładu).

Role członów relacyjnych mogą również używać użycie na węzłach (P33), użycie na liniach (P34), użycie na obszarach (P35), użycie na relacjach (P36), image (DEPRECATED) (P4), obraz (P28), grupa (P25), status (P6). Zobacz ich opis w sekcji Znacznik Tag, powyżej.

Przechowywanie regionalnych różnic

Większość przetłumaczonych stron Key:... i Tag:... ma zazwyczaj niedopasowane parametry, takie jak "status", "grupa" lub rodzaje elementów, które powinny być używane. Podczas gdy niektóre z nich były celowymi wynikami po uważnej ocenie społeczności lokalnej (patrz noexit (Q501)), wiele innych przypadków jest po prostu nieaktualnych i trzeba je naprawić lub ewentualnie usunąć z parametrów szablonu, aby pozwolić mu korzystać z bazowego elementu danych.

Wszystkie różnice regionalne są przechowywane za pomocą ograniczone do języka (P26). Wartość bez kwalifikatorów jest wartością domyślną. Powinny mieć Wszystkie różnice lokalizacyjne są przechowywane przy użyciu referowaną rangę. Można zachować Normal rank normalną rangę, gdy nie ma innych wartości dla danej właściwości. Wszystkie wartości specyficzne dla języka muszą używać ograniczone do języka (P26) i mieć Normal rank normalną rangę. Każda wartość musi być użyta tylko raz, prawdopodobnie z wieloma wartościami kwalifikatora (np. właściwość access:lhv (Q33) może mieć tylko jeden dozwolone (Q8000) i jeden zabronione (Q8001)). Ten sam region języka nie może być użyty więcej niż jeden raz dla jednej właściwości. Jeśli nie ma wartości bez kwalifikatorów, oznacza to, że wartość domyślna nie jest ustawiona (np. angielska wersja nie ma parametru onRelation=).

Właściwość Ranga Wartość Kwalifikator Znaczenie
grupa (P25) Preferred rank mosty (Q4712) bez kwalifikatorów Ta wartość jest używana dla strony angielskiej i wszystkich innych stron językowych oprócz tych wyraźnie wymienionych poniżej.
Normal rank właściwości (Q4671) ograniczone do języka (P26)
Dokumentacja w języku włoskim (Q7798)
Dokumentacja w języku fińskim (Q7791)
Ta wartość jest używana tylko dla stron włoskich i fińskich.
Normal rank umieszczenie (Q4707) ograniczone do języka (P26)
Dokumentacja w języku czeskim (Q7785)
Ta wartość jest używana tylko dla stron czeskich.

Element Meta

Istnieje wiele elementów danych, które nie są ani kluczem, ani tagiem:

Pojęcia OSM
element (Q9), klucz (Q7), znacznik (Q2), status (Q11), grupa (Q12)
Wartości status (Q11))
w rzeczywistości (Q13), w użyciu (Q14), zatwierdzony (Q15), głosowany (Q17), zaproponowany (Q20), przestarzały (Q5060), dezaprobowany (Q5061), do wyeliminowania (Q7550), importowany (Q21146)
Wartości status elementu (Q8010)
dozwolone (Q8000), zabronione (Q8001)
Specjalne
pojęcie OSM (Q10), sandbox (Q2761)

Proces tworzenia elementów

Bot stworzył wszystkie znacząco używane klucze i tagi i będzie kontynuował tworzenie tych elementów, gdy zostaną wykryte w bazie OSM (Taginfo API ) lub na Wiki.
Bot:

  • Utworzy element dla dowolnego klucza z 10+ zastosowaniami, jeśli pasuje do ^[a-z0-9]+([-:_\.][a-z0-9]+)*$, lub dla dowolnych ponad 1000 zastosowań bez względu na składnię klucza (zobacz stronę dyskusji).
  • Ustawi etykietę elementu taką samą, jak klucz.
  • Ustawi opis elementu z odpowiedniej karty informacyjnej strony Wiki (jeśli jest dostępny, to ze wszystkich języków).
  • Ustawi zestaw używanych, zalecanych tagów, implikacji i innych łatwych do wykrycia danych z kart informacyjnych.
  • NIE zaktualizuje żadnych pól zmodyfikowanych przez użytkownika, np. jeśli opis w FR został zmieniony przez użytkownika, nie powinien być wtedy zmieniany przez bota.

Ewentualnie byłoby lepiej, dla narzędzi OSM (iD, JOSM, ...) gdyby prosiły użytkownika o metadane i użyły MW API do tworzenia nowych elementów.

Dostęp API i zapytania

  • Najłatwiejszym narzędziem do uzyskania wszystkich danych dotyczących klucza jest użycie tego wywołania API:
https://wiki.openstreetmap.org/w/api.php?action=wbgetentities&sites=wiki&titles=Key:bridge:movable&languages=en|fr
Należy użyć languages, aby filtrować etykiety i opisy do potrzebnych języków.
Dodajemy &format=json&formatversion=2, aby uzyskać rzeczywisty JSON zamiast HTML.
Z powodu ograniczeń MediaWiki, wartości titles powinna być ("Key:" + key).replace('_', ' ').trim(). Użyj stały identyfikator klucza (P16), aby uzyskać aktualny format klucza. Należy upewnić się, że uzyskaliśmy "preferowaną" wartość, na wypadek gdyby pojawiło się więcej niż jedna wartość.

Kontrola jakości

Istnieje kilka dodatkowych rozszerzeń zaprojektowanych w celu sprawdzania danych Wikibase i znajdowania elementów, które nie podlegają weryfikacji. Instalowanie takich funkcji nie może odbywać się na pierwszym etapie wdrażania.

Ograniczenia

  • Ta baza Wikibase nie może jeszcze odwoływać się do lokalnych ilustracji. Należy więc przenieść ilustrację do Wikimedia Commons lub użyć obraz (P28) zamiast właściwości image (DEPRECATED) (P4).
  • Link do podstrony w prawym górnym rogu nie pokazuje, czy strona Tag:* lub Key:* istnieje, czy też nie.
  • Wszystkie linki do podstron muszą używać spacji zamiast podkreśleń, w przeciwnym razie wyszukiwanie linków do podstron API nie będzie działać. Zobacz stały identyfikator klucza (P16) i stały identyfikator tagu (P19), aby uzyskać prawidłową wartość. Należy zwrócić uwagę, że zwykłe Key:* i Tag:* strony Mediawiki mają ten sam problem i używają specjalnego hacka do zmiany tytułu.
  • MediaWiki usuwa spacje/podkreślenia z klucza, więc Key:_abc_ stanie się Key: abc. Nie ma sposobu, aby mieć dwa elementy z linkami do podstron Key:_abc and Key:_abc_ -- są one traktowane tak samo i zawodzą.

Zobacz też