AtomPub

AtomPub
Ein verbreitetes Feed-Icon

Atom wird in der Computertechnik als Überbegriff für zwei Standards genutzt. Während das Atom Syndication Format als ein XML-Format den plattformunabhängigen Austausch von Informationen ermöglicht, wurde das Atom Publishing Protocol (APP, wobei sich AtomPub eingebürgert hat) ersonnen, um das Erstellen und Bearbeiten von Webressourcen auf der Basis von einfachem HTML und XML zu ermöglichen. Atom bietet somit die Möglichkeit, Webinhalte zu bearbeiten und zu verbreiten.

Inhaltsverzeichnis

Atom Syndication Format

Das Syndikationsformat (ASF) ist die am häufigsten anzutreffende Umsetzung der Atom-Standards. ASF möchte die Nachfolge von RSS antreten. Es ist die moderne Form eines Newsletters.

Atom entstand aus dem Bedürfnis heraus, die Vorteile der unterschiedlichen RSS-Formate in einem neuen Format zusammenzufassen und um neue Elemente zu ergänzen. Dabei haben die Entwickler – in überwiegender Mehrzahl Blogger – ASF auch so gestaltet, um den speziellen Bedürfnissen von Weblogs und Nachrichtenseiten gerecht zu werden. Die maßgeblichen Unterstützer von Atom sind in der Industrievereinigung AtomEnabled Alliance organisiert.

Die aktuelle Version des Atom Syndication Formats ist der IETF-Entwurf vom 11. August 2005, welcher von der IESG im August 2005 als Proposed Standard verabschiedet und im Dezember 2005 als RFC 4287 veröffentlicht wurde. Damit ist Atom ein offizieller Internetstandard. Die meisten größeren Feed-Anbieter arbeiten bereits daran, das Format zu unterstützen. Der MIME-Typ von Atom ist application/atom+xml.

Das Aufbereiten von Informationen in ein standardisiertes Austauschformat nennt man auch Aggregation.

Minimales Beispiel

<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <author>
    <name>Autor des Weblogs</name>
  </author>
  <title>Titel des Weblogs</title>
  <id>urn:uuid:60a76c80-d399-11d9-b93C-0003939e0af6</id>
  <updated>2003-12-14T10:20:09Z</updated>
 
  <entry>
    <title>Titel des Weblog-Eintrags</title>
    <link href="http://example.org/2003/12/13/atom-beispiel"/>
    <id>urn:uuid:1225c695-cfb8-4ebb-aaaa-80da344efa6a</id>
    <updated>2003-12-13T18:30:02Z</updated>
    <summary>Zusammenfassung des Weblog-Eintrags</summary>
    <content>Volltext des Weblog-Eintrags</content>
  </entry>
</feed>

Unterschiedliche Inhaltstypen

Die hauptsächliche Besonderheit von Atom gegenüber RSS ist die Möglichkeit, dass bei inhaltstragenden Elementen ausdrücklich angegeben werden kann, in welchem Format die Inhalte kodiert sind. In RSS 2.0 beispielsweise kann im description-Element reiner Text oder maskiertes HTML stehen, ohne dass ein verarbeitendes Programm weiß, worum es sich gerade handelt. Atom fordert eine Eindeutigkeit, indem inhaltstragende Elemente ein type-Attribut bekommen. Neben reinem Text und maskiertem HTML ist es zudem möglich, direkt XHTML-Markup mit Namensraum-Angabe einzubetten. Sinnvoll ist XHTML aber vor allem im content-Element.

Beispiel für reinen Text im title-Element:

<title type="text">Beispieleintrag</title>

Das type-Attribut kann in diesem Fall auch weggelassen werden, da text der Standardwert des Attributs ist.

Beispiel für HTML im summary-Element:

<summary type="html">Beispielzusammenfassung mit
 &lt;strong&gt;wichtigem Text&lt;/strong&gt;</summary>

Die HTML-eigenen Zeichen <, > und & werden mit den Entity-Referenzen &lt;, &gt; und &amp; umschrieben. Alternativ kann der Inhalt in einem CDATA-Abschnitt untergebracht werden:

<summary type="html"><![CDATA[ Beispielzusammenfassung mit
 <strong>wichtigem Text</strong> ]]></summary>

Beispiel für XHTML im content-Element:

<content type="xhtml" xml:base="http://example.org/">
  <div xmlns="http://www.w3.org/1999/xhtml">
    <p>Beispielabsatz mit <strong>wichtigem Text</strong> und einem
    <a href="beispiel">relativen Hyperlink</a>.</p>
  </div>
</content>

Das content-Element bekommt ein div-Element aus dem XHTML-Namensraum als Kind. Darin können weitere XHTML-Elemente direkt notiert werden.

Atom-Programmierschnittstelle

Die Atom-Programmierschnittstelle kann beispielsweise genutzt werden, um mit einer Client-Applikation auf die in einem Weblog-Publikationssystem hinterlegten Inhalte Einfluss zu nehmen.

Funktionsweise

Zur Kommunikation mit dem System wird ein REST Pattern verwendet:

  • GET wird benutzt um Informationen über bereits vorhandene Elemente einzuholen und andere Nur-Lese-Zugriffe auszuführen.
  • PUT wird benutzt, um ein bekanntes Element zu bearbeiten.
  • POST kreiert ein neues, dynamisch benanntes Element.
  • DELETE führt zur Löschung eines Elementes.

Diese Aktionen werden in Verbindung mit den drei hauptsächlichen URIs verwendet, wobei das Datenaustauschformat ein so genannter „Atom Entry“ ist, ein Fragment/Eintrag eines vollen Atom-Feeds.

  • PostURI (erwartet POST) – Wird verwendet um neue Elemente anzulegen. Schickt man einen Atom Entry an diese URI, so wird ein neues Element erzeugt.
  • EditURI (erwartet PUT, GET oder DELETE) – Wird zum Bearbeiten von Elementen benötigt. Auch hier erfolgt der Datenaustausch über den Atom Entry.
  • FeedURI (erwartet GET) – Repräsentiert ein komplettes Atom-Feed.

Die Atom-Programmierschnittstelle und das Atom Syndication Format ergänzen sich somit.

Weblinks


Wikimedia Foundation.

Игры ⚽ Нужно сделать НИР?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Atom (standard) — For Atom feeds from Wikipedia, see Wikipedia:Syndication. Atom The feed icon used in several browsers Filename extension .atom, .xml …   Wikipedia

  • ATOM — Ein verbreitetes Feed Icon Atom wird in der Computertechnik als Überbegriff für zwei Standards genutzt. Während das Atom Syndication Format als ein XML Format den plattformunabhängigen Austausch von Informationen ermöglicht, wurde das Atom… …   Deutsch Wikipedia

  • Atom-Feed — Ein verbreitetes Feed Icon Atom wird in der Computertechnik als Überbegriff für zwei Standards genutzt. Während das Atom Syndication Format als ein XML Format den plattformunabhängigen Austausch von Informationen ermöglicht, wurde das Atom… …   Deutsch Wikipedia

  • Atom (XML-Format) — Ein verbreitetes Feed Icon Atom wird in der Computertechnik als Überbegriff für zwei Standards genutzt. Während das Atom Syndication Format als ein XML Format den plattformunabhängigen Austausch von Informationen ermöglicht, wurde das Atom… …   Deutsch Wikipedia

  • Atom Publishing Protocol — Ein verbreitetes Feed Icon Atom wird in der Computertechnik als Überbegriff für zwei Standards genutzt. Während das Atom Syndication Format als ein XML Format den plattformunabhängigen Austausch von Informationen ermöglicht, wurde das Atom… …   Deutsch Wikipedia

  • History of web syndication technology — This article is specifically dedicated to the history of web syndication technology and, more generally, to the history of technical innovation on many dialects of web syndication feeds such as RSS and Atom, as well as earlier variants such as… …   Wikipedia

  • WebDAV — Web based Distributed Authoring and Versioning (WebDAV) is a set of methods based on the Hypertext Transfer Protocol (HTTP) that facilitates collaboration between users in editing and managing documents and files stored on World Wide Web servers …   Wikipedia

  • Tim Bray — Infobox Person name = Tim Bray image size = thumb birth date = Birth date and age|1955|06|21 birth place = occupation = residence = Vancouver, British Columbia, Canada nationality = website = http://www.tbray.org/ongoing/Timothy William Bray is a …   Wikipedia

  • Representational State Transfer — (REST) is a style of software architecture for distributed hypermedia systems such as the World Wide Web. As such, it is not strictly a method for building what are sometimes called web services. The terms “representational state transfer” and… …   Wikipedia

  • Sam Ruby — is a prominent software developer who has made significant contributions to many of the Apache Software Foundation s open source software projects, and to the standardization of web feeds via his involvement with the Atom web feed standard and… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”