Google Suche

 
Loading...
Loading...

OSI Schicht 7 Teil 4

PDFDruckenE-Mail
Schicht 7 -- Application Layer, Teil 4

 

Die Anwendungsschicht im Internet: WWW -- World Wide Web
- Web-Programmierung und Suchmaschinen -
Scripting und Web-Programmierung:

Um das WWW nicht nur zum Publizieren nutzerunabhängiger Dokumente zu benutzen, ist es wichtig, programmierte Elemente einzubinden bzw. mit HTML-Dokumenten zu verbinden.

Skriptsprachen sind meist einfache Programmiersprachen. Programme in Skriptsprachen sind nicht umfangreich und müssen darum nicht vor dem Einsatz kompiliert werden. Für das Internet wichtige Skriptsprachen sind:

  • JavaScript
  • ECMScript
  • VBScript
  • Perl

Wenn eine Skriptsprache fest in ein Anwendungsprogramm eingebaut ist, spricht man von einer Makrosprache.

Die Möglichkeiten der Interaktivität, die Webprogrammierung erlaubt, werden auch unter der Bezeichnung Dynamic HTML zusammengefasst.

JavaScript:

JavaScript ist eine einfache Programmiersprache für einfache, in HTML eingebundene Anwendungen, die clientseits ausgeführt werden (z.B. Reaktion auf einen Mausklick des Benutzers). JavaScript ist viel simpler als Java. JavaScript wird mit dem Tag

<SCRIPT LANGUAGE="JavaScript">Quelltext </SCRIPT>

in HTML-Dokumente eingefügt. Microsofts Variante von JavaScript ist JScript. Die bisher vorliegenden Anwendungen von JavaScript erscheinen nicht gerade überzeugend.

 ECMAScript

ECMA = European Computer Manufacturers Association . ECMAScript ist die von der ECMA herausgegebene Standard zu JavaScript. JavaScript und JScript gelten als Implementierungen von ECMAScript. ECMAScript findet noch kaum Unterstützung in Browsern!

VBScript:

VBScript = Visual Basic Script ist eine auf Microsofts Visual Basic beruhende Scriptsprache, mittels derer man kleine Programme, die clientseits ablaufen, direkt in die WebPage einbauen kann. Der Browser benötigt einen VBScript Interpreter (in MS Internet Explorer ab 3.0 enthalten, für Netscape ab 3.0 gibt es Zusatzmodul). 

Einbindung in HTML:

<SCRIPT LANGUAGE="VBScript">Quelltext</SCRIPT>

Beispiel für VBScript:

Einfache clientseitige Plausibilitätsprüfung für Eingabe:

Enter a value between 1 and 10:

Versuchen Sie auch, unerlaubte Werte einzugeben!

Quelle des Beispiels: http://msdn.microsoft.com/scripting/default.htm?/scripting/vbscript/ [dort auch weitere Beispiele]

Das Script zu obigem Beispiel:

<SCRIPT LANGUAGE="VBScript">
<!--
Sub Button1_OnClick
Dim TheForm
Set TheForm = Document.ValidForm
If IsNumeric(TheForm.Text1.Value) Then
If TheForm.Text1.Value < 1 Or TheForm.Text1.Value > 10 Then
MsgBox "Please enter a number between 1 and 10."
Else
MsgBox "Thank you."
End If
Else
MsgBox "Please enter a numeric value."
End If
End Sub
-->
</SCRIPT>

Java:

Java ist eine von Sun Microsystems ab 1990 entwickelte leistungsfähige Programmiersprache, die es auch erlaubt, in WWW-Ressourcen sogenannte Applets einzubauen, d.h. kleine Anwendungsprogramme, die auf dem Client ausgeführt werden. Applets werden mit dem Tag

<APPLET Attribute></APPLET>

in HTML-Dokumente eingefügt. In HTML 4.0 wird statt des <APPLET >-Elements das <OBJECT>-Element vorgeschrieben:

<OBJECT Attribute></OBJECT>

Beispiele von guten Applets siehe unten. 

Java Beans sind in Java geschriebene austauschbare universelle Softwarekomponenten, die man miteinander verbinden und so Java-Programme baukastenmäßig zusammenbauen kann.

Weiterführende Ressourcen zu Java:

Perl:

Perl (practical Extraction and Report Language) wurde 1986 entwickelt. Obwohl Perl oft als Skriptsprache bezeichnet wird, ist Perl eine sehr leistungsfähige Programmiersprache. Perl-Programme werden vor der Ausführung in Perl-Code umgewandelt. Perl-Code wird aber nicht kompiliert, sondern interpretiert, läuft aber trotzdem relativ schnell. Da Perl sehr leistungsfähige Textverarbeitungs- und Dateifunktionen besitzt, eignet es sich gut, um HTML-Seiten bei interaktiven Anwendungen (z.B. Datenbankanbindungen) zu generieren. Man nützt Perl häufig, um CGI-Anwendungen zu programmieren (s.unten). Perl ist kostenlos verfügbar, aber leider nicht standardisiert, so dass Kompatibilitätsprobleme auftreten können.

PHP:

PHP -- Hypertext Preprocessor ist eine in HTML einbettbare Scripting-Sprache. PHP wird entweder als CGI-Script ausgeführt oder es ist in die Web-Server-Software integriert. Voraussetzung für den Einsatz von PHP ist, daß der Server PHP unterstützt.

PHP kann in HTML eingefügt werden nach dem Muster folgenden Beispiels:

<?php echo $HTTP_USER_AGENT; ?>

(Dieses Script stellt fest und meldet, welchen Browser der Nutzer verwendet).

Weiterführende Ressourcen zu PHP:

Programmierung auf Seiten des Servers:

Die Aufteilung der Programme auf Server oder Client ist kein Entweder-Oder, vielmehr sind alle möglichen Aufteilungen der Aufgaben möglich. Eine ganz einfache Aufgabenteilung ist z.B.:

  • Plausibilitätsprüfung auf Seiten des Client z.B. mittels VBScript
  • Bearbeitung der Daten auf Seiten des Servers mittels CGI

Eine grobe, unsystematische

 Übersicht über Mittel und Methoden der Web-Programmierung auf Seiten des Servers bzw. Clients gibt folgende Tabelle:

Auf Seiten des Servers Auf Seiten des Clients
  • CGI-Programme
  • NSAPI/ISAPI-Programme
  • Server-side scripting
  • Server-side includes
  • Active Server Pages
  • Server-side JavaScript
  • Database middleware
  • Cold Fusion
  • Helpers
  • Plug ins
  • ActiveX controls
  • Java applets
  • Scripting languages
  • JavaScript
  • VBScript
  • Dynamic HTML
CGI -- Common Gateway Interface:

Die Anforderungen des Client an den Server erledigt oft nicht der HTTP-Server selbst, sondern er übergibt sie zur Bearbeitung an andere Server-Programme, sog. gateway programs. Das Kommunikationsprotokoll zwischen HTTP-Server-Programm und gateway programs ist das CGI (Common Gateway Interface). 

Abb.: Das Prinzip von CGI

CGI ist gegenüber Programmiersprachen neutral: CGI-Programme werden im allgemeinen in folgenden Programmiersprachen abgefasst:

Betriebssystem Programmiersprachen für CGI
UNIX Perl, C, J++, Java, csh, ksh, sh, Python
Windows Visual Basic, C, C++, Perl
MacIntosh AppleScript, Perl, C, C++

Eine häufige Form der Übergabe von HTML an CGI ist über Formulare. Dazu dienen im Element <FORM>  die Attribute ACTION und METHOD:

Syntax Beispiel
<FORM ACTION="URL des CGI-Scripts" METHOD="GET" bzw "POST">...</FORM> <FORM ACTION=http://service.schlund.de/cgi-bin/
feedback/feedback.cgi METHOD=POST> ... </FORM>

Beispiel eines CGI-Formulars:

Feedback:

Ihr Name:
Ihre e-mail-Adresse:

Obiges Formular können Sie ausfüllen, wenn Sie "Senden" drücken, wird es per e-mail an die Verfasserin weitergeleitet.

MARKUP zu obigem CGI-Formular:

<FORM ACTION=http://service.schlund.de/cgi-bin/feedback/feedback.cgi METHOD=post>
<INPUT name=FBMAIL _cke_saved_name=FBMAIL type=hidden value=" Diese E-Mail-Adresse ist gegen Spambots geschützt! JavaScript muss aktiviert werden, damit sie angezeigt werden kann. "> 
<INPUT name=FBSUBJECT type=hidden value=Feedback>
Ihr Name:<INPUT name=name><BR>
Ihre e-mail-Adresse: <INPUT name=e-mail-Adresse size=36><BR>
<TEXTAREA cols=66 name=Nachricht rows=7></TEXTAREA><BR>
<INPUT type=submit value=Senden>
<INPUT type=reset value=Löschen>
</FORM>

NSAPI/ISAPI:

NSAPI (Netscape Server Application Programming Interface) und Microsofts ISAPI (Internet Server Application Interface) haben als Zweck, den Aufruf serverseitiger Programme zu beschleunigen. NSAPI- und ISAPI-Programme sind Plug-ins für Webserver. Sie sind meist in C oder C++ geschrieben. Da sie in den Webserver eingebunden sind, sind sie schwieriger zu schreiben als CGI: ein Fehler in einem solchen Programm kann den ganzen Webserver lahmlegen.

 Parsed HTML: Server-Side Includes, Cold Fusion, ASP -- Active Server Pages:

Parsed HTML ist Scripting auf Seiten des Servers. Das Prinzip ist:

  1. man schreibt normales HTML
  2. man fügt dazu neue Elemente, die angeben, was in bestimmten Fällen zu tun ist (z.B. bei unterschiedlichen Browsern)
  3. diese Files markiert man mit der Extension .parsedhtml
  4. man konfiguriert den Server, dass er solche Elemente verarbeiten kann
  5. der Server verarbeitet dieses .parsedhtml-File und gibt ein entsprechendes HTML-Dokument aus

Beispiele für Parsed HTML:

  • Server-Side Includes (SSI)
  • Cold Fusion™
  • ASP -- Active Server Pages

Die einfachste Form von Parsed HTML sind Server-Side Includes (SSI): Bestandteile, die der Server in HTML-Dokumente einfügt.

Beispiel eines einfachen Server-Side Include: Copyright-Vermerk

File copyright.htm:

<CENTER>©opyright: für nichtkommerzielle Zwecke frei. Für kommerzielle Zwecke ....</CENTER>

Um dies in andere Files einzufügen, fügt man in sie eine SSI-Anweisung ein, wie:

<!--#include file="copyright.htm">

Weiterführende Ressourcen zu Server-Side Includes:

Eine verbreitete Form von Parsed HTML ist Allaire's Cold Fusion™. Cold FusionMarkup Language (CFML) ist eine Markup Language, die HTML ähnelt. CFML erlaubt es, Datenbanken ins WWW einzubinden und so dynamische Web-Pages zu bilden.

Weiterführende Ressourcen zu Cold Fusion:

Microsofts Active Server Pages (ASP) ist eine Technologie, die es ermöglicht, in einer Skriptsprache (z.B. VBScript) entwickelte Programme auf dem Server auszuführen. Der Server erzeugt dann eine HTML-Seite, die er dem Client schickt. Web-Seiten, die auf ASP basieren, sind an der Erweiterung .asp erkennbar. Da ASP auf Seiten des Servers wirksam ist, ist ASP weitgehend unabhängig von der Art des Browsers. Eine Hauptanwendung von ASP ist die Einbindung von Datenbanken ins WWW.

Weiterführende Ressourcen zu ASP:

Programmierung auf Seiten des Client:

Programmierung auf Seiten des Client kann geschehen durch:

  • Einbindung von Scripts (Code, der nicht kompiliert wird)
  • Einbindung von Programmobjekten (kompilierter Code wie ActiveX controls, Plug ins, Java applets)
  • Kombination von Scripts und Programmobjekten

Programme, die auf Seiten des Client laufen, beinhalten immer Sicherheitsrisiken.

Plug-Ins:

Plug-ins wurden von Netscape mit dem Navigator 2 eingeführt. Plug-ins sind kleine Hilfsprogramme, die in den Browser eingebunden werden und im Browser selbst ablaufen.

Plug-In-Anwendungen werden mit dem <OBJECT>-Element (früher: >EMBED>) in HTML eingebunden:

<EMBED SRC="URL" HEIGTH="..." WIDTH="...">

<OBJECT DATA="URL" TYPE="MIME-Type" HEIGHT="..." WIDTH="..." AUTOSTART="TRUE" bzw. "FALSE">

Schade Sie haben das entsprechende Plug-in nicht installiert</OBJECT>

Weiterführende Ressourcen zu Plug-Ins:

Java Applets

Java Applets sind kleine in Java geschriebene, kompilierte Programme, die in jedes Programm oder Betriebssystem eingebunden werden können, das Java Virtual Machine (JVM) unterstützt. Eingebettet werden sie in HTML mit dem <APPLET>-Element. Beispiele siehe im Folgenden.

Beispiel eines guten Applets:

 MARKUP für dieses Applet:

<applet archive="Chemis3D.jar" code="Chemis3DApp.class" width="350" height="350">
<param name="model" value="DNA3.txt">
<param name="filetype" value="x-pdb">
<param name="display" value="ball">
Leider stellt Ihr Browser dieses Applet nicht dar
</applet>

Quelle: http://javaboutique.internet.com/Chemis3D/

Homepage von Chemis3D: http://members.xoom.com/Chemis/Chemis3D.htm

Eingebunden mit:

<APPLET CODE="glossary.class" WIDTH="440" HEIGHT="340">

sowie sehr vielen PARAMETER-Werten, z.B.:

<PARAM NAME="t18" VALUE="3 |/products/jndi/index.html |Java(TM) Naming and Directory Interface(TM) - |Java Naming and Directory Interface - |JNDI | ">

<PARAM NAME="d18" VALUE=" Provides uniform, industry-standard, seamless connectivity from the Java platform to business information assets, thus allowing developers to deliver Java applications with unified access to multiple naming and directory services across the enterprise. ">

Quelle des Applet: http://java.sun.com/openstudio/applets/glossary.html

ActiveX:

ActiveX ist Microsofts Antwort auf Java. Das Prinzip ist die Anwendung von OLE (Object Linking and Embedding) aufs WWW. Es ermöglicht ähnlich wie Java die Einbindung von Applikationen, die clientseits laufen. ActiveX ermöglicht es auch, Dokumente von Microsoft-Anwendungen wie Excel oder MS Word über einen WebBrowser zu betrachten. ActiveX Controls (entsprechen Netscape's Plug In's) werden mit dem Tag

<OBJECT Attribute></OBJECT>

in ein HTML-Dokument eingebunden.

Distributed Programming:

Alle bisher genannten Programmiermethoden für das WWW nutzen das WWW nicht eigentlich als Web, als Geflecht unzähliger Ressourcen: sie verwenden immer eine Form eines zweiseitigen Client-Server-Modells. Wirkliches Web-Programming dagegen würde es ermöglichen, für den Nutzer transparent (d.h. ohne dass er es merkt) zahlreiche Ressourcen zu nutzen und zu einer einzigen Ressource zusammenzufassen: z.B. mit Hilfe unterschiedlicher Datenbanken und Datenbearbeitungsprogrammen die spezifische Lösung bzw. Antwort, die der Nutzer braucht herzustellen. Dieser Aufgabe widmet sich Distributed Programming. Echtes Distributed Programming steckt allerdings noch in den Kinderschuhen.

RMI -- Remote Method Invocation:

RMI ist ein erster Schritt in Richtung von echtem Distributed Programming. Es ist eine Schnittstelle, die es Java-Anwendungen (Objekten) erlaubt, Java-Programmen, die auf andern Java Virtual Machines laufen, Teilaufträge (z.B. Berechnungen) zu erteilen.

Weiterführende Ressourcen zu RMI:

CORBA -- Common Object Request Broker Architecture:

CORBA wurde 1991 von der OMG (Object Management Group) als Spezifikation ihrer Object Management Architecture (OMA) vorgestellt. Es ist eine Spezifikation, die die Definition der Schnittstellen in verteilten Systemen sowie die Kommunikation zwischen diesen Schnittstellen ermöglicht. CORBA ist systemunabhängig und auch nicht an eine bestimmte Programmiersprache gebunden.

DCOM -- Distributed Component Object Model:

DCOM ist Microsofts Versuch einer Lösung für verteilte Komponenten zur Lösung eines Problems. Einzelheiten siehe bei den weiterführenden Ressourcen.

Weiterführende Ressourcen zu DCOM:

Checkliste zur Bewertung von Web-Seiten:

Die folgenden Kriterien gelten vor allem für Web-Publikationen im wissenschaftlichen Bereich.

Formale Gesichtspunkte:

Bezüglich der Zitierbarkeit:

  • Ist der autorisierte Standort -- die URL (Uniform Resource Locator) -- leicht ersichtlich angegeben, d.h. ist die URL auf einem Ausdruck lesbar?
  • Ist die Titelfassung (die Überschrift) klar, knapp und eindeutig auf den Inhalt bezogen?
  • Ist der Verfasser angegeben?
  • Ist der Zeitpunkt der Ersterstellung und des letzten Update angegeben?
  • Ist gegebenenfalls der Anlass angegeben? z.B. Vortrag, Diplomarbeit
