Wikifunctions:Status-Updates/2024-10-11
◀ | Wikifunctions Status-Updates | ▶ |
Wikidata-Lexeme sind in Wikifunctions bald verfügbar!
Wikidata enthält bekanntermaßen einen großen Wissensgraphen über mehr als hundert Millionen Elemente, hat aber auch eine jüngere, weniger bekannte Seite: Lexikographische Daten. Derzeit beschreibt Wikidata mehr als 1,3 Millionen lexikalische Elemente in 1291 Sprachen. Die lexikografischen Daten in Wikidata sind ein wesentlicher Bestandteil der Vision der Abstrakten Wikipedia.
Als erster Schritt auf diesem Weg wird die Unterstützung von Lexemen in Wikifunctions bald verfügbar sein! Und wir möchten eine kleine Vorschau darauf geben.
Wir führen eine Reihe neuer Typen ein und jeder davon wird in zwei Varianten verfügbar sein. Sehen wir uns als Beispiel Wikidata-Lexeme an. Wir haben zwei Typen eingeführt, um mit ihnen umzugehen: Das Wikidata-Lexem selbst und die Wikidata-Lexem-Referenz. Die Referenz ist ein Wrapper um die Lexem-ID. Es wird eine Funktion bereitgestellt, die eine Wikidata-Lexem-Referenz entgegennimmt und das entsprechende Wikidata-Lexem zurückgibt.
Eine Instanz des Wikidata-Lexem-Typs stellt ein Lexem aus Wikidata dar. Das bedeutet, dass wir Lexeme in Wikifunctions nicht spontan erstellen oder ändern können: Wenn du ein Lexem ändern oder erstellen möchtest, kannst du dies weiterhin in Wikidata tun.
Wir haben die Benutzeroberfläche von Wikifunctions erweitert, um mit den neuen Typen zu arbeiten. Für Lexeme gibt es eine integrierte Suchoberfläche, mit der du ein Lexem suchen und auswählen kannst, um es als Argument in einem Funktionsaufruf zu verwenden.
Anfangs wird es zahlreiche Einschränkungen geben; insbesondere werden Aussagen sehr unvollständig sein. Alle Aussagen, deren Typ nicht unterstützt wird (was derzeit fast alle sind), werden stillschweigend weggelassen. Im Laufe der Zeit werden wir die abgedeckten Werttypen von Wikidata erweitern, mit dem endgültigen Ziel, Wikidata vollständig darzustellen.
Eine sehr wichtige Einschränkung ist, dass du Wikidata-Entitäten zunächst nicht über eingehende Aussagen auswählen kannst. Dies ist eine sehr bedeutende Einschränkung: Sie erlaubt es uns nicht, beispielsweise das Datenobjekt für Hund als Argument zu verwenden und dann mithilfe einer Funktion der Aussage Objekt für diesen Sinn für den ersten Sinn des Lexems dog zu folgen, um das relevante Lexem auszuwählen. Da dies ein sehr wichtiger Anwendungsfall für die Abstrakte Wikipedia ist, werden wir daran arbeiten, dies schnell zu beheben.
Der Lexeme-Zugriff wird eine wichtige neue Funktion mit vielen beweglichen Teilen sein, und es besteht eine gute Chance, dass wir mehr Dokumentation benötigen, dass einige Arbeitsabläufe zunächst unklar sein werden und dass auch einige Dinge am Anfang nicht funktionieren könnten. Wir bitten dich um Geduld, damit wir dies verbessern können, aber wir bitten dich auch um deine Rückmeldung, damit wir wissen, was wir verbessern müssen.
Wir freuen uns auf die Einführung!
Nachtrag: Weitere Informationen zu den Möglichkeiten von Wikifunctions für die Arbeit mit Wikidata und zum Status geplanter Funktionen sind unter Wikifunctions:Support for Wikidata content verfügbar.
Letzte Änderungen an der Software
Der Großteil unserer Arbeit in den letzten zwei Wochen konzentrierte sich auf die neue vierteljährliche Arbeit, einschließlich des oben besprochenen Wikidata-Zugriffs, und auf "Reparatur"-Arbeiten zur Beseitigung unserer technischen Rückstände. Wir haben diese Woche auch ein paar Korrekturen vorgenommen:
Wir haben den Code, der deine Benutzeroberflächensprache auswählt, wenn du auf Links in Wikifunctions klickst, angepasst, um auch deine Spracheinstellungen im Konto zu berücksichtigen, falls diese festgelegt sind (T374309). Danke an User:Ameisenigel für das Finden und Melden des Problems!
Im Rahmen umfassenderer Arbeiten zur Entfernung von Benutzeroberflächennachrichten in reinem HTML aus MediaWiki haben wir die von der Rechtsabteilung verfassten und in der Fußzeile angezeigten Urheberrechtshinweise der Seite durch Meldungen in Wikitext ersetzt (T375882).
Wir haben den Build-Prozess für unseren Back-End-Auswerterdienst neu geschrieben, um ihn durch Docker-Layer-Caching einfacher und schneller zu machen und den Last-Stresstest-Job zu lockern (T376053). Wir haben eine unbenutzte Methode zum Laden von HTML-Inhalten aus einem Wiki entfernt, die wir von der Vorlage "service-template-node" geerbt haben und die für Verwirrung gesorgt hat (T366733). Wir haben die Art und Weise verbessert, wie wir unsere Dienstprogramme in das Back-End einbinden, um Code-Duplikationen zu reduzieren (T347086). Wir haben einige bessere Metriken und Protokollierungen für unsere Überwachung der Back-End-Dienste hinzugefügt (T376225, T375457).
Seit dieser Woche verwenden wir und der gesamte von Wikimedia bereitgestellte Code die neueste Version der Codex UX-Bibliothek, v1.13.1. Wir sind der Meinung, dass es keine für den Benutzer sichtbaren Änderungen an Wikifunctions geben sollte. Kommentiere daher bitte in der Projektdiskussion oder erstelle einen Phabricator-Task, wenn du ein Problem entdeckst.
Aufzeichnung des Freiwilligentreffens
Die Aufzeichnung des Freiwilligentreffens dieses Monats ist jetzt auf Commons verfügbar.
Funktion der Woche: Englischer Possessiv im Plural
Da wir uns der Unterstützung von Lexemen nähern, dreht sich die aktuelle Funktion der Woche um den Possessiv im Plural im Englischen. Dies ist auch die Funktion, die wir beim Freiwilligentreffen in dieser Woche gemeinsam entwickelt haben. Wenn du also sehen möchtest, wie diese Funktion erstellt wird, gibt es ein Video auf Commons!
Im Englischen haben Nomen normalerweise eine Singular- und eine Pluralform. Die Singularform wird verwendet, wenn wir über eine Instanz des Nomens sprechen, und die Pluralform, wenn wir über mehrere Instanzen sprechen. Der Possessiv wird verwendet, wenn wir ausdrücken möchten, dass etwas zu etwas anderem gehört. Wir können also sagen, es gibt one dog, es gibt two dogs und dies ist the dog’s house. Der Singular ist dog, der Plural ist dogs und der Possessiv im Singular ist dog’s. Wenn wir diese kombinieren, erhalten wir den Possessiv im Plural: the dogs’ barking würde sich auf das Bellen mehrerer Hunde beziehen.
Von den 30.599 englischen Nomen in Wikidata hat die überwiegende Mehrheit (28.038) zwei Formen, aber fünf Lexeme haben auch Possessiv- oder Genitivformen. Sie werden selten speziell aufgeführt (z. B. bei sport), da sie angesichts der Singular- und Pluralformen fast immer regelmäßig sind.
Regelmäßige Formen eignen sich hervorragend für Funktionen! Die Funktion Englischer Possessiv im Plural nimmt das Lemma, d. h. die Singularform, und gibt den Possessiv im Plural zurück. Es gibt eine Implementierung, die eine Komposition ist: Sie generiert zuerst den Plural aus dem Lemma und erstellt dann den Possessiv aus dem Plural.
Ich denke, diese Funktion ist ein gutes Beispiel für eine Funktion, die wahrscheinlich keiner weiteren Implementierung bedarf: Die einzige andere Möglichkeit zur Implementierung wäre, die beiden in der Komposition verwendeten Funktionen neu zu erstellen, und das scheint keinen Vorteil zu bringen.
Die Funktion verfügt über fünf Tests, von denen drei verbunden sind – bei den anderen beiden steht zur Diskussion, ob sie verbunden werden sollen oder nicht:
- volunteer wird volunteers’ (zur Ehrung des Freiwilligentreffens, der Volunteers’ Corner)
- kiss wird kisses’ (eine etwas komplexere Pluralisierung)
- dog wird dogs’
- fish wird fish’s (nicht verbunden und schlägt mit der aktuellen Implementierung fehl)
- Matrix wird Matrices’ (ebenfalls nicht verbunden)
Ein Hauptpunkt besteht darin, zu entscheiden, ob diese Funktion immer den korrekten Possessiv im Plural zurückgeben soll, in welchem Fall die nicht verbundenen Tests verbunden werden sollten, oder nur den regulären Possessiv im Plural – in welchem Fall diese Tests nicht vorhanden sein sollten.
Wie immer war dies eine unterhaltsame Aufgabe und ich möchte den Freiwilligen danken, die gekommen sind und uns beim Erstellen der Funktion geholfen haben.