Freigeben über


Verschiedene linguistische und Unicode-Überlegungen

In diesem Thema werden Überlegungen zur Wortstammerkennung für agglutinative Sprachen und Unicode-Surrogatepaare und die Verwendung von Ersatzpaaren zum Erweitern des Unicode-Zeichensatzes auf unterschiedliche Zeichensätze beschrieben. In diesem Thema wird auch beschrieben, wie Wörtertrennungen Ausdrücke in Text identifizieren und geschützte Leerzeichen behandeln und wie Wörtertrennungen und Wortstammzeichen Zahlen und Datumsangaben behandeln, zusammengesetzte Wörter, zusammengesetzte Ausdrücke, Sonderwörter und Zeichen, Akronyme und Abkürzungen sowie Groß-/Kleinschreibung.

Dieses Thema ist wie folgt organisiert:

Begriffsidentifikation

Ausdrücke sind ein Wort oder eine Gruppe von Wörtern, die von einem oder mehreren anderen Personen geändert werden. Ausdrücke sind schwierig, konsistent zu identifizieren, da derselbe Modifizierer in mehreren Ausdrücken mit demselben Substantiv verwendet werden kann. Beispiel: "Neues Haus", "Haus des Parlaments", "neues Haus des Parlaments".

Windows Search verwendet Ausdrücke am häufigsten zur Abfragezeit. Ausdrücke im Abfragetext erhalten eine höhere Gewichtung als einzelne Wörter. Aus dem vorherigen Beispiel wird ein Dokument mit "Haus des Parlaments" höher als ein Dokument mit "Haus" und "Parlament" an verschiedenen Stellen im Dokument eingestuft. Es wird empfohlen, dass Wörtertrennungen zur Abfragezeit einen Ausdruck generieren, wenn der Ausdruck wahrscheinlich mindestens einem Dokument entspricht.

Agglutinative Sprachen

Agglutinative Sprachen bilden Wörter durch die Kombination kleinerer Morphemen, um zusammengesetzte Ideen auszudrücken. Jeder dieser Morphemen hat im Allgemeinen eine Bedeutung oder Funktion und behält seine ursprüngliche Form und Bedeutung während des Kombinationsprozesses bei. Für Sprachen mit agglutinativer Morphologie wie Türkisch, Finnisch, Ungarisch oder Koreanisch ist es möglich, Tausende von Formen für ein bestimmtes Stammwort zu erzeugen.

In der folgenden Tabelle ist eine Liste der inflected Forms für das finnische Wort "talo" ("Haus") aufgeführt.

Wort Übersetzung
Talo Haus
Taloni Mein Haus
Talossa Im Haus
Talossani In meinem Haus
Taloja Häuser
Taloissa In den Häusern

 

Inflected languages, such as English, French, and Latin, have a very small number of possible word forms for one root word. In inflected languages beeinflussen Morphemes beim Binden einander. Die meisten Änderungen der Inflection sind im Stamm- oder Wortende vorhanden. Im Gegensatz zu agglutinativen Sprachen weisen inflectierte Sprachen unterschiedliche Funktionen für ein einzelnes Morphem auf. Ein Morphem kann z. B. sowohl die Zahl als auch die Groß-/Kleinschreibung bestimmen.

Stemmers für agglutinative Sprachen müssen den Kompromiss zwischen Leistung und Genauigkeit abwägen, um nur eine Teilmenge der Anzahl möglicher Wortformen zu generieren.

Zahlen, Uhrzeiten und Datumsangaben

Word-Umbrüche müssen ein gemeinsames Format für die Darstellung von Zahlen, Uhrzeiten und Datumsangaben verwenden, um eine konsistente Abfrage zu erleichtern.

Wenn Sie einen Worttrennungser erstellen, Es wird empfohlen, die Wörtertrennung Zahlen in eine kanonische Darstellung zu normalisieren, indem das Muster "NNNddDcc", wobei NN die Literalsequenz "NN" ist, dd ist der ganzzahlige Teil der Zahl, D ist das Literal "D", und cc ist der Bruchteil der Zahl. Word-Trennzeichen beschränken nicht die Anzahl der Ziffern für die ganze Zahl oder den Bruchteil der Zahl. Es wird empfohlen, dass Worttrennungen numerische Muster erkennen, die durch Punkte (.) und Kommas (,) getrennt sind. Windows Search stellt z. B. "1.000.2" und "1.000,2" als "NN1000D2" dar.

