このプロジェクトでは、書籍の構造 (XML、JSON など) を POST または PUT リクエストで送信することにより、書籍を追加できます。たとえば、XML では、本の構造は次のようになります (単純化されています)。
<book>
<title>My Book</title>
<author>John Q.</author>
</book>
この書籍がバックエンド データベースに挿入されると、作成日、書籍を送信したユーザー ID、識別子など、いくつかの自動生成されたプロパティが自動的に追加されます。
GET を使用してブックを取得すると、次の追加のプロパティがブック定義に含まれます。
<book>
<title>My Book</title>
<author>John Q.</author>
<info>
<creation_date>2011...</creation_data>
<user_id>48</user_id>
<identifier>my_book_john_q</identifier>
</info>
</book>
これは基本的に、新規/編集された本 (= クライアントからサーバーへ) の XML スキームが、取得された本 (= サーバーからクライアントへ) とは異なることを意味します。これは物事を混乱させます。
これらの追加のプロパティを別の URI で使用できるようにすることもできます。たとえば、次のようになります。
http://server/books/:id/ -> returns the short version
http://server/books/:id/information/ -> returns the generated properties
このアプローチの欠点は、すべてのデータを取得するために 2 つの別個の要求が必要になることです。
この矛盾をどのように解決しますか?