def testSuperlativenormalFormProduction(self): tree = computeTree(data.give_opera()) NamedEntityMerging(tree).merge() PrepositionMerging(tree).merge() qw = simplify(tree) result = normalFormProduction(tree, qw) self.assertEqual(result, { "list": [ { "list": { "predicate": { "value": "default", "type": "resource" }, "list": { "value": "Gilbert", "type": "resource" }, "type": "sort" }, "index": 0, "type": "nth" }, { "list": { "predicate": { "value": "default", "type": "resource" }, "list": { "value": "Sullivan opera", "type": "resource" }, "type": "sort" }, "index": 0, "type": "nth" } ], "type": "intersection" })
def testSuperlativenormalFormProduction(self): tree = computeTree(data.give_opera()) NamedEntityMerging(tree).merge() PrepositionMerging(tree).merge() qw = simplify(tree) result = normalFormProduction(tree, qw) self.assertEqual( result, { "list": [{ "list": { "predicate": { "value": "default", "type": "resource" }, "list": { "value": "Gilbert", "type": "resource" }, "type": "sort" }, "index": 0, "type": "nth" }, { "list": { "predicate": { "value": "default", "type": "resource" }, "list": { "value": "Sullivan opera", "type": "resource" }, "type": "sort" }, "index": 0, "type": "nth" }], "type": "intersection" })
def testHierarchyConnectors1(self): tree = computeTree(data.give_opera()) 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, 'undef') self.assertEqual(root.dfsTag, 0) # identity identity = root.child[0] self.assertEqual(identity.wordList, [Word("was", 2, 'VBD')]) self.assertEqual(identity.namedEntityTag, 'undef') self.assertEqual(identity.dependency, 'R0') self.assertEqual(identity.parent, root) self.assertEqual(len(identity.child), 1) self.assertEqual(identity.subtreeType, 'undef') self.assertEqual(identity.dfsTag, 0) # and andw = identity.child[0] self.assertEqual(andw.wordList, [Word("and", 1000, None)]) self.assertEqual(andw.namedEntityTag, 'undef') self.assertEqual(andw.dependency, 'R2') self.assertEqual(andw.parent, identity) self.assertEqual(len(andw.child), 2) self.assertEqual(andw.subtreeType, 'undef') self.assertEqual(andw.dfsTag, 0) # first1 first1 = andw.child[0] self.assertEqual(first1.wordList, [Word("first", 4, 'JJ')]) self.assertEqual(first1.namedEntityTag, 'ORDINAL') self.assertEqual(first1.dependency, 'RconjT') self.assertEqual(first1.parent, andw) self.assertEqual(len(first1.child), 1) self.assertEqual(first1.subtreeType, 'undef') self.assertEqual(first1.dfsTag, 0) # first2 first2 = andw.child[1] self.assertEqual(first2.wordList, [Word("first", 4, 'JJ')]) self.assertEqual(first2.namedEntityTag, 'ORDINAL') self.assertEqual(first2.dependency, 'RconjB') self.assertEqual(first2.parent, andw) self.assertEqual(len(first2.child), 1) self.assertEqual(first2.subtreeType, 'undef') self.assertEqual(first2.dfsTag, 0) # gilbert gilbert = first1.child[0] self.assertEqual(gilbert.wordList, [Word("Gilbert", 5, 'NNP')]) self.assertEqual(gilbert.namedEntityTag, 'PERSON') self.assertEqual(gilbert.dependency, 'Rspl') self.assertEqual(gilbert.parent, first1) self.assertEqual(len(gilbert.child), 0) self.assertEqual(gilbert.subtreeType, 'undef') self.assertEqual(gilbert.dfsTag, 0) # sullivan sullivan = first2.child[0] self.assertEqual(sullivan.wordList, [Word("Sullivan", 7, 'NNP'), Word("opera", 8, 'NN')]) self.assertEqual(sullivan.namedEntityTag, 'undef') self.assertEqual(sullivan.dependency, 'Rspl') self.assertEqual(sullivan.parent, first2) self.assertEqual(len(sullivan.child), 0) self.assertEqual(sullivan.subtreeType, 'undef') self.assertEqual(sullivan.dfsTag, 0)
def testHierarchyConnectors1(self): tree = computeTree(data.give_opera()["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, "undef") self.assertEqual(root.dfsTag, 0) # identity identity = root.child[0] self.assertEqual(identity.wordList, [Word("was", 2, "VBD")]) self.assertEqual(identity.namedEntityTag, "undef") self.assertEqual(identity.dependency, "R0") self.assertEqual(identity.parent, root) self.assertEqual(len(identity.child), 1) self.assertEqual(identity.subtreeType, "undef") self.assertEqual(identity.dfsTag, 0) # and andw = identity.child[0] self.assertEqual(andw.wordList, [Word("and", 1000, None)]) self.assertEqual(andw.namedEntityTag, "undef") self.assertEqual(andw.dependency, "R2") self.assertEqual(andw.parent, identity) self.assertEqual(len(andw.child), 2) self.assertEqual(andw.subtreeType, "undef") self.assertEqual(andw.dfsTag, 0) # first1 first1 = andw.child[0] self.assertEqual(first1.wordList, [Word("first", 4, "JJ")]) self.assertEqual(first1.namedEntityTag, "ORDINAL") self.assertEqual(first1.dependency, "RconjT") self.assertEqual(first1.parent, andw) self.assertEqual(len(first1.child), 1) self.assertEqual(first1.subtreeType, "undef") self.assertEqual(first1.dfsTag, 0) # first2 first2 = andw.child[1] self.assertEqual(first2.wordList, [Word("first", 4, "JJ")]) self.assertEqual(first2.namedEntityTag, "ORDINAL") self.assertEqual(first2.dependency, "RconjB") self.assertEqual(first2.parent, andw) self.assertEqual(len(first2.child), 1) self.assertEqual(first2.subtreeType, "undef") self.assertEqual(first2.dfsTag, 0) # gilbert gilbert = first1.child[0] self.assertEqual(gilbert.wordList, [Word("Gilbert", 5, "NNP")]) self.assertEqual(gilbert.namedEntityTag, "PERSON") self.assertEqual(gilbert.dependency, "Rspl") self.assertEqual(gilbert.parent, first1) self.assertEqual(len(gilbert.child), 0) self.assertEqual(gilbert.subtreeType, "undef") self.assertEqual(gilbert.dfsTag, 0) # sullivan sullivan = first2.child[0] self.assertEqual(sullivan.wordList, [Word("Sullivan", 7, "NNP"), Word("opera", 8, "NN")]) self.assertEqual(sullivan.namedEntityTag, "undef") self.assertEqual(sullivan.dependency, "Rspl") self.assertEqual(sullivan.parent, first2) self.assertEqual(len(sullivan.child), 0) self.assertEqual(sullivan.subtreeType, "undef") self.assertEqual(sullivan.dfsTag, 0)
def testHierarchyConnectors1(self): tree=computeTree(data.give_opera()) 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, 'undef') self.assertEqual(root.dfsTag, 0) # identity identity=root.child[0] self.assertEqual(identity.wordList, [Word("was", 2, 'VBD')]) self.assertEqual(identity.namedEntityTag, 'undef') self.assertEqual(identity.dependency, 'R0') self.assertEqual(identity.parent, root) self.assertEqual(len(identity.child), 1) self.assertEqual(identity.subtreeType, 'undef') self.assertEqual(identity.dfsTag, 0) # and andw=identity.child[0] self.assertEqual(andw.wordList, [Word("and", 1000, None)]) self.assertEqual(andw.namedEntityTag, 'undef') self.assertEqual(andw.dependency, 'R2') self.assertEqual(andw.parent, identity) self.assertEqual(len(andw.child), 2) self.assertEqual(andw.subtreeType, 'undef') self.assertEqual(andw.dfsTag, 0) # first1 first1=andw.child[0] self.assertEqual(first1.wordList, [Word("first", 4, 'JJ')]) self.assertEqual(first1.namedEntityTag, 'ORDINAL') self.assertEqual(first1.dependency, 'RconjT') self.assertEqual(first1.parent, andw) self.assertEqual(len(first1.child), 1) self.assertEqual(first1.subtreeType, 'undef') self.assertEqual(first1.dfsTag, 0) # first2 first2=andw.child[1] self.assertEqual(first2.wordList, [Word("first", 4, 'JJ')]) self.assertEqual(first2.namedEntityTag, 'ORDINAL') self.assertEqual(first2.dependency, 'RconjB') self.assertEqual(first2.parent, andw) self.assertEqual(len(first2.child), 1) self.assertEqual(first2.subtreeType, 'undef') self.assertEqual(first2.dfsTag, 0) # gilbert gilbert=first1.child[0] self.assertEqual(gilbert.wordList, [Word("Gilbert", 5, 'NNP')]) self.assertEqual(gilbert.namedEntityTag, 'PERSON') self.assertEqual(gilbert.dependency, 'Rspl') self.assertEqual(gilbert.parent, first1) self.assertEqual(len(gilbert.child), 0) self.assertEqual(gilbert.subtreeType, 'undef') self.assertEqual(gilbert.dfsTag, 0) # sullivan sullivan=first2.child[0] self.assertEqual(sullivan.wordList, [Word("Sullivan", 7, 'NNP'), Word("opera", 8, 'NN')]) self.assertEqual(sullivan.namedEntityTag, 'undef') self.assertEqual(sullivan.dependency, 'Rspl') self.assertEqual(sullivan.parent, first2) self.assertEqual(len(sullivan.child), 0) self.assertEqual(sullivan.subtreeType, 'undef') self.assertEqual(sullivan.dfsTag, 0)