annotateText method
Annotates the given text with the given parameters such as reference time, preferred locale, reference time zone and entity types filter. Returns a list of EntityAnnotation or returns empty list if there is no identified entity.
referenceTime
should be expressed in milliseconds since epoch.
Implementation
Future<List<EntityAnnotation>> annotateText(
String text, {
int? referenceTime,
String? preferredLocale,
String? referenceTimeZone,
List<EntityType>? entityTypesFilter,
}) async {
final parameters = <String, dynamic>{
'filters': entityTypesFilter != null && entityTypesFilter.isNotEmpty
? entityTypesFilter.map((e) => e.index).toList()
: null,
'locale': preferredLocale,
'timezone': referenceTimeZone,
'time': referenceTime,
};
final result = await _channel.invokeMethod(
'nlp#startEntityExtractor', <String, dynamic>{
'parameters': parameters,
'id': id,
'text': text,
'language': language.name
});
final annotations = <EntityAnnotation>[];
for (final dynamic json in result) {
annotations.add(EntityAnnotation.fromJson(json));
}
return annotations;
}