Publiziert man selbst im Internet, so sollte man unbedingt folgende Angaben zu Beginn des Textes machen
  • URL
  • Verfasser:
  • Titel:
  • Anlass:
  • Letzte Überarbeitung: Datum
  • gegebenenfalls: Datum des Endes der Gültigkeit des Textes (z.B. bei Entwürfen)
  • Hinweise auf den Umgang mit dem Copyright

z.B.

URL: http://www.payer.de/exegese/exeg05.htm
Verfasser: Alois Payer , mailto: Diese E-Mail-Adresse ist gegen Spambots geschützt! JavaScript muss aktiviert werden, damit sie angezeigt werden kann. '; document.write( '' ); document.write( addy_text35403 ); document.write( '<\/a>' ); //--> Diese E-Mail-Adresse ist gegen Spambots geschützt! JavaScript muss aktiviert werden, damit sie angezeigt werden kann.
Titel: Einführung in die Exegese von Sanskrittexten, Kap. 5: Nachweis verwendeter Ressourcen: Zitate, Anmerkungen, Literaturangaben
Anlaß : Lehrveranstaltung Proseminar Indologie, Universität Zürich, WS 1995/96
Letzte Überarbeitung : 22. Dezember 1995
Copyright: Dieser Text steht der Allgemeinheit zur Verfügung. Eine Verwertung in Publikationen, die über übliche Zitate hinausgeht, bedarf der ausdrücklichen Genehmigung des Verfassers.

Die Ressourcen-Angabe erfolgt in folgender Form:

Zitierform

Verfasser: Titel. -- Fassung vom: Datum. --  URL: URL. -- Zugriff am: Datum

z.B.

Payer, Exegese 5, 1995
Alois Payer: Einführung in die Exegese von Sanskrittexten. -- Kap. 5: Nachweis verwendeter Ressourcen: Zitate, Anmerkungen, Literaturangaben. -- Fassung vom 21. Dezember 1995. -- URL: 
http://www.payer.de/exegese/exeg05.htm

 

Bezüglich der Verwendbarkeit:

  • Ist das Copyright klar ausgedrückt?
  • Ist die e-mail Adresse des Verfassers oder der Organisation angegeben? damit man rückfragen kann
  • Ist der angegebene Verfasser auch wirklich der Verfasser und ist die vorliegende Form die von ihm autorisierte Form? (ist eine elektronische Unterschrift vorhanden?)
  • Ist die Zielgruppe angegeben? z.B. Studenten des Faches Wirtschaftswissenschaft
  • Ist der Benutzerlevel angegeben? z.B. für Anfänger, für Fortgeschrittene, Kinder von 10 bis 12
  • Ist gegebenenfalls die Gültigkeitsdauer angegeben? z.B. bei Entwürfen für Internetstandards
  • Sind Deskriptoren, Schlagworte -- möglichst entsprechend einem anerkannten Standard -- vergeben?
  • Ist ein Abstrakt vorhanden?

Dieser Teil sollte möglichst als normierte Metadaten dem HEAD des Dokuments hinzugefügt werden, dann könnte man mit automatischen Suchmaschinen schon eine gute Vorauswahl treffen.

Inhaltliche Gesichtspunkte

  • Was ist der Zweck der Veröffentlichung?
  • Stimmen Inhalt, Zielgruppe und Zweck überein?
  • Bringt das Dokument für das Fachgebiet neue relevante Informationen oder bringt es eine gute Einführung in das Fach? Und vor allem für Homepages: handelt es sich nur um eine Wiederholung längst bekannter Links?
  • Sind die Angaben korrekt?
  • Wird das behandelte Thema vollständig behandelt, werden Auslassungen angegeben?
  • Wird das Thema objektiv behandelt?
  • Sind die benutzten Quellen angegeben? Sind Links zu elektronischen Quellen gelegt? Sind weiterführende Literaturangaben gemacht? Ist die Gliederung dem Gegenstand angemessen und erleichtert die Benutzung?
  • Ist bei sehr umfangreichen Werken oder Homepage ein Index (eine Suchfunktion) vorhanden?
  • Ist die Ressource auf dem Stand der Zeit? Wie oft wird sie überarbeitet?
  • Welche Autorität steht dahinter? Ist der Autor ein erfahrener und anerkannter Experte in seinem Gebiet? Dieses Kriterium -- obwohl in fast allen Checklisten als sehr wesentlich genannt -- sollte nicht zu stark betont werden, denn es ist ja eigentlich das Besondere am Internet, dass auch junge unbekannte Wissenschaftler auf der einen Seite und erfahrene Experten, die aber nicht dem gängigen Wissenschaftsbetrieb angehören auf der anderen Seite ihre Arbeiten im Netz veröffentlichen können. Dafür ist keine DFG-Unterstützung nötig.
  • Gegebenenfalls: welche Organisation steht dahinter?
  • Sind Illustrationen und/oder Ton mit der Ressource verbunden, wenn es die angemessene Darstellung des Themas ist? z.B. bei einer Beschreibung von Herz-Rhythmus-Störungen
  • Bei elektronischen Zeitschriften: gibt es ein verantwortliches Herausgebergremium und/oder Verlagslektorat?

