Atom 0.3
Syndikování obsahu se pomalu ale jistě stává běžným prvkem nejenom weblogů a zpravodajských webů. Až donedávna se pro poskytování obsahu nabízelo pouze několik variant formátu RSS, respektive formát RDF. Nyní začíná do povědomí autorů webů i návštěvníků nastupovat nový formát – Atom.
Co je Atom
Atom je standardizovaný, dobře dokumentovaný XML formát. Je určený pro snadné poskytování obsahu, podobně jako hojně používaný formát RSS. Už dříve byl na Intervalu zveřejněn popis RSS 0.91, kde najdete mimo jiné nástin používání RSS. Atom, stejně jako RSS/RDF, představuje snadný způsob, jak z jednoho místa sledovat informace zveřejňované na webu. Ale Atom není jen formát. Je to také Atom API, které umožňuje čtení a zveřejňování informací dalším aplikacím. V tomto článku se budeme věnovat specifikaci formátu Atom v aktuální verzi 0.3. Pre-draft Atom 0.3 byl zveřejněn v prosinci 2003.
Podobně jako RSS i Atom je podmnožinou XML. Platí pro něj tedy stejná obecná pravidla jako pro XML (například nutnost rozlišovat velká a malá písmena). Následující příklad ukazuje minimální obsah souboru ve formátu Atom:
<?xml version=“1.0″ encoding=“utf-8″ ?>
<feed version=“0.3″ xmlns=“http://purl.org/atom/ns#“>
<title>Example.com</title>
<link rel=“alternate“ type=“text/html“ href=“http://www.example.com/“ />
<modified>2004-07-26T15:10:37+01:00</modified>
<author>
<name>Jiří Bureš</name>
</author>
<entry>
<title>Atom 0.3 a RSS</title>
<link rel=“alternate“ type=“text/html“ href=“http://www.example.com/2004-07-26/atom.htm“/>
<issued>2004-07-26T06:30:55+01:00</issued>
<modified>2004-07-26T15:10:37+01:00</modified>
</entry>
</feed>
Z ukázky je patrná jednoduchá struktura Atom dokumentu:
- dokument začíná informací o verzi XML a použitém kódování
- Atom dokument je uzavřen do právě jednoho elementu
feed
- následují informace o Atom dokumentu (elementy
title
,link
,modified
aauthor
) - informace o jednotlivých položkách jsou vnořeny do elementu
entry
Povinné elementy
- <feed>
- Element nejvyšší úrovně. Element
feed
musí obsahovat atribut „version“ (momentálně 0.3). - Volitelně by měl obsahovat atribut
lang
(RFC3066), který popisuje jazyk dokumentu. - <title>
- Název daného kanálu (měl by odpovídat názvu zdroje – většinou názvu daného webu). Rodičovský element
feed
musí obsahovat právě jeden elementtitle
. - <link>
- Element
link
obsahuje adresu daného kanálu. Musí obsahovat následující atributy:rel
(a to vedle jiných právě jeden s hodnotoualternate
),type
– typ média podle RFC2045,href
– URI (RFC2396) daného zdroje
Volitelně může obsahovat atribut
title
, který poskytuje doplňkové informace o odkazu. - <modified>
- Čas, kdy byl kanál naposledy změněn. Element
feed
musí obsahovat právě jeden elementmodified
. Hodnota by měla obsahovat informaci o časové zóně. Veškeré časové údaje Atom kanálů musí být v souladu s W3C Date and Time Formats. - <author>
- Každý Atom kanál musí obsahovat pro rodičovský element
feed
právě jeden elementauthor
. Má povinně vnořený elementname
:- <name>
- Jméno autora (případně firmy) v lidsky čitelné podobě. Entita se v dokumentu musí vyskytovat právě jednou.
- <entry>
- Element představuje jednotlivou položku Atom kanálu. Každý kanál může obsahovat jeden nebo více elementů
entry
. Podobně jako v případě elementufeed
mohou být použity další jmenné prostory.- <title>
- Titulek dané položky v lidsky čitelné podobě. Každý element
entry
musí obsahovat právě jeden elementtitle
. - <link>
- URI dané položky. Každý element
entry
musí obsahovat právě jeden elementlink
s hodnotou „alternate“ atributu „rel“. Může obsahovat i další elementylink
. - <issued>
- Čas zveřejnění položky. Vyskytuje se v každém elementu
entry
právě jednou. - <modified>
- Čas, kdy byla daná položka naposledy změněna. V jednom elementu
entry
se položka vyskytuje právě jednou.
Nepovinné elementy
- <url>
- Součást elementu
author
. Obsahuje URI (RFC2396) spojené s autorem. - <email>
- Součást elementu
author
. E-mailová adresa autora (RFC2822). - <author>
- Každý element
entry
může obsahovat elementauthor
. - <contributor>
- Přispěvatel. Elementy
feed
ientry
mohou obsahovat jeden nebo více elementůcontributor
. - <tagline>
- Nepovinný lidsky čitelný popis kanálu se může vyskytovat v elementu
feed
nejvýše jednou. - <id>
- Trvalý jedinečný identifikátor kanálu nebo položky (URI), který se vyskytuje v elementu
feed
nejvýše jednou. Změna je možné jen při přemístění kanálu. Pokud se stejná položka vyskytuje ve více kanálech, musí mít stejnéid
. - <generator>
- Řetězcová identifikace agenta použitého pro generování kanálu v lidsky čitelné formě. V kanálu (v elementu
feed
) se vyskytuje nejvýše jednou. Může obsahovat atributy:url
– URI odkazující na generátorversion
– verze generátoru
- <copyright>
- Autorská práva k danému kanálu v lidsky čitelné formě. V elementu
feed
se vyskytuje nejvýše jednou. - <info>
- Element
feed
může obsahovat nejvýše jeden elementinfo
popisující samotný kanál v lidsky čitelné podobě. - <created>
- Čas vytvoření položky. Element
entry
může obsahovat nejvýše jeden elementcreated
. Časový údaj musí obsahovat informaci o časové zóně. - <summary>
- Krátké shrnutí dané položky. Element
entry
může obsahovat více elementůsummary
. - <content>
- Obsah dané položky. Element
entry
může obsahovat více elementůcontent
.
Jak vytvořit Atom
Jak už bylo řečeno, Atom je XML dokument se vším všudy. Jedná o prostý textový dokument. Doporučená koncovka je .atom, často se ale používá název souboru atom.xml. Způsob, jakým takový dokument autor vytvoří, závisí pouze na něm samotném. Může obsah editovat ručně ve vhodném textovém editoru, nebo může dokument generovat automaticky (například pomocí PHP z databáze).
Odkazy, zdroje
- AtomEnabled – stránky The Atom Enabled Alliance
- AtomEnabled Directory – užitečné nástroje pro vývojáře
- AtomWiki – wiki Atom projektu
- Feed Validator – Atom validátor
- The Atom Syndication Format 0.3 (PRE-DRAFT) – specifikace Atom 0.3
Starší komentáře ke článku
Pokud máte zájem o starší komentáře k tomuto článku, naleznete je zde.
Mohlo by vás také zajímat
-
Gaming na HDR monitoru: Stojí to za to?
12. srpna 2024 -
Praktické rady na zabezpečení redakčního systému WordPress
27. února 2023 -
Windows App: Pracujte odkudkoliv, kdykoliv
3. listopadu 2024 -
Webdesign: Jak optimalizovat tlačítka na webu
7. března 2024
Nejnovější
-
Výkonný a kompaktní: ASOME Max Studio s výjimečným poměrem cena/výkon
11. listopadu 2024 -
Šokující data od Microsoftu: Kyberútoky rostou o stovky procent!
8. listopadu 2024 -
Chcete jedinečnou doménu? Objevte koncovky FOOD, MEME a MUSIC!
7. listopadu 2024 -
OpenAI představilo novou funkci ChatGPT Search
6. listopadu 2024