Marc Reichelt: Idee für semantisches Web & was haltet ihr davon?

Hallo an alle,

mir ist vorgestern eine Idee dafür gekommen, wie sich das Web besser an den Benutzer anpassen könnte. Nun bin ich gespannt, was ihr so davon haltet - und ob es so etwas in ähnlicher Form vielleicht schon gibt.

Die Grundlage von meiner Idee stammt vom Handy-Betriebssystem Android von Google. Entwickler bauen dort "Aktivitäten", die eine bestimmte Form von Funktionalität erfüllen. Meistens sind das einfache Anwendungen, die einfach nur ausgeführt werden. Man kann für eine Aktivität aber auch sogenannte Intent Filter definieren. So kann eine Aktivität dem System mitteilen, dass es beispielsweise eine geografische Position anzeigen kann.

Jetzt kommt der interessante Teil: Wenn ich nun beispielsweise eine eigene Aktivität schreibe, und es dem Benutzer ermöglichen möchte eine geografische Position anschauen zu können, erstelle ich einfach nur ein eigenes Objekt der Klasse "Intent" mit den entsprechenden Daten. Anschließend teile ich dem System über die Funktion startActivity(Intent) mit, dass es eine Aktivität starten soll, die mein Intent wie gewünscht verarbeiten kann. Hat der Benutzer mehrere Aktivitäten installiert, die die gleiche Funktionalität bereitstellen, so kann er zwischen ihnen wählen. Das Bild hier zeigt, was ich meine: http://ota.looptcorp.com/vgupta914/enzo.jpeg

Nun ist meine Idee: warum gibt es so etwas nicht für das Web? Ich dachte da an etwas, das man sofort einsetzen kann weil es in jedem Browser einsetzbar ist: Einen Link. Besser gesagt: Ein Link auf einen Vermittler, der zu den entsprechenden Diensten weiterleitet.

So könnte ein Link auf eine Telefonnummer so aussehen:
<a href="http://example.com/phone?no=0049691234567890">+49 - (0) 69 - 12 34 56 78 90</a>

Die entsprechende Seite kann dem Benutzer mitteilen, dass er nun eine Aktion für diese Telefonnummer ausführen kann, und eine entsprechende Liste auf Dienste anzeigen. Das könnte eine Online-Telefon-Anwendung sein, aber auch beispielsweise ein Online-Telefonbuch. Der Nutzen des Systems steigt mit der Anzahl der verfügbaren Dienste.

Ebenso könnte man einen Link auf einen Suchbegriff schreiben:
<a href="http://example.com/websearch?q=suchbegriff">Nach "suchbegriff" suchen</a>
Der Benutzer kann anschließend selbst entscheiden, welchen Dienst er verwendet - und diesen beispielsweise als Standard einrichten.

Die Möglichkeiten sind gigantisch. Für die Zukunft könnte dann noch ein Plugin im Browser die Liste der möglichen Aktivitäten, die man ausführen kann, noch durch klassische installierte Anwendungen (wie beispielsweise Skype, Google Earth o.ä.) ergänzen.

Außerdem können diese Informationen zukünftig auch maschinell verarbeitet werden, was bspw. die Mikroformate erreichen wollten. Im Gegensatz zu diesen hätten die Benutzer bei meinem Ansatz aber sofort einen echten Mehrwert - oder zumindest dann, wenn entsprechende Dienste existieren.

Was meint ihr?

Marc Reichelt || http://www.marcreichelt.de/

--
DPRINTK("Last time you were disconnected, how about now?");
        linux-2.6.6/drivers/net/tokenring/ibmtr.c
Selfcode: ie:{ fl:| br:> va:} ls:< fo:} rl:( n4:( ss:) de:> js:| ch:? sh:| mo:) zu:)
  1. Hi,

    verzeih mir bitte, dass ich auf Dein sehr ausführliches Posting so knapp antworte - ich bin müde :-) Aber für mich klingt das ähnlich wie die "Accellerators" im IE. (Und ich könnte schwören, im IE 7 hießen sie noch "Activities". Hm.)

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Hallo Cheatah,

      verzeih mir bitte, dass ich auf Dein sehr ausführliches Posting so knapp antworte - ich bin müde :-) Aber für mich klingt das ähnlich wie die "Accellerators" im IE. (Und ich könnte schwören, im IE 7 hießen sie noch "Activities". Hm.)

      Kein Problem. :-)
      Irgendwie erstelle ich meine interessantesten Postings auch immer irgendwie ein wenig spät. Ich sollte daran arbeiten, das könnte sonst zu einer Phobie werden…
      An die Accellerators habe ich bislang noch nicht gedacht. Ich muss zugeben, dass diese einem nicht unähnlichen Zweck dienen. Aber: Sie sind mal wieder ein ganz Microsoft-typischer Standard(TM).

      Dennoch: Sie sind nicht das Gleiche. Bei meinem Ansatz zeichnen die Web-Autoren ihre Seiten entsprechend aus, und dadurch werden die Informationen gleich auch maschinell lesbar. Bei den Accelerators hingegen werden einfach irgendwelche Aktionen verknüpft - auch solche, die mit der eigentlichen Information gar nichts zu tun haben. Außerdem ist meine Lösung vollständig unabhängig von der Plattform, rückwärtskompatibel, und zu guter Letzt: nicht von Microsoft. ;-)

      Grüße

      Marc Reichelt || http://www.marcreichelt.de/

      --
      DPRINTK("Last time you were disconnected, how about now?");
              linux-2.6.6/drivers/net/tokenring/ibmtr.c
      Selfcode: ie:{ fl:| br:> va:} ls:< fo:} rl:( n4:( ss:) de:> js:| ch:? sh:| mo:) zu:)
      1. Hi,

        An die Accellerators habe ich bislang noch nicht gedacht. Ich muss zugeben, dass diese einem nicht unähnlichen Zweck dienen. Aber: Sie sind mal wieder ein ganz Microsoft-typischer Standard(TM).

        So what - wer hat noch mal gleich innerHTML „erfunden”?

        Dennoch: Sie sind nicht das Gleiche. Bei meinem Ansatz zeichnen die Web-Autoren ihre Seiten entsprechend aus, und dadurch werden die Informationen gleich auch maschinell lesbar.

        Dein Vorschlag,

        So könnte ein Link auf eine Telefonnummer so aussehen:
        <a href="http://example.com/phone?no=0049691234567890">+49 - (0) 69 - 12 34 56 78 90</a>

        ist aber mehr als nur eine „Auszeichnung” - er stellt gleich eine *Verknüpfung* mit einem konkreten Service da (selbst wenn dieser nur eine Auflistung weiterer Services darstellen sollte).
        Aber irgendwer muss hinter dem example.com in deinem Beispiel ja auch stecken - setze stattdessen mal google.com ein, und schon bekommt das ganze einen eher üblen Beigeschmack, findest du nicht?

        Bei den Accelerators hingegen werden einfach irgendwelche Aktionen verknüpft - auch solche, die mit der eigentlichen Information gar nichts zu tun haben.

        Das ist dann der Punkt, an dem der Aspekt der *Auszeichnung* im Dokument in den Fokus rückt.
        Deine Aufgabe als Autor ist m.E. nicht, das für mich mit irgendeinem konkreten Service zu verknüpfen; sondern lediglich, es als (um beim Beispiel zu bleiben) eine Telefonnummer auszuzeichnen. Und das auf eine standardisierte und maschinenlesbare Art und Weise, so dass dann der von *mir* in *meinem* Browser dafür eingestellte Handler, Accelerator, whatever sich da einklinken kann, und mir diese Telefonnummer mit dem von mir gewählten Service verknüpft, so dass ich sofort dort anrufen, ein reverse lookup der Nummer, oder sonstwas damit machen kann.

        Das könnten die erwähnten MicroFormats auch heute schon leisten.

        Außerdem ist meine Lösung vollständig unabhängig von der Plattform, rückwärtskompatibel, und zu guter Letzt: nicht von Microsoft. ;-)

        Und meine Interpretation des ganzen ist sogar noch frei von der bösen Datenkrake „example.com” ;-)

        MfG ChrisB

        --
        “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]
        1. Hallo ChrisB,

          Dennoch: Sie sind nicht das Gleiche. Bei meinem Ansatz zeichnen die Web-Autoren ihre Seiten entsprechend aus, und dadurch werden die Informationen gleich auch maschinell lesbar.

          Dein Vorschlag,

          So könnte ein Link auf eine Telefonnummer so aussehen:
          <a href="http://example.com/phone?no=0049691234567890">+49 - (0) 69 - 12 34 56 78 90</a>
          ist aber mehr als nur eine „Auszeichnung” - er stellt gleich eine *Verknüpfung* mit einem konkreten Service da (selbst wenn dieser nur eine Auflistung weiterer Services darstellen sollte).
          Aber irgendwer muss hinter dem example.com in deinem Beispiel ja auch stecken - setze stattdessen mal google.com ein, und schon bekommt das ganze einen eher üblen Beigeschmack, findest du nicht?

          Das ist korrekt. Genau deshalb darf example.com keinen eigenen Service anbieten, sondern er muss die Weiterleitung an Services anderer Anbieter übernehmen. Und er muss die Standards sinnvoll verwalten, bevor Wildwüchse entstehen. Tim hat hier ein gutes Beispiel erwähnt: Die Koordinaten-Links auf Wikipedia (Beispiel).
          Wie du bereits sagst ist es wichtig, dass example.com von einem Anbieter ist, dem der Nutzer vertrauen kann. Auch hier ist Wikipedia kein schlechtes Beispiel.

          Das ist dann der Punkt, an dem der Aspekt der *Auszeichnung* im Dokument in den Fokus rückt.
          Deine Aufgabe als Autor ist m.E. nicht, das für mich mit irgendeinem konkreten Service zu verknüpfen; sondern lediglich, es als (um beim Beispiel zu bleiben) eine Telefonnummer auszuzeichnen. Und das auf eine standardisierte und maschinenlesbare Art und Weise, so dass dann der von *mir* in *meinem* Browser dafür eingestellte Handler, Accelerator, whatever sich da einklinken kann, und mir diese Telefonnummer mit dem von mir gewählten Service verknüpft, so dass ich sofort dort anrufen, ein reverse lookup der Nummer, oder sonstwas damit machen kann.

          Der von dir in deinem Browser eingestellte Handler / wasauchimmer könnte immer noch die URL abfangen, oder besser: Über eine API die Vorschläge, die example.com macht, um eigene Einträge ergänzen.

          Das könnten die erwähnten MicroFormats auch heute schon leisten.

          Warum tun sie das dann nicht schon heute? Es gibt sicher vereinzelt Plugins oder Anwendungen, mit denen man beispielsweise eine hCard aus einer Webseite entnehmen kann. Ohne diese hat der Nutzer aber derzeit gar keinen Mehrwert - und das ist mitunter auch ein Grund dafür, warum sie von Webautoren selten verwendet werden.

          Ich will die Links aber auch nicht als Konkurrenz zu den Mikroformaten verstanden sehen, sondern eher als Ergänzung und als sofort nutzbare Möglichkeit, die Daten weiterzuverwenden. Vor allem können Links nicht verschachtelt werden - Mikroformate schon.

          Grüße

          Marc Reichelt || http://www.marcreichelt.de/

          --
          DPRINTK("Last time you were disconnected, how about now?");
                  linux-2.6.6/drivers/net/tokenring/ibmtr.c
          Selfcode: ie:{ fl:| br:> va:} ls:< fo:} rl:( n4:( ss:) de:> js:| ch:? sh:| mo:) zu:)
          1. Hallo

            Der von dir in deinem Browser eingestellte Handler / wasauchimmer könnte immer noch die URL abfangen, oder besser: Über eine API die Vorschläge, die example.com macht, um eigene Einträge ergänzen.

            Das könnten die erwähnten MicroFormats auch heute schon leisten.

            Warum tun sie das dann nicht schon heute? Es gibt sicher vereinzelt Plugins oder Anwendungen, mit denen man beispielsweise eine hCard aus einer Webseite entnehmen kann. Ohne diese hat der Nutzer aber derzeit gar keinen Mehrwert - und das ist mitunter auch ein Grund dafür, warum sie von Webautoren selten verwendet werden.

            Das ist doch aber kein Problem der Microformate an sich. Frage Programmierer, warum sie keine Programme oder Plugins schreiben, die auf Microformate zugreifen oder diese oft nur eine eigeschränkte Funktionalität bieten.

            Klar, in diesem Zustand sind sie für Autoren uninteressant, womit sie beim Publikum unbekannt bleiben, womit für Programmierer uninteressant bleiben, womit die Programme selten und (meist) schlecht bleiben, womit sie für Autoren ... ach, du weißt ja selbst.

            Meiner Meinung nach liegt das aber nicht an den Microformaten selbst, sondern am Umgang mit ihnen.

            Tschö, Auge

            --
            Verschiedene Glocken läuteten in der Stadt, und jede von ihnen vertrat eine ganz persönliche Meinung darüber, wann es Mitternacht war.
            Terry Pratchett, "Wachen! Wachen!"
            Veranstaltungsdatenbank Vdb 0.3
      2. Hi,

        An die Accellerators habe ich bislang noch nicht gedacht. Ich muss zugeben, dass diese einem nicht unähnlichen Zweck dienen. Aber: Sie sind mal wieder ein ganz Microsoft-typischer Standard(TM).

        Microsoft geht in den letzten paar Jahren immer mehr den Weg, entweder Standards zu verwenden, oder aber ihre Neuigkeiten so zu bauen, dass ein sinnvoller Standard daraus entstehen kann. Zumindest ist die Idee als solche bereits da.

        Dennoch: Sie sind nicht das Gleiche. Bei meinem Ansatz zeichnen die Web-Autoren ihre Seiten entsprechend aus, und dadurch werden die Informationen gleich auch maschinell lesbar.

        Bei Accelerators (oder zumindest dem Vorgänger Activities) ist dies ebenso. Der Nutzer kann sich seine Services von den jeweiligen Seiten installieren - per Mausklick und Bestätigung. Ich gebe zu, dass eine automatisierbare Information der Art "hier ist ein Service des Typs XYZ gefragt" fehlt - hierzu hast Du jedoch auch keine Idee genannt. Es sei denn, Du meinst die URL, was ich jedoch für extremst[1] problematisch halte.

        Außerdem ist meine Lösung vollständig unabhängig von der Plattform, rückwärtskompatibel,

        So wie die Accelerators. Sie sind bisher lediglich nur im IE implementiert.

        und zu guter Letzt: nicht von Microsoft. ;-)

        Touché :-)

        Cheatah

        [1] Fast sogar schon für extremstst.

        --
        X-Self-Code: sh:( fo:} ch:~ rl:| br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
        X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
        X-Will-Answer-Email: No
        X-Please-Search-Archive-First: Absolutely Yes
  2. Zwei Techniken, die in eine ähnliche Richtung gehen:

    HTML 5s window.navigator.registerProtocolHandler() erlaubt es Webseiten, sie für bestimmte URI-Schemata bzw. MIME Media Typen zu registrieren – der Browser kann die Registration dann als OS weiterleiten. Implementiert seit Firefox 3. D.h. man könnte dann ähnlich wie in Deinem Beispiel tel:-URIs nutzen und der Browser kann dass dann entweder $Webseite oder ... sagen wir mal die iPhone-Telefon-App aufrufen, je nach Möglichkeiten. Es gibt URI-Schemes für alles Mögliche, ich meine, sogar mal eines für Geo-Daten gesehen zu haben.

    OpenSearch ist eine Spezifikation, für API-Beschreibungen von Such-Schnittstellen. Damit kann man den Akt des Suches (und die Rückgabe der Suchergebnisse als XML-Feeds) abstrahieren und maschinell verarbeiten. Das wäre dann ein Browser-Plugin für eine Aktivität in Deinem Sinne; OpenSearch-Plugins gibt's wiederrum in Firefox.

    Wie ChrisB bin ich extrem skeptisch gegenüber der Datenkrake example.com. Die Idee der landing page mag ich aber, seit ich Wikipedias Koordinaten-Links kenne. Man könnte sagen, dass Nutzer dann selber für die landing page sorgen sollten, meinetwegen mit standardisierter Software wie „RedirectionPress“. Oder noch entspannter mit einer kleinen JS-Library, die nach unbekannten (Unbekanntheit ist für eine Webseite aber nicht rausfindbar) URI-Schemata sucht und dafür ein JS-Popup mit den Möglichkeiten aufklappt. Andererseits .. wenn das eh den Möglichkeiten des Nutzers unterliegt, dann reicht's auch, wenn der auf seinen Lieblingsdienst verlinkt.

    Oder aber standardisierte, Dienstunabhängige URI-Schemata nutzt.

    1. Hallo Tim,

      HTML 5s window.navigator.registerProtocolHandler() erlaubt es Webseiten, sie für bestimmte URI-Schemata bzw. MIME Media Typen zu registrieren – der Browser kann die Registration dann als OS weiterleiten. Implementiert seit Firefox 3. D.h. man könnte dann ähnlich wie in Deinem Beispiel tel:-URIs nutzen und der Browser kann dass dann entweder $Webseite oder ... sagen wir mal die iPhone-Telefon-App aufrufen, je nach Möglichkeiten. Es gibt URI-Schemes für alles Mögliche, ich meine, sogar mal eines für Geo-Daten gesehen zu haben.

      Wow - genial. Das klingt echt nach einer sinnvollen Möglichkeit. Bislang waren dafür ja immer spezielle Anwendungen nötig, die sich in alle Browser reinhacken mussten. So wie beispielsweise Skype. Das ist auch der Grund, warum sich bei mir immer die Haare sträubten, wenn ich wieder ein neues Protokoll im Einsatz gesehen habe. Auch jetzt noch missfälllt mir der Gedanke, dass jeder sein eigenes Protokoll definieren können soll. Das klingt sehr danach, als ob wir uns bald nicht mehr vor inkompatiblen Protokollen retten können werden.

      Wie ChrisB bin ich extrem skeptisch gegenüber der Datenkrake example.com. Die Idee der landing page mag ich aber, seit ich Wikipedias Koordinaten-Links kenne.

      Eben in dieser Art stelle ich mir das vor. Nur eben ein wenig schicker, für mehr als nur einen Datentyp und mit Möglichkeit für den Benutzer, verschiedene Services zu bewerten und seinen Lieblings-Service als Default auszuwählen.

      Man könnte sagen, dass Nutzer dann selber für die landing page sorgen sollten, meinetwegen mit standardisierter Software wie „RedirectionPress“. Oder noch entspannter mit einer kleinen JS-Library, die nach unbekannten (Unbekanntheit ist für eine Webseite aber nicht rausfindbar) URI-Schemata sucht und dafür ein JS-Popup mit den Möglichkeiten aufklappt. Andererseits .. wenn das eh den Möglichkeiten des Nutzers unterliegt, dann reicht's auch, wenn der auf seinen Lieblingsdienst verlinkt.

      Oder aber standardisierte, Dienstunabhängige URI-Schemata nutzt.

      Das ist natürlich dem Nutzer überlassen. Über User-Scripts kann er Funktionalität nachrüsten. Oder über Plugins. Die Links wären trotzdem für jeden sofort benutzbar.

      Grüße

      Marc Reichelt || http://www.marcreichelt.de/

      --
      DPRINTK("Last time you were disconnected, how about now?");
              linux-2.6.6/drivers/net/tokenring/ibmtr.c
      Selfcode: ie:{ fl:| br:> va:} ls:< fo:} rl:( n4:( ss:) de:> js:| ch:? sh:| mo:) zu:)
  3. hmm, sorry, aber ich sehe nicht ganz ein was jetzt daran der mehrwert sein soll? sowas schränkt doch mehr ein als dass es neue möglichkeiten eröffnet. mir wird gesagt, was ich tun kann und bene. bevorteilt sind diejenigen dienste die zuoberst auf der liste erscheinen und somit haben wir wieder ein "neues google". ich behaupte, dass dies nur ein weiteres mittel wäre, um die breite masse auf einige wenige dienste zu kanalisieren. natürlich rein wirtschaftlich sicher nicht uninteressant...