Grundlegendes zu Sprachressourcenkomponenten

Sprachressourcen bestehen aus Wörtertrennungen und Wortstammerkennungen, die die Funktionen zum Erstellen und Abfragen von Indexen auf neue Sprachen und Gebietsschemas erweitern. Word Trennzeichen werden sowohl bei der Indexerstellung als auch bei Abfragen verwendet. Stemmere werden nur für Abfragen verwendet. Windows Search verwendet Sprachressourcen-DLLs zum Binden an IWordBreaker - und IStemmer-Implementierungen für ein bestimmtes Sprachgebietsschema.

Dieses Thema ist wie folgt organisiert:

Informationen zu Sprachressourcen

Windows Search verwendet einen Filter (eine Implementierung der IFilter-Schnittstelle ) und ILoadFilter , um auf ein Dokument im nativen Format zuzugreifen. Die IFilter-Komponente extrahiert Textinhalte, Eigenschaften und Formatierungen aus dem Dokument. Der IFilter identifiziert das Gebietsschema des Dokuments, das gefiltert wird. Die Indizierungskomponente ruft die entsprechende Worttrennung für dieses Gebietsschema auf. Wenn keine verfügbar ist, ruft die Indizierungskomponente den neutralen Worttrennungsschalter auf. Die Worttrennung empfängt von einem IFilter einen Eingabestream von Unicode-Zeichen, die die Worttrennung analysiert, um einzelne Wörter und Ausdrücke zu erzeugen. Die Worttrennung normalisiert auch Datums- und Uhrzeitformate. Der Indexer normalisiert die Wörter, die vom Wörtertrennungszeichen erzeugt werden, indem die Wörter in alle Großbuchstaben konvertiert werden. Der Indexer speichert die Großbuchstaben im Volltextindex, mit Ausnahme von Rauschwörtern, die für dieses Gebietsschema identifiziert wurden.

In der folgenden Tabelle sind die Aktionen und die entsprechenden Ergebnisse für den Satz "Abbildung 1 veranschaulicht die Rolle der Sprachressourcen für die Windows-Suche während des Indexerstellungsprozesses" aufgeführt.

Aktion Resultierender Text
Ursprünglicher Text Abbildung 1 veranschaulicht die Rolle der Sprachressourcen für Windows Search während des Indexerstellungsprozesses.
Filterung Abbildung 1 veranschaulicht die Rolle der Sprachressourcen für Windows Search während des Indexerstellungsprozesses.
Wörtertrennung Abbildung, 1, veranschaulicht die, Rolle, von, Sprache, Ressourcen, für, Windows, Suche, während, die, Index, Erstellung, Prozess, EOS
Normalisierung ABBILDUNG, 1, VERANSCHAULICHT, DIE, ROLLE, VON, SPRACHE, RESSOURCEN, WINDOWS, SUCHE, WÄHREND, DIE, INDEX, ERSTELLUNG, PROZESS
Entfernen von Rauschwörtern ABBILDUNG, ILLUSTRATIONEN, ROLLE, SPRACHE, RESSOURCEN, WINDOWS, SUCHE, WÄHREND, INDEX, ERSTELLUNG, PROZESS
Speichern im Volltextindex ABBILDUNG, ILLUSTRATIONEN, ROLLE, SPRACHE, RESSOURCEN, WINDOWS, SUCHE, WÄHREND, INDEX, ERSTELLUNG, PROZESS

 

Word breakers und stemmers werden verwendet, um FREETEXT-Abfragen zur Abfragezeit zu erweitern. Das Gebietsschema der Abfrage ist das Standardgebietsschema, es sei denn, ein Sprachcodebezeichner (Language Code Identifier, LCID) wird als Abfrageparameter übergeben. Die Abfragekomponente ruft die entsprechende Worttrennung für die Abfrageausdrücke auf, die in der WHERE-Klausel der Abfrage aufgeführt sind. Wenn die WHERE-Klausel der Abfrage beispielsweise "FREETEXT (Äpfel, Orangen und Birnen)" enthält, empfängt die Worttrennung den Text "Äpfel, Orangen und Birnen". Wenn die WHERE-Abfrageklausel das CONTAINS-Volltext-Prädikat verwendet, wird die Textausgabe aus der Worttrennung normalisiert. Andernfalls übergibt die Abfragekomponente jedes Wort, das durch die Worttrennung identifiziert wird, an den entsprechenden Wortstamm für diese Sprache und das Gebietsschema. Der Wortstamm generiert eine Liste von alternativen oder inflectierten Formularen für dieses Wort. Die Abfragekomponente normalisiert die erweiterte Liste von Abfragebegriffen und entfernt Rauschwörter.

In der folgenden Tabelle sind die Aktionen und die entsprechenden Ergebnisse für die Abfrage "Äpfel, Orangen und Birnen" aufgeführt.

Aktion Resultierender Text
Ursprünglicher Text Äpfel, Orangen und Birnen
Wörtertrennung Äpfel, Orangen und Birnen, EOS
Wortstammerkennung Apfel, Äpfel, Orange, Orange, Orangen und Birne, Birne, Birne
Normalisierung APFEL, ÄPFEL, ORANGE, ORANGE, ORANGEN, ORANGEN, UND, BIRNE, BIRNEN
Entfernen von Rauschwörtern APFEL, ÄPFEL, ORANGE, ORANGE, ORANGE, ORANGE, BIRNE, BIRNE
Erweiterte Liste der Abfragebegriffe APFEL, ÄPFEL, ORANGE, ORANGE, ORANGE, ORANGE, BIRNE, BIRNE

 

Die erweiterten Abfrageausdrücke erhöhen die Wahrscheinlichkeit, dass die Abfrage Dokumente findet, die der Absicht der ursprünglichen Abfrage entsprechen. Text, der vom Worttrennungs- oder Wortstammzeichen zur Abfragezeit generiert wird, wird nicht auf dem Datenträger gespeichert.

Worttrennung

Word Trennung von Text in einzelne Texttoken oder Wörter. Viele Sprachen, insbesondere solche mit römischen Alphabeten, verfügen über ein Array von Worttrennzeichen (z. B. Leerzeichen) und Interpunktion, die zum Unterscheiden von Wörtern, Ausdrücken und Sätzen verwendet werden. Word Trennzeichen müssen sich auf genaue Sprachheuristiken verlassen, um zuverlässige und genaue Ergebnisse zu liefern. Word Breaking ist komplexer für zeichenbasierte Systeme des Schreibens oder skriptbasierte Alphabete, bei denen die Bedeutung einzelner Zeichen aus dem Kontext bestimmt wird. Weitere Informationen zu linguistischen Überlegungen, die sich auf die Implementierung von Wörtertrennungen auswirken können, finden Sie unter Überlegungen zu Linguistik und Unicode.

Wortstammerkennung

Windows Search wendet Stemmere ausschließlich zur Abfragezeit an, um zusätzliche Wortformen für Begriffe in FREETEXT- und Eigenschaftenabfragen zu generieren. Stemmere führen morphologische Analysen durch und wenden grammatikalische Regeln an, um eine Liste von alternativen oder inflectierten Formen für Wörter zu generieren. Alternative Formulare haben häufig denselben Stamm oder dieselbe Basisform. Durch das Generieren der inflected Forms für ein Wort gibt der Indizierungsdienst Abfrageergebnisse zurück, die statistisch relevanter für eine Abfrage sind. Eine Volltextabfrage für "swim meet" entspricht z. B. Dokumenten, die "schwimmen, schwimmen, schwimmen, schwimmen, schwimmen, schwimmen, schwammen, schwimmen" oder "meet, meet's, meet,meet", "meeting", "meeting", "met" und Kombinationen dieser Begriffe enthalten.

Einige Sprachen erfordern, dass sowohl zur Indexzeit als auch zur Abfragezeit sowohl für Standard- als auch für Varianteneinbiegungen ein umgeformte Begriffe generiert werden. In diesem Fall erfolgt das Stemming in der Worttrennungskomponente mit minimaler Stammarbeit im tatsächlichen Stemmer. Beispielsweise führt der japanische Worttrennungsschalter sowohl während der Indexerstellung als auch der Abfrage ein Wortstamm durch, damit eine Abfrage unterschiedliche inflected Formen der Suchbegriffe finden kann.

Normalisierung

Dokumente aller Sprachen werden in einem einzigen Index gespeichert. Obwohl Wörter und linguistische Regeln sich erheblich unterscheiden, gibt es einige Überlegungen wie Zahlen, Datumsangaben und Uhrzeiten, die konsistent in allen Worttrennungen behandelt werden. Weitere Informationen zu Normalisierungsüberlegungen, die sich auf die Implementierung von Wörtertrennungen auswirken können, finden Sie unter Surface Form Normalisierung.

Rauschwörter

Rauschwörter, auch als Stoppwörter bezeichnet, sind Wörter, die keine signifikanten Indikatoren für Inhalte sind. Der Indizierungsdienst entfernt Rauschwörter aus Abfragebegriffen und inhalten, die im Volltextindex enthalten sind. Ein Offset ist das Vorkommen eines Worts in einem Dokument oder in einer Liste von Abfragebegriffen. Der Offset von Rauschwörtern in einem Dokument oder einer Abfrage wird als leer aufgezeichnet. Das Entfernen von Rauschwörtern verbessert die Abfrageleistung, indem unnötige Indexwachstum vermieden wird. Außerdem wird die Relevanz von Abfrageergebnissen verbessert. Sie können Windows Search so konfigurieren, dass Rauschwörterlisten für bestimmte Sprachen verwendet werden. Diese Listen werden verwendet, wenn für diese Sprache ein Wörtertrennungsmodul aufgerufen wird. Beispielsweise tritt "the" in der englischen Sprache so oft auf, dass es als eindeutiger Schlüssel wenig Wert hat. "The" befindet sich in der Füllwortliste, wird nicht in den Inhaltsindex geschrieben und gibt bei Abfragen keine Ergebnisse zurück.

Rauschwörter fungieren als Platzhalter in Ausdrucksabfragen. Ein Dokument, das den Text "wag the dog" enthält, wird im Index mit "wag" bei Vorkommen 1 und "Dog" bei Vorkommen 3 gespeichert. Die Ausdrucksabfrage "wag dog" stimmt nicht überein, aber die Ausdrucksabfrage "wag a dog" schon, da die Vorkommensinformationen übereinstimmen. Der Ausdruck "wag purple dog" stimmt nicht überein, da "purple" beim Vorkommen 2 nicht im Index gefunden wird. Eine Abfrage für "wag the dog" gibt jedoch Dokumente zurück, die "wag purple dog" enthalten, da es keine Möglichkeit gibt, effizient zu bestimmen, ob das Dokument ein nicht lautes Wort zwischen "wag" und "dog" enthielt.

Erweitern von Sprachressourcen

Implementieren eines Word Breakers und Stemmer

Überlegungen zu Linguistik und Unicode

Problembehandlung für Sprachressourcen und bewährte Methoden