yohei-y:weblog

XML と REST/Web サービス関連の話題が中心の weblog です

2004-12-18

頭文字語の読み方

Simon Harriyott が Web サービス関連用語の読み方についてポストしている。

それによれば、

  • WSDL は "ウィズドゥール"
  • WSE は "ウィジー"
  • UDDI は "ユーディーディーアイ"
  • ASMX は "アズメックス"
  • WSE-WSDL は "ウィジー ウィズドゥール"

だそうだ。

WSDL は結構有名だと思うけど、WSE は初耳。 ASMX は「アサムエックス」と呼んでる人がいたので、そう思っていたけどあちらでは違っていたのか…。

こういうのは、日本にいるとなかなかわからないので、貴重な記事だと思う。

ま、日本人相手に話している限りは「ダブリュエスディーエル」と言っておいたほうが無難だけど。

似たような話で SQL をどう読むかという話もあって、 日本では圧倒的にエスキューエルだけど、あちらではシーケル(シークェル)の方が一般的。 MySQL はマイシーケル(オフィシャルにはマイエスキューエルだけど)、PostgreSQL はポストグレシーケル、 SQL Server はシーケルサーバーだ。

でも SQLite はエスキューライトみたい。

http://www.sqlite.org/php2004/page-031.html で "An" SQLite になっているのが根拠です。

2004-12-15

REST の日本語リソース

日本で REST がぜんぜん盛り上がっていないようなので、日本語で読める REST のリソースをまとめてみた。

東大市山氏による Roy Fielding の論文紹介。技術的な要素を理解したいけど RoyF のドク論を読むのは厳しい人にはお勧め。
http://kumiki.c.u-tokyo.ac.jp/~ichiyama/projects/reports/pdmwa

元論文はこれのようだ
Principled Design of the Modern Web Architecture
http://www.ics.uci.edu/~taylor/documents/2002-REST-TOIT.pdf
同氏による REST 版ショッピングカートの実装例。こちらも参考になる。
http://kumiki.c.u-tokyo.ac.jp/~ichiyama/projects/reports/restfulcart/restfulcart.html

sheepman 氏の羊堂本舗。RoyF のドク論をうまくまとめていると思う。
http://sheepman.parfait.ne.jp/wiki/REST

Web の正しいアーキテクチャ(吉松氏)。REST をキーワードに現在の Web システムの設計の甘いところを指摘した秀逸な記事。でもところどころミスが目立つのが今となっては残念。
http://www.atmarkit.co.jp/fdotnet/opinion/yoshimatsu/onepoint05.html
上記記事に対する反応
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=2591&forum=7
sheepman 氏の日記(吉松氏の記事に対する批判 + 吉松氏のコメント付き)
http://sheepman.parfait.ne.jp/20030413.html#p03

ruby-dev での議論
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/19050
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/19054
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/19055
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/19056
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/19057
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/19061
http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-dev/19064

soap ML の記事
http://www.sarion.co.jp/ml/soap/archive/200211.month/923.html
http://www.sarion.co.jp/ml/soap/archive/200211.month/924.html
http://www.sarion.co.jp/ml/soap/archive/200211.month/925.html
http://www.sarion.co.jp/ml/soap/archive/200211.month/926.html
http://www.sarion.co.jp/ml/soap/archive/200211.month/927.html

xml-users での記事。トラックバックの文字符号化方式の議論にまぎれてしまってあまり突っ込まれていない。というかこの記事の時点で REST の本質を理解しているのは Toru Marumoto 氏だけのようだ。
http://www2.xml.gr.jp/log.html?MLID=xmlusers&N=8595
http://www2.xml.gr.jp/log.html?MLID=xmlusers&N=8597
http://www2.xml.gr.jp/log.html?MLID=xmlusers&N=8600
http://www2.xml.gr.jp/log.html?MLID=xmlusers&N=8601
http://www2.xml.gr.jp/log.html?MLID=xmlusers&N=8605

川俣氏の記事(RESTを誤解している)
http://www.atmarkit.co.jp/fdotnet/vbcheer/vbcheer06/vbcheer06.html
その反応(やっぱり誤解しちゃう)
http://www.doblog.com/weblog/myblog/1796/256215

RestfulToolkit
http://www.imasy.or.jp/~tai/wiki/?RestfulToolkit
REST の実装モデルに言及した秀逸な記事最近この Wiki は更新されていないようで残念。
RESTful な設計でいかにネーミングが難しいか。
http://www.imasy.or.jp/~tai/wiki/index.php?RestNamingIssue
RESTful な API 設計について
http://www.imasy.or.jp/~tai/wiki/index.php?RestRpcApi

江島健太郎氏の blog
http://blog.japan.cnet.com/kenn/archives/001837.html

Amazon における REST vs. SOAP (日本語訳)
http://www.yamdas.org/column/technique/ow_restj.html

James Snell の SOAP と REST の比較記事。bloglines API を例にしている
http://www-6.ibm.com/jp/developerworks/webservices/041119/j_ws-restvsoap.html

はてなのキーワード
http://d.hatena.ne.jp/keyword/REST

僕の日記
http://d.hatena.ne.jp/yohei/20041005
以下追記(2007-09-21)
REST 入門という記事を書きました
WEB+DB PRESS Vol. 32 に REST 入門という記事を書きました
第八回XML開発者の日はREST特集でした
WEB+DB PRESS Vol. 38 から REST に関する連載を行っています

ラベル:

2004-12-14

