Suche nach dem Buch

Inzwischen hatten viele von Ihnen die Gelegenheit, die durchsuchbare Online-Version des Lucidworks Reference Guide for Solr 1.4 zu nutzen. In diesem Beitrag beschreibe ich, wie wir die ursprüngliche Dokumentversion des Referenzhandbuchs in eine Online-Ressource verwandelt haben , die von Solr durchsucht werden kann.

Ich hoffe, dass Sie dies nützlich finden, wenn Sie einen ähnlichen, online durchsuchbaren Dienst aus vorhandenen Dokumenten erstellen möchten.

Der Inhalt

Das Referenzhandbuch selbst wurde in OpenOffice Writer (OOW) verfasst und bearbeitet, das nicht zuletzt wegen seiner Open-Source-Herkunft ausgewählt wurde. Obwohl das primäre Ziel darin bestand, eine einzige herunterladbare PDF-Datei des vollständigen Referenzhandbuchs zu erstellen, bot uns die Verwendung von OOW einen hilfreichen Ausgangspunkt für die Umwandlung in das durchsuchbare Gegenstück.

Jedes Kapitel des Leitfadens wurde als einzelnes OOW-Dokument geschrieben (z.B. Kapitel1.sxw, Kapitel2.sxw, usw.). Um einen wirklich nützlichen Index des Buches zu erstellen und die Navigation durch den Inhalt zu vereinfachen, beschlossen wir, jedes Kapitel nicht als ein einziges Dokument zu indexieren, sondern jeden Abschnitt als unabhängige Textdokumente. So sollte Kapitel 2 als die folgenden 12 Dokumente indexiert werden:

  • 2 Erste Schritte
  • 2.1 Installation von Lucidworks für Solr
  • 2.1.1 Haben Sie Java?
  • 2.1.2 Herunterladen des Lucidworks für Solr-Installationsprogramms
  • 2.1.3 Ausführen des Installationsprogramms
  • 2.2 Ausführen von Lucidworks für Solr
  • 2.2.1 Starten Sie den Server
  • 2.2.2 Dokumente hinzufügen
  • 2.2.3 Fragen stellen
  • 2.2.4 Aufräumen
  • 2.3 Ein kurzer Überblick
  • 2.4 Einen Schritt näher dran

 

 

Dokument-Pipeline

Der erste Schritt der Konvertierungssequenz bestand darin, HTML-Dateien zu erstellen. Wir verwendeten writer2latex, ein Open-Source-Programm, um xhtml-Dateien zu erzeugen. Writer2latex wandelt ein LaTex- oder OpenOffice-Dokument in eine navigierbare Webseitenfolge um. Die Seiten enthalten Html-Seitentitel, Schaltflächen für Vorheriges/Nächstes/Aufwärts und grundlegende Formatierungen. Wir haben für jeden Abschnitt des Buches separate xhtml-Seiten erstellt.

Als Nächstes mussten wir einige Zeit damit verbringen, die Konfiguration von writer2latex so zu verändern, dass sie unserem Zweck entsprach. Das Programm macht verschiedene Standardannahmen über seine Ausgabe, die auf seiner Aufgabe beruhen, Web-Pageflows zu erstellen, die nicht mit unserer Absicht übereinstimmten. Letztendlich mussten wir jede Seite nachbearbeiten, um sie an unsere Zwecke anzupassen. (Mehr über das endgültige Ausgabeformat später).

Als wir die nachbearbeitete Ausgabe in der Hand hatten, indizierten wir sie mit grundlegendem Solr. Wir hatten nun einen einfachen Solr-Index, der die gewünschten Dokumente auf der Grundlage von Standard-Solr-Abfragen genau wiedergeben konnte.

Die Suchanwendung

Als Nächstes mussten wir die Solr-Anwendung in eine vollwertige Webanwendung umwandeln, die die indizierte HTML-Datei abruft und sie in der Präsentationsschicht darstellt, die Sie jetzt auf der Suchanzeigeseite sehen (unser interner Name für diese Anwendung ist LucidFind). Als Nächstes mussten wir die Solr-Anwendung in eine vollwertige Webanwendung umwandeln, die die indizierte HTML-Datei abruft und sie innerhalb der Präsentationsschicht, die Sie jetzt auf der Suchanzeigeseite sehen, wiedergibt (unser interner Name für diese Anwendung ist LucidFind). Und da LucidFind bereits Facetten enthält, haben wir die grundlegenden Facettenfunktionen von Solr genutzt, um Facetten für die LWCDRG zusammen mit unseren Website-Inhalten und Blogbeiträgen hinzuzufügen.

Nun gab es einige Herausforderungen bei der Formatierung der Dokumente, die einige Nachbearbeitung erforderten. Es waren einige umfangreiche Skript- und HTML-Änderungen erforderlich, um das gewünschte, visuell konsistente Verhalten bei der Tabellenformatierung, der Einrahmung von Bildern und der Erstellung von CSS zu erreichen; zu den Problemen gehörten Absatzabstände, Schriftgrößen und ähnliche Probleme bei der HTML-Präsentation. Wir sind auch auf einen Fehler in Writer2LaTeX gestoßen, bei dem das Tool die Kapitelnummern aus den OOW-Metadaten nicht richtig erfasst hat; als wir den Autor kontaktierten, hat er das Problem für uns behoben (man muss Open Source einfach lieben !).

Einige Herausforderungen bei der Verwaltung von Inhalten

Wir haben auch die Bilder des Buches in einem Verzeichnis für statische Inhalte untergebracht. Dies erforderte ein wenig zusätzliche Arbeit, da das ursprüngliche LWCDRG-Design diesen zentralen Ansatz nicht berücksichtigte; für die Bearbeitung des Buches und die Erstellung der PDF-Datei ist es bequemer, die Bilder in jedes Kapitel einzubinden, obwohl wir dies im Nachhinein vielleicht auch mit einem Mechanismus unter Verwendung externer Links hätten erreichen können.

Die ID des Dokuments enthält die Kapitelnummer und die Abschnittsnummer. Der eigentliche Text des Dokuments ist der Text des xhtml-Body-Elements ohne den umgebenden

<body></body>

Dies macht es einfach, die übergeordneten Abschnitte zu ziehen und sie für den Kontext einzubinden, indem die Abschnitte in eine große HTML-Seite eingepackt werden. Zum Testen hat ein xsl-Skript genau dies getan.

Lance Norskog ist ein Suchingenieur bei Lucid Imagination.

You Might Also Like

KI-Agenten dominieren den Einkauf. Ist Ihre Website auf die KI-gestützte Suche vorbereitet?

Generative KI-Agenten wie ChatGPT definieren die Produktsuche neu. Erfahren Sie, wie Sie...

Read More

Vom Suchunternehmen zum praktischen KI-Pionier: Unsere Vision für 2025 und darüber hinaus

CEO Mike Sinoway gibt Einblicke in die Zukunft der KI und stellt...

Read More

Wenn KI schief geht: Fehlschläge in der realen Welt und wie man sie vermeidet

Lassen Sie nicht zu, dass Ihr KI-Chatbot einen 50.000 Dollar teuren Tahoe...

Read More

Quick Links