<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	
	xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>notizBlog &#187; Service</title>
	<atom:link href="http://notizblog.org/tag/service/feed/" rel="self" type="application/rss+xml" />
	<link>http://notizblog.org</link>
	<description>a weblog about the open, portable, social, synaptic, semantic, structured, distributed, decentralized, microformatted and federated social web</description>
	<lastBuildDate>Tue, 22 May 2012 14:36:13 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
<atom:link rel="search"
           href="http://notizblog.org/opensearch"
           type="application/opensearchdescription+xml"
           title="Content Search" /><atom:link rel="hub" href="http://pubsubhubbub.appspot.com"/><atom:link rel="hub" href="http://superfeedr.com/hubbub"/><cloud domain='notizblog.org' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<atom:link rel='salmon' href='http://notizblog.org/?salmon=endpoint'/><atom:link rel='http://salmon-protocol.org/ns/salmon-replies' href='http://notizblog.org/?salmon=endpoint'/><atom:link rel='http://salmon-protocol.org/ns/salmon-mention' href='http://notizblog.org/?salmon=endpoint'/>		<item>
		<title>XRDS-Simple, eine Einf&#252;hrung</title>
		<link>http://notizblog.org/2008/05/05/xrds-simple-eine-einfuehrung/</link>
		<comments>http://notizblog.org/2008/05/05/xrds-simple-eine-einfuehrung/#comments</comments>
		<pubDate>Mon, 05 May 2008 16:56:56 +0000</pubDate>
		<dc:creator>Matthias Pfefferle</dc:creator>
				<category><![CDATA[Open Web]]></category>
		<category><![CDATA[Service]]></category>
		<category><![CDATA[XRDS]]></category>
		<category><![CDATA[XRDS-Simple]]></category>

		<guid isPermaLink="false">http://notizblog.org/?p=847</guid>
		<description><![CDATA[Da XRDS-Simple auch eine zentrale Rolle bei DataPortability spielen wird, hab ich mir das Format nochmal vorgenommen. (Im folgenden Text setze ich, der Einfachheit halber, XRDS mit XRDS-Simple gleich auch wenn es technisch nicht ganz korrekt ist) XRDS-Simple ist in erster Linie eine einfache Form der Service-Discovery, von der Idee her &#228;hnlich wie z.B. die [...]]]></description>
			<content:encoded><![CDATA[<p>Da <a href="http://xrds-simple.net/">XRDS-Simple</a> auch eine zentrale Rolle bei <a href="http://dataportability.org">DataPortability</a> spielen wird, hab ich mir das Format <a href="http://notizblog.org/2008/04/15/xrds-simple-und-dataportability/">nochmal</a> vorgenommen. (Im folgenden Text setze ich, der Einfachheit halber, XRDS mit XRDS-Simple gleich auch wenn es technisch nicht ganz korrekt ist)</p>
<p><img src="http://notizblog.org/wp-content/uploads/2008/05/xrds-simple-large.png" alt="XRDS-Simple-Large.png" border="0" width="431" height="182" class="noborder" /></p>
<p>XRDS-Simple ist in erster Linie eine <strong>einfache</strong> Form der Service-Discovery, von der Idee her &#228;hnlich wie z.B. die <a href="http://de.wikipedia.org/wiki/Web_Services_Description_Language">Web Services Description Language</a> (WSDL).<br />
XRDS beschr&#228;nkt sich, im Gegensatz zu dem wesentlich komplexeren <abbr title="Web Services Description Language">WSDL</abbr>, auf die Beschreibung der Service <abbr title="Uniform Resource Locator">URL</abbr>s/<abbr title="Uniform Resource Identifier">URI</abbr>s und wie man sie nutzt (<a href="http://en.wikipedia.org/wiki/HTTP">POST oder GET</a>).</p>
<p>Vom Aufbau her ist XRDS-Simple dem <a href="http://yadis.org/wiki/Yadis_1.0_(HTML)">YADIS Format</a> (OpenID-Autodetection) sehr &#228;hnlich:</p>
<pre class="code">&lt;XRDS xmlns="xri://$xrds"&gt;
  &lt;XRD xmlns:simple="http://xrds-simple.net/core/1.0"
          xmlns="xri://$XRD*($v*2.0)" version="2.0"&gt;
    &lt;Type&gt;xri://$xrds*simple&lt;/Type&gt;
    &lt;Service&gt;
      &lt;Type&gt;http://example.net/some_type&lt;/Type&gt;
      &lt;URI simple:httpMethod="POST"&gt;

http://example.com/resource

      &lt;/URI&gt;
    &lt;/Service&gt;
  &lt;/XRD&gt;
&lt;/XRDS&gt;</pre>
<p>Der wichtigste Teil eines <code>Services</code> ist der <code>Type</code> welcher den Typ der URI beschreibt und die <code>URI</code> welche beschreibt unter welcher URI der Service zu erreichen ist.</p>
<p>Ein paar Beispiele f&#252;r ein paar klassische Services:</p>
<dl>
<dt>FOAF</dt>
<dd>
<dl>
<dt>type</dt>
<dd>http://xmlns.com/foaf/0.1/</dd>
<dt>url</dt>
<dd>http://www.mybloglog.com/buzz/members/pfefferle/foaf</dd>
</dl>
</dd>
<dt>hCard</dt>
<dd>
<dl>
<dt>type</dt>
<dd>http://purl.org/uF/hCard/1.0/</dd>
<dt>url</dt>
<dd>http://www.mybloglog.com/buzz/members/pfefferle/hcard</dd>
</dl>
</dd>
<dt>APML</dt>
<dd>
<dl>
<dt>type</dt>
<dd>http://www.apml.org/apml-0.6</dd>
<dt>url</dt>
<dd>http://notizblog.org/apml/</dd>
</dl>
</dd>
<dt>OPML</dt>
<dd>
<dl>
<dt>type</dt>
<dd>http://www.opml.org/spec2</dd>
<dt>url</dt>
<dd>http://ma.gnolia.com/opml/default/people/pfefferle</dd>
</dl>
</dd>
</dl>
<p>Neben dem <code>&lt;Type&gt;</code> kann f&#252;r die URI auch noch ein <code>&lt;MediaType&gt;</code> (nichts anderes als der <abbr title="Multipurpose Internet Mail Extensions">MIME</abbr>-Type (<a href="http://tools.ietf.org/html/rfc2046">RFC2046</a>)) gesetzt werden, der beschreibt um was es sich bei dem Verlinkten handelt. </p>
<p>Beispiel: <code>&lt;MediaType&gt;text/html&lt;/MediaType&gt;</code></p>
<p>Mit diesem einfachen Prinzip lassen sich auf einfache Weise nahezu alle Services beschreiben.</p>
<p>Vorteile von XRDS-Simple? Meiner Meinung nach gibt es zwei wesentliche Gr&#252;nde XRDS einzusetzen.</p>
<h4>Einheitliche Erkennung</h4>
<p>XRDS vereinfacht die automatische Service-Erkennung, da nur noch ein Meta-Tag interpretiert werden muss:</p>
<p><code>&lt;meta http-equiv="X-XRDS-Location" content="http://example.com/xrds" /&gt;</code></p>
<p>statt jeder Meta-Tag einzeln:</p>
<p><code>&lt;link rel="meta" type="text/xml" title="APML" href="..." /&gt;<br />
&lt;link rel="meta" type="text/xml" title="OPML" href="..." /&gt;</code></p>
<p>One file to detect them all <img src='http://notizblog.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<h4>Information Hiding</h4>
<p>Ein weiterer wesentlicher Aspekt der Autodetection ist die Sicherheit&#8230; nicht jeder m&#246;chte seine Attention-Daten (<abbr title="Attention Profiling Mark-up Language"><a href="http://www.apml.org/">APML</a></abbr>) oder seine hCard frei zur Verf&#252;gung stellen. &#220;ber XRDS-Simple ist es m&#246;glich, diese Informationen zu b&#252;ndeln und z.B. nur &#252;ber <a href="http://www.axschema.org/">OpenID AX</a> oder <a href="http://oauth.net/">OAuth</a> zug&#228;nglich zu machen.</p>
<p>Ein Beispiel dazu: <a href="http://notizblog.org/2008/04/15/xrds-simple-und-dataportability/#service-catalogue">XRDS-Simple als zentraler ServiceCatalogue</a></p>
<h4>OAuth discovery</h4>
<p>Der Vollst&#228;ndigkeit halber sollte man erw&#228;hnen dass XRDS-Simple eigentlich ein &#8220;Nebenprodukt&#8221; von <a href="http://oauth.net/discovery/">OAuth Discovery</a> ist.</p>
<blockquote><p>The first draft of OAuth Discovery published four months ago started a dialog and was the main driver behind the development of XRDS-Simple. <a href="http://www.hueniverse.com/hueniverse/2008/04/oauth-discovery.html">#</a></p></blockquote>
<p>Mehr zu diesem Thema bei <a href="http://www.hueniverse.com/hueniverse/2008/04/oauth-discovery.html">hueniverse</a> oder <a href="http://factoryjoe.com/blog/2008/04/08/oauth-discovery-10-draft-2-released-with-support-from-magnolia-fire-eagle-and-satisfaction/">Chris Messina</a>.</p>

<div class="social-buttons">
  <a class="FlattrButton" style="display:none;"
     title="XRDS-Simple, eine Einf&amp;#252;hrung"
     data-flattr-button="compact"
     data-flattr-uid="pfefferle"
     data-flattr-category="text"
     data-flattr-language="de_DE"
     href="http://notizblog.org/2008/05/05/xrds-simple-eine-einfuehrung/"
     rel="donation payment">Flattr this!</a>

  <div class="g-plusone" data-size="medium" data-lang="de-DE" data-href="http://notizblog.org/2008/05/05/xrds-simple-eine-einfuehrung/"></div>
</div>]]></content:encoded>
			<wfw:commentRss>http://notizblog.org/2008/05/05/xrds-simple-eine-einfuehrung/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:thumbnail url="http://notizblog.org/wp-content/uploads/2008/05/xrds-simple-large.png" />
		<media:content url="http://notizblog.org/wp-content/uploads/2008/05/xrds-simple-large.png" medium="image">
			<media:title type="html">XRDS-Simple-Large.png</media:title>
		</media:content>
	</item>
		<item>
		<title>Das kleine Problem mit MicroIDs</title>
		<link>http://notizblog.org/2008/04/16/das-kleine-problem-mit-microids/</link>
		<comments>http://notizblog.org/2008/04/16/das-kleine-problem-mit-microids/#comments</comments>
		<pubDate>Wed, 16 Apr 2008 19:49:45 +0000</pubDate>
		<dc:creator>Matthias Pfefferle</dc:creator>
				<category><![CDATA[Open Web]]></category>
		<category><![CDATA[MicroID]]></category>
		<category><![CDATA[myBlogLog]]></category>
		<category><![CDATA[Service]]></category>

		<guid isPermaLink="false">http://notizblog.org/?p=816</guid>
		<description><![CDATA[Nach den Ank&#252;ndigungen, dass myBlogLog MicroID f&#252;r die eigenen Profilseiten einsetzt (bsp.: www.mybloglog.com/buzz/members/pfefferle/) habe ich mich gefragt, warum myBlogLog MicroIDs nur anbietet, nicht aber f&#252;r die Verifizierung der Blogs verwendet. Aber zuerst mal eine kurze Einf&#252;hrung. MicroID ist eine einfache M&#246;glichkeit, den Besitz von Webseiten zu validieren. MicroID enables anyone to claim verifiable ownership over [...]]]></description>
			<content:encoded><![CDATA[<p>Nach den <a href="http://www.notsorelevant.com/2008-04-14/mybloglog-adds-microid-and-foaf/">Ank&#252;ndigungen</a>, dass <a href="http://www.mybloglog.com/">myBlogLog</a> <a href="http://www.microid.org/">MicroID</a> f&#252;r die eigenen Profilseiten einsetzt (bsp.: <a href="http://www.mybloglog.com/buzz/members/pfefferle/">www.mybloglog.com/buzz/members/pfefferle/</a>) habe ich mich gefragt, warum myBlogLog MicroIDs nur anbietet, nicht aber f&#252;r die <a href="http://www.notsorelevant.com/2008-02-15/mybloglog-supports-microformats-but-not-microid/">Verifizierung der Blogs</a> verwendet.</p>
<p>Aber zuerst mal eine kurze Einf&#252;hrung. MicroID ist eine einfache M&#246;glichkeit, den Besitz von Webseiten zu validieren.</p>
<blockquote><p>MicroID enables anyone to claim verifiable ownership over content hosted anywhere on the web (social networking sites, discussion forums, blogs, etc.).</p></blockquote>
<p>Das Prinzip ist einfach, es wird ein Hash-Wert aus zwei unterschiedlichen URLs (auch Pseudo-URLs wie z.B. &#8220;mailto:&#8221; oder &#8220;xmpp://&#8221; sind m&#246;glich) gebildet und als Metatag in die Webseite eingebunden.</p>
<pre><code>hash = sha1(
    sha1( "mailto:mustermann@example.com" )
    +
    sha1( "http://www.example.com/" )
  )</code></pre>
<p>Alternativ zu sha1 kann z.B. auch MD5 verwendet werden. Der Aufbau des Metatags sieht folgendermassen aus <code>uri+uri:algo:hash</code></p>
<pre><code>&lt;meta name="microid"
  content="mailto+http:sha1:
    ba37d92454792b65838c9827a8d75171c7241924" /&gt;</code></pre>
<h4>Der Vorteil eines propriet&#228;ren Formats im Gegensatz zu MicroID</h4>
<p>Was die genauen Gr&#252;nde daf&#252;r sind, dass <a href="http://www.mybloglog.com/">myBlogLog</a> ein eigenes Format verwendet wei&#223; ich nat&#252;rlich nicht, aber schaut man sich MicroID etwas genauer an, findet man doch einige kleine Problemchen.</p>
<p>Eigentlich ist es ja nur ein wirkliches Problem, und zwar die <abbr title="Uniform Resource Locator">URL</abbr>&#8230; Eine <abbr title="Uniform Resource Locator">URL</abbr> kann man auf zu viele verschieden Weisen schreiben, als dass sie eine valide ID abgeben k&#246;nnte:</p>
<ul>
<li><code>http://example.com</code></li>
<li><code>http://<strong>www.</strong>example.com</code></li>
<li><code>http://example.com<strong>/</strong></code></li>
</ul>
<p>Zusammen mit der E-Mail &#8211; Adresse <code>mustermann@example.com</code> bekommt man drei verschiedene Hash-Werte:</p>
<ul>
<li><code>19358536d8c443614bc7d861f4b050ee34a549b9</code></li>
<li><code>05c732700bfa89cd234bb7fc08cb673f7c0d88b8</code></li>
<li><code>9275b4dcd7cc2c997b2a5249420b422e937d36e0</code></li>
</ul>
<p>Das hei&#223;t, es kommt immer darauf an wie der Benutzer seine <abbr title="Uniform Resource Locator">URL</abbr> bei einem entsprechenden Service angibt. Ist f&#252;r den Metatag der Webseite <code>http://example.com</code> verwendet und beim Service <code>http://www.example.com/</code> angegeben worden, kann die Webseite nicht verifiziert werden, da sich die Hash-Werte unterscheiden.</p>
<h4>L&#246;sungsvorschl&#228;ge</h4>
<p>Eine m&#246;gliche L&#246;sung w&#228;re alle denkbaren <abbr title="Uniform Resource Locator">URL</abbr>s auszuprobieren, was nicht sehr performant w&#228;re und eine menge Zeit beanspruchen w&#252;rde. Die (meiner Meinung nach) bessere L&#246;sung w&#228;re eine Art &#8220;<a href="http://notizblog.org/2008/04/15/xrds-simple-und-dataportability/#service-catalogue">service catalogue</a>&#8221; an, in dem festgelegt ist wie z.B. die von myBlogLog verwendete MicroID-<abbr title="Uniform Resource Locator">URL</abbr> aussieht.</p>
<p>Ein Beispiel: <code>http://www.mybloglog.com/buzz/members/<strong>Username</strong>/</code></p>
<p>Das Problem bezieht sich nat&#252;rlich nur auf Services/Communities, bei denen man keinen Einfluss auf die MicroID hat. Bei pers&#246;nlichen Weblogs ist das nat&#252;rlich was anderes, da die <abbr title="Uniform Resource Locator">URL</abbr> und der Matatag vom Benutzer selbst angelegt werden.</p>
<p>Falls jemand noch nen tollen L&#246;sungsvorschlag h&#228;tte w&#228;re ich sehr dankbar, weil ich MicroID trotz allem gerne einsetzen w&#252;rde&#8230; Das Prinzip ist einfach so sch&#246;n simpel <img src='http://notizblog.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>

<div class="social-buttons">
  <a class="FlattrButton" style="display:none;"
     title="Das kleine Problem mit MicroIDs"
     data-flattr-button="compact"
     data-flattr-uid="pfefferle"
     data-flattr-category="text"
     data-flattr-language="de_DE"
     href="http://notizblog.org/2008/04/16/das-kleine-problem-mit-microids/"
     rel="donation payment">Flattr this!</a>

  <div class="g-plusone" data-size="medium" data-lang="de-DE" data-href="http://notizblog.org/2008/04/16/das-kleine-problem-mit-microids/"></div>
</div>]]></content:encoded>
			<wfw:commentRss>http://notizblog.org/2008/04/16/das-kleine-problem-mit-microids/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
	
	</item>
		<item>
		<title>Tags 2 APML</title>
		<link>http://notizblog.org/2007/12/17/tags-2-apml/</link>
		<comments>http://notizblog.org/2007/12/17/tags-2-apml/#comments</comments>
		<pubDate>Mon, 17 Dec 2007 00:22:51 +0000</pubDate>
		<dc:creator>Matthias Pfefferle</dc:creator>
				<category><![CDATA[Open Web]]></category>
		<category><![CDATA[apml]]></category>
		<category><![CDATA[Attention-Daten]]></category>
		<category><![CDATA[Service]]></category>

		<guid isPermaLink="false">http://notizblog.org/2007/12/17/tags-2-apml/</guid>
		<description><![CDATA[TasteBroker ist ein experimenteller Service um die Attention Daten (meistens die verwendeten Tags) verschiedener Dienste in APML zu konvertieren. TasteBroker is an experimental service that will generate a portable representation of your taste data (in the form of an APML file) from various web sources. Bisher gibt es diesen Service f&#252;r drei verschiedene Dienste: Last [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://tastebroker.org/">TasteBroker</a> ist ein experimenteller Service um die Attention Daten (meistens die verwendeten Tags) verschiedener Dienste in APML zu konvertieren.</p>
<blockquote cite="http://tastebroker.org/"><p>TasteBroker is an experimental service that will generate a portable representation of your taste data (in the form of an APML file) from various web sources.</p></blockquote>
<p>Bisher gibt es diesen Service f&#252;r drei verschiedene Dienste: Last FM, Pandora und Del.icio.us.</p>
<p>Beispiele meiner Daten:</p>
<ul>
<li><a href="http://TasteBroker.org/apml/last.fm/pfefferle" class="apml">http://TasteBroker.org/apml/last.fm/pfefferle</a></li>
<li><a href="http://TasteBroker.org/apml/web/pfefferle" class="apml">http://TasteBroker.org/apml/web/pfefferle</a></li>
</ul>
<p>Au&#223;erdem gibt es das WordPress Plugin jetzt auch f&#252;r <a href="http://apml-library.googlecode.com/svn/trunk/wordpress/">WordPress 2.x</a>.</p>

<div class="social-buttons">
  <a class="FlattrButton" style="display:none;"
     title="Tags 2 APML"
     data-flattr-button="compact"
     data-flattr-uid="pfefferle"
     data-flattr-category="text"
     data-flattr-language="de_DE"
     href="http://notizblog.org/2007/12/17/tags-2-apml/"
     rel="donation payment">Flattr this!</a>

  <div class="g-plusone" data-size="medium" data-lang="de-DE" data-href="http://notizblog.org/2007/12/17/tags-2-apml/"></div>
</div>]]></content:encoded>
			<wfw:commentRss>http://notizblog.org/2007/12/17/tags-2-apml/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
	</item>
	</channel>
</rss>

