Exemplo n.º 1
0
 def testHierarchySimplification(self):
     tree=computeTree(data.give_president_of_USA()['sentences'][0])
     simplify(tree)
     root=tree
     # Root
     self.assertEqual(root.wordList,[Word("ROOT",0)])
     self.assertEqual(root.namedEntityTag,'undef')
     self.assertEqual(root.dependency,'t0')
     self.assertEqual(root.parent,None)
     self.assertEqual(len(root.child),1)
     # Is
     is_=root.child[0]
     self.assertEqual(is_.wordList,[Word("identity",2,'VBZ')])
     self.assertEqual(is_.namedEntityTag,'undef')
     self.assertEqual(is_.dependency,'t0')
     self.assertEqual(is_.parent,root)
     self.assertEqual(len(is_.child),1)
     # President
     president=is_.child[0]
     self.assertEqual(president.wordList,[Word("president",4,'NN')])
     self.assertEqual(president.namedEntityTag,'undef')
     self.assertEqual(president.dependency,'t1')
     self.assertEqual(president.parent,is_)
     self.assertEqual(len(president.child),1)
     # United States
     us=president.child[0]
     self.assertEqual(us.wordList,[Word("United",7,'NNP'),Word("States",8,'NNPS')])
     self.assertEqual(us.namedEntityTag,'LOCATION')
     self.assertEqual(us.dependency,'t4')
     self.assertEqual(us.parent,president)
     self.assertEqual(len(us.child),0)
 def testBuildFromBucket(self):
     tree = computeTree(data.give_president_of_USA()['sentences'][0])
     qw = simplify(tree)
     bucket = buildBucket(tree,qw)
     triple = buildTree(bucket)
     self.assertTrue(bucket.isEmpty())
     self.assertIsInstance(triple,Triple)
     self.assertEqual(triple.get("subject"),Resource("United States"))
     self.assertEqual(triple.get("predicate"),Resource("president"))
     self.assertEqual(triple.get("object"),Missing())