Wählen Sie ein Format für Worttrennung und Wortstamm aus. Einfache arabische Zahlen werden normalisiert, sodass eine Abfrage, die eines dieser Formulare enthält, mit den anderen Formularen übereinstimmt.

Wenn Sie einen Wörtertrennungssatz erstellen, wird empfohlen, dass der Worttrennsatz immer als 24-Stunden-Darstellung mit dem Muster "TThhmmss" dargestellt wird, wobei TT das Literalpräfix "TT" ist, hh die Stunden ist, mm die Minuten und ss ist die Sekunden. Windows Search stimmt nicht mit zusätzlichen Zeiteinheiten überein, z. B. Millisekunden. Die Analyse von A.M.- und P.M.-Mustern ist optional.

Wenn Sie einen Wörtertrennung erstellen, wird empfohlen, dass der Worttrennung Datumsangaben im kanonischen Format "DDyyyymmddd", wobei DD das Literal "DD" ist, yyyyy die Jahre ist, mm ist die Monate, und dd ist die Tage. Außerdem wird empfohlen, dass Wörtertrennungen zweistellige Jahre sowohl im 20. Jahrhundert als auch im 20. Jahrhundert speichern. Wörtertrennungen stellen z. B. "2.2.99" als "DD19990202" und "DD20990202" dar. Zur Abfragezeit leitet Windows Search das Datum mithilfe von Windows-Anwendungsprogrammierschnittstellen (APIs) ab, um das Überoverdatum für den Server zu bestimmen, um das richtige Format anzuzeigen, 19XX oder 20XX.

Zusammengesetzte Wörter

In einigen Sprachen, z. B. Deutsch, werden Substantive aus einfacheren Substantiven zusammengesetzt. Diese zusammengesetzten Substantive sind zu spezifisch für einen angemessenen Abfragerückruf. Beispielsweise entspricht eine Abfrage für "Versicherung" ("Versicherung") nicht mit "Lebensversicherungsgesellschaft" ("Lebensversicherungsgesellschaft" ("Lebensversicherungsverkäufer"). In Solchen Fällen wird empfohlen, dass Wörtertrennungen diese zusammengesetzten Wörter sowohl während der Indexerstellung als auch während der Abfragezeit in Basiskomponenten unterteilen. Der deutsche Worttrennung bricht "Lebensversicherungsgesellschaft" in die Bestandteile "Leben", "Versicherung" und "Gesellschaft". Sie wendet die gleiche Analyse zur Abfragezeit zusammen mit optionaler Wortstammerkennung für jeden der resultierenden Ausdrücke an.

Zusammengesetzte Ausdrücke

Einige Sprachen, z. B. Koreanisch, enthalten komplexe Ausdrücke, die auf verschiedene Arten unterbrochen werden können. Ein koreanischer Ausdruck besteht aus Inhaltswörtern, z. B. Substantive, Pronomen, Verben und Adjektive, gefolgt von funktionalen Wörtern. Funktionale Wörter werden in Postpositionen und Enden gefunden. Postpositionen geben die funktionale Rolle des Substantivs oder Pronomen in einem Satz an; Enden geben die funktionale Rolle des Verbs oder Adjektivs an.

Ein Ausdruck kann die verschiedenen Analysen enthalten, und jede Analyse kann aus mehreren Inhaltswörtern bestehen. Der Worttrennung muss sprachspezifische Heuristiken verwenden, um aus dem Kontext heraus zu bestimmen, wie viel Gewicht für unterschiedliche Analysen zu geben ist. Die Worttrennung kann bestimmen, welche Analyse basierend auf der Anzahl der resultierenden Komponentenwörter verwendet werden soll. Einige Worttrennungen bevorzugen möglicherweise kurze Abfolgen längerer Begriffe, während andere Worttrennungen lange Abfolgen kleinerer Wörter bevorzugen.

Ein weiterer Aspekt ist, dass in Koreanisch, Substantivs und Pronomen ohne ihre entsprechenden funktionalen Wörter im Index gespeichert werden können. Koreanisch ist eine agglutinative Sprache und kombiniert zahlreiche Wortenden mit Verben und Adjektiven, um unzählige inflectierte Formen zu bilden. Verben und Adjektive, die in Ausdrücken identifiziert werden, werden mit ihren Enden im Index gespeichert, aber der Worttrennung generiert keine neuen Formulare.

Sonderzeichen und Wörter

Sonderzeichen sind Zeichen wie "," "©" und "™". Diese Zeichen werden selten in Abfragen verwendet. Word-Trennzeichen sollten während der Indexerstellung und zur Abfragezeit Sonderzeichen entfernen.

Es wird empfohlen, dass Wörtertrennungen spezielle Wörter wie "C++", "C#", ".NET", Noten und Musiknotation erkennen. Wörtertrennungen können eine Sprachhuristik verwenden, um ein Muster für spezielle Wörter zu identifizieren. Wörtertrennungen können auch ein Benutzerwörterbuch verwenden, das erkannte spezielle Wörter enthält.

Akronyme und Abkürzungen

Akronyme und Abkürzungen müssen berücksichtigt werden, wenn Sie einen Worttrennzeichen implementieren. In vielen Sprachen werden einzelne Akronyme durch Punkte getrennt. Gelegentlich werden Wörter, die keine erkannten Akronyme oder Abkürzungen sind abgekürzt. Beispielsweise kann "Vereinigte Staaten von Amerika" als "USA" oder "USA" abgekürzt werden. Word-Umbrüche, die in windows Search enthalten sind, identifizieren in der Regel Wörter mit einem Buchstaben als Füllwörter und behandeln diese Wörter während der Abfragezeit als Platzhalter. Während der Abfragezeit wandelt ein Worttrennzeichen, der sich nicht mit allgemeinen Akronyme bewusst ist oder keine Abkürzungen erkennt, die Abkürzung "U.S.A." in "U", "S" und "A" um. Diese Analyse stellt nicht genügend Informationen bereit, um Wörter im Volltextindex abzugleichen, da alle Abfragebegriffe Rauschwörter sind. Wenn Sie einen Worttrennzeichen erstellen, empfiehlt es sich, die Punkte zu entfernen, die die Buchstaben der Akronyme trennen. Im Beispiel wird "U.S.A." als "USA" und ein Abfragebegriff gespeichert, der "USA" enthält, der tatsächlich Abfragen für "USA" enthält. Wenn ein Worttrennzeichen eine Abkürzung verarbeitet, wird der Punkt in dieser Abkürzung nicht als EOS-Umbruch behandelt. Aus diesem Grund identifiziert ein Worttrennzeichen möglicherweise keinen EOS-Umbruch, wenn sich die Abkürzung am Ende des Satzes befindet.

Großschreibung

Windows Search behält derzeit keine Groß-/Kleinschreibung bei, wenn Wörter im Volltextindex gespeichert werden. Wörtertrennungen und Wortstammzeichen sollten die Groß-/Kleinschreibung für Wörter nicht ändern.

Geschützte Leerzeichen

Wenn Sie einen Worttrennzeichen erstellen, sollten Sie sicherstellen, dass der Worttrennzeichen geschützte Leerzeichen als Wörtertrennzeichen behandelt. Es wird auch empfohlen, dass der Worttrennung alternative Formen des Worts mit und ohne geschützte Leerzeichen generiert. Einige Zeichen, z. B. Unterstriche, sind Sonderzeichen, die aufgrund der Quellen des Texts, in dem sie gefunden werden, als geschützte Zeichen behandelt werden. Beispielsweise können Quellcode- oder Dateinamen Unterstriche als geschützte Zeichen enthalten.

Ersatzpaare

Ersatzpaare sind Zeichendarstellungen im Quellcode, die ein einzelnes Zeichen darstellen, das aus einer Sequenz von zwei Unicode-Werten besteht. Bei einem codierten Paar handelt es sich bei dem ersten Wert um einen hohen Ersatz, und der zweite ist ein niedriger Ersatz. Ein hoher Ersatz ist ein Zeichen im Bereich U+D800 bis U+DBFF. Ein niedriger Ersatz ist ein Zeichen im Bereich U+DC00 bis U+DFFF. Ersatzpaare erweitern den Zeichensatz über das Unicode-Zeichen hinaus. Es wird empfohlen, beim Behandeln von Ersatzpaaren die folgenden Regeln zu verwenden:

  • Ein hoher Ersatz muss einem niedrigen Ersatz vorangehen.
  • Ein geringer Ersatz muss einem hohen Ersatz folgen.
  • Ein hoher oder niedriger Ersatz ohne einen entsprechenden Wert für die andere Hälfte hat keine Bedeutung.

Word-Trennzeichen müssen alle Paare berücksichtigen und die Paare als solche im Index generieren. Weitere Informationen finden Sie unter Surrogates und Ergänzungszeichen.