@@ -75,7 +75,7 @@ def get_statement_novelty(self, statement_uri):
7575 query = read_query ('thoughts/statement_novelty' ) % statement_uri
7676 response = self ._submit_query (query )
7777
78- if response [0 ] != {}:
78+ if response and response [0 ] != {}:
7979 response = [self ._fill_statement_novelty_ (elem ) for elem in response ]
8080 else :
8181 response = []
@@ -193,11 +193,11 @@ def get_overlaps(self, utterance):
193193 """
194194 # Role as subject
195195 query = read_query ('thoughts/object_overlap' ) % (
196- utterance .triple .predicate_name , utterance .triple .complement_name ,
197- utterance .triple .subject_name )
196+ utterance .triple .predicate_name , utterance .triple .complement_name ,
197+ utterance .triple .subject_name )
198198 response = self ._submit_query (query )
199199
200- if response [0 ]['types' ]['value' ] != '' :
200+ if response and response [0 ]['types' ]['value' ] != '' :
201201 complement_overlap = [self ._fill_overlap_ (elem ) for elem in response ]
202202 else :
203203 complement_overlap = []
@@ -208,7 +208,7 @@ def get_overlaps(self, utterance):
208208 utterance .triple .complement_name )
209209 response = self ._submit_query (query )
210210
211- if response [0 ]['types' ]['value' ] != '' :
211+ if response and response [0 ]['types' ]['value' ] != '' :
212212 subject_overlap = [self ._fill_overlap_ (elem ) for elem in response ]
213213 else :
214214 subject_overlap = []
@@ -303,7 +303,7 @@ def get_complement_cardinality_conflicts(self, utterance):
303303 utterance .triple .complement_name )
304304
305305 response = self ._submit_query (query )
306- if response [0 ] != {}:
306+ if response and response [0 ] != {}:
307307 conflicts = [self ._fill_cardinality_conflict_ (elem ) for elem in response ]
308308 else :
309309 conflicts = []
@@ -327,7 +327,7 @@ def get_negation_conflicts(self, utterance):
327327 utterance .triple .complement_name )
328328
329329 response = self ._submit_query (query )
330- if response [0 ] != {}:
330+ if response and response [0 ] != {}:
331331 conflicts = [self ._fill_negation_conflict_ (elem ) for elem in response ]
332332 else :
333333 conflicts = []
@@ -350,7 +350,7 @@ def get_trust(self, speaker):
350350 # chat based feature
351351 num_chats = float (self .count_chat_with (speaker ))
352352 friends = self .get_best_friends ()
353- best_friend_chats = float (friends [0 ][1 ])
353+ best_friend_chats = float (friends [0 ][1 ]) if friends else num_chats
354354 chat_feature = num_chats / best_friend_chats
355355
356356 # new content feature
@@ -361,7 +361,7 @@ def get_trust(self, speaker):
361361 # conflicts feature
362362 num_conflicts = float (len (self .get_conflicts_by (speaker )))
363363 all_conflicts = float (len (self .get_conflicts ()))
364- conflicts_feature = (num_conflicts / all_conflicts ) - 1
364+ conflicts_feature = - (num_conflicts / all_conflicts ) - 1 if all_conflicts != 0 else 1
365365
366366 # Aggregate
367367 # TODO scale
0 commit comments