NIFTY のIDもパスワードも忘れた場合の解約方法

5年以上使っていなかった NIFTY のアカウントをやっと解約した。

一番安いコースで、毎月210円ずつしか引き落とされていなかったので、面倒くさくてずっとほったらかしだったのだが、思うところあって解約することにしたのだ。まずWeb上のフォームからある程度の個人情報を記入して Nifty 社に問い合わせた。すると、下記のページから解約申請用紙をダウンロードして、必要事項を記入し郵送すれば OK との返信が来た。

https://www.nifty.com/support/madoguchi/form_cancel.htm

このとき感心したのは、NIFTY 側から送られてきたメールからきちんと個人情報が削除されていたところ。細かいことだけれど大切なことである。

解約申請書には印鑑を押す必要がある。僕の場合はカード決済だったのでクレジットカード番号も記入する必要があった。住所など必要事項を記入して投函、そして今日解約が完了したとの通知が送られてきた。解約通知書には忘れていた僕のアカウントが書いてあって、それを見たらきちんと思い出した。そうか、これだよこれ、という感じ。念のために"アカウント@nifityserve.ne.jp"で検索してみたが、ヒットせず。よかった。

こんなことでもここに書いておけば役に立つかもしれないので書いておきます。以下は検索用キーワード。

NIFTY-SERVE, ID, アカウント、パスワード、忘れた、解約、退会

2004-12-09

テンプレート変更

この日記、スタイルが見にくいのでいろいろなサイトを参考にしながら変えてみた。気に入らなかったのは文字の大きさ、行間、左右のマージン、などなど。かなり苦労したけど、なんとか自分の納得のいく CSS になったと思う。FireFox と IE6 でしか、確認してないけどもういいや。面倒だし。

2004-12-07

未知のボキャブラリのタグをどう表示するか

xfy の話の続きである。

とりあえずユーザ登録して xfy をダウンロード、で使ってみた。単なる XHTML 編集環境としては、まあこんなもんかという感じである。やはり独自ボキャブラリを定義してこそ、意味のあるものであろう。ということで、自分が持っていた XHTML + 独自ボキャブラリのファイルを読み込ませてみた。これは比較的大きな XHTML ファイルで、170KB くらいあるが、そこそこ快適に開いて動作させることができた。僕の定義した独自ボキャブラリは単純で、脚注タグ <book:fn>と索引タグ <book:index>の二つである。どちらも XHTML のインライン要素に混ぜて使うことができる、という仕様だ。XHTML インスタンスの断片はたとえば、以下のようになる。

<p><book:index>XSLT</book:index> の名前空間は
"http://www.w3.org/1999/XSL/Transform" である。
ここでは XSLT の名前空間接頭辞として xsl を用いているが <book:fn>
この接頭辞は歴史的な理由で xsl を用いている。</book:fn>、
もちろんこれは正しく宣言されていれば、何でも構わない。</p>

サンプルで明らかだが、book:fn 要素は脚注としてレンダリングされることを期待しており、book:index 要素は索引からリンクされることを期待している。これを何の設定もせず、そのまま xfy に読ませてみた。するとレンダリング結果は以下のような感じになった。

?
の名前空間は "http://www.w3.org/1999/XSL/Transform" である。
ここでは XSLT の名前空間接頭辞として xsl を用いているが
?
、もちろんこれは正しく宣言されていれば、何でも構わない。

ここで注目して欲しいのは xfy にとって未知のタグ (book:fn と book:index) は、"?" という箱でレンダリングされたところである。すなわち、xfy は通常の Web ブラウザのように、知らないタグは無視するのではなく、「知らないタグである」というしるしを表示しているのだ。

これはボキャブラリ設計者(僕自身である)の気持ちとしてはどうなって欲しいかというと、book:index 要素に関してはタグを無視して内容を表示してほしくて、book:fn タグに関しては、できれば脚注らしく表示、それが難しかったら book:fn を示すicon が段落のインラインで表示されてほしい、というところである。

たとえば以下のような感じだ。

XSLT の名前空間は "http://www.w3.org/1999/XSL/Transform" である。
ここでは XSLT の名前空間接頭辞として xsl を用いているが(*)、
もちろんこれは正しく宣言されていれば、何でも構わない。

このように、XHTML + αのαの部分をどう表示するかは、法則があるわけではなく、その要素の意味で決まるので実装は難しいのだ。xfy の実装は、完璧ではないにせよかなりイイ線である。

…というようなことは実は僕のオリジナルではなく、"Java World 特別編集 XML World 第一弾" という雑誌の中の"XML 実践活用の手引き Part1 XML ボキャブラリ作成のポイントを知る"という記事で、"タグは読み飛ばしてもよいのか?" という囲み記事(54ページ左下)として檜山正幸さんが指摘している問題そのものである。

ここでの檜山さんは、「タグの無視」が DOM ツリーの構造を破壊することを指摘したうえで、次のように結論付けている。

妥協できる線としては、「知らない要素(タグではない)を無視したうえで、そこ に要素があった痕跡(例えば、疑問符が描かれたボックス)を残し、ユーザーが明示的に『タグを無視した表示』を選択したら表示する」といった動作が考えられる。

xfy の実装は前半部(無視しないで "?" ブロックで表示)はこのとおりだが、後半部(無視するかどうかユーザが選択可能)は実装していないようだった。おそらく VCD を書けばいいのだが、ドキュメントが少なくて僕にはできなかった。

ラベル: