System)は、Basic認証をサポートしていなければならない(MUST)。サービス(Service)はBasic認証をサポートすることを推奨する(RECOMMENDED)。2616のセクション14.35で説明されているように)。2616のセクション14.16で説明されているように)コンテンツの一部分を提供する時、サービス(Service)は、正しいステータスコード、Content-Rangeヘッダ、Content-Lengthヘッダを使用しなければならない(MUST)。System)は、Rangeヘッダをサポートしていないサーバを処理できなければならない(MUST)。1.1]に準拠しなければならない(MUST)。WSDL抽象定義の抽象的なWSDLドキュメントで使用されるWSDLバインディングスタイルは、document-literalのwrapedパターンである。1.1]の規範的な要件R2712を満たすものである。document-literalバインディングスタイルを使用しなければならない(MUST)。プロトコルの基礎このセクションは規範的である。サービス(Service)モデルDAISYオンライン配信プロトコルは、2つの基本的なサービスモデルをサポートしている。Content)を提供するモデル。Content)を提供するモデル。Content)のどちらか一方を、またはその両方を提供してよい(MAY)。item)を提供しなければならない(MUST)。item)は、リソースの同じセットを有してもよい(MAY)。requiresReturn属性を使用しなければならない(MUST)。item)は借りることができる。item)は購入することができる。Content)は次の条件を満たさなければならない(MUST)。returnContentオペレーションを実装することissuedのcontentListを提供すること。Content)のアイテムに次の条件が適用される。設定しなければならない(MUST)。item)が記載されなければならない(MUST)。System)が任意のセッション(Session)の間の任意の時間にreturnContentを呼び出すことをサービス(Service)は可能としなければならない(MUST)。支援するため、次の2つのメソッドを定義する。expiredのcontentListである。System)にこれらのメソッドの強制を求めるものではない。)特定の時間に有効期限が満了ならなければならない(MUST)コンテンツ(Content)を保護するために他のメソッドを調査するべきである(SHOULD)。item)を返却するべき(SHOULD)時間の前であることを示している。item)を削除するべきであり(SHOULD)、次のセッションでサービス(Service)に返却するべきである(MUST)。System)は、returnBy属性にある返却期限日をユーザー(User)に伝達するべきである(SHOULD)。item)を追加してもよい(MAY)。System)は、各セッションで少なくとも1回このリストを取得するためexpiredのidのパラメータを用いてgetContentListを呼び出すべきである(SHOULD)。item)を返却するべきである(SHOULD)。item)はまだ公開される。Provider)は、expiredのcontentListを例外的な場合にのみ使用すべきである(SHOULD)。item)の有効期限がきれたことを通知されるべきであり(SHOULD)、削除されるだろう。Content)のアイテムに次の条件が適用される。item)のcontentMetadataのrequiresReturn属性はfalseに設定されなければならない(MUST)。item)が記載されてもよい(MAY)。Content)の入手可能性の有効期間を規定しない。System)は、認証を成功させ、サービス(Service)と有効なセッション(Session)を確立しなければならない(MUST)。次項から、このプロセスの手順について概要を述べる。System)をサービス(Service)に認証させるため、セッション(Session)を開始するときは、次の手順に従わなくてはならない(MUST)。System)を認証するために必要なクレデンシャルを規定し、ユーザー(User)に提供する責任がある。System)ごと、もしくはその他の方法によってクレデンシャルを提供しなければならない(MUST)。System)は、logOnオペレーションを呼び出して、サービス(Service)に対するユーザー(User)のクレデンシャルを通過しなくてはならない(MUST)。サービス(Service)は提供されたクレデンシャルを検証しなければならない(MUST)。それが有効であるならば、そのセッション(Session)のための一意の識別子をもったCookieを発行しなければならない(MUST)。System)に送らなければならない(MUST)。System)は、指定された順序で次のオペレーション(Operation)を呼び出さなくてはならない(MUST)。getServiceAttributes。サービス(Service)に関する必要な情報を発見するために呼び出さなくてはならない(MUST)。setReadingSystemAttributes。System)の能力に関する情報をサービス(Service)へ提供するために呼び出さなくてはならない(MUST)。2])を返さなくてはならない(MUST)。System)はセッション(Session)を再初期化させる、またはログオンプロセスを終了させてもよい(MAY)。System)は、ユーザー(User)に警告してもよいし(MAY)、自動的に再接続を試みてもよいし(MAY)、そのデバイスに特有のアクションをとってもよい(MAY)。System)がこのセクションで概説しているもの以外のオペレーション(Operation)を呼び出そうとした場合、サービス(Service)は、初期化シーケンスの全てがうまく完了する前にinvalidOperation障害(Fault)を返さなければならない(MUST)。初期化シーケンス内であればどこでも呼び出してよい(MAY)logOffオペレーションである。System)は、この仕様で規定されたどのオペレーション(Operation)を呼び出してもよい(MAY)。logOnを呼び出す場合は、このセクションで概説した初期化シーケンスを完了しなくてはならない(MUST)。注意事項:たとえlogOnが失敗した場合でも、サービス(Service)はCookieを発行してもよい(MAY)。セッション(Session)の継続時間logOnオペレーションが成功した後、セッション(Session)は開始する。終了させるまでは、セッション(Session)はアクティブなままでなければならない(MUST)。このプロトコルは、セッション(Session)の終了に関連した振る舞いを定義しない。タイムアウトインターバル、強制終了の理由、関連するアスペクトは、実装によって定義される。System)によるセッション(Session)を持続するべきである(SHOULD)。サービス(Service)は、同じセッションIDを持つ複数の同時接続を可能としてよい(MAY)。コンテンツ(Content)選択方式DAISYオンライン配信プロトコルは、次の2つのコンテンツの選択方式をサポートしている。out-of-band方式。この方式では、ユーザー(User)のコンテンツ(Content)がウェブインターフェイスか自動コンテンツ配信システムのようなout-of-bandメカニズムによって、選択されているか、割り当てられている。この方式では、ユーザー(User)がこのプロトコルで定義されたオペレーション(Operation)を使用してサービス(Service)のコレクションを閲覧することができる。Provider)は、ユーザー(User)に少なくとも1つのコンテンツ選択方式を提供しなければならない(MUST)。System)は、相互運用性の最大化のために、両方のコンテンツ選択方法をサポートするべきである(SHOULD)。この仕様に準拠するためには、1つの方式をサポートしていることのみが求められている(REQUIRED)。コンテンツ(Content)選択方式を提供するサービス(Service)が次の条件に合致するならば、そのサービス(Service)は、仕様に準拠している。サービス(Service)がコンテンツ(Content)の選択/割り当てのための1つ以上のout-of-bandメカニズムを提供している。コンテンツ(Content)選択方式のサポートを宣言している。System)に公開する。System)はもし利用可能であるならば、issuedのcontentListも利用してよい(MAY)。System)は、コンテンツ(Content)を取得するためにセクション4.4.「コンテンツ(Content)の発行と転送」で概説されている手順も実行しなければならない(MUST)。コンテンツ(Content)選択方式を提供するサービス(Service)は、仕様に準拠している。動的メニュープロトコルの機能を使用し、1つ以上のbrowseメカニズムを提供している。コンテンツ(Content)選択方式のサポートを宣言している。System)が、サービス(Service)にコンテンツ(Content)を発行することを要求し、コンテンツ(Content)をダウンロード(Download)もしくはコンテンツ(Content)のストリーミング(Steaming)を開始する手順を、次のセクションで概説する。System)は与えられた順序で次のオペレーション(Operation)を最初に呼び出さなければならない(MUST)。item)のために、他のオペレーション(Operation)を呼び出してよい(MAY))。順序は維持されなければならない(MUST)。Identifier)をパラメータとする。getContentMetadata。item)に関する情報を取得するためにこのオペレーション(Operation)を呼び出さなければならない(MUST)。返されたメタデータには、出版情報、ファイル形式、戻りステータスとサイズが含まれている。issueContent。item)にアクセスしようとしていることをサービス(Service)に通知するためにこのオペレーション(Operation)を呼び出さなければならない(MUST)。このオペレーションは、アクセスのための正式な要求を構成している。item)は発行されてはいない。System)は次の手順に進んではいけない(MUST)。getContentResources。item)を構成する全てのリソースのURIを取得するためにこのオペレーションが呼び出されなければならない(MUST)。item)ごとにgetContentResourcesの複数の呼び出しを認めてもよい(MAY)。item)のgetContentResourcesを呼び出した時、サービス(Service)は、invalidParameter障害(Fault)を返さなくてはならない(MUST)。item)に対するgetContentResourcesの呼び出しを認めるべきである(SHOULD)。System)の要件は、サービス(Service)に要求に関するいかなる情報の追跡をサービス(Service)に要求しないことである。Provider)が希望するなら、サービス(Service)はすべての要求に対してtrueを返してもよい(MAY)。System)は、リソース要素で提供されるURIを使用してリソースのダウンロードやストリーミングを開始してもよい(MAY)、リソースタイプ(Type)はuri属性とlocalURI属性の両方をもっている。System)がリソースを参照するために使用するローカル名である。item)内の内部リンクをたどることを認めている一方で、サービス(Service)に任意のURI(例えば、スクリプトによって提供されるもの)とともにリソースを提供させるものである。item)のルートパスからの相対パスである。タイプの情報を使用してもよい(MAY)。OPF、NCX、そして、SMILファイルを取得してもよい(MAY)。Delegate)に所属するサーバ上にリソースを格納してもよい(MAY)。System)に提供しなくてはならない(MUST)。Basic認証でセキュリティを確保された各リソースのURIは、そのリソースにアクセスするために要求されるクレデンシャルを含めなければならない(MUST)。System)がアクティブなセッション(Session)外にあるリソースにアクセスにすることを認めるべきである(SHOULD)。item)の更新を公開する方法を説明する。item)が最後に修正された時間を指し示す任意の(OPTIONAL)lastModifiedDate属性を持つ。item)が最後にアクセスされてからアップデートされているかどうかを決定するために使用することができる。resourceリスト内の各resourceも任意の(OPTIONAL)lastModifiedDate属性を持つ。System)は、そのlastModifiedDate属性をどのリソースがアップデートされたかを決定するために使用してよい(MAY)。item)を徐々にアップデートすることによる数回に分けたコンテンツ(Content)の公開に使用することができる。コンテンツ(Content)同期シーケンスこのセクションは参考情報である。System)はローカルで保有しているコンテンツ(Content)をサービス(Service)上でユーザー(User)が利用できるコンテンツ(Content)を自動的に同期することができる。コンテンツ(Content)を同期するために次の一連の手順を取ることができる。セッション(Session)を初期化しなければならない(MUST)が、その他のオペレーション(Operation)は同期する前に呼び出してもよい(MAY)。item)ごとにreturnContent(itemid)を呼び出す。item)を1つ1つ返却する。issueContent(itemid)、続いてgetContentResources(itemid)を呼び出す。