Gesichtspunkte der Darbietung

bezüglich des äußeren Erscheinungsbildes:

  • Sind Absätze gemacht?
  • Wie steht es mit Rechtschreibung, Schreibfehlern usw.
  • Werden verschiedene Schriftgrößen verwendet? u.ä.

bezüglich der Semantik:

  • Ist die Sprache verständlich gemessen an der vorgesehenen Zielgruppe?

bezüglich der Benutzerfreundlichkeit:

  • Sind die Anforderungen an Hard- und Software weltweit erfüllbar? Wird -- wenn man nicht auf Java und ähnliches verzichten will -- die Seite wahlweise auch für einen Standardbrowser angeboten? Man sollte auch bedenken, dass viele Wissenschaftler in der Dritten Welt, wenn sie die Gelegenheit haben, das Netz zu nutzen, auf reine ASCII-Browser wie Lynx angewiesen sind
  • Ist bei Links, die anklickbare Bilder oder Imagemaps nutzen, auch ein anklickbarer Text vorhanden?
  • Wie gut kann man auf den Server, auf dem die Ressource liegt, zugreifen?
  • Funktionieren die internen Links?
  • Ist bei Links, die zu umfangreichen Texten und Bildern führen, deren Umfang in Bytes angegeben?
  • Wie viel Hierarchiestufen sind in Homepages vorgesehen, bis man zur eigentlichen Information kommt? Man geht heute davon aus, dass mehr als drei Stufen eine Zumutung sind.
  • Welche Navigationshilfen sind vorhanden? z.B. nach jedem Kapitel ein Link zum nächsten
  • Wird die Download-Zeit durch unnötige nichts zum Thema beitragende Bilder und sonstigen Schnickschnack verlängert? Wird der beschränkte Platz auf dem Bildschirm für den Inhalt benutzt und nicht durch unnötige Frames verkleinert? Viele private Nutzer müssen nach Verbindungszeit bezahlen. Gerade in Entwicklungsländern wird man auch darauf hingewiesen, dass die Verwendung von Frames die Nutzung verteuert. Informationsstellen in Indonesien müssen für eine Modem-Internetanbindung pro Monat ca 60 000 Rupien bezahlen. Darin sind 14 Stunden Nutzung enthalten. Zum Vergleich: der Mindestlohn pro Tag ist 4000 Rupien.

Weiterführende Ressourcen zur Gestaltung guter Web-Seiten:

Suchmaschinen:

Wie findet man etwas in WWW?

Da im Gebiet der Erschließung des WWW beinahe täglich etwas Neues erscheint, sei hier als erstklassiger Einstieg in die Information über Web Search Tools nur genannt:

Search Engine Watch. -- URL: http://www.searchenginewatch.com/ [Im freien Bereich gute Informationen, im Subskriptionsbereich (49 US$/Jahr) ausführliche Materialien, z.B. ausgezeichnete Texte "How N.N. works" zu den einzelnen Search Engines]

Man unterscheidet:

  • Directories: von Menschen erstellt: die Autoren oder Angestellte des Directory erstellen Kurzbeschreibungen der aufgelisteten Ressourcen. Bei einer Suche werden nur die Titel sowie die Kurzbeschreibungen durchsucht. Das bekannteste Directory ist Yahoo
  • Search Engines: erstellen ihre Listen automatisch: Spider (Crawler, Robots, d.h. Programme, die automatisch das Netz durchsuchen und indizieren) "kriechen" durch das Netz und tragen die Daten zusammen. Robots belasten den Verkehr im Internet sehr.
  • Hybrid Search Engines: Search Engines, die auch ein Directory für ausgewählte Seiten unterhalten

