0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

「Webを支える技術」読書メモ#12 Atom

Posted at

本記事の内容
Webを支える技術を読んだ際のノートのようなものです。
省略している部分もあり、書籍の内容を完全に要約するものではありません。

今回は第12〜13章あたりの内容です。

Atom?

Atom Syndication Format
仕様は RFC 4287

RSSとかをうまいこと扱いたい、拡張性のある標準フォーマットを策定したいという流れで生まれたデータフォーマット。
メタデータを使ってなにかしたい系のアプリケーションで割と活躍する。

外部マークアップを使って拡張することもできる。

Atomの構成

コレクションリソース

type=feed 必須要素は同じ

メンバリソース

最小のリソース単位。
コレクションリソース1つに対してメンバリソースは複数存在しうる。

エントリリソース

type=entry

XML。
ブログ本文とメタデータを保持する。
id, title, author, updatedなどといった情報を持つ。
tagスキームも多い。

Base64エンコードすればcontentに画像を入れることもできるが、重くなる。

メディアリンクエントリ

画像などの、テキスト化できないもの。

メディアリソース

XMLではない。

Atomのリンク表現

  • alternate
  • self
  • enclosure
  • related
  • via

リンクの関係性を表現できる。

Atom Publishing Protocol(AtomPub)

ブラウザ以外からも操作することができる。

Atomはデータフォーマット。
AtomPubはそのリソースを編集したりするプロトコル仕様。

サービス文書とカテゴリ文書からなる。
サービス文書はメタデータを保持するもの。コレクションリソースのリストを持つが、それに対してCRUD操作はできない。
カテゴリ文書は名前の通り、エントリのカテゴリを保持するもの。

注意点

PUTは常に全要素を送る必要がある。
内容を更新したくてPUTする際も同じなので、変更してはいけない要素を変更する危険に気をつけよう。

向き不向き

向いてるもの

  • ブログ
  • 検索
  • タグ系ソーシャルサービス

向いてないもの

  • ストリーム系
  • メタデータがそもそもいらないもの(そらそう)
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?