Question

I can get a string annotated with Named Entities with the following code.

String NEString =  classifier.classifyWithInlineXML(fileContents)

I'm wondering if there is any method to call so that I can get separate entities (PERSON, ORGANIZATION, LOCATIOIN) lists in the file, that way I don't have to parse the retrieved string with the above method to get the entity lists?

Was it helpful?

Solution

In my opinion, the cleanes way to run the classification is:

List<Triple<String,Integer,Integer>> out = classifier.classifyToCharacterOffsets(text);
triple.first(): entity type
triple.second(): start position
triple.third(): end position

It groups consequent entities and returns the start and end position of entities.

OTHER TIPS

As I know there are 3 ways to get annotated string:

1) classifier.classifyToString(" ")

2) classifier.classifyWithInlineXML(" ")

3) classifier.classifyToString(" ", "xml", true)

The first one is the easiest to seperate. Unfortunately, there isn't any method as you wish.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top