© Filosofický ústav AV ČR, v. v. i., 2019-2021© Institute of Philosophy, Czech Academy of Sciences, 2019
Slovník středověké latiny: dokumentace pro web APIDictionary of medieval Latin in the Czech Lands: web API documentation
WebAPI Slovníku středověké latiny v českých zemích umožňuje veřejný přístup k datům Slovníku ve formátu TEI XML.
WebAPI sestává ze dvou částí, LexBoh Search a LexBoh get Record. Obě přijímají atributy metodou GET.
1) LexBoh Search API
Toto API funguje na url adrese: http://lb.ics.cas.cz/api/lexboh_search.php
Tato aplikace slouží pro prohledávání slovníkové databáze. Přijímá tyto atributy:
a) query: vyhledávaný řetězec. Lze použít hvězdičku (*) pro náhradu libovolného počtu znaků ve slově. Hledaný výraz může být i víceslovný.
b) fields: druhy informací, které se mají prohledávat. Možnosti jsou: L = lemmata, l = latinské definice, c = české definice, t = doklady z pramenů („testimonies”), s = prameny ("sources", tj. zkratky použitých pramenů) a o = ostatní („other”, tj. junktury a poznámky). Tyto jednotlivé možnosti se spojují do jednoho řetězce, např.: Llctso znamená, že se budou prohledávat všechny druhy informací. Na pořadí písmen v řetězci nezáleží. Pro prohledávání všech možností lze užít i hodnotu "all". Pokud tento parametr chybí nebo obsahuje nesmyslné údaje, bude použita možnost L, tj. vyhledávání pouze v lemmatech.
Příklady volání API:
curl http://lb.ics.cas.cz/api/lexboh_search.php?query=canis&fields=L
Volání: curl http://lb.ics.cas.cz/api/lexboh_search.php?query=canis je rovnocenné s prvním uvedeným.
Návratová hodnota:
Tato url navrací XML objekt result ve jmenném prostoru http://lb.ics.cas.cz/v2.
Struktura objektu je následující:
<search_results_set>/*seznam záznamů (tj. slovníkových lemmat), které vyhovují dotazu*/ <result>/*jednotlivé záznamy*/
<lemma>/*Heslové slovo*/</lemma>
<lemma_id>/*jednoznačný číselný identifikátor záznamu*/</lemma_id>
<georges>*/true/false hodnota určující, zda je tento slovníkový záznam obsažen v Georgesově slovníku*/</georges>
</result>
...
<count>/*počet odpovídajících záznamů*/</count>
<query>/*vyhledávací dotaz (odpovídá zadanému atributu query)*/</query>
<fields>/*prohledávané druhy informací (odpovídá zadanému atributu fields)*/</fields>
</search_results_set>
<entry>
/*Pokud je výsledkem dotazu pouze jeden nalezený záznam, je tento rovnou vrácen jako element entry. Jeho specifikaci viz níže. Pokud je nalezených výsledků více, element entry se v objektu nenachází*/
</entry>
</result>
Pokud zadanému dotazu neodpovídá žádné heslo, element search_results_list chybí.
2) LexBoh Get Record API
Tato aplikace funguje na url adrese http://lb.ics.cas.cz/api/lexboh_get_record.php
Slouží pro získání určitého slovníkového záznamu. Přijímá tento atribut:
a) lemma_id: jednoznačný číselný identifikátor slovníkového hesla, který lze obdržet v odpovědi z lexboh_search.php v /result/search_results_set/result/lemma_id
Návratová hodnota:
Tato url navrací XML objekt result ve jmenném prostoru http://lb.ics.cas.cz/v2, který obsahuje další objekt ve jmenném prostoru http://www.tei-c.org/ns/1.0
Struktura objektu je následující:
<prev_entry>/*odkaz na záznam, který abecedně předchází vracenému záznamu*/
<lemma_id>/*jednoznačný číselný identifikátor záznamu*/</lemma_id>
<text>/*text hlavičky záznamu (např. včetně případného čísla homonyma)*/</text>
</prev_entry>
<next_entry>/*odkaz na záznam, který abecedně následuje po vráceném záznamu. Struktura je stejná jako u prev_entry*/</next_entry>
<lb:data xmlns:lb="http://lb.ics.cas.cz/v2" xmlns="http://www.tei-c.org/ns/1.0">/*obsahuje TEI objekt entry_free */
<entryFree>/*objekt podle specifikace TEI obsahující samotná data vraceného hesla.*/
<orth type="lemma">/*výchozí varianta heslového slova*/
<bibl>/*odkaz na zdroj varianty*/</bibl>
</orth>
<gramGrp>/*gramatické kategorie (ve slovníkovém zápisu)*/</gramGrp>
<form>/*ortografické varianty heslového slova*/</form>
<sense>/*jednotlivé významy slova*/</sense>
<def lang="cs|lat">/*latinské, příp. české vysvětlení významu slova*/</def>
<div type="examples">/*oddíl obsahující doklady z pramenů*/
<cit>/*jednotlivý doklad*/
<bibl>/*odkaz na citovaný pramen*/</bibl>
</cit>
</div>
</sense>
<ab type="formatted">
/*Tento element obsahuje celé heslo bez rozčlenění na jednotlivé sémantické oddíly, ovšem s doplněnými formátovacími údaji (<hi rend="italics|bold|underline">). Tento element lze použít pro snadné zobrazení dat v podobě odpovídající původní podobě v tištěném Slovníku.*/
</ab>
</entryFree>
</lb:data>
</result>
NB! Strukturovaná data slovníku (tj. obsažená v elementu entryFree mimo element ab) mohou ještě obsahovat chyby ve struktuře. Z toho důvodu jsou data poskytována i v podobě uvedené v elementy ab.
Příklady volání API:
curl http://lb.ics.cas.cz/api/lexboh_get_record.php?lemma_id=66617
WebAPI of the Dictionary of Medieval Latin in Czech Lands allows public access to the data of the Dictionary in the TEI XML format.
WebAPI consists of two parts, namely LexBoh Search and LexBoh get Record. Both accept attributes by the GET method.
1) LexBoh Search API
This API works at the URL: http://lb.ics.cas.cz/api/lexboh_search.php
This application searches through the dictionary database. It accepts these attributes:
a) query: search string. An asterisk (*) may be used to substitute any number of characters in a word. The search term may be multiword.
b) fields: kinds of information to by searched. The possibilities are the following: L = lemmata, l = Latin definitions, c = Czech definitions, t = testimonies, s = sources (i.e., abbreviations of the sources used), and o = others (e.g., and notes). These possibilities combine into one chain, e. g. Llctso means that all kinds of information will be searched through. The order of characters within the chain does not matter. For a search through all kinds of data, the value "all" may also be used. If this parameter is missing or contains meaningless data, lemmata (L) will be searched through.
Examples of API calls:
curl http://lb.ics.cas.cz/api/lexboh_search.php?query=canis&fields=L
The call: curl http://lb.ics.cas.cz/api/lexboh_search.php?query=canis is equivalent with the first one.
Return value:
This URL returns the XML object "result" in the namespace http://lb.ics.cas.cz/v2.
The structure of the object is as follows:
<search_results_set>//the list of entries (i.e., lemmata) that match the query
<result>//individual entries
<lemma>/*lemma*/</lemma>
<lemma_id>/*the unique numeric identifier of the entry*/</lemma_id>
<georges>*/a true/false value determining whether the dictionary entry is found in Georges’ Handwörterbuch*/</georges>
</result>
...
<count>/*the number of relevant entries*/</count>
<query>/*the search query (equivalent to the specified attribute "query")*/</query>
<fields>/*the kinds of informatoin searched through (equivalent to the specified attribute "fields")*/</fields>
</search_results_set>
<entry>
/*If the search results in only one entry, it is returned in this field, the specification of which is given below. If more entries are found, the element "entry" is not included in the object*/
</entry>
</result>
If no entry matches the search criteria, the element " search_results_list" is not included.
2) LexBoh Get Record API
This application works at the URL: http://lb.ics.cas.cz/api/lexboh_get_record.php
It is used to obtain a specific dictionary entry. It accepts this attribute:
a) lemma_id: the unique numeric identifier of the dictionary entry, which can be obtained in result of the query lexboh_search.php in /result/search_results_set/result/lemma_id
Return value:
This URL returns the XML object result in the namespace http://lb.ics.cas.cz/v2 that includes another object in the namespace http://www.tei-c.org/ns/1.0
The structure of the object is as follows:
<prev_entry>/*reference to the entry that alphabetically precedes the returned entry*/
<lemma_id>/*the unique numeric identifier of the entry */</lemma_id>
<text>/*the text of the entry head (e.g., including a number identifying a homonym)*/</text>
</prev_entry>
<next_entry>/*reference to the entry that alphabetically follows the returned entry. The structure is the same as in "prev_entry"*/</next_entry>
<lb:data xmlns:lb="http://lb.ics.cas.cz/v2" xmlns="http://www.tei-c.org/ns/1.0">/*contains the TEI object entry_free*/
<entryFree>/*the object according with TEI specification, containing the raw data of the returned entry*/
<orth type="lemma">/*the default variant of the headword*/
<bibl>/*reference to the source of the variant*/</bibl>
</orth>
<gramGrp>/*grammatical categories (in dictionary notation)*/</gramGrp>
<form>/*orthographic variants of the headword*/</form>
<sense>/*individual meaning of the word*/</sense>
<def lang="cs|lat">/*Latin/Czech explanation of the meaning*/</def>
<div type="examples">/*section containing testimonies from sources*/
<cit>/*an individual testimony*/
<bibl>/*reference to the source*/</bibl>
</cit>
</div>
</sense>
<ab type="formatted">
/*This element includes the whole entry without a division to semantic sections, but including formatting information (<hi rend="italics|bold|underline">). This element can be used for an easy display of data in the original form, matching the original outlook of the printed Dictionary*/
</ab>
</entryFree>
</lb:data>
</result>
NB! The structured dictionary data (i.e., the content of the element entryFree without the element ab) may still contain structure flaws. For this reason, the data are given also in the form given in the element ab.
An example of an API call:
curl http://lb.ics.cas.cz/api/lexboh_get_record.php?lemma_id=66617