<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="https://notiz.blog/wp-content/plugins/pretty-feeds/pretty-feed-v4.xsl" type="text/xsl" media="screen" ?>


<!--

	Feeds whisper secrets,
	In the RSS Club's embrace,
	Knowledge blooms in grace.

-->

<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:source="http://source.scripting.com/"
xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule"
>

<channel>
	<title>vCard &#8211; notizBlog</title>
	<atom:link href="https://notiz.blog/tag/vcard/feed/" rel="self" type="application/rss+xml" />
	<link>https://notiz.blog</link>
	<description>a weblog mainly about the open, portable, interoperable, small, social, synaptic, semantic, structured, distributed, (re-)decentralized, independent, microformatted and federated social web</description>
	<lastBuildDate>Fri, 12 Apr 2024 10:21:48 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://notiz.blog/wp-content/uploads/2019/10/cropped-notizblog-icon-1-32x32.png</url>
	<title>vCard &#8211; notizBlog</title>
	<link>https://notiz.blog</link>
	<width>32</width>
	<height>32</height>
</image> 
<source:blogroll>https://reader.pfefferle.org/i/?a=opml&amp;get=c_2</source:blogroll>
<creativeCommons:license>https://creativecommons.org/licenses/by-sa/4.0/</creativeCommons:license>
<atom:link rel="hub" href="https://pubsubhubbub.appspot.com"/>
<atom:link rel="hub" href="https://pubsubhubbub.superfeedr.com"/>
<atom:link rel="hub" href="https://switchboard.p3k.io/"/>
<atom:link rel="self" href="https://notiz.blog/tag/vcard/feed/"/>
<atom:link rel="search" type="application/opensearchdescription+xml" title="Search notizBlog" href="https://notiz.blog/wp-api/opensearch/1.1/document" />	<item>
		<title>Microdata: Update und Usability-Studie</title>
		<link>https://notiz.blog/2009/10/10/microdata-update-und-usability-studie/</link>
					<comments>https://notiz.blog/2009/10/10/microdata-update-und-usability-studie/#comments</comments>
		
		<dc:creator><![CDATA[Matthias Pfefferle]]></dc:creator>
		<pubDate>Sat, 10 Oct 2009 15:20:50 +0000</pubDate>
				<category><![CDATA[Open Web]]></category>
		<category><![CDATA[hCard]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[Microdata]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[RDFa]]></category>
		<category><![CDATA[update]]></category>
		<category><![CDATA[Usability]]></category>
		<category><![CDATA[vCard]]></category>
		<category><![CDATA[XHTML]]></category>
		<guid isPermaLink="false">http://notizblog.org/?p=2059</guid>

					<description><![CDATA[Endlich denkt beim Thema &#8222;Usability&#8220; auch mal jemand an die Entwickler 🙂 Google hat über die letzten Wochen eine Usability-Studie zu Microdata durchgeführt und die Spezifikation wurde auch gleich entsprechend der Ergebnisse angepasst. Die Änderungen: Aus item wird itemscope. Der Typ wird über itemtype und nicht mehr über item bzw. itemscope angegeben. Das Attribut itemid [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p><em>Endlich denkt beim Thema &#8222;Usability&#8220; auch mal jemand an die Entwickler 🙂</em></p>



<p>Google hat über die letzten Wochen eine <a href="https://blog.whatwg.org/usability-testing-html5">Usability-Studie zu Microdata</a> durchgeführt und die <a href="https://html.spec.whatwg.org/multipage/microdata.html">Spezifikation</a> wurde auch gleich entsprechend der Ergebnisse angepasst.</p>


<pre class="wp-block-code"><span><code class="hljs language-xml"><span class="hljs-tag">&lt;<span class="hljs-name">address</span> <span class="hljs-attr">itemscope</span> <span class="hljs-attr">itemtype</span>=<span class="hljs-string">"http://microformats.org/profile/hcard"</span>&gt;</span>
 <span class="hljs-tag">&lt;<span class="hljs-name">strong</span> <span class="hljs-attr">itemprop</span>=<span class="hljs-string">"fn"</span>&gt;</span>Alfred Person<span class="hljs-tag">&lt;/<span class="hljs-name">strong</span>&gt;</span>
 <span class="hljs-tag">&lt;<span class="hljs-name">span</span> <span class="hljs-attr">itemprop</span>=<span class="hljs-string">"adr"</span> <span class="hljs-attr">itemscope</span>&gt;</span>
  <span class="hljs-tag">&lt;<span class="hljs-name">span</span> <span class="hljs-attr">itemprop</span>=<span class="hljs-string">"street-address"</span>&gt;</span>1600 Amphitheatre Parkway<span class="hljs-tag">&lt;/<span class="hljs-name">span</span>&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-name">br</span>&gt;</span>
  <span class="hljs-tag">&lt;<span class="hljs-name">span</span> <span class="hljs-attr">itemprop</span>=<span class="hljs-string">"street-address"</span>&gt;</span>Building 43, Second Floor<span class="hljs-tag">&lt;/<span class="hljs-name">span</span>&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-name">br</span>&gt;</span>
  <span class="hljs-tag">&lt;<span class="hljs-name">span</span> <span class="hljs-attr">itemprop</span>=<span class="hljs-string">"locality"</span>&gt;</span>Mountain View<span class="hljs-tag">&lt;/<span class="hljs-name">span</span>&gt;</span>,
  <span class="hljs-tag">&lt;<span class="hljs-name">span</span> <span class="hljs-attr">itemprop</span>=<span class="hljs-string">"region"</span>&gt;</span>CA<span class="hljs-tag">&lt;/<span class="hljs-name">span</span>&gt;</span> <span class="hljs-tag">&lt;<span class="hljs-name">span</span> <span class="hljs-attr">itemprop</span>=<span class="hljs-string">"postal-code"</span>&gt;</span>94043<span class="hljs-tag">&lt;/<span class="hljs-name">span</span>&gt;</span>
 <span class="hljs-tag">&lt;/<span class="hljs-name">span</span>&gt;</span>
<span class="hljs-tag">&lt;/<span class="hljs-name">address</span>&gt;</span></code></span></pre>


<p>Die Änderungen:</p>



<ul class="wp-block-list">
	<li>Aus <strong><code>item</code></strong> wird <strong><code>itemscope</code></strong>.</li>
	<li>Der Typ wird über <strong><code>itemtype</code></strong> und nicht mehr über <strong><code>item</code></strong> bzw. <strong><code>itemscope</code></strong> angegeben.</li>
	<li>Das Attribut <strong><code>itemid</code></strong> wurde eingeführt, um z.B. auf ISBN-Nummer zu verweisen <strong><code>itemid="urn:isbn:0-330-34032-8"</code></strong>.</li>
</ul>



<p>Über den neuen <a href="http://www.whatwg.org/specs/web-apps/current-work/multipage/semantics.html#itemfor">HTML-Tag</a> <strong><code>&lt;itemref /></code></strong> (alternativ: <strong><code>&lt;itemfor /></code></strong>) werde ich im zweiten Teil von &#8222;<em>Microdata – wie Microformats bloß besser…</em>&#8220; eingehen (<a href="https://notiz.blog/2009/08/10/microdata-wie-microformats-bloss-besser-teil-1/">zum ersten Teil</a>).</p>



<p>Jetzt muss ich nur noch meine alten Artikel zu Microdata anpassen&#8230; das hat man nun davon, wenn man über Drafts berichtet 😉</p>
<p>RSS readers like you are the secret sauce of the internet. Keep rocking and staying informed!</p>]]></content:encoded>
					
					<wfw:commentRss>https://notiz.blog/2009/10/10/microdata-update-und-usability-studie/feed/</wfw:commentRss>
			<slash:comments>6</slash:comments>
		
		
			</item>
		<item>
		<title>PortableContacts &#8211; Hacks</title>
		<link>https://notiz.blog/2008/09/11/portablecontacts-hacks/</link>
					<comments>https://notiz.blog/2008/09/11/portablecontacts-hacks/#respond</comments>
		
		<dc:creator><![CDATA[Matthias Pfefferle]]></dc:creator>
		<pubDate>Thu, 11 Sep 2008 14:23:43 +0000</pubDate>
				<category><![CDATA[Open Web]]></category>
		<category><![CDATA[hCard]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[OAuth]]></category>
		<category><![CDATA[OpenID]]></category>
		<category><![CDATA[Portable Contacts]]></category>
		<category><![CDATA[PortableContacts]]></category>
		<category><![CDATA[vCard]]></category>
		<category><![CDATA[XRDS-Simple]]></category>
		<guid isPermaLink="false">http://notizblog.org/?p=1135</guid>

					<description><![CDATA[David Recordon stellt auf O&#8217;Reilly &#8211; 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&#8217;s homepage which is full of Microformats, they&#8217;ve built an API that extracts his [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p><a href="https://web.archive.org/web/20170405155751/http://radar.oreilly.com/davidr">David Recordon</a> stellt auf O&#8217;Reilly &#8211; Radar zwei der spannendsten Ergebnisse des gestrigen <a href="http://upcoming.yahoo.com/event/1078491/">PortableContacts Hackathon (bei Six Apart)</a> vor:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
	<p>Joseph Smarr and <a href="http://kevinmarks.com/">Kevin Marks</a> of Google hacked together a web transformer that integrates Microformats, vCard, and the Portable Contacts API. Given Kevin&#8217;s homepage which is full of Microformats, they&#8217;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&#8217;s own page, but his Twitter profile as well which contains basic profile information such as name, homepage, and a short bio.</p>
</blockquote>



<p>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 <em>höherwertige</em> APIs integriert werden können&#8230; also keine hCard wurde umsonst geschrieben 🙂</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
	<p><a href="https://web.archive.org/web/20080120192815/http://brianellin.com/">Brian Ellin</a> 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.</p>
</blockquote>



<p>Dazu brauche ich nicht mehr sagen, als: Implementieren! Sofort und überall 😉</p>
<p>RSS readers like you are the secret sauce of the internet. Keep rocking and staying informed!</p>]]></content:encoded>
					
					<wfw:commentRss>https://notiz.blog/2008/09/11/portablecontacts-hacks/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Wie viel Portabilitiy brauchen wir noch?</title>
		<link>https://notiz.blog/2008/06/30/wie-viel-portabilitiy-brauchen-wir-noch/</link>
					<comments>https://notiz.blog/2008/06/30/wie-viel-portabilitiy-brauchen-wir-noch/#respond</comments>
		
		<dc:creator><![CDATA[Matthias Pfefferle]]></dc:creator>
		<pubDate>Mon, 30 Jun 2008 17:18:58 +0000</pubDate>
				<category><![CDATA[Webkultur]]></category>
		<category><![CDATA[DataPortability]]></category>
		<category><![CDATA[OAuth]]></category>
		<category><![CDATA[OpenSocial]]></category>
		<category><![CDATA[Portable Contacts]]></category>
		<category><![CDATA[vCard]]></category>
		<category><![CDATA[XRDS-Simple]]></category>
		<guid isPermaLink="false">http://notizblog.org/?p=937</guid>

					<description><![CDATA[Gestern bin ich auf das Portable Contacts Projekt gestoßen&#8230; The momentum began building for &#8218;data portability&#8216; last year, and we are now at a point where there is strong support for the principle that users should be in control of their data and have the freedom to access it from across the web. [&#8230;] The [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Gestern bin ich auf das <em><a href="https://web.archive.org/web/20080906133739/http://portablecontacts.net/">Portable Contacts</a></em> Projekt gestoßen&#8230;</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
	<p>The momentum began building for &#8218;data portability&#8216; last year, and we are now at a point where there is strong support for the principle that users should be in control of their data and have the freedom to access it from across the web.</p>
	<p>[&#8230;]</p>
	<p>The goal of Portable Contacts is to make it easier for developers to give their users a secure way to access the address books and friends lists they have built up all over the web.</p>
	<p>[&#8230;]</p>
	<p>&#8230;we&#8217;re using existing standards wherever possible, including vCard, OpenSocial, XRDS-Simple, OAuth, etc.</p>
</blockquote>



<p>&#8230;was für mich nichts anderes als eine <a href="https://notiz.blog/2008/05/13/dataportability-fatigue/">Trotzreaktion</a> auf <a href="https://de.wikipedia.org/wiki/Dataportability#Das_Projekt">Data Portability</a> ist!</p>



<p>Da spricht man von einheitlichen Standards und Portabilität, schafft es aber nicht, gemeinsam an einem Projekt zu arbeiten&#8230; Ich sehe kaum Erleichterung darin, statt verschiedener proprietärer APIs (z.B. Google&#8217;s GData Contacts API oder Microsoft&#8217;s Live Contacts API) wahrscheinlich mind. genauso viele unterschiedliche <em>standard</em> APIs (<a href="https://de.wikipedia.org/wiki/Dataportability#Das_Projekt">Data Portability</a> oder Portable Contacts) implementieren zu müssen!</p>



<p>&#8230;irgendwie ironisch!</p>
<p>You are a true RSS aficionado! While others are drowning in social media noise, you enjoy the simplicity and control of RSS. Congrats!</p>]]></content:encoded>
					
					<wfw:commentRss>https://notiz.blog/2008/06/30/wie-viel-portabilitiy-brauchen-wir-noch/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>hForms &#8211; Semantische Formulare</title>
		<link>https://notiz.blog/2008/06/28/hforms-semantische-formulare/</link>
					<comments>https://notiz.blog/2008/06/28/hforms-semantische-formulare/#comments</comments>
		
		<dc:creator><![CDATA[Matthias Pfefferle]]></dc:creator>
		<pubDate>Sat, 28 Jun 2008 13:09:39 +0000</pubDate>
				<category><![CDATA[Open Web]]></category>
		<category><![CDATA[Addon]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Forms]]></category>
		<category><![CDATA[hCard]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[vCard]]></category>
		<guid isPermaLink="false">http://notizblog.org/?p=921</guid>

					<description><![CDATA[Warum sollte nur die Ausgabe ((X)HTML) semantisch anreichern und die Eingabe vernachlässigen? Beim spielen mit dem hCard-Mappers und der Firefox-Microformats-API kam mir die Idee, auch Formulare semantisch auszuzeichnen&#8230; In dem Artikel Use the new microformats API in your Firefox 3.0 Extensions beschreibt Rob Crowther wie man mit Hilfe der Firefox-Microformats-API eine hCard speichert um sie [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Warum sollte nur die Ausgabe ((X)HTML) semantisch anreichern und die Eingabe vernachlässigen?</p>



<p>Beim <em>spielen</em> mit dem <a href="https://notiz.blog/2008/03/28/hcard-mapper/">hCard-Mappers</a> und der <a href="https://notiz.blog/2008/06/04/microformats-api-in-firefox3-erweiterungen-nutzen/">Firefox-Microformats-API</a> kam mir die Idee, auch Formulare semantisch auszuzeichnen&#8230;</p>



<p>In dem Artikel <em><a href="https://web.archive.org/web/20130516000806/http://www.ibm.com:80/developerworks/xml/library/x-tipffoxmicroapi/">Use the new microformats API in your Firefox 3.0 Extensions</a></em> beschreibt Rob Crowther wie man mit Hilfe der Firefox-Microformats-API eine hCard speichert um sie zum Ausfüllen verschiedener Formulare weiterverwenden zu können.</p>



<p>Das Problem: Das Prinzip funktioniert leider nur bei Formularen die dem festgelegten Aufbau entsprechen. Im Fall des Beispiels wäre das:</p>


<pre class="wp-block-code"><span><code class="hljs language-xml"><span class="hljs-tag">&lt;<span class="hljs-name">h1</span>&gt;</span>hCardFormFiller Target Form<span class="hljs-tag">&lt;/<span class="hljs-name">h1</span>&gt;</span>
<span class="hljs-tag">&lt;<span class="hljs-name">form</span> <span class="hljs-attr">action</span>=<span class="hljs-string">"#"</span> <span class="hljs-attr">method</span>=<span class="hljs-string">"post"</span>&gt;</span>
    <span class="hljs-tag">&lt;<span class="hljs-name">label</span>&gt;</span>Name: <span class="hljs-tag">&lt;<span class="hljs-name">input</span> <span class="hljs-attr">type</span>=<span class="hljs-string">"text"</span> <span class="hljs-attr">id</span>=<span class="hljs-string">"name"</span> /&gt;</span><span class="hljs-tag">&lt;/<span class="hljs-name">label</span>&gt;</span><span class="hljs-tag">&lt;<span class="hljs-name">br</span> /&gt;</span>
    <span class="hljs-tag">&lt;<span class="hljs-name">label</span>&gt;</span>Email: <span class="hljs-tag">&lt;<span class="hljs-name">input</span> <span class="hljs-attr">type</span>=<span class="hljs-string">"text"</span> <span class="hljs-attr">id</span>=<span class="hljs-string">"email"</span> /&gt;</span><span class="hljs-tag">&lt;/<span class="hljs-name">label</span>&gt;</span><span class="hljs-tag">&lt;<span class="hljs-name">br</span> /&gt;</span>
    <span class="hljs-tag">&lt;<span class="hljs-name">label</span>&gt;</span>Home page: <span class="hljs-tag">&lt;<span class="hljs-name">input</span> <span class="hljs-attr">type</span>=<span class="hljs-string">"text"</span> <span class="hljs-attr">id</span>=<span class="hljs-string">"homepage"</span> /&gt;</span><span class="hljs-tag">&lt;/<span class="hljs-name">label</span>&gt;</span><span class="hljs-tag">&lt;<span class="hljs-name">br</span> /&gt;</span>
    <span class="hljs-tag">&lt;<span class="hljs-name">label</span>&gt;</span>Street Address: <span class="hljs-tag">&lt;<span class="hljs-name">input</span> <span class="hljs-attr">type</span>=<span class="hljs-string">"text"</span> <span class="hljs-attr">id</span>=<span class="hljs-string">"address1"</span> /&gt;</span><span class="hljs-tag">&lt;/<span class="hljs-name">label</span>&gt;</span><span class="hljs-tag">&lt;<span class="hljs-name">br</span> /&gt;</span>
    <span class="hljs-tag">&lt;<span class="hljs-name">label</span>&gt;</span>City: <span class="hljs-tag">&lt;<span class="hljs-name">input</span> <span class="hljs-attr">type</span>=<span class="hljs-string">"text"</span> <span class="hljs-attr">id</span>=<span class="hljs-string">"address2"</span> /&gt;</span><span class="hljs-tag">&lt;/<span class="hljs-name">label</span>&gt;</span><span class="hljs-tag">&lt;<span class="hljs-name">br</span> /&gt;</span>
    <span class="hljs-tag">&lt;<span class="hljs-name">label</span>&gt;</span>Region: <span class="hljs-tag">&lt;<span class="hljs-name">input</span> <span class="hljs-attr">type</span>=<span class="hljs-string">"text"</span> <span class="hljs-attr">id</span>=<span class="hljs-string">"city"</span> /&gt;</span><span class="hljs-tag">&lt;/<span class="hljs-name">label</span>&gt;</span><span class="hljs-tag">&lt;<span class="hljs-name">br</span> /&gt;</span>
    <span class="hljs-tag">&lt;<span class="hljs-name">label</span>&gt;</span>Postcode: <span class="hljs-tag">&lt;<span class="hljs-name">input</span> <span class="hljs-attr">type</span>=<span class="hljs-string">"text"</span> <span class="hljs-attr">id</span>=<span class="hljs-string">"postcode"</span> /&gt;</span><span class="hljs-tag">&lt;/<span class="hljs-name">label</span>&gt;</span><span class="hljs-tag">&lt;<span class="hljs-name">br</span> /&gt;</span>
    <span class="hljs-tag">&lt;<span class="hljs-name">input</span> <span class="hljs-attr">type</span>=<span class="hljs-string">"submit"</span> /&gt;</span>
<span class="hljs-tag">&lt;/<span class="hljs-name">form</span>&gt;</span></code></span></pre>


<p>Warum nicht gleich das Formular als hCard-From aufbauen?</p>


<pre class="wp-block-code"><span><code class="hljs language-xml"><span class="hljs-tag">&lt;<span class="hljs-name">form</span> <span class="hljs-attr">action</span>=<span class="hljs-string">"#"</span> <span class="hljs-attr">method</span>=<span class="hljs-string">"post"</span> <span class="hljs-attr">id</span>=<span class="hljs-string">"vcard"</span> &gt;</span>
  <span class="hljs-tag">&lt;<span class="hljs-name">fieldset</span> <span class="hljs-attr">id</span>=<span class="hljs-string">"fn"</span>&gt;</span>
    <span class="hljs-tag">&lt;<span class="hljs-name">legend</span>&gt;</span>Name<span class="hljs-tag">&lt;/<span class="hljs-name">legend</span>&gt;</span>
    <span class="hljs-tag">&lt;<span class="hljs-name">label</span> <span class="hljs-attr">for</span>=<span class="hljs-string">"given-name"</span>&gt;</span>Vorname:<span class="hljs-tag">&lt;/<span class="hljs-name">label</span>&gt;</span>
      <span class="hljs-tag">&lt;<span class="hljs-name">input</span> <span class="hljs-attr">type</span>=<span class="hljs-string">"text"</span> <span class="hljs-attr">id</span>=<span class="hljs-string">"given-name"</span> /&gt;</span>
    <span class="hljs-tag">&lt;<span class="hljs-name">label</span> <span class="hljs-attr">for</span>=<span class="hljs-string">"family-name"</span>&gt;</span>Nachname:<span class="hljs-tag">&lt;/<span class="hljs-name">label</span>&gt;</span>
      <span class="hljs-tag">&lt;<span class="hljs-name">input</span> <span class="hljs-attr">type</span>=<span class="hljs-string">"text"</span> <span class="hljs-attr">id</span>=<span class="hljs-string">"family-name"</span> /&gt;</span>
  <span class="hljs-tag">&lt;/<span class="hljs-name">fieldset</span>&gt;</span>
  <span class="hljs-tag">&lt;<span class="hljs-name">label</span> <span class="hljs-attr">for</span>=<span class="hljs-string">"email"</span>&gt;</span>Email:<span class="hljs-tag">&lt;/<span class="hljs-name">label</span>&gt;</span>
    <span class="hljs-tag">&lt;<span class="hljs-name">input</span> <span class="hljs-attr">type</span>=<span class="hljs-string">"text"</span> <span class="hljs-attr">id</span>=<span class="hljs-string">"email"</span> /&gt;</span>
  <span class="hljs-tag">&lt;<span class="hljs-name">label</span> <span class="hljs-attr">for</span>=<span class="hljs-string">"url"</span>&gt;</span>Homepage:<span class="hljs-tag">&lt;/<span class="hljs-name">label</span>&gt;</span>
    <span class="hljs-tag">&lt;<span class="hljs-name">input</span> <span class="hljs-attr">type</span>=<span class="hljs-string">"text"</span> <span class="hljs-attr">id</span>=<span class="hljs-string">"url"</span> /&gt;</span>
  <span class="hljs-tag">&lt;<span class="hljs-name">fieldset</span> <span class="hljs-attr">id</span>=<span class="hljs-string">"adr"</span>&gt;</span>
    <span class="hljs-tag">&lt;<span class="hljs-name">legend</span>&gt;</span>Adresse<span class="hljs-tag">&lt;/<span class="hljs-name">legend</span>&gt;</span>
    <span class="hljs-tag">&lt;<span class="hljs-name">label</span> <span class="hljs-attr">for</span>=<span class="hljs-string">"street-address"</span>&gt;</span>Straße:<span class="hljs-tag">&lt;/<span class="hljs-name">label</span>&gt;</span>
      <span class="hljs-tag">&lt;<span class="hljs-name">input</span> <span class="hljs-attr">type</span>=<span class="hljs-string">"text"</span> <span class="hljs-attr">id</span>=<span class="hljs-string">"street-address"</span> /&gt;</span>
    <span class="hljs-tag">&lt;<span class="hljs-name">label</span> <span class="hljs-attr">for</span>=<span class="hljs-string">"locality"</span>&gt;</span>Stadt:<span class="hljs-tag">&lt;/<span class="hljs-name">label</span>&gt;</span>
      <span class="hljs-tag">&lt;<span class="hljs-name">input</span> <span class="hljs-attr">type</span>=<span class="hljs-string">"text"</span> <span class="hljs-attr">id</span>=<span class="hljs-string">"locality"</span> /&gt;</span>
    <span class="hljs-tag">&lt;<span class="hljs-name">label</span> <span class="hljs-attr">for</span>=<span class="hljs-string">"region"</span>&gt;</span>Region:<span class="hljs-tag">&lt;/<span class="hljs-name">label</span>&gt;</span>
      <span class="hljs-tag">&lt;<span class="hljs-name">input</span> <span class="hljs-attr">type</span>=<span class="hljs-string">"text"</span> <span class="hljs-attr">id</span>=<span class="hljs-string">"region"</span> /&gt;</span>
    <span class="hljs-tag">&lt;<span class="hljs-name">label</span> <span class="hljs-attr">for</span>=<span class="hljs-string">"postal-code"</span>&gt;</span>Postleitzahl:<span class="hljs-tag">&lt;/<span class="hljs-name">label</span>&gt;</span>
      <span class="hljs-tag">&lt;<span class="hljs-name">input</span> <span class="hljs-attr">type</span>=<span class="hljs-string">"text"</span> <span class="hljs-attr">id</span>=<span class="hljs-string">"postal-code"</span> /&gt;</span>
  <span class="hljs-tag">&lt;/<span class="hljs-name">fieldset</span>&gt;</span>
  <span class="hljs-tag">&lt;<span class="hljs-name">input</span> <span class="hljs-attr">type</span>=<span class="hljs-string">"submit"</span> /&gt;</span>
<span class="hljs-tag">&lt;/<span class="hljs-name">form</span>&gt;</span></code></span></pre>


<p>Das Einheitliche Format für Ein- (Formular) und Ausgabe (Microformats) hätte zur Folge, dass keine aufwendigen Mapper (wie z.B. <a href="https://notiz.blog/2008/03/28/hcard-mapper/">hCard-Mapper</a>) mehr nötig wären um ein Formular per <a href="http://microformats.org/wiki/hCard">hCard</a> auszufüllen&#8230;</p>



<p>Schöne neue Welt 🙂</p>
<p>RSS readers like you are the secret sauce of the internet. Keep rocking and staying informed!</p>]]></content:encoded>
					
					<wfw:commentRss>https://notiz.blog/2008/06/28/hforms-semantische-formulare/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>Microformats und das iPhone &#8211; Es könnte so einfach sein</title>
		<link>https://notiz.blog/2008/06/20/microformats-und-das-iphone-es-koennte-so-einfach-sein/</link>
					<comments>https://notiz.blog/2008/06/20/microformats-und-das-iphone-es-koennte-so-einfach-sein/#comments</comments>
		
		<dc:creator><![CDATA[Matthias Pfefferle]]></dc:creator>
		<pubDate>Fri, 20 Jun 2008 06:59:28 +0000</pubDate>
				<category><![CDATA[Open Web]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[bookmarklet]]></category>
		<category><![CDATA[FediBlog]]></category>
		<category><![CDATA[hCalendar]]></category>
		<category><![CDATA[hCard]]></category>
		<category><![CDATA[iCalendar]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[vCard]]></category>
		<guid isPermaLink="false">http://notizblog.org/?p=918</guid>

					<description><![CDATA[Eigentlich bringt das iPhone, mit WLAN und einem (fast) vollwertigen Safari, die besten Voraussetzungen um Microformats zu verarbeiten. Nach der Frage von Rauno&#8230; [&#8230;] Weißt du von einer Möglichkeit, Microformats aus Firefox in den iPhonekalender zu exportieren? [&#8230;] und nach Wojteks Kommentar&#8230; [&#8230;] I prefer bookmarklets but this will come handy for sure too. [&#8230;] [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Eigentlich bringt das <a href="http://www.apple.com/de/iphone/">iPhone</a>, mit WLAN und einem (fast) vollwertigen Safari, die besten Voraussetzungen um Microformats zu verarbeiten.</p>



<p>Nach der Frage von <a href="https://notiz.blog/2007/10/26/iwphone-update/#comment-8987">Rauno</a>&#8230;</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
	<p>[&#8230;] Weißt du von einer Möglichkeit, Microformats aus Firefox in den iPhonekalender zu exportieren? [&#8230;]</p>
</blockquote>



<p>und nach <a href="https://notiz.blog/2008/06/17/hcard-validator-script-for-operator/#comment-9068">Wojteks</a> Kommentar&#8230; </p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
	<p>[&#8230;] I prefer bookmarklets but this will come handy for sure too. [&#8230;]</p>
</blockquote>



<p>habe ich mir überlegt, es sollte doch möglich sein, <a href="http://microformats.org/">Microformats</a> mit einem <a href="https://de.wikipedia.org/wiki/Bookmarklet">Bookmarklet</a> direkt auf dem iPhone nutzbar zu machen&#8230;</p>



<p>Prinzip ist einfach, Bookmarklet (z.B. von <a href="https://notiz.blog/2007/06/23/microformats-bookmarklet/">Leftlogic</a> oder <a href="https://web.archive.org/web/20091002090934/http://technorati.com:80/contacts">Technorati</a>) im <em>normalen</em> Safari Bookmarken, iPhone Safari mit normalem Safari über iTunes syncen, das wars&#8230; (wem das zu schnell ging kann sich das <a href="https://web.archive.org/web/20110924043958/http://blog.delicious.com:80/blog/2008/01/using-delicious-on-your-iphone.html">hier</a> nochmal in Ruhe am Beispiel eines <a href="http://del.icio.us">del.icio.us</a> Bookmarklets anschauen.)</p>



<p>Das Bookmarklet funktioniert super:</p>



<figure class="wp-block-image aligncenter"><img decoding="async" src="https://notiz.blog/wp-content/uploads/2008/06/img-0056.jpg" alt="IMG_0056.JPG" /></figure>



<p>&#8230;aber der §$%!&amp; <a href="http://www.apple.com/iphone/features/safari.html">iPhone Safari</a> kann keine vCard oder iCalendar Dateien verarbeiten!</p>



<figure class="wp-block-image aligncenter"><img decoding="async" src="https://notiz.blog/wp-content/uploads/2008/06/img-0057.jpg" alt="IMG_0057.JPG" /></figure>



<p>Mach ich irgendwas falsch? Sogar mein popliges Sony Ericsson Handy erkennt vCards und weiß dass sie ins Adress-Buch gehören!</p>



<p>Naja&#8230; Wie schon im Titel erwähnt: <em>Es <strong>könnte</strong> so einfach sein</em>.</p>



<p>(Dickes Danke an Florian (.dean) fürs testen und die Screenshots und an Marco, dessen iPhone ich kurz entführen durfte)</p>
<p>Thanks for reading this post via RSS. RSS is great, and you’re great for using it. ♥️</p>]]></content:encoded>
					
					<wfw:commentRss>https://notiz.blog/2008/06/20/microformats-und-das-iphone-es-koennte-so-einfach-sein/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
			</item>
		<item>
		<title>Bluetooth-Export für Microformats</title>
		<link>https://notiz.blog/2008/05/25/bluetooth-export-fuer-microformats/</link>
					<comments>https://notiz.blog/2008/05/25/bluetooth-export-fuer-microformats/#respond</comments>
		
		<dc:creator><![CDATA[Matthias Pfefferle]]></dc:creator>
		<pubDate>Sun, 25 May 2008 13:04:31 +0000</pubDate>
				<category><![CDATA[Open Web]]></category>
		<category><![CDATA[Bluetooth]]></category>
		<category><![CDATA[FediBlog]]></category>
		<category><![CDATA[handy]]></category>
		<category><![CDATA[hCalendar]]></category>
		<category><![CDATA[hCard]]></category>
		<category><![CDATA[iCalendar]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[vCard]]></category>
		<guid isPermaLink="false">http://notizblog.org/?p=879</guid>

					<description><![CDATA[Vor ungefähr einem Jahr habe ich schonmal über einen Microformats Bluetooth-Export mit Hilfe von Tails-Export geschrieben. Da sich aber nach und nach der Operator als DAS Microformats-Addon für den Firefox durchgesetzt hat, wurde natürlich auch das Bluetooth-Script portiert. Das Mac-Script findet man auf der Seite von Michael Kaply (direkter Link). “Send to Bluetooth Device” action [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Vor ungefähr einem Jahr habe ich schonmal über einen <a href="https://notiz.blog/2007/05/19/microformats-und-bluetooth/">Microformats Bluetooth-Export mit Hilfe von Tails-Export</a> geschrieben. Da sich aber nach und nach der <a href="https://web.archive.org/web/20101120155908/http://kaply.com:80/weblog/operator/">Operator</a> als <strong>DAS</strong> Microformats-Addon für den Firefox durchgesetzt hat, wurde natürlich auch das Bluetooth-Script portiert.</p>



<p>Das Mac-Script findet man auf der Seite von Michael Kaply (<a href="https://web.archive.org/web/20071005023316/http://www.kaply.com/weblog/wp-content/uploads/2007/05/bluetooth.js">direkter Link</a>).</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
	<p>“Send to Bluetooth Device” action for sending ICS and VCF files via Bluetooth. Works with the hCard and hCalendar microformats.</p>
</blockquote>



<p>&#8230;und seit letztem Monat gibt es auch ein <a href="http://www.ts0.com/2008/04/microformats-to-bluetooth.asp">Windows-Script</a> von Thom Shannon (<a href="http://www.ts0.com/bluetoothwin.js">direkter Link</a>).</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
	<p>I&#8217;ve modified the Mac only bluetooth user script for operator to work on windows. It&#8217;s based on this script, and originally inspired by Johns hack of Tails.</p>
</blockquote>
<p>Hey there, RSS reader! You’re cool. Keep being awesome! 😎</p>]]></content:encoded>
					
					<wfw:commentRss>https://notiz.blog/2008/05/25/bluetooth-export-fuer-microformats/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>RDFa Basics</title>
		<link>https://notiz.blog/2008/03/02/rdfa-basics/</link>
					<comments>https://notiz.blog/2008/03/02/rdfa-basics/#comments</comments>
		
		<dc:creator><![CDATA[Matthias Pfefferle]]></dc:creator>
		<pubDate>Sun, 02 Mar 2008 13:58:54 +0000</pubDate>
				<category><![CDATA[Open Web]]></category>
		<category><![CDATA[hCard]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[RDF]]></category>
		<category><![CDATA[RDFa]]></category>
		<category><![CDATA[Triples]]></category>
		<category><![CDATA[vCard]]></category>
		<guid isPermaLink="false">http://notizblog.org/2008/03/02/rdfa-basics/</guid>

					<description><![CDATA[Wer sich viel mit Microformats beschäftigt, ist sicher schon öfters über den Begriff RDFa gestolpert. Die Idee, (X)HTML semantischer zu machen, ist bei beiden Formaten gleich, der Unterschied liegt hauptsächlich in der Syntax. Während Microformats ausschließlich auf HTML 4.01 bzw. XHTML 1.0 validen Tags und Attributen basiert: Beispiel hCard &#8230;basiert RDFa auf dem klassischen RDF [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Wer sich viel mit <a href="http://microformats.org">Microformats</a> beschäftigt, ist sicher schon öfters über den Begriff RDFa gestolpert. Die Idee, (X)HTML semantischer zu machen, ist bei beiden Formaten gleich, der Unterschied liegt hauptsächlich in der Syntax.<br> Während Microformats ausschließlich auf HTML 4.01 bzw. XHTML 1.0 validen Tags und Attributen basiert:</p>


<pre class="wp-block-code"><span><code class="hljs language-xml"><span class="hljs-tag">&lt;<span class="hljs-name">div</span> <span class="hljs-attr">class</span>=<span class="hljs-string">"vcard"</span>&gt;</span>
  <span class="hljs-tag">&lt;<span class="hljs-name">span</span> <span class="hljs-attr">class</span>=<span class="hljs-string">"fn"</span>&gt;</span>Max Mustermann<span class="hljs-tag">&lt;/<span class="hljs-name">span</span>&gt;</span>
  <span class="hljs-tag">&lt;<span class="hljs-name">a</span> <span class="hljs-attr">class</span>=<span class="hljs-string">"email"</span> <span class="hljs-attr">href</span>=<span class="hljs-string">"mailto:max.mustermann@example.org"</span>&gt;</span>
    max.mustermann@example.org
  <span class="hljs-tag">&lt;/<span class="hljs-name">a</span>&gt;</span>
<span class="hljs-tag">&lt;/<span class="hljs-name">div</span>&gt;</span></code></span></pre>


<p>Beispiel <a href="http://microformats.org/wiki/hCard">hCard</a></p>



<p>&#8230;basiert RDFa auf dem klassischen <a href="http://www.w3.org/TR/rdf-primer/"><abbr title="Resource Description Framework">RDF</abbr></a> und mit XHTML 2.0 neu eingeführten Attributen wie z.B. <code>property</code> und <code>about</code>:</p>


<pre class="wp-block-code"><span><code class="hljs language-xml"><span class="hljs-tag">&lt;<span class="hljs-name">body</span> <span class="hljs-attr">xmlns:contact</span>=<span class="hljs-string">"http://www.w3.org/2001/vcard-rdf/3.0#"</span>&gt;</span>
  <span class="hljs-tag">&lt;<span class="hljs-name">span</span> <span class="hljs-attr">property</span>=<span class="hljs-string">"contact:fn"</span>&gt;</span>Max Mustermann<span class="hljs-tag">&lt;/<span class="hljs-name">span</span>&gt;</span>
  <span class="hljs-tag">&lt;<span class="hljs-name">a</span> <span class="hljs-attr">rel</span>=<span class="hljs-string">"contact:email"</span> <span class="hljs-attr">href</span>=<span class="hljs-string">"mailto:max.mustermann@example.org"</span>&gt;</span>
    max.mustermann@example.org
  <span class="hljs-tag">&lt;/<span class="hljs-name">a</span>&gt;</span>
<span class="hljs-tag">&lt;/<span class="hljs-name">body</span>&gt;</span></code></span></pre>


<p>Beispiel <a href="http://www.w3.org/TR/vcard-rdf">vCard RDF</a> in <a href="http://www.w3.org/TR/xhtml-rdfa-primer/#publishing-contact-info">RDFa</a></p>



<p>Eine gute Einführung in das Thema RDFa bietet das Video von Manu Sporny:</p>



<figure class="wp-block-embed-youtube alignwide wp-block-embed is-type-video is-provider-youtube wp-embed-aspect-4-3 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">
<span class="embed-privacy-url"><a href="https://www.youtube.com/watch?v=ldl0m-5zLz4">Eingebetteten Inhalt von YouTube öffnen</a></span>
</div></figure>



<p>Rein Technisch gesehen ist RDFa, durch die Nutzung von Namespaces und die bessere Skalierbarkeit durch URIs, definitiv der bessere Standard. Ich denke trotzdem nicht dass RDFa die Microformats in näherer Zukunft ablösen wird, da RDFa nur unter XHTML 2.0 möglich ist und (meines Wissens) im Konkurrenz-Format (X)HTML 5.0 nicht angedacht wird. Es ist deshalb notwendig beide Formate weiter voranzutreiben und so weit wie möglich auf einem einheitlichen Standard, wie z.B. der vCard im oben beschriebenen Beispiel, aufzubauen. Während der Übergangsphase ist es so relativ einfach mit <a href="http://www.w3.org/TR/grddl/"><abbr title="Gleaning Resource Descriptions from Dialects of Languages">GRDDL</abbr></a> zwischen den beiden Formaten zu transformieren.</p>



<p>In seinem Artikel &#8222;<a href="https://web.archive.org/web/20130531033506/http://evan.prodromou.name:80/RDFa_vs_microformats">RDFa vs microformats</a>&#8220; beschreibt Evan Prodromou die für ihn notwendigen Schritte für die Zukunft von RDFa:</p>



<ol class="wp-block-list"><li>RDFa gets acknowledged and embraced by microformats.org as the future of semantic-data-in-XHTML</li><li>The RDFa group makes an effort to encompass existing microformats with a minimum of changes</li><li>microformats.org leaders join in on the RDFa authorship process</li><li>microformats.org becomes a focus for developing real-world RDFa vocabularies</li></ol>



<p>Mal schauen wie es wirklich kommt und was sich in Zukunft durchsetzen wird&#8230;</p>



<p>Wer sich für das Thema interessiert, kann ja mal <a href="https://web.archive.org/web/20160502022446/http://sioc-project.org:80/firefox">Semantic Radar für Firefox</a> ausprobieren. Semantic Radar macht (ähnlich wie Operator für Microformats) RDF und RDFa Inhalte in Webseiten sichtbar.</p>
<p>You are a master of efficiency! By using RSS, you save time and avoid distractions. 👏</p>]]></content:encoded>
					
					<wfw:commentRss>https://notiz.blog/2008/03/02/rdfa-basics/feed/</wfw:commentRss>
			<slash:comments>4</slash:comments>
		
		
			</item>
		<item>
		<title>hCard als Attribute Exchange für OpenID</title>
		<link>https://notiz.blog/2007/11/04/hcard-als-attribute-exchange-fuer-openid/</link>
					<comments>https://notiz.blog/2007/11/04/hcard-als-attribute-exchange-fuer-openid/#comments</comments>
		
		<dc:creator><![CDATA[Matthias Pfefferle]]></dc:creator>
		<pubDate>Sun, 04 Nov 2007 20:34:03 +0000</pubDate>
				<category><![CDATA[Open Web]]></category>
		<category><![CDATA[FediBlog]]></category>
		<category><![CDATA[hCard]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[OpenID]]></category>
		<category><![CDATA[vCard]]></category>
		<guid isPermaLink="false">http://notizblog.org/2007/11/04/hcard-als-attribute-exchange-fuer-openid/</guid>

					<description><![CDATA[&#8222;OpenID ist ein dezentrales System zur Identifizierung&#8220; (WikiPedia). OpenID bietet die Möglichkeit, Login Daten an zentraler Stelle anzugeben und diese als Authentifizierung für andere Webseiten zu verwenden. Simple Registration Extension (kurz SREG) ist eine Erweiterung zu der OpenID Authentifizierung, der einen simplen Profil-&#8222;Austausch&#8220; erlaubt. SREG ist, wie der Name schon sagt, &#8222;nur&#8220; ein Simples Format, [&#8230;]]]></description>
										<content:encoded><![CDATA[
<div class="wp-block-image"><figure class="alignright"><img decoding="async" src="https://notiz.blog/wp-content/uploads/2007/11/openid.png" alt="OpenID Logo"/></figure></div>



<p>&#8222;OpenID ist ein dezentrales System zur Identifizierung&#8220; (<a href="https://de.wikipedia.org/wiki/OpenID">WikiPedia</a>).<br/>
	<a href="http://openid.net/">OpenID</a> bietet die Möglichkeit, Login Daten an zentraler Stelle anzugeben und diese als Authentifizierung für andere Webseiten zu verwenden. <a href="http://openid.net/specs/openid-simple-registration-extension-1_0.html">Simple Registration Extension</a> (kurz SREG) ist eine Erweiterung zu der OpenID Authentifizierung, der einen simplen Profil-&#8222;Austausch&#8220; erlaubt.<br/> SREG ist, wie der Name schon sagt, &#8222;nur&#8220; ein Simples Format, deshalb wurde eine Erweiterung mit dem Namen <a href="http://openid.net/specs/openid-attribute-exchange-1_0-07.html">Attribute Exchange</a> (AX), welches wesentlich mehr Informationen beinhaltet, entwickelt.</p>



<p><a href="https://factoryjoe.com/">Chris Messina</a> stellt sich in seinem Artikel &#8222;<a href="http://factoryjoe.com/blog/2007/11/01/hcard-for-openid-simple-registration-and-attribute-exchange/">hCard for OpenID Simple Registration and Attribute Exchange</a>&#8220; die Frage warum bei der Definition der ersten <a href="https://web.archive.org/web/20110714025426/http://www.axschema.org:80/types/"><abbr title="Attribute Exchange">AX</abbr>-Typen</a> (genauso wie bei SREG) versucht wird, Profil-Daten neu zu definieren, anstatt auf bestehende Standards wie die vCard (<a href="https://datatracker.ietf.org/doc/html/rfc2426">RFC2426</a>) zurück zu greifen. Er argumentiert sein Anliegen mit der weiten Verbreitung der vCard und seines XHTML Pendants der <a href="http://microformats.org/wiki/hCard">hCard</a>:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>Most importantly, however, hcard and vcard is already widely supported in existing applications like Outlook, Mail.app and just about every mobile phone on the planet and in just about any other application that exchanges profile data.</p></blockquote>



<p>Chris hat sich die Mühe gemacht, die drei Standards einander gegenüber zu stellen:<br/></p>



<span id="more-636"></span>



<table class="wp-block-table"><thead><tr><th>Attribute</th><th>SREG</th><th>AX</th><th>vCard</th></tr></thead><tbody><tr><th>Nickname</th><td><code>nickname</code></td><td><code>namePerson/friendly</code></td><td><code>nickname</code></td></tr><tr><th>Full Name</th><td><code>fullname</code></td><td><code>namePerson</code></td><td><code>n (family-name, given-name)</code> <a href="http://microformats.org/wiki/hcard#Implied_.22n.22_Optimization%22">or</a> <code>fn</code></td></tr><tr><th>Birthday</th><td><code>dob</code></td><td><code>birthDate</code></td><td><code>bday</code></td></tr><tr><th>Gender</th><td><code>gender</code></td><td><code>gender</code></td><td><code>gender</code></td></tr><tr><th>Email</th><td><code>email</code></td><td><code>contact/email</code></td><td><code>email</code></td></tr><tr><th>Postal Code</th><td><code>postcode</code></td><td><code>contact/postalCode/home</code></td><td><code>postal-code</code></td></tr><tr><th>Country</th><td><code>country</code></td><td><code>contact/country/home</code></td><td><code>country-name</code></td></tr><tr><th>Language</th><td><code>language</code></td><td><code>pref/language</code></td><td>N/A</td></tr><tr><th>Timezone</th><td><code>timezone</code></td><td><code>pref/timezone</code></td><td><code>tz</code></td></tr><tr><th>Photo</th><td>N/A</td><td><code>media/image/default</code></td><td><code>photo</code></td></tr><tr><th>Company</th><td>N/A</td><td><code>company/name</code></td><td><code>org</code></td></tr><tr><th>Biography</th><td>N/A</td><td><code>media/biography</code></td><td><code>note</code></td></tr><tr><th>URL</th><td>N/A</td><td><code>contact/web/default</code></td><td><code>URL</code></td></tr></tbody></table>



<p><ins>Update: Chris Messina hat eine vollständige Liste der Attribute im <a href="https://microformats.org/wiki/attribute-exchange">Microformats Wiki</a> erstellt.</ins></p>



<p><abbr title="Attribute Exchange">AX</abbr> und vCard/hCard haben zwar weitestgehend die gleichen Attribute, unterscheiden sich jodoch in der Bezeichnung, was es Entwicklern unnötig schwer macht, die verschiedenen Formate zu implementieren.</p>



<p><a href="https://tantek.com/">Tantek Çelik</a> (einer der Microformats Ur-Väter) beschäftigt sich weiter mit dem Problem und <a href="https://tantek.com/log/2007/11.html#d02t2318">definiert mögliche Schritte</a> um die hCard als Attribute Exchange für OpenID zu verwenden:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>URLs for properties.</strong> Every SREG property has a URL in its Attribute Exchange (AX) version that defines that property. hCard does too, through the hCard profile. However, there are two differences which may be seen as shortcomings. Currently the hCard profile on microformats.org is in a wiki, and not proper XMDP (there is an hCard XMDP profile at W3C that some are using), and, URLs for specific properties use # fragment identifiers.</p></blockquote>



<p>Soweit ich das ganze verstanden habe ist AX sowieso eine weitgehend offene Definition, welche es ermöglicht Typen über URIs zu definieren. D.h. es sollte möglich sein z.B. den vCard/hCard-Typ <code>fn</code> folgendermassen zu implementieren:</p>


<pre class="wp-block-code"><span><code class="hljs language-javascript">openid.ax.type.fn=http:<span class="hljs-comment">//microformats.org/profile/hcard#fn</span></code></span></pre>


<p>Bitte korrigiert mich falls ich etwas falsch verstanden habe.</p>



<p>Ich finde die Idee, Microformats für OpenID einzusetzen, sehr gut und bin generell für die Nutzung von offenen Standards. Je höher die Wiederverwendbarkeit von Standards, desdo geringer der ist die Barriere sie einzusetzen. Jeder der schon mehr als ein fremdes System über eine proprietäre API angebunden hat wird mir da sicher zustimmen.</p>



<p>Weiterführende Informationen:</p>



<ul class="wp-block-list">
	<li><a href="http://microformats.org/wiki/openid-brainstorming">OpenID Brainstorming im Microformats Wiki</a></li>
</ul>
<p>Thanks for reading this post via RSS. RSS is great, and you’re great for using it. ♥️</p>]]></content:encoded>
					
					<wfw:commentRss>https://notiz.blog/2007/11/04/hcard-als-attribute-exchange-fuer-openid/feed/</wfw:commentRss>
			<slash:comments>5</slash:comments>
		
		
			</item>
		<item>
		<title>vCard Explorer</title>
		<link>https://notiz.blog/2007/09/18/vcard-explorer/</link>
					<comments>https://notiz.blog/2007/09/18/vcard-explorer/#comments</comments>
		
		<dc:creator><![CDATA[Matthias Pfefferle]]></dc:creator>
		<pubDate>Tue, 18 Sep 2007 06:38:32 +0000</pubDate>
				<category><![CDATA[Open Web]]></category>
		<category><![CDATA[hCard]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[Mikroformate]]></category>
		<category><![CDATA[vCard]]></category>
		<guid isPermaLink="false">http://notizblog.org/2007/09/18/vcard-explorer/</guid>

					<description><![CDATA[Der vCard Explorer ist ein kleines Tool (leider nur für den Mac) zum Anzeigen von vCards und hCards, ohne sie direkt in das Adressbuch importieren zu müssen. Weitere Features: Durchsuchen der aktuell geöffneten URL in Safari nach einer hCard Kein Importieren der vCards in das Adressbuch nötig für die Darstellung. Anzeigen der Adresse in Google [&#8230;]]]></description>
										<content:encoded><![CDATA[
<figure class="wp-block-image alignright"><img decoding="async" src="https://notiz.blog/wp-content/uploads/2007/09/vcard-explorer.png" alt="vCard Explorer" /></figure>



<p>Der <a href="https://web.archive.org/web/20090215015323/http://vcardexplorer.corefault.de/">vCard Explorer</a> ist ein kleines Tool (leider nur für den Mac) zum Anzeigen von vCards und hCards, ohne sie direkt in das Adressbuch importieren zu müssen.</p>



<p>Weitere Features:</p>



<ul class="wp-block-list">
	<li>Durchsuchen der aktuell geöffneten URL in Safari nach einer hCard</li>
	<li>Kein Importieren der vCards in das Adressbuch nötig für die Darstellung.</li>
	<li>Anzeigen der Adresse in Google maps</li>
	<li>Importmöglichkeiten von vCard und hCard in das Apple Adressbuch</li>
</ul>



<p>Einige <a href="https://web.archive.org/web/20120517105519/http://vcardexplorer.corefault.de/?screen">Screenshots</a> und einen <a href="https://web.archive.org/web/20120517105519/http://vcardexplorer.corefault.de/?video">Screencast</a> findet man auf der <a href="https://web.archive.org/web/20090215015323/http://vcardexplorer.corefault.de/">offiziellen Homepage</a>.</p>
<p>You are a master of efficiency! By using RSS, you save time and avoid distractions. 👏</p>]]></content:encoded>
					
					<wfw:commentRss>https://notiz.blog/2007/09/18/vcard-explorer/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>X2V with PHP 5</title>
		<link>https://notiz.blog/2007/08/12/x2v-with-php-5/</link>
					<comments>https://notiz.blog/2007/08/12/x2v-with-php-5/#comments</comments>
		
		<dc:creator><![CDATA[Matthias Pfefferle]]></dc:creator>
		<pubDate>Sun, 12 Aug 2007 18:44:31 +0000</pubDate>
				<category><![CDATA[Open Web]]></category>
		<category><![CDATA[hCard]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[vCard]]></category>
		<category><![CDATA[X2V]]></category>
		<guid isPermaLink="false">http://notizblog.org/2007/08/12/x2v-with-php-5/</guid>

					<description><![CDATA[Here are some code snippets to use the gorgeous X2V microformats XSLT files from Brian Suda with PHP 5 and libxslt (PHP 5 includes the XSL extension by default). hCard to vCard: To parse a XML or XHTML document, it has to be valid. To tidy the XML file, you can use a service from [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Here are some code snippets to use the gorgeous <a href="https://suda.co.uk/projects/X2V/">X2V</a> microformats <abbr title="Extensible Stylesheet Language Transformation">XSLT</abbr> files from <a href="https://suda.co.uk/">Brian Suda</a> with PHP 5 and <a href="https://www.php.net/manual/de/book.xsl.php">libxslt</a> (PHP 5 includes the XSL extension by default).</p>



<p><strong>hCard to vCard</strong>:</p>



<p>To parse a XML or XHTML document, it has to be valid. To tidy the XML file, you can use a service from the <a href="http://www.html-tidy.org/">W3C</a>:
</p>


<pre class="wp-block-code"><span><code class="hljs language-php">$xml_string_tidy = file_get_contents(<span class="hljs-string">"http://cgi.w3.org/cgi-bin/tidy?docAddr="</span>.urlencode($uri));</code></span></pre>


<p>Then you have to create the HTML DOM&#8230;
</p>


<pre class="wp-block-code"><span><code class="hljs language-php">@$document = <span class="hljs-keyword">new</span> DOMDocument();
@$document-&gt;loadHTML($xml_string_tidy);</code></span></pre>


<p>and the XSLT DOM&#8230;
</p>


<pre class="wp-block-code"><span><code class="hljs language-php">$stylesheet = <span class="hljs-keyword">new</span> DOMDocument();
$stylesheet-&gt;load(<span class="hljs-string">'hcard2vcard.xsl'</span>);</code></span></pre>


<p>Create a new XSLT Processor, load the Stylesheet&#8230;
</p>


<pre class="wp-block-code"><span><code class="hljs language-php">$processor = <span class="hljs-keyword">new</span> XsltProcessor();
$processor-&gt;importStylesheet($stylesheet);</code></span></pre>


<p>and run the transformation.
</p>


<pre class="wp-block-code"><span><code class="hljs language-php">$result = $processor-&gt;transformToDoc($document);
$str = $result-&gt;saveXML();</code></span></pre>


<p>Now <code>$str</code> contains the transformed code.<br/> To send the vCard header with PHP, try</p>


<pre class="wp-block-code"><span><code class="hljs language-php">header(<span class="hljs-string">"Content-Disposition: attachment; filename=contact.vcf"</span>);
header(<span class="hljs-string">"Content-Type: text/x-vcard; charset=UTF-8 name=contact.vcf"</span>);
<span class="hljs-keyword">echo</span> $str;</code></span></pre>


<p>If you want to use the vCard extension .vcf instead of .php you have to add something like that to your <code>.htaccess</code> file</p>


<pre class="wp-block-code"><span><code class="hljs">RewriteEngine On
RewriteBase /
RewriteRule ^contact.vcf /hcard2vcard.php &#91;L,QSA]</code></span></pre>


<p>I hope it works 🙂</p>
<p>RSS readers like you are the unsung heroes of the internet. Keep up the good work!</p>]]></content:encoded>
					
					<wfw:commentRss>https://notiz.blog/2007/08/12/x2v-with-php-5/feed/</wfw:commentRss>
			<slash:comments>4</slash:comments>
		
		
			</item>
	</channel>
</rss>
