Add perform-verb-over-object and (failing) test.
This commit is contained in:
parent
e0a5f02c34
commit
aa7bee4c8b
2 changed files with 34 additions and 6 deletions
|
@ -208,6 +208,26 @@ def property_has_value(knowledge_base, elements, subj, prop, value):
|
|||
element=value
|
||||
)
|
||||
|
||||
def perform_verb_over_object(knowledge_base, elements, subj, verb, obj):
|
||||
subj = resolve(knowledge_base, elements, subj)
|
||||
verb = resolve(knowledge_base, elements, verb)
|
||||
obj = resolve(knowledge_base, elements, obj)
|
||||
|
||||
if subj not in knowledge_base:
|
||||
knowledge_base[subj] = {'groups': set()}
|
||||
|
||||
if 'performs-over' not in knowledge_base[subj]:
|
||||
knowledge_base[subj]['performs-over'] = {}
|
||||
|
||||
if verb not in knowledge_base[subj]['performs-over']:
|
||||
knowledge_base[subj]['performs-over'][verb] = set()
|
||||
|
||||
return modifiable_element_for_existance_in_set(
|
||||
container=knowledge_base[subj]['performs-over'],
|
||||
set_name=verb,
|
||||
element=obj
|
||||
)
|
||||
|
||||
|
||||
knowledge_ingestion = {
|
||||
"exists-property-with-value": exists_property_with_value,
|
||||
|
@ -216,6 +236,7 @@ knowledge_ingestion = {
|
|||
"question": question,
|
||||
"implies": implies,
|
||||
"property-has-value": property_has_value,
|
||||
"perform-verb-over-object": perform_verb_over_object,
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue