Open Name Parser schlüsselt Personen- und Unternehmensnamen sowie andere Begriffe im Namensdatenfeld in ihre Komponententeile auf. Diese geparsten Namenselemente sind anschließend für andere automatisierte Vorgänge verfügbar, z. B. Namensvergleiche, die Namensstandardisierung oder die Namenskonsolidierung über mehrere Datensätze.
Open Name Parser führt die folgenden Aktionen aus:
- Es bestimmt den Typ eines Namens, um die Funktion dieses Namens zu beschreiben. Namensentitätstypen lassen sich in zwei größere Gruppen aufteilen: Personennamen und Unternehmensnamen. Innerhalb dieser größeren Gruppen gibt es Untergruppen.
- Bestimmt die Form eines Namens, um herauszufinden, welche Syntax der Parser beim Parsen verwendet sollte. Personennamen liegen üblicherweise in normaler Reihenfolge (Unterschrift) oder in umgekehrter Reihenfolge vor. Unternehmensnamen sind normalerweise hierarchisch sortiert.
- Bestimmt die Komponenten eines Namens und beschriftet sie, um die syntaktische Beziehung jedes Namensteils zum gesamten Namen so zu identifizieren. Die Syntax von Personennamen umfasst neben anderen Teilen von Personennamen Präfixe, Vorname, zweiter Vorname, Nachname, Suffixe und Begriffe zur Kontobeschreibung. Die Syntax für Unternehmensnamen umfasst den Firmennamen und Suffixe.
- Parst verbundene Personen- und Unternehmensnamen, und behält sie entweder als einen Datensatz bei oder teilt sie in mehrere Datensätze auf. Beispiele für verbundene Namen sind „Mr. and Mrs. John Smith“ und „Baltimore Gas & Electric dba Constellation Energy“.
- Parst die Ausgabe als Datensätze oder als Liste.
- Ermöglicht Ihnen, den Open Parser Domain Editor zu verwenden, um neue Domänen zu erstellen, die Sie in den erweiterten Optionen von Open Name Parser verwenden können.
- Weist eine Parsing-Punktzahl zu, die den Zuverlässigkeitsgrad des Parsing widerspiegelt.
Ressourcen-URL
JSON-Endpunkt:
http://server:port/rest/OpenNameParser/results.json
XML-Endpunkt:
http://server:port/rest/OpenNameParser/results.xml
http://server:port/soap/OpenNameParser
Beispiel mit JSON-Antwort
Im folgenden Beispiel wird eine JSON-Antwort angefordert:
http://myserver:8080/rest/OpenNameParser/results.json?Data.Name=John+Williams+Smith
Die von dieser Anforderung zurückgegebene JSON-Antwort würde wie folgt lauten:
{"output_port": [{ "Name": "John Williams Smith", "CultureCodeUsedToParse": "", "FirstName": "John", "LastName": "Smith", "MiddleName": "Williams", "Names": [], "IsParsed": true, "IsPersonal": true, "IsConjoined": false, "IsReverseOrder": false, "IsFirm": false, "NameScore": 100, "user_fields": [] }]}
Beispiel mit XML-Antwort
Im folgenden Beispiel wird eine XML-Antwort angefordert:
http://myserver:8080/rest/OpenNameParser/results.xml?Data.Name=John+Williams+Smith
Die von dieser Anforderung zurückgegebene XML-Antwort würde wie folgt lauten:
<ns2:xml.OpenNameParserResponse xmlns:ns2="http://www.pb.com/spectrum/services/OpenNameParser"> <ns2:output_port> <ns2:Result> <ns2:Name>John Williams Smith</ns2:Name> <ns2:CultureCodeUsedToParse/> <ns2:FirstName>John</ns2:FirstName> <ns2:LastName>Smith</ns2:LastName> <ns2:MiddleName>Williams</ns2:MiddleName> <ns2:Names/> <ns2:IsParsed>true</ns2:IsParsed> <ns2:IsPersonal>true</ns2:IsPersonal> <ns2:IsConjoined>false</ns2:IsConjoined> <ns2:IsReverseOrder>false</ns2:IsReverseOrder> <ns2:IsFirm>false</ns2:IsFirm> <ns2:NameScore>100</ns2:NameScore> <ns2:user_fields/> </ns2:Result> </ns2:output_port> </ns2:xml.OpenNameParserResponse>
Beispiel
Im Folgenden wird eine SOAP-Anforderung dargestellt:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:open="http://www.pb.com/spectrum/services/OpenNameParser"> <soapenv:Header/> <soapenv:Body> <open:OpenNameParserRequest> <open:input_port> <!--Zero or more repetitions:--> <open:Input> <!--You may enter the following 3 items in any order--> <!--Optional:--> <open:Name>John Williams Smith</open:Name> <!--Optional:--> <open:CultureCode></open:CultureCode> <!--Optional:--> <open:user_fields> <!--Zero or more repetitions:--> <open:user_field> <open:name>?</open:name> <open:value>?</open:value> </open:user_field> </open:user_fields> </open:Input> </open:input_port> </open:OpenNameParserRequest> </soapenv:Body> </soapenv:Envelope>
Dies wäre die Antwort:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <ns3:OpenNameParserResponse xmlns:ns2="http://spectrum.pb.com/" xmlns:ns3="http://www.pb.com/spectrum/services/OpenNameParser"> <ns3:output_port> <ns3:Result> <ns3:Name>John Williams Smith</ns3:Name> <ns3:CultureCodeUsedToParse/> <ns3:FirstName>John</ns3:FirstName> <ns3:LastName>Smith</ns3:LastName> <ns3:MiddleName>Williams</ns3:MiddleName> <ns3:Names/> <ns3:IsParsed>true</ns3:IsParsed> <ns3:IsPersonal>true</ns3:IsPersonal> <ns3:IsConjoined>false</ns3:IsConjoined> <ns3:IsReverseOrder>false</ns3:IsReverseOrder> <ns3:IsFirm>false</ns3:IsFirm> <ns3:NameScore>100</ns3:NameScore> <ns3:user_fields/> </ns3:Result> </ns3:output_port> </ns3:OpenNameParserResponse> </soap:Body> </soap:Envelope>