10 lines
1.0 KiB
Plaintext
10 lines
1.0 KiB
Plaintext
import interface ReadingOwner;
|
|||
|
|
external atom ReadingWordObject id "atom:reading:word";
|
||
|
|
interface ReadingVocabulary id "interface:reading:vocabulary" revision "interface:reading:vocabulary@1" {
|
||
|
|
queryable value draft id "reading:vocabulary:draft" : record {word:string;} {get id "reading:vocabulary:draft:get" execution snapshot;edit id "reading:vocabulary:draft:edit" execution transaction;}
|
||
|
|
queryable value name id "reading:vocabulary:name" : string {get id "reading:vocabulary:name:get" execution snapshot;set id "reading:vocabulary:name:set" execution transaction;}
|
||
|
|
queryable relation library id "reading:vocabulary:library" : exactly-one interface ReadingOwner {resolve id "reading:vocabulary:library:resolve" execution snapshot;}
|
||
|
|
queryable relation words id "reading:vocabulary:words" : many-unique atom ReadingWordObject {resolve id "reading:vocabulary:words:resolve" execution snapshot;}
|
||
|
|
operation remember id "reading:vocabulary:remember" : string -> unit {call id "reading:vocabulary:remember:call" execution transaction;}
|
||
|
|
}
|