Document toolboxDocument toolbox

NER Prototyp RexEx Add-In

Dieses Add-In ist ein PROTOTYP und ist NICHT IM PRODUKTIVEINSATZ ZU VERWENDEN!

Um das NER RegEx Add-In zu konfigurieren, muss zunächst der Client Service Prototyp mit dem Docker-Tag actiwareio/io-client-service:ner-prototype installiert sein. Dieser legt nach dem Starten in der Postgres-Datenbank für den Client Service die Tabelle ProjectNERAddinConfig

Dort muss ein neuer Eintrag erstellt werden mit id=1 und dem foglenden JSON als data:

{ "_id": "", "_project": "", "enabled_addins": [ { "addin_id": "151fd292-a72c-47d1-b59d-b1e6bb96179a", "module_id": "BE87224E-0E85-4047-9CA2-1862C7E15944", "parameters": { "Module.Core.Api.NER.Regex.Config": "..." } } ] }

Der Wert in des Schlüssels Module.Core.Api.NER.Regex.Config enthält die Konfiguration des Add-Ins. Diese sieht wie folgt aus:

{ "entities": { "Person": ["<regex>", "<regex2>, "..."], "NORP": ["<regex>", "<regex2>, "..."], "Facility": ["<regex>", "<regex2>, "..."], "Organization": ["<regex>", "<regex2>, "..."], "GPE": ["<regex>", "<regex2>, "..."], "Location": ["<regex>", "<regex2>, "..."], "Product": ["<regex>", "<regex2>, "..."], "Event": ["<regex>", "<regex2>, "..."], "WorkOfArt": ["<regex>", "<regex2>, "..."], "Law": ["<regex>", "<regex2>, "..."], "Language": ["<regex>", "<regex2>, "..."], "Date": ["<regex>", "<regex2>, "..."], "Percent": ["<regex>", "<regex2>, "..."], "Money": ["<regex>", "<regex2>, "..."], "Quantity": ["<regex>", "<regex2>, "..."], "Ordinal": ["<regex>", "<regex2>, "..."], "Cardinal": ["<regex>", "<regex2>, "..."] } }

Hier können zu den Entitätstypen (Entsprechend den Entitäten, welche beim Objekt im Designer festgelegt werden können: Person, NORP, ….) jeweils 1 bis n reguläre Ausdrücke hinterlegt werden, welche dann als die entsprechende Entität erkannt werden. Der Übersichtlichkeit halber, können ungenutzte Entitäten entfernt werden.

Achtung: Der RegEx muss für JSON escaped werden. Dies kann z.B. über die Seite https://www.freeformatter.com/json-escape.html (Regex in die obere Textbox einfügen, “Escape” drücken und den entstehenden Regex aus der unteren Textbox verwenden) erledigt werden.

Soll z.B. für die Entität Person der RegEx [Herr|Frau] “[^ ]*” verwendet werden, sieht die Konfiguration wie folgt aus:

{ "entities": { "Person": ["[Herr|Frau] \"[^ ]*\""] } }

Diese Konfiguration muss nun auch wieder für JSON escaped werden (https://www.freeformatter.com/json-escape.html ) so dass die endgültige Konfiguration für die Datenbank wie folgt aussieht: