def autoNER(self, parseTree: ParseTreeDrawable): self.autoDetectPerson(parseTree) self.autoDetectLocation(parseTree) self.autoDetectOrganization(parseTree) self.autoDetectMoney(parseTree) self.autoDetectTime(parseTree) nodeDrawableCollector = NodeDrawableCollector( parseTree.getRoot(), IsTransferable(self.secondLanguage)) leafList = nodeDrawableCollector.collect() for parseNode in leafList: if isinstance(parseNode, ParseNodeDrawable) and not parseNode.layerExists( ViewLayerType.NER): parseNode.getLayerInfo().setLayerData(ViewLayerType.NER, "NONE") parseTree.save()
def autoArgument(self, parseTree: ParseTreeDrawable, frameset: Frameset): nodeDrawableCollector = NodeDrawableCollector( parseTree.getRoot(), IsTransferable(self.secondLanguage)) leafList = nodeDrawableCollector.collect() for parseNode in leafList: if isinstance(parseNode, ParseNodeDrawable) and parseNode.getLayerData( ViewLayerType.PROPBANK) is None: for argumentType in ArgumentType: if frameset.containsArgument( argumentType) and self.autoDetectArgument( parseNode, argumentType): parseNode.getLayerInfo().setLayerData( ViewLayerType.PROPBANK, ArgumentType.getPropbankType(argumentType)) if Word.isPunctuationSymbol( parseNode.getLayerData(self.secondLanguage)): parseNode.getLayerInfo().setLayerData( ViewLayerType.PROPBANK, "NONE") parseTree.save()