Esempio n. 1
0
    def test_isSimilar(self):
        left = Annotation()
        right = Annotation()
        self.assertFalse(
            left.isSimilar(right))  #empty annotation are not similar

        left.span_in_sentence = (1, 10)
        right.span_in_sentence = (2, 10)
        self.assertTrue(
            left.isSimilar(right))  #overlap and empty then is similar

        left.span_in_sentence = (1, 10)
        right.span_in_sentence = (2, 10)
        left.classification = "SSI"
        right.classification = ""
        self.assertFalse(left.isSimilar(right))  #overlap but attri differs

        left.span_in_sentence = (1, 10)
        right.span_in_sentence = (2, 10)
        left.classification = "SSI"
        right.classification = "SSI"
        self.assertTrue(left.isSimilar(right))  #overlap but attri differs

        left.span_in_sentence = (1, 10)
        right.span_in_sentence = (2, 10)
        left.classification = "SSI"
        left.attributes = {
            'assertion': 'positive',
            'temporality': 'current',
            'anatomy': [],
        }
        right.classification = "SSI"
        right.attributes = {}
        self.assertFalse(left.isSimilar(right))  #overlap but attri differs

        left.span_in_sentence = (1, 10)
        right.span_in_sentence = (2, 10)
        left.classification = "SSI"
        left.attributes = {
            'assertion': 'positive',
            'temporality': 'current',
            'anatomy': [],
        }
        right.classification = "SSI"
        right.attributes = {
            'assertion': 'positive',
            'temporality': 'current',
            'anatomy': [],
        }
        self.assertTrue(left.isSimilar(right))  #overlap but attri differs

        left.span_in_sentence = (1, 10)
        right.span_in_sentence = (2, 10)
        left.classification = "SSI"
        left.attributes = {
            'assertion': 'positive',
            'temporality': 'current',
            'anatomy': ["surgical site"],
        }
        right.classification = "SSI"
        right.attributes = {
            'assertion': 'positive',
            'temporality': 'future',
            'anatomy': [],
        }
        self.assertFalse(left.isSimilar(right))  #overlap but attri differs

        left.span_in_sentence = (1, 10)
        right.span_in_sentence = (2, 10)
        left.classification = "SSI"
        left.attributes = {
            'assertion': 'positive',
            'temporality': 'current',
            'anatomy': ["surgical site"],
        }
        right.classification = "SSI"
        right.attributes = {
            'assertion': 'positive',
            'temporality': 'current',
            'anatomy': [],
        }
        self.assertFalse(left.isSimilar(right))  #overlap but attri differs

        left.span_in_sentence = (1, 10)
        right.span_in_sentence = (2, 10)
        left.classification = "SSI"
        left.attributes = {
            'assertion': 'positive',
            'temporality': 'current',
            'anatomy': ["surgical site"],
        }
        right.classification = "SSI"
        right.attributes = {
            'assertion': 'positive',
            'temporality': 'current',
            'anatomy': ["surgical site"],
        }
        self.assertTrue(left.isSimilar(right))  #overlap but attri differs
Esempio n. 2
0
 def _anno(self, span, classy, attri):
     anno = Annotation()
     anno.span_in_sentence = span
     anno.classification = classy
     anno.attributes = attri
     return anno