質問

これはフォローアップに関する問題について 説明の他.

これを見ていただきますと、私の答えは、私が小さかった引数 Darrelミラー 最良のメディア表現の資源です。と思っていましたが直前になりさらにメールでの議論の結果である。

の主な違いはDarrel、鉱山の理解に休息できるかどうかの意味でのデータは、APIに含まれています。

Darrelと考える私の解釈の言葉:-))によるセマンティックのデータは、REST APIなどのメディア表現choosenを適切に反映することが必要です。このように、適切なREST APIはいずれかを選択:

  • よく知られるメディアのように原子を表現するデータであり、多くのお客様でも十分理解することができ意味のリソースのネイティブ;
  • アプリ固有のメディアタイプのアプリケーション/vdn.mycomany.mymediaえのクライアントから話を聞いこのメディアタイプで消費する資源のデータです。Application/xmlあてはまるわけではない資源の表現とを示すものではありませんの意味でのメディアタイプなしを要求するお客様についての知識を意味的に

私は、一方で、このAPIは、別々の層から実際のデータ表現。メディアの種類によって明らかにされた一連のAPIは容器に移し、資源のデータです。実際の意味のデータを処理す。このように、クライアントのなかのデータで消費するのAPIとなります。Application/xmlを立てる上で、本当に素晴らしいデータ表現で、締結のお客様にとることを理解するスキーマ、まだまだできることをクライアントを理解していないから、スキーマをいくつかの基本的な処理の資源です。

これにより、疑問:のデータを意味的にREST API?していくべきなだけメディアの種類資源の表現とその意味でのデータでも見ることができますか?

いappreaciate場合はポストに回答の一部の引用、さらに好ましくは、Roy。:-)

役に立ちましたか?

解決

の冒頭に始めましょう:メディアの種類は、それが次に何をすべきかを決定するために使用できる形式をクライアントに提供することがあります。 htmlページがなければ、ブラウザはに行くために何のリンクを持っていません。 HTMLレンダリングせずに、ブラウザがページをレンダリングすることはできませんし、何をすべきかわからなくなります。

バイトストリームで何かをすることができるようになります場合は、メディアタイプがなければ、クライアントは何の手掛かりを持っていません。クライアントは、アプリケーション/ XMLを指定するヘッダを受信したときに実際に、それは超えて何をすべきかを知らないXMLパーサーを取得します。

そこで質問が本当に、クライアントがメッセージの内部を見てなくても、HTTPメッセージに基づいて決定を下すことができるはずです、またはそれが行くと覗いメッセージ内(あるいは悪化し、最初のメッセージを解析する)必要がありますへ何をすべきかを知ってます。

メディアタイプの

欠如は、それが決定を下すことができます前に、あなたのクライアントは、それがレンダリングのためか、処理のためにも、実体本体自体を追加覗き見、作業をしなければならない、あるいは悪化し、プロセスすることを意味します。これで処理したいことがありますフォーマットごとにカスタム動作の多くを追加する必要があり、あなたは、プロセスでの結合の少し緩います。

また、同様のアプリケーション/ xmlのは問題があるとの仲介が身体を検査せずに要求を処理することができる、とする必要があることHTTP基本です。

今、あなたは、APIを構成するもの...メディアタイプの意味は、APIの一部またはではないことを言うとき?

クライアントの観点からは、何のAPIはありません。クライアントは、次の何をすべきかを判断し行うことができます初期の表現があります。クライアントは、それが「API」をナビゲートする必要があり、そのように表現せずに何のAPIはあり得ない情報を取得する場所のメディアタイプは確かです。

インストーラの場所、HTTPプロトコルとメディアタイプ:

また、クライアントは、知識の3ビットのみを有していなければなりません。最初は唯一のURIで、継続するために必要なrepresetnationの場所を超えて多くを伝えていません。二つ目は、すでに非常に明確な意味を持っています。それはあなたがあなたのクライアントを持って契約だとして、第三は、あなたがコントロールしているものです。

これcontraactは、あなたが何かをしたい時はいつでも、何かが意味を持っていると言っている:顧客を追加するために、へ/ POSTを使用して、お客様のアプリケーション/ vnd.acme.customer + XMLを送信

そこで私の答え:(概念レベルでの)リソースモデリングとメディアタイプの建物:RESTアーキテクチャの設計は、2つのステップに依存しています。他に何か、あなたはおそらく、それは間違ってやっている。

他のヒント

私はそれについて過度に知識をひけらかすことの必要性が表示されません。リソースが複数の表現を公開することができます。独自のセマンティクス(およびそのにおけるセマンティクスの偶数倍の寸法)とそれぞれ。 1つの表現は、特定のユースケースで必要なセマンティクスを提供していない場合は、ないものを公開します。

  

このように、しないクライアント   データを理解し、まだ消費することができます   RESTのAPIます。

私はそれがないか、まともな表現をしない何のために良いリトマス試験だか分かりません。文書を消費するが、それは十分にそれを使って何を行うには理解できないクライアントが良い何ですか?私は、「リソースの基本的な処理は、」アプリケーション/ xmlの1と0のいくつかの任意のブロブよりも優れた選択肢となりますどのように理解していないと思いますか?

ロイから

あなたが参照を求めているので、こちらの記事彼はソーシャルネットワークのグラフでのビットマップ表現を「提案」どこフィールディング。私は確かにこれらのビットマップを表示するための機械を得るが、どのような使用が、私は基本的なソーシャル・ネットワーク・グラフを理解していない場合ということですができますか?素朴なクライアントは、ビットマップに含まれていないことから、追加の意味を抽出することを可能にするアプリケーション/ XMLの表現を変更しますか?いいえます。

マーク・ベイカーからのスライドの

チェックこののセットアプリケーション/ XMLは「自己記述」の制約を満たしていない理由として、より詳細な説明のために。また、<のhref =「http://www.markbaker.ca/blog/2004/01/xml-namespace-dispatching-with-applicationxml/」のrel =「nofollowをnoreferrer」など、自身のブログ上の記事の数を読むことができます>これは、彼がアプリケーション/ XML +名前空間はメディアタイプと同等ではありません理由を説明し続けて1をを。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top