def write(cls, examples, predictions, corpus, outputFile, classSet=None, parse=None, tokenization=None, goldCorpus=None, insertWeights=False): if type(examples) == types.StringType: print >> sys.stderr, "Reading examples from", examples examples = ExampleUtils.readExamples(examples, False) # This looks a bit strange, but should work with the re-iterable # generators that readExamples returns xType = None for example in examples: assert example[3].has_key("xtype") xType = example[3]["xtype"] break if xType == "token": w = EntityExampleWriter() if insertWeights: w.insertWeights = True elif xType == "edge": w = EdgeExampleWriter() elif xType == "task3": w = ModifierExampleWriter() elif xType == "entRel": w = EntityRelationExampleWriter() elif xType == "phrase": w = PhraseTriggerExampleWriter() #IF LOCAL elif xType == "um": w = UnmergingExampleWriter() #elif xType == "ue": # w = UnmergedEdgeExampleWriter() #elif xType == "asym": # w = AsymmetricEventExampleWriter() #ENDIF else: assert False, ("Unknown entity type", xType) return w.writeXML(examples, predictions, corpus, outputFile, classSet, parse, tokenization, goldCorpus=goldCorpus)
def __init__(self): self.xType = "entRel" self.entityWriter = EntityExampleWriter() self.edgeWriter = EdgeExampleWriter()