Search
Items tagged with: SemanticHTML
# Microformats: The next generation
microformats.org wird 7… Alles Gute!
Zur Feier des Tages hat sich Frances Berriman die Mühe gemacht, die letzten 7 Jahre zusammen zu fassen und einen Ausblick auf die kommenden Änderungen zu geben.
Da ich, seit ich bloggen kann, schon über Microformats berichte, will ich den Rückblick nicht weiter kommentieren und nur auf die kommende Weiterentwicklung ein wenig eingehen.
Microformats und HTML5
Seit dem ich das letzte mal über diese Kombination geschrieben habe, hat sich leider nicht viel geändert… Die Microformats Community weigert sich weiterhin auf Microdata oder RDFa „upzugraden“ und hält krampfhaft an den semantischen classes
fest. Nichtsdestotrotz macht HTML5 mit <time />
und <data />
dem leidigen Thema abbr-design-pattern
bzw. value-class-pattern
ein Ende. Statt Meta-Informationen umständlich in HTML-Attributen zu verwurschteln, können Termine und GEO Daten bald sauber dargestellt werden:
<time class="dtstart" datetime="2006-09-23">a Saturday</time>...<data class="geo" value="37.386013;-122.082932" >Mountain View</data>Code-Sprache: HTML, XML (xml)
Immerhin! Mehr dazu im microformats-wiki.
Namespaces
Die wohl größten Veränderungen sind aber die geplanten Pseudo-Namespaces welche hauptsächlich das Parsen von Microformats vereinfachen sollen. Microformats waren bisher sehr fehleranfällig, da sie sich die class
-Attribute mit CSS und JavaScript zu teilen hatten. Es besteht immer die Gefahr dass rein für CSS genutzte Attribute fälschlicherweise für Microformats genutzt wurden oder dass die semantischen Class-Names einem Re-Design zum Opfer fielen. Die Prefixes ‚h-
‚, ‚p-
‚, ‚u-
‚, ‚dt-
‚ und ‚e-
‚ sollen das Zukünftig verhindern und ein generisches parsen ermöglichen.
'h-
' kennzeichnet einen Microformats-Container
Bisher ist die Microformats Community etwas inkonsequent mit der Benennung ihrer Formate… Mal mit beginnendem „v“, mal mit „h“ und in seltenen Fällen auch ohne oder mit anderem Buchstaben:
- hCard:
class="vcard"
- hAtom:
class="hfeed"
- adr:
class="adr"
- xFolk:
class="xfolkentry"
- XOXO:
class="xoxo"
Mit den Prefixes soll das jetzt alles vereinheitlicht werden:
- hCard:
class="h-card"
- hAtom:
class="h-feed"
- adr:
class="h-adr"
'p-
' zeichnet Properties aus
Die mit ‚p-
‚ gekennzeichnet Properties sollten, wenn nicht expliziert definiert, als Plain-Text interpretiert werden (kein HTML). Ein klassisches Property ist beispielsweise der Name einer Person:
<div class="h-card"> <span class="p-fn">Tantek Çelik</span></div>Code-Sprache: HTML, XML (xml)
'e-
' zeichnet Rich Text aus
Das ‚e-
‚ Prefix könnte als Abkürzung für „element tree“, „embedded markup“, oder „encapsulated markup“ stehen und kann im Gegansatz zu den Properties auch HTML-Code beinhalten. In hAtom könnte der entry-content
zu e-entry-content
und bei der hReview die description
zur e-description
werden.
'dt-
' für DateTime und 'u-
' für URL
Aus dtstart
wird dt-start
und alle URL-Felder bekommen ein vorgestelltes ‚u-
‚:
<a class="u-url" href="...">...</a><img class="u-photo" src="..." />Code-Sprache: HTML, XML (xml)
Die URL kann in bestimmten Situtionen auch weg fallen, dazu aber im nächsten Beispiel mehr…
Simpel und unabhängig vom Format
Zukünftig soll es auch nicht mehr so umständlich sein Informationen semantisch auszuzeichnen. Will man derzeit einen simplen Link mit einer hCard versehen, muss man ihn wie folgt aufblähen:
<div class="vcard"> <a class="url fn" href="http://tantek.com/">Tantek Çelik</a></div>Code-Sprache: HTML, XML (xml)
Nach der Überarbeitung soll folgendes reichen:
<a class="h-card" href="http://tantek.com/">Tantek Çelik</a>Code-Sprache: HTML, XML (xml)
Dabei gilt die Regel: Wenn es sich bei (z.B.) einer vCard um einen Link oder ein Bild handelt, kann man auf ‚u-*
‚ und ‚p-name
‚ verzichten… so ungefär zumindest 😉
Mehr dazu im Microformats-Wiki: implied properties
Außerdem kommt mit v2 eine Anleitung wie Microformats auf andere Formate wie JSON gemappt werden sollen. Aus…
<a class="h-card" href="http://benward.me">Ben Ward</a>Code-Sprache: HTML, XML (xml)
wird…
[{ "type": ["h-card"], "properties": { "name": ["Frances Berriman"] }}]Code-Sprache: JSON / JSON mit Kommentaren (json)
Fazit
Ich bin mir noch nicht ganz sicher was ich von den geplanten Änderungen halten soll… die Nutzung der neuen HTML5 Tags und die Vereinfachung und Vereinheitlichung der Formate finde ich gut und notwendig… Auch eine einheitliche Regel, wie Microformats in anderen Formaten abgebildet werden sollen (z.B. JSON) macht durchaus Sinn (warum das Sinn macht, hier)… aber den Pseudo-Namespaces kann ich bisher nichts abgewinnen! Der „Namespace“ sorgt zwar für mehr Qualität beim Parsen der Microformats, aber auf Kosten des semantischen HTMLs.
Microformats sollten weiterhin für schönes, semantisches HTML sorgen und mehr nicht. Geht es um maschinenlesbaren Code, sollte man mit der Zeit gehen und auf Microdata oder RDFa setzen. Ob man seinen Quelltext an Microformats v2 anpasst oder mit Schema.org auszeichnet sollte kaum mehr Aufwand sein.
…Übrigens: Wer noch mehr über die Vorteile von Microdata gegenüber Microformats lesen will, sollte sich die Ausgabe 10 des Webstandards-Magazin durchlesen oder die Reihe „Microdata – wie Microformats bloß besser…“ hier im Blog!
#Microformats #Mikroformate #RDFa #SchemaOrg #SemanticHTML
# HTML5 is made for MicroformatsNaja, nicht wirklich aber immerhin hat es RDFa bis dato nicht in die HTML5 Spezifikation geschafft. Es gibt zwar einen Milestone…
The HTML WG is encouraged to provide a mechanism to permit independently developed vocabularies such as Internationalization Tag Set (ITS), Ruby, and RDFa to be mixed into HTML documents.
…aber wer weiß wie lange das noch dauert. Das heißt wohl, dass die Microformats noch eine gewisse Zeit lang als Übergangslösung her halten müssen. Aber das ist ne andere Geschichte…Eigentlich wollte ich auf zwei HTML5 – Elemente eingehen, die eine schicke Alternative zu den bisherigen (in vielen Microformats verwendeten) abbr-design-pattern bietet.
Der <time />-Tag
Das[url=http://www.w3.org/html/wg/html5/#time]time[/url]
Element ermöglicht das kennzeichnen eines Datums in z.B. Blogposts o.Ä.The primary use cases for these elements are for marking up publication dates e.g. in blog entries, and for marking event dates in hCalendar markup.
Also:
<time datetime="2006-09-23">a Saturday</time>Code-Sprache: HTML, XML (xml)
statt:
<abbr title="2006-09-23">a Saturday</abbr>Code-Sprache: HTML, XML (xml)
Ein hCalendar könnte dann so aussehen:
<div class="vevent"> <span class="summary">event title</span> <time datetime="2006-09-23" class="dtstart dtend">a Saturday</time></div>Code-Sprache: HTML, XML (xml)Custom data attributes (data-)
Ein custom data attribute ist ein frei benutzbares Attribut um Elemente mit Metadaten anzureichern. Die einzige Vorgabe ist, dass es mitdata-
beginnen muss. Ein Beispiel:
<div class="monkey" data-arms="2" data-legs="2" data-race="chimp"> Cheetah</div>Code-Sprache: HTML, XML (xml)
Ideal auch als<abbr />
-Ersatz bei z.B. dem Geo-Microformat.Also:
<div class="geo" data-latitude="49.5483" data-longitude="8.6661">Weinheim</div>Code-Sprache: HTML, XML (xml)
statt:
<abbr class="geo" title="49.5483;8.6661">Weinheim</abbr>Code-Sprache: HTML, XML (xml)Fazit
(X)HTML (egal ob XHTML2 mit RDFa oder X/HTML5) wird also definitiv ein semantisches Feuerwerk, ganz im Sinne von Tim Berners Lee…Ich freu mich 🙂
#abbrDesignPattern #GEO #hCalendar #HTML #HTML5 #Microformats #RDFa #SemanticHTML #XHTML
Microformats
Mikroformate sind ein Markup-Format zur semantischen Annotation von HTML oder XHTML. Mikroformat-Annotationen können leicht aus Webseiten extrahiert werden und machen weiteren Programmen (etwa Suchmaschinen) die Bedeutung des Seiteninhalts verständli…notizBlog
# RDFa wird wohl doch in HTML5 integriert
Manu Sporny und die RDFa Task Force haben es doch noch nicht geschafft, Ian Hickson davon zu überzeugen RDFa in HTML5 zu integrieren und versuchen es jetzt im Alleingang. Es gibt auch schon einen ersten Editors Draft von HTML5+RDFa.
Besonders spannend finde ich folgenden Abschnitt aus Manu Spornys Blogpost zu dem neuen Draft:
I specifically did not remove the Microdata section from the HTML5+RDFa specification because it provides competition for RDFa – competition is a good thing. It forces the RDFa Task Force to re-think some assumptions we’ve made and to see if we can provide both backwards-compatibility and some of the features provided via Microformats as well as Ian’s Microdata proposal.
Ich versteh das jetzt mal so, dass endlich beide Parteien verstanden haben die RDFa Task Force verstanden hat dass sowohl RDFa als auch Microformats ihre Daseinsberechtigung haben und Microdata die Vorteile beider Standards schön vereint.
Mal schaun ob ich die Tage mal etwas Zeit finde, die einzelnen Standards nochmal detaillierter Vorzustellen bzw. zu Vergleichen und nochmal zu beschreiben warum die Idee hinter Microdata so großartig ist!
via Manu Sporny
#HTML5 #Microdata #Microformats #posh #RDFa #SemanticHTML
# RDFa BasicsWer 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:
<div class="vcard"> <span class="fn">Max Mustermann</span> <a class="email" href="mailto:max.mustermann@example.org"> max.mustermann@example.org </a></div>Code-Sprache: HTML, XML (xml)
Beispiel hCard…basiert RDFa auf dem klassischen RDF und mit XHTML 2.0 neu eingeführten Attributen wie z.B.
property
undabout
:
<body xmlns:contact="http://www.w3.org/2001/vcard-rdf/3.0#"> <span property="contact:fn">Max Mustermann</span> <a rel="contact:email" href="mailto:max.mustermann@example.org"> max.mustermann@example.org </a></body>Code-Sprache: HTML, XML (xml)
Beispiel vCard RDF in RDFaEine gute Einführung in das Thema RDFa bietet das Video von Manu Sporny:
Inhalt von YouTube anzeigen
Hier klicken, um den Inhalt von YouTube anzuzeigen.
Erfahre mehr in der Datenschutzerklärung von YouTube.Inhalt von YouTube immer anzeigen
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 GRDDL zwischen den beiden Formaten zu transformieren.
In seinem Artikel „RDFa vs microformats“ beschreibt Evan Prodromou die für ihn notwendigen Schritte für die Zukunft von RDFa:
- RDFa gets acknowledged and embraced by microformats.org as the future of semantic-data-in-XHTML
- The RDFa group makes an effort to encompass existing microformats with a minimum of changes
- microformats.org leaders join in on the RDFa authorship process
- microformats.org becomes a focus for developing real-world RDFa vocabularies
Mal schauen wie es wirklich kommt und was sich in Zukunft durchsetzen wird…
Wer sich für das Thema interessiert, kann ja mal Semantic Radar für Firefox ausprobieren. Semantic Radar macht (ähnlich wie Operator für Microformats) RDF und RDFa Inhalte in Webseiten sichtbar.
#hCard #Microformats #RDF #RDFa #Triples #vCard
# Microdata – Semantisches HTML5
Der Inhalt wure an die neusten Änderungen der Microdata-Spezifikation angepasst. Letztes Update 30.01.2010.
In dem Punkt, dass HTML semantischer werden muss, ist sich die Web-Welt einig, nur das „Wie“ ist noch nicht ganz klar. Aus verschiedenen Gründen (die alle sehr, sehr technisch sind) ist die WHATWG-Community bzw. Ian Hickson im speziellen, nicht sehr begeistert von dem bisherigen De-facto-Standard RDFa und hat deshalb vor ein paar Wochen Microdata als eine mögliche Alternative vorgestellt.
Microdata-Objekte bestehen eigentlich nur aus einer Vielzahl von Key/Value-Paaren. Ein Object wird durch einen umschließenden HTML-Tag mit einem itemscope
-Attribut gekennzeichnet und hat mehrere Properties ausgezeichnet durch itemprop
-Attribute.
<div itemscope> <p>Mein Name ist <span itemprop="name">Matthias</span>.</p></div>Code-Sprache: HTML, XML (xml)
Microdata ist für mich die gelungene Weiterentwicklung der Microformats-Idee unter Berücksichtigung von RDFa und prinzipiell lassen sich auch beide Standards mit Microdata umsetzen. Wie generell von HTML5 gewohnt, kann man auch Microdata auf viele verschiedene Weisen benutzen ohne den Standard zu verletzen.
Microdata im Microformats-Stil
Um z.B. eine hCard mit Microdata abzubilden muss man eigentlich nur die bisher verwendeten class
durch itemprop
-Attribute zu ersetzen und mit itemtype
das Format festlegen.
<div itemscope itemtype="http://microformats.org/profile/hcard"> <span itemprop="fn">Matthias Pfefferle</span> <img itemprop="photo" src="avatar.png" alt="Avatar" /></div>Code-Sprache: HTML, XML (xml)
HTML5 und Microdata bieten außerdem eine ganze Reihe weiterer Tags und Attribute die alle bisherigen Microformats-Probleme beheben sollten. Aber darauf werde ich in einem extra Artikel noch detaillierter darauf eingehen.
Microdata im RDFa-Stil
item
und itemprop
können aber auch durch URIs (ähnlich wie RDFa) ausgezeichnet werden und würden sich dadurch relativ leicht (durch z.B. GRDDL) in klassisches RDF konvertieren lassen.
<div itemscope itemtype="http://www.w3.org/2001/vcard-rdf/3.0#"> <span itemprop="http://www.w3.org/2001/vcard-rdf/3.0#fn"> Matthias Pfefferle </span> <img itemprop="http://www.w3.org/2001/vcard-rdf/3.0#photo" src="avatar.png" alt="Avatar" /></div>Code-Sprache: HTML, XML (xml)
Fazit
Trotz anfänglicher Skepsis bin ich immer begeisterter von dem neuen HTML5 Draft! Microdata fühlt sich einfach viel mehr nacht HTML an…
<div itemscope itemtype="http://microformats.org/profile/hcard"> <a itemprop="url" href="https://notiz.blog"> <span itemprop="fn">Matthias Pfefferle</span> </a></div>Code-Sprache: HTML, XML (xml)
…als RDFa.
<div xmlns:foaf="http://xmlns.com/foaf/0.1/"> <span typeof="foaf😛erson"> <a property="foaf:name" rel="foaf:homepage" href="https://notiz.blog"> Matthias </a> </span></div>Code-Sprache: HTML, XML (xml)
Trotzdem hoffe ich, dass man sich doch noch irgendwie einigen kann und sich vielleicht in der Mitte trifft. Zwei neue HTML-Spezifikationen (XHTML2 & (X)HTML5) sind schon verwirrend genug, da brauchen wir nicht auch noch zwei unterschiedliche Semantik-HTML-Standards
#HTML5 #Microdata #Microformats #Mikroformate #posh #RDFa #SemanticHTML
# Microdata: Update und Usability-StudieEndlich denkt beim Thema „Usability“ 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.
<address itemscope itemtype="http://microformats.org/profile/hcard"> <strong itemprop="fn">Alfred Person</strong> <span itemprop="adr" itemscope> <span itemprop="street-address">1600 Amphitheatre Parkway</span> <br> <span itemprop="street-address">Building 43, Second Floor</span> <br> <span itemprop="locality">Mountain View</span>, <span itemprop="region">CA</span> <span itemprop="postal-code">94043</span> </span></address>Code-Sprache: HTML, XML (xml)
Die Änderungen:
- Aus
item
wirditemscope
.- Der Typ wird über
itemtype
und nicht mehr überitem
bzw.itemscope
angegeben.- Das Attribut
itemid
wurde eingeführt, um z.B. auf ISBN-Nummer zu verweisenitemid="urn:isbn:0-330-34032-8"
.Über den neuen HTML-Tag
<itemref />
(alternativ:<itemfor />
) werde ich im zweiten Teil von „Microdata – wie Microformats bloß besser…“ eingehen (zum ersten Teil).Jetzt muss ich nur noch meine alten Artikel zu Microdata anpassen… das hat man nun davon, wenn man über Drafts berichtet 😉
#hCard #HTML #HTML5 #Microdata #Microformats #RDFa #update #Usability #vCard #XHTML
# HTML5 is made for Microformats
Naja, nicht wirklich aber immerhin hat es RDFa bis dato nicht in die HTML5 Spezifikation geschafft. Es gibt zwar einen Milestone…
The HTML WG is encouraged to provide a mechanism to permit independently developed vocabularies such as Internationalization Tag Set (ITS), Ruby, and RDFa to be mixed into HTML documents.
…aber wer weiß wie lange das noch dauert. Das heißt wohl, dass die Microformats noch eine gewisse Zeit lang als Übergangslösung her halten müssen. Aber das ist ne andere Geschichte…
Eigentlich wollte ich auf zwei HTML5 – Elemente eingehen, die eine schicke Alternative zu den bisherigen (in vielen Microformats verwendeten) abbr-design-pattern bietet.
Der <time />-Tag
Das [url=http://www.w3.org/html/wg/html5/#time]time[/url]
Element ermöglicht das kennzeichnen eines Datums in z.B. Blogposts o.Ä.
The primary use cases for these elements are for marking up publication dates e.g. in blog entries, and for marking event dates in hCalendar markup.
Also:
<time datetime="2006-09-23">a Saturday</time>Code-Sprache: HTML, XML (xml)
statt:
<abbr title="2006-09-23">a Saturday</abbr>Code-Sprache: HTML, XML (xml)
Ein hCalendar könnte dann so aussehen:
<div class="vevent"> <span class="summary">event title</span> <time datetime="2006-09-23" class="dtstart dtend">a Saturday</time></div>Code-Sprache: HTML, XML (xml)
Custom data attributes (data-)
Ein custom data attribute ist ein frei benutzbares Attribut um Elemente mit Metadaten anzureichern. Die einzige Vorgabe ist, dass es mit data-
beginnen muss. Ein Beispiel:
<div class="monkey" data-arms="2" data-legs="2" data-race="chimp"> Cheetah</div>Code-Sprache: HTML, XML (xml)
Ideal auch als <abbr />
-Ersatz bei z.B. dem Geo-Microformat.
Also:
<div class="geo" data-latitude="49.5483" data-longitude="8.6661">Weinheim</div>Code-Sprache: HTML, XML (xml)
statt:
<abbr class="geo" title="49.5483;8.6661">Weinheim</abbr>Code-Sprache: HTML, XML (xml)
Fazit
(X)HTML (egal ob XHTML2 mit RDFa oder X/HTML5) wird also definitiv ein semantisches Feuerwerk, ganz im Sinne von Tim Berners Lee…
Ich freu mich 🙂
#abbrDesignPattern #GEO #hCalendar #HTML #HTML5 #Microformats #RDFa #SemanticHTML #XHTML
# HTML5 is made for MicroformatsNaja, nicht wirklich aber immerhin hat es RDFa bis dato nicht in die HTML5 Spezifikation geschafft. Es gibt zwar einen Milestone…
The HTML WG is encouraged to provide a mechanism to permit independently developed vocabularies such as Internationalization Tag Set (ITS), Ruby, and RDFa to be mixed into HTML documents.
…aber wer weiß wie lange das noch dauert. Das heißt wohl, dass die Microformats noch eine gewisse Zeit lang als Übergangslösung her halten müssen. Aber das ist ne andere Geschichte…Eigentlich wollte ich auf zwei HTML5 – Elemente eingehen, die eine schicke Alternative zu den bisherigen (in vielen Microformats verwendeten) abbr-design-pattern bietet.
Der <time />-Tag
Das[url=http://www.w3.org/html/wg/html5/#time]time[/url]
Element ermöglicht das kennzeichnen eines Datums in z.B. Blogposts o.Ä.The primary use cases for these elements are for marking up publication dates e.g. in blog entries, and for marking event dates in hCalendar markup.
Also:
<time datetime="2006-09-23">a Saturday</time>Code-Sprache: HTML, XML (xml)
statt:
<abbr title="2006-09-23">a Saturday</abbr>Code-Sprache: HTML, XML (xml)
Ein hCalendar könnte dann so aussehen:
<div class="vevent"> <span class="summary">event title</span> <time datetime="2006-09-23" class="dtstart dtend">a Saturday</time></div>Code-Sprache: HTML, XML (xml)Custom data attributes (data-)
Ein custom data attribute ist ein frei benutzbares Attribut um Elemente mit Metadaten anzureichern. Die einzige Vorgabe ist, dass es mitdata-
beginnen muss. Ein Beispiel:
<div class="monkey" data-arms="2" data-legs="2" data-race="chimp"> Cheetah</div>Code-Sprache: HTML, XML (xml)
Ideal auch als<abbr />
-Ersatz bei z.B. dem Geo-Microformat.Also:
<div class="geo" data-latitude="49.5483" data-longitude="8.6661">Weinheim</div>Code-Sprache: HTML, XML (xml)
statt:
<abbr class="geo" title="49.5483;8.6661">Weinheim</abbr>Code-Sprache: HTML, XML (xml)Fazit
(X)HTML (egal ob XHTML2 mit RDFa oder X/HTML5) wird also definitiv ein semantisches Feuerwerk, ganz im Sinne von Tim Berners Lee…Ich freu mich 🙂
#abbrDesignPattern #GEO #hCalendar #HTML #HTML5 #Microformats #RDFa #SemanticHTML #XHTML