示例#1
0
    def __init__(self, class1, class2, rel_type, splitter=None, tokenizer=None,
            parser=None):
        self.class1 = class1
        self.class2 = class2

        if not splitter:
            splitter = NLTKSplitter()

        if isinstance(splitter, Splitter):
            self.splitter = splitter
        else:
            raise TypeError('not an instance that implements Splitter')

        if not tokenizer:
            tokenizer = TmVarTokenizer()

        if isinstance(tokenizer, Tokenizer):
            self.tokenizer = tokenizer
        else:
            raise TypeError('not an instance that implements Tokenizer')

        self.graphs = {}

        if not parser:
            parser = BllipParser()
        if isinstance(parser, Parser):
            self.parser = parser
        else:
            raise TypeError('not an instance that implements Parser')

        self.edge_generator = SimpleEdgeGenerator(class1, class2, rel_type)