Eine Search Engine hat folgende Komponenten:

  • Spider (Crawler, Robot): der Spider besucht eine Web-Page, liest sie und folgt Links innerhalb dieser Web-Page zu anderen Pages innerhalb der Web-Site. Der Spider kommt in regelmäßigem Turnus (z.B. alle 30 Tage) zur Web-Site zurück und hält nach Veränderungen Ausschau
  • Index: alles, was der Spider findet, wird im Index automatisch gespeichert
  • Search Engine Software: Software, die im Index Treffer für eine Anfrage sucht und gewichtet ausgibt

Zeittafel zu Suchmaschinen und Directories:

Die folgende Zeittafel zeigt wie kurz die Geschichte der Internet-Suchmaschinen und -Directories ist. Es ist deshalb nicht verwunderlich, dass Suche im Internet noch alles andere als optimal ist.

[Zugriff auf alle Links am 10.7.1999]

1990

Archie wird von einem Studenten der McGill University, Montreal, Kanada als Suchwerkzeug für FTP-Server entwickelt

1993

Veronica wird von der University of Nevada System Computing  Services Group als Suchwerkzeug für Gopher entwickelt. Als weiteres Gopher-Suchwerkzeug wird Jughead entwickelt

Für das WW entwickelt Matthew Gray, ein MIT-Student den ersten Robot: World Wide Web Wanderer. Mit dem Wanderer wird Wandex, die erste WWW-Datenbank erstellt

Ab Februar 1993 entwickeln sechs Undergraduates der Stanford-University Architext, den Vorläufer von Excite

Im Oktober 1993 entwickelt Martijn Koster einen Archie-ähnlichen Index zum WWW: ALIWEB

Dezember 1993: drei Robots-gestützte Search Engines werden eröffnet: JumpStation,, World Wide Web Worm, RBSE-Spider

1994

Januar 1994: EINet Galaxy startet: das erste Web-Directory

April 1994: WebCrawler startet: die erste Full Text Search Engine im Internet

May 1994: Lycos startet: von Michael Mauldin von der Carnegie Mellon University entwickelt

Ende 1994: Yahoo!, von zwei Doktoranden der Stanford-University entwickelt, startet 

1995

Infoseek startet

Ein Student der University of Washington entwickelt MetaCrawler, eine Meta Search Engine, d.h. eine Search Engine, die Anfragen an mehrere der großen Search Engines gleichzeitig stellt. MetaCrawler startet im Juli 1995

Dezember 1995: DEC's AltaVista geht online, um die Leistungsfähigkeit von DEC's Alpha Computer zu beweisen. AltaVista bringt auch in den Suchmöglichkeiten viele Innovationen

1996

Mai 1996: Inktomi's HotBot geht online. Wird bald von Wired  Magazine übernommen. 

1997

März 1997: HotBot setzt das SmartCrawl-System ein: damit können bis zu 10 Millionen Web-Pages pro Woche indiziert werden (vergleichbare Systeme schaffen 3 Millionen Web Pages pro Woche)

Oktober 1997: AltaVista umfaßt 100 Millionen Web-Pages, damit ist es die größte Search Engine im WWW

November 1997: HotBot überrundet AltaVista mit 110 Millionen Web-Pages

1998

Januar 1998: AltaVista startet automatischen Übersetzungsdienst mit der Software SYSTRAN: eine unerschöpfliche Quelle unfreiwilligen Humors

Mai 1998: AltaVista startet Chinesisch, Japanisch, Koreanisch

GoTo startet: erste Suchmaschine, die Platzierungen nach Bezahlung vornimmt: je mehr man zahlt, um so weiter oben in der Suchergebnisliste wird man platziert

1999

April 1999: AltaVista beginnt Platzierungen zu verkaufen

[Die vielen geschäftlichen Transaktionen, Verkäufe und Verbindungen werden in obiger Zeittafel nicht erwähnt: sie sind aber  mindestens ebenso wichtig wie die technischen Entwicklungen.]

Die Zukunft von Suchmaschinen:

Eine ganz wichtige Zukunftsperspektive für die Erschließung des Internets und für Suchmaschinen sind die Markierungsmöglichkeiten, die XML bietet. Wenn es den dafür Kompetenten, d.h. vor allem den Bibliothekaren, gelingen würde, hier einheitliche, aber auch leicht anwendbare Normen zu schaffen, dann wäre ein entscheidender Schritt in Richtung Global Village Library getan.

Auch andere Wege werden versucht, vor allem im Bereich der Künstlichen Intelligenz. Nach der Ernüchterung mit Künstlicher Intelligenz nach vollmundigen Ankündigungen ist hier aber wohl eher gesunde Skepsis angebracht:

