This edition of the newsletter can be found on-wiki here:
https://meta.wikimedia.org/wiki/Abstract_Wikipedia/Updates/2023-09-08
--
Let’s start building morphological paradigms!
Morphological functions are functions that take one form of a word and
create a different form of the word that is required in order to follow
grammatical and semantic rules. For example, it might take a word such as
“letter” and return the plural form “letters”, or the present participle
“lettering”. We talked previously about morphological paradigms
<https://meta.wikimedia.org/wiki/Abstract_Wikipedia/Updates/2021-09-10>,
about the need for both lexemes in Wikidata and paradigms in Wikifunctions
<https://meta.wikimedia.org/wiki/Abstract_Wikipedia/Updates/2021-09-17>,
and about a tool to check lexemes and paradigms against each other
<https://meta.wikimedia.org/wiki/Abstract_Wikipedia/Updates/2022-11-09>.
We think that Wikifunctions is now ready for us to start building functions
that support morphological paradigms! We would like to invite the different
language communities to join us at Wikifunctions and to start creating
functions that create lexical forms.
Here are a few examples of such functions from the Wikifunctions Beta:
-
English plural <https://wikifunctions.beta.wmflabs.org/view/en/Z10241>
-
French plural <https://wikifunctions.beta.wmflabs.org/view/en/Z10106>
-
Swedish genitive <https://wikifunctions.beta.wmflabs.org/view/en/Z10297>
-
German feminine plural
<https://wikifunctions.beta.wmflabs.org/view/en/Z10358>
-
Croatian feminine plural nominative
<https://wikifunctions.beta.wmflabs.org/view/en/Z10335>
In most cases, these functions would be taking a string and returning a
string (but there might be exceptions). The examples above illustrate two
kinds of case: functions which aim to work for all words of a given part of
speech (e.g. the English and French plural and the Swedish genitive, which
aims to work for any noun), and those that work for a subset of a given
part of speech (the examples cover German and Croatian feminine nouns, but
could be more complex, such as Zaliznyak’s classification of Russian nouns
<https://en.wikipedia.org/wiki/Andrey_Zaliznyak> or maybe also noun classes
in Niger-Congo languages).
The morphological paradigms will often not be complete inside
Wikifunctions. The idea is for exceptions to be caught by adding as forms
to the lexicographical knowledge in Wikidata. The functions are for the
reasonably regular forms and for the often generative rules agglutinative
languages (but what is a regular form and what is an exception is
something the given language community will need to figure out). We are
looking forward to communities to come together around the individual
languages and for morphologizers, sets of morphological paradigms for a
given language, to grow in Wikifunctions! We are particularly excited to
see how far these can be built in a given natural language, and how
autonomous the languages can become (and where they still depend on
understanding English) - and how much these functions will benefit across
languages. We also hope that capturing the paradigms can be a contribution
to language preservation and revitalization.
We are aware that the situation is not yet ideal for this call to action,
but we want to make this call sooner rather than later. We are actively
working on improving the situation. If you want to contribute to this
challenge, but don’t yet have functioneer rights, please apply here and
explain which language you plan to work on
<https://www.wikifunctions.org/wiki/Wikifunctions:Apply_for_editing>. We
will prioritize such applications. We are also aware that the current
limitation on function calls to logged-in users makes it difficult to demo
the functions and prevents it from integrating it into tools such as Form
Checker <https://williamavery.github.io/formcheck/> or Lucas Werkmeister’s
Wikidata Lexeme Forms <https://lexeme-forms.toolforge.org/>. We are
prioritizing resolving these issues.
Please reach out to us if you need help starting this effort for the
language you are interested in, or if you hit any stumbling blocks on the
way. We are looking forward to supporting you.
A few days ago, we started a conversation on the Wikifunctions Project Chat
about what the right type for morphological functions
<https://www.wikifunctions.org/wiki/Wikifunctions:Project_chat#Type_for_morphological_function>
should be, which also extended to IRC / Telegram
<https://wm-bot.wmcloud.org/logs/%23wikipedia-abstract/20230830.txt>. My
summary of the comments is that we can go ahead with using strings as the
argument and output type for morphological paradigms, given that in most
cases a string-based function would be at the core of any other solution
anyway. Thanks to everyone who participated in that discussion!
Thanks to Kutz Arrieta for a discussion and review of this newsletter.
Thanks to William Avery for improving and working on the Form Checker tool.
Thanks to everyone who participated in the discussion about the right type
for morphological functions.
Volunteer’s Corner
The next Volunteer’s Corner will be on September 18, 2023, at 17:30 UTC
<https://zonestamp.toolforge.org/1695058220> at
meet.jit.si/AWVolunteersCorner. We plan to kick off that meeting with a
live tutorial on building functions together.