Exemplo n.º 3
0
 def testBuildBucket(self):
     tree = computeTree(data.give_president_of_USA()['sentences'][0])
     qw = simplify(tree)
     tBucket = buildBucket(tree,qw)
     self.assertEqual(len(tBucket.bucket), 1)
     self.assertEqual(tBucket.bucket[0].subjectT, "United States")
     self.assertEqual(tBucket.bucket[0].predicateT, "president")
     self.assertEqual(tBucket.bucket[0].objectT, 0)
     t=tBucket.extractTriple(0)
     self.assertEqual(t.subjectT,"United States")
     self.assertEqual(t.predicateT,"president")
     self.assertEqual(t.objectT,0)
     self.assertEqual(len(tBucket.bucket), 0)
     t=tBucket.extractTriple(1)
     self.assertIsNone(t)
 def testHierarchySimplification(self):
     tree = computeTree(data.give_president_of_USA())
     NamedEntityMerging(tree).merge()
     PrepositionMerging(tree).merge()
     simplify(tree)
     tree.sort()
     root = tree
     # Root
     self.assertEqual(root.wordList, [Word("ROOT", 0)])
     self.assertEqual(root.namedEntityTag, 'undef')
     self.assertEqual(root.dependency, 'R0')
     self.assertEqual(root.parent, None)
     self.assertEqual(len(root.child), 1)
     self.assertEqual(root.subtreeType, 'PERSON')
     self.assertEqual(root.dfsTag, 0)
     # Is
     is_ = root.child[0]
     self.assertEqual(is_.wordList, [Word("is", 2, 'VBZ')])
     self.assertEqual(is_.namedEntityTag, 'undef')
     self.assertEqual(is_.dependency, 'R0')
     self.assertEqual(is_.parent, root)
     self.assertEqual(len(is_.child), 1)
     self.assertEqual(is_.subtreeType, 'PERSON')
     self.assertEqual(is_.dfsTag, 0)
     # President
     president = is_.child[0]
     self.assertEqual(president.wordList, [Word("president", 4, 'NN')])
     self.assertEqual(president.namedEntityTag, 'undef')
     self.assertEqual(president.dependency, 'R2')
     self.assertEqual(president.parent, is_)
     self.assertEqual(len(president.child), 1)
     self.assertEqual(president.subtreeType, 'undef')
     self.assertEqual(president.dfsTag, 0)
     # United States
     us = president.child[0]
     self.assertEqual(us.wordList,
                      [Word("United", 7, 'NNP'),
                       Word("States", 8, 'NNPS')])
     self.assertEqual(us.namedEntityTag, 'LOCATION')
     self.assertEqual(us.dependency, 'R2')
     self.assertEqual(us.parent, president)
     self.assertEqual(len(us.child), 0)
     self.assertEqual(us.subtreeType, 'undef')
     self.assertEqual(us.dfsTag, 0)
 def testHierarchySimplification(self):
     tree = computeTree(data.give_president_of_USA()["sentences"][0])
     NamedEntityMerging(tree).merge()
     PrepositionMerging(tree).merge()
     simplify(tree)
     tree.sort()
     root = tree
     # Root
     self.assertEqual(root.wordList, [Word("ROOT", 0)])
     self.assertEqual(root.namedEntityTag, "undef")
     self.assertEqual(root.dependency, "R0")
     self.assertEqual(root.parent, None)
     self.assertEqual(len(root.child), 1)
     self.assertEqual(root.subtreeType, "PERSON")
     self.assertEqual(root.dfsTag, 0)
     # Is
     is_ = root.child[0]
     self.assertEqual(is_.wordList, [Word("is", 2, "VBZ")])
     self.assertEqual(is_.namedEntityTag, "undef")
     self.assertEqual(is_.dependency, "R0")
     self.assertEqual(is_.parent, root)
     self.assertEqual(len(is_.child), 1)
     self.assertEqual(is_.subtreeType, "PERSON")
     self.assertEqual(is_.dfsTag, 0)
     # President
     president = is_.child[0]
     self.assertEqual(president.wordList, [Word("president", 4, "NN")])
     self.assertEqual(president.namedEntityTag, "undef")
     self.assertEqual(president.dependency, "R2")
     self.assertEqual(president.parent, is_)
     self.assertEqual(len(president.child), 1)
     self.assertEqual(president.subtreeType, "undef")
     self.assertEqual(president.dfsTag, 0)
     # United States
     us = president.child[0]
     self.assertEqual(us.wordList, [Word("United", 7, "NNP"), Word("States", 8, "NNPS")])
     self.assertEqual(us.namedEntityTag, "LOCATION")
     self.assertEqual(us.dependency, "R2")
     self.assertEqual(us.parent, president)
     self.assertEqual(len(us.child), 0)
     self.assertEqual(us.subtreeType, "undef")
     self.assertEqual(us.dfsTag, 0)
 def testHierarchySimplification(self):
     tree=computeTree(data.give_president_of_USA())
     NamedEntityMerging(tree).merge()
     PrepositionMerging(tree).merge()
     simplify(tree)
     tree.sort()
     root=tree
     # Root
     self.assertEqual(root.wordList, [Word("ROOT", 0)])
     self.assertEqual(root.namedEntityTag, 'undef')
     self.assertEqual(root.dependency, 'R0')
     self.assertEqual(root.parent, None)
     self.assertEqual(len(root.child), 1)
     self.assertEqual(root.subtreeType, 'PERSON')
     self.assertEqual(root.dfsTag, 0)
     # Is
     is_=root.child[0]
     self.assertEqual(is_.wordList, [Word("is", 2, 'VBZ')])
     self.assertEqual(is_.namedEntityTag, 'undef')
     self.assertEqual(is_.dependency, 'R0')
     self.assertEqual(is_.parent, root)
     self.assertEqual(len(is_.child), 1)
     self.assertEqual(is_.subtreeType, 'PERSON')
     self.assertEqual(is_.dfsTag, 0)
     # President
     president=is_.child[0]
     self.assertEqual(president.wordList, [Word("president", 4, 'NN')])
     self.assertEqual(president.namedEntityTag, 'undef')
     self.assertEqual(president.dependency, 'R2')
     self.assertEqual(president.parent, is_)
     self.assertEqual(len(president.child), 1)
     self.assertEqual(president.subtreeType, 'undef')
     self.assertEqual(president.dfsTag, 0)
     # United States
     us=president.child[0]
     self.assertEqual(us.wordList, [Word("United", 7, 'NNP'), Word("States", 8, 'NNPS')])
     self.assertEqual(us.namedEntityTag, 'LOCATION')
     self.assertEqual(us.dependency, 'R2')
     self.assertEqual(us.parent, president)
     self.assertEqual(len(us.child), 0)
     self.assertEqual(us.subtreeType, 'undef')
     self.assertEqual(us.dfsTag, 0)
    def testnormalFormProduction1(self):
        tree = computeTree(data.give_president_of_USA())
        NamedEntityMerging(tree).merge()
        PrepositionMerging(tree).merge()
        qw = simplify(tree)
        result = normalFormProduction(tree, qw)
        self.assertEqual(result, {
    "object": {
        "type": "missing"
    },
    "subject": {
        "type": "resource",
        "value": "United States"
    },
    "predicate": {
        "type": "resource",
        "value": "president"
    },
    "type": "triple"
})
Exemplo n.º 8
0
 def testnormalFormProduction1(self):
     tree = computeTree(data.give_president_of_USA())
     NamedEntityMerging(tree).merge()
     PrepositionMerging(tree).merge()
     qw = simplify(tree)
     result = normalFormProduction(tree, qw)
     self.assertEqual(
         result, {
             "object": {
                 "type": "missing"
             },
             "subject": {
                 "type": "resource",
                 "value": "United States"
             },
             "predicate": {
                 "type": "resource",
                 "value": "president"
             },
             "type": "triple"
         })
Exemplo n.º 9
0
 def testQuestion(self):
     tree=computeTree(data.give_president_of_USA()['sentences'][0])
     self.assertEqual(simplify(tree),'who')
 def testQuestion(self):
     tree = computeTree(data.give_president_of_USA())
     NamedEntityMerging(tree).merge()
     PrepositionMerging(tree).merge()
     self.assertEqual(simplify(tree), 'who')
 def testQuestion(self):
     tree = computeTree(data.give_president_of_USA()["sentences"][0])
     NamedEntityMerging(tree).merge()
     PrepositionMerging(tree).merge()
     self.assertEqual(simplify(tree), "who")