"Die elektronischen Medien stellen uns eine immer unübersichtlicher werdende Flut jederzeit abrufbarer Informationen zur Verfügung. Allein im Internet existieren Hunderte Millionen von WWW-Seiten und Usenet-Artikeln. Immense Textsammlungen finden sich in elektronischer Form auch in Bibliotheken, in Nachrichtenredaktionen oder auf Patentämtern. Um spezifische Informationen aus solchen Sammlungen zu extrahieren, gibt es Suchprogramme. Sie erfordern die Angabe von Schlüsselwörtern oder freien Textstrings, die meist zusätzlich mittels Boolescher Operatoren zu komplexeren Suchbegriffen verknüpft werden können.

Solche Maschinen erlauben zwar das gezielte Suchen nach bestimmten Inhalten, sie liefern jedoch keine allgemeine Übersicht über das vorhandene Material und eignen sich deshalb schlecht für das Auskundschaften. Das Internet ist damit vergleichbar mit einem dicken Wälzer, der wohl ein Sachverzeichnis, aber weder Titel noch Inhaltsverzeichnis hat. Wie soll man sich also darin zurechtfinden, wie kann man Unbekanntes entdecken oder Zusammenhängen auf die Spur kommen?

Übersicht schaffen könnten die sogenannten selbstorganisierenden Karten (Self-Organizing Maps oder SOM), die große Mengen von Daten nach ihrer Ähnlichkeit zu ordnen vermögen. Es handelt sich um einen Typ von künstlichen neuronalen Netzen, der seit den frühen achtziger Jahren von Prof. Teuvo Kohonen. am Neural Network Research Centre der Helsinki University of Technology entwickelt worden ist. SOM werden heute mit Erfolg insbesondere in der Industrie (z. B. Papier- und Stahlherstellung) und in der Medizin (z. B. Mustererkennung in EEG und EKG) eingesetzt. ...

Erst die praktische Anwendung auf große Dokumentensammlungen kann zeigen, was die Websom-Methode taugt. Die Gruppe von Prof. Kohonen hat deshalb eine Browser-Schnittstelle geschaffen und stellt diese auch gleich über das Internet der Öffentlichkeit zur Verfügung. Alle Interessierten können so das System selber auf die Probe stellen und über die Internet-Adresse http://websom.hut.fi/websom/ [Zugriff am 10.7.1999] verschiedene Demos aufrufen. Einer Demo liegt beispielsweise eine spezialisierte Sammlung von 12 000 Artikeln aus der Usenet-Diskussionsgruppe «comp.ai.neural-nets» zugrunde. Dies sind alle Diskussionsbeiträge zum Thema neuronale Netze, die zwischen Juni 1995 und März 1997 erschienen sind. Eine andere Demo zeigt, dass die Methode selbst für ein sehr breites Spektrum von Themen funktioniert: Sie basiert auf dem Material von 83 verschiedenen Usenet-Diskussionsgruppen mit insgesamt über einer Million Beiträgen! Wahrlich ein harter Test, denn bekanntlich sind solche Texte oft recht salopp geschrieben und enthalten wenig präzise Information. Außerdem sind umgangssprachliche Ausdrücke und Rechtschreibefehler häufig, was die automatische Verarbeitung zusätzlich erschwert.

Die Benutzerschnittstelle kennt vier zunehmend detaillierte Ebenen: Die oberste Ebene enthält die graphische Darstellung der gesamten Dokumentenkarte. Sie gibt dem Benutzer eine allgemeine Übersicht über die am häufigsten vorkommenden Themen. Die Färbung der Karte gibt außerdem an, wie viele Beiträge im betreffenden Gebiet existieren. Die nächste Ebene zeigt einen gezoomten Ausschnitt eines ausgewählten Gebiets. Sie erlaubt eine genauere Recherche zu einem bestimmten Thema. Durch Anklicken eines bestimmten Knotens auf dieser Darstellung kommt man auf die dritte Ebene, wo die Titel der darin enthaltenen Artikel aufgelistet werden. Durch An klicken eines bestimmten Titels schließlich wird der Inhalt des betreffenden Beitrags angezeigt."



 

Wer ist online

Wir haben 79 Gäste online

Besucher

Heute588
Gestern936
Woche3038
Monat17158
Insgesamt496251
   
| Donnerstag, 24. Mai 2012 || Compu-Seite Compu-Seite |