Select Git revision
action_net.py

Aurélien Lamercerie authored
action_net.py 2.17 KiB
#!/usr/bin/python3.10
# -*-coding:Utf-8 -*
#==============================================================================
# TENET: Class Net
#------------------------------------------------------------------------------
# Class to handle semantic nets
#==============================================================================
from transduction.net import Net
from transduction.rdfterm_computer import produce_uriref, produce_literal
#==============================================================================
# Net Class
#==============================================================================
class ActionNet(Net):
""" Class to handle semantic net.
"""
#--------------------------------------------------------------------------
# Constructor(s)
#--------------------------------------------------------------------------
def __init__(self, support_graph, uri=None):
# -- Parent init
super().__init__(support_graph, uri)
# -- Net Type
self.type_name = 'action'
self.type_id = 'Action_Net'
self.type_uri = f'net:{self.type_id}'
# -- Net Attributes
self.attr_list += ['action_name', 'target_net']
self._action_name = None
self._target_net = None
#--------------------------------------------------------------------------
# Accessors for Net Attributes
#--------------------------------------------------------------------------
@property
def action_name(self):
if self._action_name is None:
self._action_name = self.get_value_list_from_graph('action_name')
return self._action_name
@action_name.setter
def action_name(self, new_value):
self._action_name = self.set_attribute_value_list(new_value, produce_literal)
@property
def target_net(self):
if self._target_net is None:
self._target_net = self.get_value_list_from_graph('target_net')
return self._target_net
@target_net.setter
def target_net(self, new_value):
self._target_net = self.set_attribute_value_list(new_value, produce_uriref)