Zum Inhalt springen

„Modul:Sortierschlüssel/Doku“ – Versionsunterschied

aus AufEinWort, der freien Forschung
Die Seite wurde neu angelegt: „== Zweck und Funktion == <p data-start="263" data-end="458">Das Modul <code data-start="273" data-end="298">Modul:Sortierschluessel</code> dient der automatisierten Auslesung des in einer Seite gesetzten Sortierschlüssels (<code data-start="383" data-end="403">{{SORTIERUNG:...}}</code> oder <code data-start="409" data-end="430">{{DEFAULTSORT:...}}</code>) direkt aus dem Seitentext.</p> === Hauptziel: === <p data-start="475" data-end="501">Der Sortierschl…“
 
KKeine Bearbeitungszusammenfassung
 
Zeile 1: Zeile 1:
== Zweck und Funktion ==
== Zweck und Funktion ==
<p data-start="263" data-end="458">Das Modul <code data-start="273" data-end="298">Modul:Sortierschluessel</code> dient der automatisierten Auslesung des in einer Seite gesetzten Sortierschlüssels (<code data-start="383" data-end="403">{{SORTIERUNG:...}}</code> oder <code data-start="409" data-end="430">{{DEFAULTSORT:...}}</code>) direkt aus dem Seitentext.</p>
<p data-start="263" data-end="458">Das Modul <code data-start="273" data-end="298">Modul:Sortierschluessel</code> dient der automatisierten Auslesung des in einer Seite gesetzten Sortierschlüssels (<code data-start="383" data-end="403">{{SORTIERUNG:...}}</code> oder <code data-start="409" data-end="430">{{DEFAULTSORT:...}}</code>) direkt aus dem Seitentext.</p>
=== Hauptziel: ===
=== Hauptziel: ===
<p data-start="475" data-end="501">Der Sortierschlüssel soll:</p>
<p data-start="475" data-end="501">Der Sortierschlüssel soll:</p>
Zeile 9: Zeile 10:
*<p data-start="703" data-end="758">Sortierschlüssel nicht sichtbar kontrollieren zu können</p>
*<p data-start="703" data-end="758">Sortierschlüssel nicht sichtbar kontrollieren zu können</p>
<hr data-start="760" data-end="763">
<hr data-start="760" data-end="763">
== Funktionsweise ==
== Funktionsweise ==
<p data-start="784" data-end="933">Das Modul durchsucht den Wikitext der aktuellen Seite (<code data-start="839" data-end="853">getContent()</code>) nach einem gesetzten <code data-start="876" data-end="896">{{SORTIERUNG:...}}</code>und extrahiert den enthaltenen Wert.</p><p data-start="935" data-end="944">Beispiel:</p><p data-start="946" data-end="966">Im Seitentext steht:</p><div class="contain-inline-size rounded-md border-[0.5px] border-token-border-medium relative bg-token-sidebar-surface-primary"><div class="flex items-center text-token-text-secondary px-4 py-2 text-xs font-sans justify-between h-9 bg-token-sidebar-surface-primary dark:bg-token-main-surface-secondary select-none rounded-t-[5px]">wikitext</div><div class="sticky top-9"><div class="absolute right-0 bottom-0 flex h-9 items-center pe-2"><div class="bg-token-sidebar-surface-primary text-token-text-secondary dark:bg-token-main-surface-secondary flex items-center rounded-sm px-2 font-sans text-xs"><button class="flex gap-1 items-center select-none px-4 py-1" aria-label="Kopieren">Kopieren</button><button class="flex items-center gap-1 px-4 py-1 select-none">Bearbeiten</button></div></div></div><div class="overflow-y-auto p-4" dir="ltr"><code class="whitespace-pre! language-wikitext">{{SORTIERUNG:méǵas}}
<p data-start="784" data-end="933">Das Modul durchsucht den Wikitext der aktuellen Seite (<code data-start="839" data-end="853">getContent()</code>) nach einem gesetzten <code data-start="876" data-end="896">{{SORTIERUNG:...}}</code>und extrahiert den enthaltenen Wert.</p>
</code></div></div><p data-start="1006" data-end="1047">Das Modul findet und verarbeitet <code data-start="1039" data-end="1046">méǵas</code>.</p><hr data-start="1049" data-end="1052">
<p data-start="935" data-end="944">Beispiel:</p>
<p data-start="946" data-end="966">Im Seitentext steht:</p>
<div class="contain-inline-size rounded-md border-[0.5px] border-token-border-medium relative bg-token-sidebar-surface-primary"><div class="flex items-center text-token-text-secondary px-4 py-2 text-xs font-sans justify-between h-9 bg-token-sidebar-surface-primary dark:bg-token-main-surface-secondary select-none rounded-t-[5px]">wikitext</div>
<div class="sticky top-9"><div class="absolute right-0 bottom-0 flex h-9 items-center pe-2"><div class="bg-token-sidebar-surface-primary text-token-text-secondary dark:bg-token-main-surface-secondary flex items-center rounded-sm px-2 font-sans text-xs"><button class="flex gap-1 items-center select-none px-4 py-1" aria-label="Kopieren">Kopieren</button><button class="flex items-center gap-1 px-4 py-1 select-none">Bearbeiten</button></div></div></div>
<div class="overflow-y-auto p-4" dir="ltr"><code class="whitespace-pre! language-wikitext">{{SORTIERUNG:méǵas}}</code></div></div>
<p data-start="1006" data-end="1047">Das Modul findet und verarbeitet <code data-start="1039" data-end="1046">méǵas</code>.</p>
<hr data-start="1049" data-end="1052">
 
