-
Notifications
You must be signed in to change notification settings - Fork 15
Ekilex Leks API
Yogesh Sharma edited this page Aug 11, 2023
·
1 revision
Järg olemasolevale API juhendile
Järgnevad leks-orientatsiooniga andmete laadimist hõlbustavad teenused. Vajalikud eeldused kasutamiseks:
- API liidestuja individuaalne API võti
ekilex-api-key
päringu header-s. -
crudRoleDataset
päringu parameeter, mis spetsifitseerib sõnakogu, mille kasutaja õiguseid rakendatakse. See parameeter ei ole päringu andmete osa
GET
/api/lex-word/details/{wordId}/{datasetCode}
-
wordId
- keelendi ID, mille andmeid loetakse -
datasetCode
- sõnakogu piirang, mille järgi definitsioone ja kasutusnäiteid filtreeritakse
Päringu vastusena antakse klassile eki.ekilex.data.api.LexWord
vastav andmestruktuur JSON formaadis
POST
/api/lex-word/save
Päringu keha vastab klassi eki.ekilex.data.api.LexWord
struktuurile JSON formaadis.
Näidis
- Kui sõnumis puudub
wordId
, luuakse uus keelend. KuiwordId
on määratud, uuendatakse vastavat keelendit - Kui sõnumis puudub mõiste ja keelendil ei ole ühtegi vastava sõnakogu mõistet, siis luuakse uus mõiste
- Kõik mõisted, millel puudub
meaningId
, luuakse ning seotakse vastava keelendiga - Kõik mõisted, millel
meaningId
on määratud kuid puudub seos keelendiga, seotakse vastava keelendiga - Kõikidel mõistetel, millel
meaningId
on määratud, uuendatakse andmeid sõltumata sellest kas ta oli juba varasemalt keelendiga seotud või mitte
- Keelendi tüüpide koodid on nimekirjas
wordTypeCodes
. Salvestamisel kontrollitakse, kas antud keelendil on selline tüüp olemas. Kui ei ole, siis seotakse vastav keelendi tüüp keelendiga - Keelendi sugu
genderCode
, aspektaspectCode
, hääldusvocalForm
, MF kujumorphophonoForm
, vormikooddisplayMorphCode
väärtused salvestatakse alati üle.
- Kõik keelendi sisemärkused, millel
id
puudub, luuakse ning seotakse vastava keelendiga - Kui keelendi sisemärkusel on
id
määratud, siis seda ei uuendata
- Kõik keelendi seosed, millel
id
puudub, luuakse ning seotakse vastava keelendiga - Kui keelendi seosel on
id
määratud, siis seda ei uuendata - Seose loomiseks on vajalik teise keelendi id
targetWordId
ja seose liikrelationTypeCode
- Kui lisaks määrata vastassuuna seose liik
oppositeRelationTypeCode
, siis luuakse ka vastassuunaline seos
- Kõik seletused, millel
definitionId
puudub, luuakse ning seotakse vastava mõistega - Kõik seletused, millel
definitionId
on määratud, nende väärtust ja keelt uuendatakse
- Kõik kasutusnäited, millel
id
puudub, luuakse ning seotakse (ilmiku kaudu) vastava mõistega - Kõik kasutusnäited, millel
id
on määratud, nende väärtust, keelt ja avalikkust uuendatakse - Kui kasutusnäitel on avalikkus
publicity
määratud, siis see salvestatakse. Kui avalikkus on määramata, salvestatakse vaikimisi väärtustrue
- Kasutusnäidetele ja seletustele on võimalik lisada allikaviiteid
- Kui allikaviite id
sourceLinkId
puudub, siis luuakse uus viide. Kui see on määratud, siis uuendatakse allikaviite nimetust - Allikaviite loomisel tuleb määrata allika id
sourceId
ja allikaviite nimetusvalue
(mis enamasti on üks allika nimedest) - Kasutusnäite allikaviite loomisel tuleb määrata ka allikaviite tüüp
type
(enamastiAUTHOR
võiTRANSLATOR
). Kui see on määramata, kasutatakse vaikisi väärtustANY
- Allikaviite uuendamisel tuleb määrata allikaviite id
sourceLinkId
ja allikaviite nimetusvalue