An open API service indexing awesome lists of open source software.

https://github.com/hall/interkonekto

defini e tradukuri di vortari en Ido
https://github.com/hall/interkonekto

api ido language

Last synced: 9 months ago
JSON representation

defini e tradukuri di vortari en Ido

Awesome Lists containing this project

README

          

= interkonekto
:uri: https://api.linguo.io

The API at {uri} returns (in the https://json.org[JSON] format) data of words in the Ido language.

WARNING: This project is very unstable and will change frequently until it has time to mature.
If you experience issues, please notify the administrator at kontakto@linguo.io.

A simple front end is being co-developed here: https://github.com/linguo-io/vortaro

== format

Requests are constructed in the following manner:

{uri}/__query__/__data__

=== query

Preceding the query with an ISO language code, followed by a colon, will treat the query as being written in that language.

WARNING: The following feature is not currently available:

If the query is preceded by a tilde, it is interpreted as a regular expression.

=== data

The data options are:

[horizontal]
semantiko:: definitions
exemplaro:: a few examples of usage
sinonimo:: words with similar meanings
kompundi:: compound forms
kategorio:: associated categories
an https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes[ISO language code]:: en,es,zh,...

NOTE: The special request {uri}/* will return a list of the available data options.

Multiple selections are made by delimiting options with a coma.
If no data options are requested, all of them are returned (for matched queries).

== action

The usual HTTP methods will not surprise you.

- GET: lektar

WARNING: The following are not yet implemented:

- PUT: skribar nova informeso

.PUT {uri}/linguo semantiko='something or another about language.'
[source,json]
----
{
"lingu.o": {
"semantiko": "something or another about language."
}
}
----

- POST: krear
- DELETE: efacar

== examples

To return the definition of _linguo_, with example usage:

.GET {uri}/linguo/semantiko,exemplaro
[source,json]
----
{
"lingu.o": {
"exemplaro": [
"matrala linguo"
"intermixo di lingui",
],
"semantiko": "Vortaro e sintaxo propra a komuneso."
}
}
----

To return matches of the Russian word _язык_:

.GET {uri}/ru:язык
[source,json]
----
{
"lingu.o": {
...
"io": "linguo",
...
"ru": "язык",
...
}
}
----

To return the English translation of every word that begins with *vort*:

.GET {uri}/~^vort.*/en
[source,json]
----
{
"vortala": {
"en": "verbal"
},
"vortifo": {
"en": "word formation"
},
"vortope": {
"en": "literally, word for word"
}
...
}
----

== database

The `ido` table in the SQLite database, `ido.db`, has the following general format:

.Column names correspond to <> options and each row represents a word.
[cols="10,10,50,30",options="header"]
|===
| en | io | semantiko | exemplaro
| language | lingu.o | Vortaro e sintaxo propra a komuneso. | matrala linguo +
intermixo di lingui
| morphology | morfologi.o| (biol., filoz.) Cienco di la diversa formi di materio. +
(gram.) Cienco di la diversa formi gramatikala di la vorti. |
|===

Note that the `io` column encodes the morphology of a word by delimiting its segments with the full stop character (or, "period": `.`);
multiple definitions, examples, synonyms, etc., should be separated by a newline.

== contributing

If you have any thoughts on the project or want to get involved in any way, reach out to us!
We're social animals, we promise.

== pri

The initial data set has been scraped from an https://io.wiktionary.org[Ido Wiktionary] https://dumps.wikimedia.org/iowiktionary/20180120[data dump].
However, due to Wikimedia's format prioritizing human legibility over machine parsability, much of the data was either completely dropped or just plain corrupted by the parsing process;
it is for this reason that we believe Wiktionary to be a poor choice for data storage and retrieval.

Ido will never grow as a language if we cannot write decent programs for it.
That is what this repo is all about: a unified resource for universal access.