Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Hypermicrodata Client

Hypermicrodata Client

TokyuRuby会議08 の "Hypermicrodata Client" の発表資料

C4455065001e57c2ea24190134882560?s=128

Kunihiko Ito

November 29, 2014
Tweet

Transcript

  1. Hypermicrodat a client Kunihiko Ito 永和システムマネジメント

  2. はじめに Ruby Kaigi 2014 参加しました?

  3. 今日話すこと Ruby Kaigi 2014 で感じたこと 試してみたこと

  4. 参加しました? Hypermedia: The Missing Element to Building Adaptable Web APIs

    in Rails
  5. 聞いていない方 Video: http:// rubykaigi.org/2014/ presentation/S- ToruKawamura

  6. はじめまして 初参加 Kunihiko Ito @kunitoo

  7. 概要 Hypermedia: The Missing Element to Building Adaptable Web APIs

    in Rails 疎結合なAPI 状態遷移をレスポンスに含める 設計 WEB API
  8. hypermicrodata HTMLをJSONに変換 HTMLから抽出 mirodata リンク フォーム

  9. あらためて Video: http:// rubykaigi.org/2014/ presentation/S- ToruKawamura

  10. 感じたこと サーバは簡単に作成できそう クライアント難しくなりそう

  11. 実際に作ってみよう! rails g scaffold User name email view に microdata

    を付加
  12. show.html.haml .person{itemscope: true, itemtype: 'http://schema.org/Person', itemid: users_url(@user), data: {main_item: true}}

    .media .media-body %p#notice= notice %p %strong Name: %span{itemprop: 'name'}= @user.name %p %strong Email: %span{itemprop: 'email'}= @user.email = link_to 'Edit', edit_user_path(@user), rel: 'edit' | \#{link_to 'Back', users_path, rel: 'collection', itemprop: 'isPartOf'}
  13. uber+json { "uber":{ "version":"1.0", "data":[ { "url":"http://localhost:3000/users.1", "name":"Person", "data":[ {

    "name":"name", "value":"Kunihiko Ito" }, { "name":"email", "value":"kuni.110.92@gmail.com" }, { "name":"isPartOf", "rel":"collection", "url":"/users" }, { "rel":"edit", "url":"/users/1/edit" } ] } ] } }
  14. アイディア クライアントが hypermicrodata と 同じルールで読みとれれば 簡単に作れるようになるのでは?

  15. やってみて microdata の付加が難しい http://schema.org/ メタ的に考える必要がある もっとデフォルトでできるとう れしい

  16. hypermicrodata client みなさんも挑戦してみて下さい