== Aufrufmöglichkeiten ==
== Aufrufmöglichkeiten ==
=== 1. Menschliche Anzeige (für Kontrolle) ===
=== 1. Menschliche Anzeige (für Kontrolle) ===
<p data-start="1122" data-end="1170">Zeigt den gefundenen Sortierschlüssel lesbar an.</p><div class="contain-inline-size rounded-md border-[0.5px] border-token-border-medium relative bg-token-sidebar-surface-primary"><div class="flex items-center text-token-text-secondary px-4 py-2 text-xs font-sans justify-between h-9 bg-token-sidebar-surface-primary dark:bg-token-main-surface-secondary select-none rounded-t-[5px]">wikitext</div><div class="sticky top-9"><div class="absolute right-0 bottom-0 flex h-9 items-center pe-2"><div class="bg-token-sidebar-surface-primary text-token-text-secondary dark:bg-token-main-surface-secondary flex items-center rounded-sm px-2 font-sans text-xs"><button class="flex gap-1 items-center select-none px-4 py-1" aria-label="Kopieren">Kopieren</button><button class="flex items-center gap-1 px-4 py-1 select-none">Bearbeiten</button></div></div></div><div class="overflow-y-auto p-4" dir="ltr"><code class="whitespace-pre! language-wikitext">{{#invoke:Sortierschluessel|anzeigen}}
<p data-start="1122" data-end="1170">Zeigt den gefundenen Sortierschlüssel lesbar an.</p>
</code></div></div><p data-start="1228" data-end="1237">Ergebnis:</p><blockquote data-start="1239" data-end="1264"><p data-start="1241" data-end="1264">Sortierschlüssel: méǵas</p></blockquote><hr data-start="1266" data-end="1269">
<div class="contain-inline-size rounded-md border-[0.5px] border-token-border-medium relative bg-token-sidebar-surface-primary"><div class="flex items-center text-token-text-secondary px-4 py-2 text-xs font-sans justify-between h-9 bg-token-sidebar-surface-primary dark:bg-token-main-surface-secondary select-none rounded-t-[5px]">wikitext</div>
<div class="sticky top-9"><div class="absolute right-0 bottom-0 flex h-9 items-center pe-2"><div class="bg-token-sidebar-surface-primary text-token-text-secondary dark:bg-token-main-surface-secondary flex items-center rounded-sm px-2 font-sans text-xs"><button class="flex gap-1 items-center select-none px-4 py-1" aria-label="Kopieren">Kopieren</button><button class="flex items-center gap-1 px-4 py-1 select-none">Bearbeiten</button></div></div></div>
<div class="overflow-y-auto p-4" dir="ltr"><code class="whitespace-pre! language-wikitext">{{#invoke:Sortierschluessel|anzeigen}}</code></div></div>
<p data-start="1228" data-end="1237">Ergebnis:</p>
<blockquote data-start="1239" data-end="1264"><p data-start="1241" data-end="1264">Sortierschlüssel: méǵas</p></blockquote>
<hr data-start="1266" data-end="1269">
 
=== 2. Reine Rückgabe des Wertes (für SMW-Properties) ===
=== 2. Reine Rückgabe des Wertes (für SMW-Properties) ===
<p data-start="1326" data-end="1393">Gibt nur den gefundenen Sortierschlüssel „roh“ ohne Zusatztext aus.</p><p data-start="1395" data-end="1406">Verwendung:</p><div class="contain-inline-size rounded-md border-[0.5px] border-token-border-medium relative bg-token-sidebar-surface-primary"><div class="flex items-center text-token-text-secondary px-4 py-2 text-xs font-sans justify-between h-9 bg-token-sidebar-surface-primary dark:bg-token-main-surface-secondary select-none rounded-t-[5px]">wikitext</div><div class="sticky top-9"><div class="absolute right-0 bottom-0 flex h-9 items-center pe-2"><div class="bg-token-sidebar-surface-primary text-token-text-secondary dark:bg-token-main-surface-secondary flex items-center rounded-sm px-2 font-sans text-xs"><button class="flex gap-1 items-center select-none px-4 py-1" aria-label="Kopieren">Kopieren</button><button class="flex items-center gap-1 px-4 py-1 select-none">Bearbeiten</button></div></div></div><div class="overflow-y-auto p-4" dir="ltr"><code class="whitespace-pre! language-wikitext">[[Aussprache::{{#invoke:Sortierschluessel|roh}}]]
<p data-start="1326" data-end="1393">Gibt nur den gefundenen Sortierschlüssel „roh“ ohne Zusatztext aus.</p>
</code></div></div><p data-start="1475" data-end="1514">Ergebnis (im SMW-Property gespeichert):</p><blockquote data-start="1516" data-end="1523"><p data-start="1518" data-end="1523">méǵas</p></blockquote><hr data-start="1525" data-end="1528">
<p data-start="1395" data-end="1406">Verwendung:</p>
<div class="contain-inline-size rounded-md border-[0.5px] border-token-border-medium relative bg-token-sidebar-surface-primary"><div class="flex items-center text-token-text-secondary px-4 py-2 text-xs font-sans justify-between h-9 bg-token-sidebar-surface-primary dark:bg-token-main-surface-secondary select-none rounded-t-[5px]">wikitext</div>
<div class="sticky top-9"><div class="absolute right-0 bottom-0 flex h-9 items-center pe-2"><div class="bg-token-sidebar-surface-primary text-token-text-secondary dark:bg-token-main-surface-secondary flex items-center rounded-sm px-2 font-sans text-xs"><button class="flex gap-1 items-center select-none px-4 py-1" aria-label="Kopieren">Kopieren</button><button class="flex items-center gap-1 px-4 py-1 select-none">Bearbeiten</button></div></div></div>
<div class="overflow-y-auto p-4" dir="ltr"><code class="whitespace-pre! language-wikitext">[[Aussprache::{{#invoke:Sortierschluessel|roh}}]]</code></div></div>
<p data-start="1475" data-end="1514">Ergebnis (im SMW-Property gespeichert):</p>
<blockquote data-start="1516" data-end="1523"><p data-start="1518" data-end="1523">méǵas</p></blockquote>
<hr data-start="1525" data-end="1528">
 
== Technische Hinweise ==
== Technische Hinweise ==


Zeile 25: Zeile 47:
*<p data-start="1760" data-end="1813">Groß-/Kleinschreibung des MagicWord wird toleriert.</p>
*<p data-start="1760" data-end="1813">Groß-/Kleinschreibung des MagicWord wird toleriert.</p>
<hr data-start="1815" data-end="1818">
<hr data-start="1815" data-end="1818">
== Erweiterbarkeit ==
== Erweiterbarkeit ==
<p data-start="1840" data-end="1917">Das Modul kann jederzeit um weitere Funktionen ergänzt werden — zum Beispiel:</p>
<p data-start="1840" data-end="1917">Das Modul kann jederzeit um weitere Funktionen ergänzt werden — zum Beispiel:</p>
Zeile 31: Zeile 54:
*<p data-start="1992" data-end="1999">Logging</p>
*<p data-start="1992" data-end="1999">Logging</p>
<hr data-start="2001" data-end="2004">
<hr data-start="2001" data-end="2004">
== Lizenz und Autorenschaft ==
== Lizenz und Autorenschaft ==
<p data-start="2035" data-end="2152">Erstellt und eingesetzt von Nikolaos im Rahmen der eigenen Sprach- und Wissensdatenbank im Semantic MediaWiki-System.</p><p data-start="2154" data-end="2223">Modular und frei nutzbar für MediaWiki-Projekte mit ähnlichem Bedarf.</p>
<p data-start="2035" data-end="2152">Dieses Modul <code data-start="844" data-end="869">Modul:Sortierschluessel</code> wurde gemeinschaftlich erstellt von Nikolaos (Konzept, Anwendung, Problemdefinition) und Sophos / ChatGPT (Code-Generierung, Umsetzung) und steht unter einer offenen Lizenz zur freien Nutzung, Weitergabe und Modifikation ohne Einschränkung.</p>

Aktuelle Version vom 11. April 2025, 09:50 Uhr

Zweck und Funktion

Das Modul Modul:Sortierschluessel dient der automatisierten Auslesung des in einer Seite gesetzten Sortierschlüssels ( oder ) direkt aus dem Seitentext.

Hauptziel:

Der Sortierschlüssel soll:

  1. für den Leser sichtbar angezeigt werden können

  2. für Semantic MediaWiki (SMW) als Property-Wert inline weiterverwendbar sein

Damit wird vermieden:

  • Sortierwerte mehrfach eintragen zu müssen

  • Sortierschlüssel nicht sichtbar kontrollieren zu können


Funktionsweise

Das Modul durchsucht den Wikitext der aktuellen Seite (getContent()) nach einem gesetzten und extrahiert den enthaltenen Wert.

Beispiel:

Im Seitentext steht:

wikitext
<button class="flex gap-1 items-center select-none px-4 py-1" aria-label="Kopieren">Kopieren</button><button class="flex items-center gap-1 px-4 py-1 select-none">Bearbeiten</button>
Achtung: Der Sortierungsschlüssel „méǵas“ überschreibt den vorher verwendeten Schlüssel „...“.

Das Modul findet und verarbeitet méǵas.


Aufrufmöglichkeiten

1. Menschliche Anzeige (für Kontrolle)

Zeigt den gefundenen Sortierschlüssel lesbar an.

wikitext
<button class="flex gap-1 items-center select-none px-4 py-1" aria-label="Kopieren">Kopieren</button><button class="flex items-center gap-1 px-4 py-1 select-none">Bearbeiten</button>
Skriptfehler: Ein solches Modul „Sortierschluessel“ ist nicht vorhanden.

Ergebnis:

Sortierschlüssel: méǵas


2. Reine Rückgabe des Wertes (für SMW-Properties)

Gibt nur den gefundenen Sortierschlüssel „roh“ ohne Zusatztext aus.

Verwendung:

wikitext
<button class="flex gap-1 items-center select-none px-4 py-1" aria-label="Kopieren">Kopieren</button><button class="flex items-center gap-1 px-4 py-1 select-none">Bearbeiten</button>
Skriptfehler: Ein solches Modul „Sortierschluessel“ ist nicht vorhanden.

Ergebnis (im SMW-Property gespeichert):

méǵas


Technische Hinweise

  • Das Modul greift ausschließlich auf den sichtbaren Wikitext zu.

  • Es funktioniert nur, wenn Achtung: Der Sortierungsschlüssel „...“ überschreibt den vorher verwendeten Schlüssel „méǵas“. direkt im Quelltext der Seite steht (nicht aus einer eingebundenen Vorlage erzeugt).

  • Groß-/Kleinschreibung des MagicWord wird toleriert.


Erweiterbarkeit

Das Modul kann jederzeit um weitere Funktionen ergänzt werden — zum Beispiel:

  • Auslesen anderer Steuerinformationen

  • Prüfung auf Mehrfachverwendung

  • Logging


Lizenz und Autorenschaft

Dieses Modul Modul:Sortierschluessel wurde gemeinschaftlich erstellt von Nikolaos (Konzept, Anwendung, Problemdefinition) und Sophos / ChatGPT (Code-Generierung, Umsetzung) und steht unter einer offenen Lizenz zur freien Nutzung, Weitergabe und Modifikation ohne Einschränkung.