Kategorie: Open Web

Hier geht es um Webdesign, Microformats, (X)HTML und CSS, Web2.0, usw.

  • Will Norris hat vorgestern ausführlich über die neuen Features seines WordPress-Plugins berichtet. Das wohl interessanteste Feature von wp-openid 3.0 ist der neue OpenID-Provider:

    The next major release of wp-openid includes a built-in OpenID provider and delegation engine. This will certainly be the most exciting feature of this release for most people, so let me explain a bit how it works. Each authorized user on the WordPress blog will have an OpenID at the author posts URL (ie. http://example.com/author/admin). Authorization to use the OpenID provider is controlled based on user roles and is managed in the main OpenID settings page.

    Das Plugin kann in zwei verschiedenen Modi betrieben werden. Multi-user erstellt aus jeder Autor-URL (z.B. http://example.com/author/admin/) eine OpenID während blog-owner für Private-Blogs mit nur einem Autor gedacht ist und die Home-URL zur OpenID (z.B. http://example.com) macht:

    In multi-user, the default configuration, the server supports a feature in OpenID 2.0 called OpenID Provider driven identifier selection. What this means is that ANY user on that blog can enter the home URL as their OpenID, and the OpenID provider itself will make sure that the correct identifier is returned to the relying party. The final identifier will still be something like http://example.com/author/admin/, but the user only needs to enter example.com at a relying party. If you’ve used ever used Yahoo’s OpenID provider, then you’ve probably seen how this works.

    Zwei weitere spannende Features sind die Hooks, als Schnittstelle für z.B. andere Plugins…

    I haven’t sat down to document them all yet, but I’m adding in more hooks for other plugins to add functionality. Want to pull profile data from FOAF instead of sreg? No problem, now you have a hook you can implement. This makes everything in the plugin much more lightweight and “loosely joined” which is always good. All of the existing non-core OpenID functionality (like SREG) is currently using these hooks.

    …und die Unterstützung des OpenID-Firefox-Plugins (welches übrigens auch mit der Version 2.x funktioniert) über das DiSo XRDS-Simple Plugin.

    Ich habe das Plugin bisher nur einmal ausprobiert, da es noch einige kleine Fehler hat und die Admin-Oberfläche des OpenID-Providers noch gänzlich fehlt. Trotz dieser kleinen Fehler merkt man, dass sich Will Norris für diese Version sehr viel Zeit (die er sicherlich auch hatte) genommen hat und ich bin sehr gespannt auf die fertige Version.

    Wer sich nochmal ausführlich mit den Features beschäftigen will, sollte unbedingt Will Norris‘ Artikel darüber lesen:

    1 Kommentar zu WordPress wird OpenID-Provider
  • NoseRub hat ein WordPress-Plugin:

    If you have an account on a social network site powered by NoseRub, i.e. identoo.com
    this plugin provides a couple of widgets to show your lifestream your hCard, your contacts
    and, on newer installations of NoseRub, your services.

    You can also choose to use your weblog as an OpenID-URL, powered by your NoseRub account.

    …außerdem wurde noch ne ganze Menge XFN verwendet 🙂

    Mal schau’n was Dominik Schwind auf dem nächsten NoseRub-DevCamp so zaubert.

    Keine Kommentare zu Naserubbeln mit WordPress
  • Ubiquity bietet (neben Operator) endlich einen echten Anwendungsfall für die Microformats Firefox API. Die Microformats API basiert auf JavaScript und lässt sich somit auch direkt (und ohne viel Aufwand) in die Ubiquity-Commands integrieren.

    Das folgende wirklich sinnvolle Beispiel zählt alle hCards einer Seite und gibt das Ergebnis als System-Message aus:

    Components.utils.import("resource://gre/modules/Microformats.js");
    CmdUtils.CreateCommand({
      name: "count-hcards",
      execute: function() {
        var doc = Application.activeWindow.activeTab.document;	
        var uFcount = Microformats.count('hCard', doc);
        displayMessage( uFcount );
      }
    })Code-Sprache: JavaScript (javascript)

    Martin McEvoy hat ein paar wesentlich schickere Commands gebaut, die mit Hilfe des Transformrs Mikroformate verarbeitet. Da für diese Verarbeitung ein Redirect (oder das öffnen einer zweiten Seite) notwendig ist, überprüft er mit Hilfe der Microformats-API zuerst ob sich die notwendigen Mikroformate überhaupt auf der Seite befinden.

    Der folgende Code (von Martin) testet z.B. ob mind. ein hCalendar verfügbar ist, bevor er diesen verarbeitet:

    CmdUtils.CreateCommand({
      icon: "http://transformr.co.uk/favicon.ico",
      name: "get-webcal",
      author: {name: "Martin McEvoy", email: "weborganics@googlemail.com"},
      help: "Subscribe to a webcal feed using the 
    <a href=\"http://microformats.org/wiki/hcalendar\">hCalendar</a> Microformat.",
      preview: function ( pblock ) {
        pblock.innerHTML = "Subscribe to web calendar";
      },
      execute: function() {
        var doc = Application.activeWindow.activeTab.document;
        var mFcount = Microformats.count('hCalendar', doc,{ showHidden : true });
        if (mFcount > 0) {
          var url = "webcal://transformr.co.uk/hcalendar/";
          url += CmdUtils.getWindowInsecure().location ; 
          Utils.openUrlInBrowser(url);
        } else {
          displayMessage('Sorry No hCalendar Events Found!');
        }
      }
    })Code-Sprache: PHP (php)

    Quelle: http://transformr.co.uk/commands

    Weitere großartige Ubiquity-Commands im Microfromats-Wiki

    1 Kommentar zu Ubiquity und Microformats
  • madgex hat vor ein paar Tagen eine OAuth – Library für .net veröffentlicht. Was ich jedoch wesentlich interessanter finde, sind die Referenz-Implementierungen:

    Ein weiteres Projekt von magdex ist übrigens der Microformats-Parser UfXtract.

    2 Kommentare zu Schöne OAuth – Anwendungsbeispiele
  • David Recordon stellt auf O’Reilly – Radar zwei der spannendsten Ergebnisse des gestrigen PortableContacts Hackathon (bei Six Apart) vor:

    Joseph Smarr and Kevin Marks of Google hacked together a web transformer that integrates Microformats, vCard, and the Portable Contacts API. Given Kevin’s homepage which is full of Microformats, they’ve built an API that extracts his profile information from hCard, uses a public API from Technorati to transform it to vCard, and then exposes it as a Portable Contacts API endpoint. Not only does this work on Kevin’s own page, but his Twitter profile as well which contains basic profile information such as name, homepage, and a short bio.

    Ein schönes Beispiel was man mit semantisch ausgezeichneten Informationen machen kann und dass Microformats eben auch (ohne viel Aufwand und mit ein bisschen Transformation) in höherwertige APIs integriert werden können… also keine hCard wurde umsonst geschrieben 🙂

    Brian Ellin of JanRain has successfully combined OpenID, XRDS-Simple, OAuth, and the Portable Contacts API to start showing how each of these building blocks should come together. Upon visiting his demo site he logs in using his OpenID. From there, the site discovers that Plaxo hosts his address book and requests access to it via OAuth. Finishing the flow, his demo site uses the Portable Contacts API to access information about his contacts directly from Plaxo. End to end, login with an OpenID and finish by giving the site access to your address book without having to fork over your password.

    Dazu brauche ich nicht mehr sagen, als: Implementieren! Sofort und überall 😉

    Keine Kommentare zu PortableContacts – Hacks
  • Anlässlich des gestrigen PortableContacts Hackathon bei Six Apart (Impressionen) und dem heutigen PortableContacts-Summit bei myspace beschäftigt sich die aktuelle SocialWeb.TV – Folge fast ausschließlich mit dem neuen „Building-Block“.

    Zwar ist die Kritik von Stephen Paul Weber (der DiSo Code-Maschine):

    Portable Contacts is an open spec – but it’s a bit of a stretch to call something a few days old and unimplemented as yet a „standard“.

    nicht ganz abwegig aber Joseph Smarr (Plaxo), der Initiator von Portable Contacts, überzeugt mit einigen Argumenten warum sich das bald ändern könnte. Portable Contacts baut ausschließlich auf offenen Standards (OAuth, XRDS-Simple, JSON) auf und nutzt die gleiche Vorgehensweise wie die OpenSocial RESTful-API. Diese Eigenschaften machen neue Code-Libraries fast überflüssig (da PC eigentlich nur bestehende Standards sinnvoll verbindet) und gestalten die Implementierung, bei schon implementierter OS RESTful-API, relativ einfach.

    Glaubt man der Aussage von Joseph im Video, soll der neue Standard noch bis Ende des Jahres nutzbar gemacht werden. Bei den möglichen Implemtoren hält er sich zwar bedeckt, aber wenn auch „nur“ die beiden oben genannten Veranstalter (Six Apart und myspace) und Plaxo diese Schnittstelle umsetzen kann man (trotz Stephens Kritik) wirklich schon fast von einem Open Standard sprechen.

    Bin gespannt auf die Ergebnisse des heutigen Summits…

    1 Kommentar zu Portable Contacts – Der neue große Building-Block?
  • Die beste Methode sich mit einer Sache zu beschäftigen ist, einen sinnvollen Anwendungsfall zu schaffen… Bei dem „näher beschäftigen“ mit Ubiquity ist ein WordPress-Plugin rausgekommen 🙂

    Das WordPress-Plugin erstellt eine Ubiquity-Suche für das eigene Weblog (Quellcode) mit dem Command „search-<Blog-Titel>“

    ubiquity-wordpress-command.jpg

    Das kann teilweise (wie im Falle meines Blogs: search-notizblog-a-private-weblog-written-by-matthias-pfefferle) ziemlich lang werden, was aber nicht weiter schlimm ist da auch schon der Anfang des Commands (z.B. search-notizblog) reicht…

    Viel Spaß beim ausprobieren 🙂

    2 Kommentare zu Ubiquity für WordPress (ein Plugin)
  • Ubiquity gibt es ja jetzt schon ne ganze Weile und es wurde auch schon zu genüge darüber berichtet, deshalb will ich auch gar nicht mehr groß darauf eingehen. Da ich das Firefox-Addon aber recht spannend finde und sicherlich noch einiges darüber schreiben werde, möchte ich diejenigen die noch nichts von Ubiquity gehört haben auf den Artikel von Markus Spath (auf netzwertig) und das folgende Video hinweisen…

    Hier klicken, um den Inhalt von Vimeo anzuzeigen.
    Erfahre mehr in der Datenschutzerklärung von Vimeo.

    Ich persönlich mag das quicksilver-ähnliche Handling und das kontextsensitive reagieren der Ubiquity-Befehle (frei nach Markus).
    D.h. Ubiquity arbeitet, genau nach dem Microformats-Prinzip: „Designed for humans first and machines second…“, mit den gleichen Informationen die auch der User zu Gesicht bekommt… der Webseite.
    Das schreit ja nahezu nach einigen coolen Microformats-Anwendungen 🙂

    Keine Kommentare zu Ubiquity (der Vollständigkeit halber)
  • Es hat ne ganze Weile gedauert, aber endlich ist eine erste Vorschau von APML 1.0 verfügbar: APML 1.0 Initial Draft

    Unterschiede zu APML 0.6:

    • Neben Concepts und Sources gibt es jetzt auch People und Locations.
    • Optional kann über rdf:about auf andere Semantiken/Ontologien verwiesen werden ohne APML selbst unnötig kompliziert zu machen.

    Es können sich zwar noch Kleinigkeiten ändern:

    This comes with a very large fore note: This is a very early draft only, and nothing is set in stone. Given that the community is obviously itching to start seeing APML 1.0 progress, I felt that it would be an appropriate time to release this and assist in structuring the discussion. I intend to follow
    this with a few more emails that detail individual sections I believe need substantial addressing.

    …aber das grobe Gerüst steht fest. Ich freue mich besonders, dass APML weiterhin so simpel wie möglich bleibt und nicht (wie oft vorgeschlagen) mit RDF-Namespaces arbeitet.

    Wenn sich in den nächsten Tagen nicht mehr viel ändert, werde ich nochmal etwas ausführlicher über die Neuerungen schreiben und mein WordPress-Plugin auf die aktuelle Version bringen…

    (via)

    1 Kommentar zu APML 1.0 Initial Draft
  • Der Such-Affe und sogar die Microformats-Suche funktionieren auch perfekt auf dem iPhone

    search-monkey-iphone.jpg

    Einfach bei der klassischen Suche ein kleines i hinter die URL packen: http://search.yahoo.com/i/

    …und gegebenenfalls noch ein „searchmonkeyid:com.yahoo.uf.hatom“ oder ein „searchmonkeyid:com.yahoo.uf.hcard“ dazu…

    Großartig 🙂

    (via)

    2 Kommentare zu Search Monkey auf dem iPhone