Oracle® Fusion Middleware Oracle WebCenter PortalおよびOracle JDeveloperでのポータルの開発 11gリリース1 (11.1.1.8.3) E49666-03 |
|
![]() 前 |
![]() 次 |
OASIS CMIS (Content Management Interoperability Service)技術委員会は、Enterprise Content Management (ECM)システムの相互運用性の向上を可能にするWebサービス・インタフェース仕様の標準化を目指して活動しています。詳細は、OASISのCMISサイト(http://www.oasis-open.org/committees/cmis/
)を参照してください。
Content Management REST Serviceは、CMIS RESTful AtomPubサーバー・バインディングを使用して、アプリケーション内に構成されたOracle Content Serverのリポジトリにアクセスするサーバーを提供します。
この章はOASIS CMIS仕様を補完するためのものであり、Content Management REST Serviceの具体的な実装について詳しく説明します。まず最初に、すべてのユーザーはOASIS CMIS仕様を確認する必要があります。この章は、http://docs.oasis-open.org/cmis/CMIS/v1.0/cmis-spec-v1.0.html
で参照可能なCMIS (Content Management Interoperability Service)バージョン1.0を参照しています。
この仕様には、ドメイン・モデルと2つのサーバー・バインディングが含まれています。前述のように、Content Management REST Serviceでは現在RESTful AtomPub bindingバインディングのみが実装されます。AtomおよびAtomPubはレスポンスのデフォルト・フォーマットであるため、ご使用に際してはこれらを十分理解していることが必要です。
注意: CMISは、広範囲の異なるコンテンツ・システムのための最低限の共通の基準を提供します。これは、Oracle WebCenter Contentの機能と連携していません。利用可能な機能の詳細は、Content Management REST Serviceのサービス・ドキュメントを参照してください。 |
CMIS仕様の2項: 「Domain Model」では、1つ以上のコンテンツ管理リポジトリとともに動作するアプリケーションで使用可能なドメイン・モデルを定義しています。
Content Management REST Serviceのサービス・ドキュメントは、AtomPubワークスペースで構成されています。ワークスペースはそれぞれ、コンテンツ接続にマッピングされます(Content Management REST Serviceでサポートされているのは、Oracle WebCenter Contentリポジトリのみです)。サービス・ドキュメントの詳細は、次項第31.2項「CMIS第II部: RESTful AtomPubバインディング」を参照してください。
このリリースでは、2.1.1項にリストされているオプション機能の一部は実装されていません。今後のリリースで、バージョニング、ACL、ポリシー、リレーションシップ、変更ログ、フォルダの下位要素/ツリーおよびレンディションの実装が検討される予定です。
Content Management REST Service実装には、具体的に次のオプション機能が含まれています。
capabilityGetDescendants = true capabilityGetFolderTree = false capabilityContentStreamUpdatability = anytime capabilityChanges = none capabilityRenditions = none capabilityMultifiling = false capabilityUnfiling = false capabilityVersionSpecificFiling = false capabilityPWCUpdateable = false capabilityPWCSearchable = false capabilityAllVersionsSearchable = false capabilityJoin = none capabilityACL = none capabilityQuery = none, metadataonly, or both combined
Content Management REST Serviceでは、ドキュメント・オブジェクトおよびフォルダ・オブジェクトがサポートされています。CMISでは、ノードのcmis:baseTypeId
はcmis:folder
またはcmis:document
となります。また、タイプのcmis:baseId
はcmis:folder
またはcmis:document
となります。
CMISオブジェクト型には、Oracle WebCenter Content: Content Serverメタデータ・フィールド定義および Oracle WebCenter ContentのSite Studioリージョン定義からマップされたフィールドが含まれています。
Oracle WebCenter Contentメタデータ・フィールドからCMISプロパティ定義へのマッピングは、次のとおりです。
表31-1 コンテンツ・サーバー・メタデータのマッピング
Oracle WebCenter Contentメタデータ | CMISプロパティ定義 |
---|---|
選択リストを検証して構成されたオプション・リスト、およびYesNoViewビューやTrueFalseViewビューを持つTEXTメタデータ・フィールド |
cmis:propertyBoolean |
他のすべてのTEXTメタデータ・フィールド |
cmis:propertyString |
LONG TEXTメタデータ・フィールド |
cmis:propertyString |
MEMOメタデータ・フィールド |
cmis:propertyString |
INTEGERメタデータ・フィールド |
cmis:propertyInteger |
DATEメタデータ・フィールド |
cmis:propertyDateTime |
DECIMALメタデータ・フィールド |
cmis:propertyDecimal |
Site Studioリージョン定義フィールドからCMISプロパティ定義へのマッピングは、次のとおりです。
ドキュメント・オブジェクトは、リポジトリによって管理される基本的な情報エンティティです。CMIS仕様で定義されているように、ドキュメント・オブジェクトは、バージョニング可能、ファイリング可能、問合せ可能、制御可能およびACLControl可能にすることができます。前述のように、このリリースのContent Management REST Serviceでは、バージョニング、マルチファイリング、ポリシーまたはACLをサポートしていません。
あるNodeが FolderではなくDocumentであると判定された場合、その子ノードはCMISを介しては公開されません。CMISでは、各Documentオブジェクトは1つのコンテンツ・ストリームに関連付けられており、WebCenter CMIS RESTでは、このストリームは、そのドキュメントに関連付けられたOracle WebCenter Content: Content Serverバイナリです。
CMIS仕様では、フォルダ・オブジェクトはコンテンツ・ストリームを持たず、バージョニング可能ではありません。ノードがフォルダであると判断されると、Content Management REST Serviceはそのノードをこの方法で公開します(Oracle WebCenter Contentでは、フォルダはコンテンツ・ストリームを持たず、バージョニング可能ではありません)。
CMIS仕様の2.1.6項: 「Relationship Object」は適用できません。Content Management REST Serviceはこのリリースのリレーションシップをサポートしていません。
CMIS仕様の2.1.7項: 「Policy Object」は適用できません。Content Management REST Serviceはこのリリースのポリシーをサポートしていません。
CMIS仕様の2.1.8項: 「Access Control」は適用できません。Content Management REST ServiceはこのリリースのACLをサポートしていません。許容されるアクションの詳細は、次の項を参照してください。
この項では、オブジェクトに対して定義される許容可能なアクションを一覧表示します。このリリースの実装内容により、すべてのオブジェクトに対してハードコードされているアクションも一部あります。その他の許容可能なアクションは、リポジトリ構成に基づいて設定されます。
canGetObjectRelationships = false
canCreateRelationship = false
canGetDescendants = false
canGetFolderTree = false
canCheckOut = false(バージョニング)
canCancelCheckOut = false(バージョニング)
canCheckIn = false(バージョニング)
canAddObjectToFolder = false(マルチファイリング)
canRemoveObjectFromFolder = false(アンファイリング/マルチファイリング)
canApplyPolicy = false
canGetAppliedPolicies = false
canRemovePolicy = false
canCreatePolicy = false
canApplyACL = false
canGetACL = false
canGetRenditions = false
canDeleteTree = true
canGetAllVersions = false (versioning)
CMIS仕様の2.1.9項: 「Versioning」は適用できません。Content Management REST Serviceはこのリリースのバージョニングをサポートしていません。
CMIS問合せは結果セットを返します。結果セットの各エントリ・オブジェクトには、問合せで指定されたプロパティのみが含められます。Content Management REST Serviceでは問合せ内でのJOINをサポートしていないため、各結果エントリは単一ノードからのプロパティを表します。共通の検索では、"SELECT * FROM …"などの問合せが使用されます。
FROM句は検索対象のコンテンツ・タイプを指定します。
FROM cmis:document ==> 任意のOracle WebCenter Contentドキュメント(例: IDC:GlobalProfile)
FROM cmis:document ==> 任意のOracle WebCenter Contentフォルダ(例: IDC:Folder)
FROM typeQueryName ==> タイプが問合せ可能であるかぎり、そのタイプのcmis queryName(例: ora:t:IDC!;GlobalProfile)
cmis:document and cmis:folderタイプは常に問合せ可能です。その他のタイプは、リポジトリ内で検索可能であれば問合せ可能です。
IN_FOLDER述語は、指定されたフォルダID(結果の親)として実装されます。
IN_TREE述語は、指定されたフォルダID(結果のフォルダ構造内の親)として実装されます。
CONTAINS() 述語は、フルテキスト問合せ表現の演算子です。
cmis:documentおよびcmis:folderのプロパティは、それに対応するOracle WebCenter Contentシステム・プロパティが検索可能かつソート可能であれば、問合せ可能および順序付け可能となります。システム・プロパティは次のようにマッピングされます。
cmis:createdBy ==> dDocAuthor
cmis:lastModifiedBy ==> dDocCreator
cmis:creationDate ==> dCreateDate
cmis:lastModificationDate ==> dLastModifiedDate (10gでは、フォルダはdLastModifiedDateにマップされ、ドキュメントはdCreateDateにマップされます)
cmis:name ==> dOriginalName(ドキュメント用)またはdCollectionName(フォルダ用)
cmis:contentStreamFileName ==> dOriginalName
cmis:contentStreamLength ==> VaultFileSize
cmis:contentStreamMimeType ==> dFormat
cmis:objectId ==> dDocName
cmis:objectTypeId ==> Oracle WebCenter Contentプロファイル名またはSiteStudioリージョン定義名
注意: cmis:objectTypeIdが順序付け可能となることはありません。 |
cmis:path ==> IN_FOLDERまたはIN_TREE述語を使用してください。
注意: CMIS問合せ内で表示できない機能が含まれるリポジトリもあれば、問合せ内で使用可能なCMIS問合せ述語(または述語の組合せ)が制限されるような制約を持つリポジトリもあります。前述のマッピングを使用して、リポジトリの機能と制約によるCMIS問合せでの考慮事項を確認してください。 |
ネストされたプロパティは、問合せ可能でも順序付け可能でもありません。
Content Management REST Serviceの実装では、Oracle WebCenter Contentでソート可能と指定されるプロパティが順序付け可能と出力されます。このリストには、実際にはOracle WebCenter Contentでソートできないプロパティが含まれていることがあります。Oracle WebCenter Contentでソート・エラーと出力されるフィールドに対して順序付けを可能にするには、次の手順に従って、指定したOracle WebCenter Contentフィールドをソート可能にします。
「管理」に移動して、「管理アプレット」を開きます。
Configuration Managerアプレットを開いて、「拡張検索のデザイン」をクリックします。
順序付け可能にするフィールドを編集し、「ソート可能」を選択します。
変更内容を保存して「管理」を修了します。
次の表は、具体的な検索の注意事項と推奨事項を示します。問合せの例は、第31.3項「Content Management REST Serviceのベスト・プラクティスおよび例」を参照してください。
表31-3 検索に関する注意事項と推奨事項
注意事項 | 推奨事項 |
---|---|
Oracle WebCenter Contentでは、null値または非null値での問合せに対するサポートが限定的です。 |
検索動作での相違に注意して、サポート対象外の基準に左右される検索表現式を記述しないでください。 |
フォルダの再帰的検索は、Oracle WebCenter Contentではサポートされていませんが、Oracle WebCenter Contentサーバーで右記のように構成されている場合、ドキュメント用にサポートされます。 |
検索範囲には、ドキュメントのみを含めるようにしてください( 検索オブジェクト上に検索パスを設定します(
|
多値プロパティの演算子はサブストリング・マッチを実行します。これは、 |
検索動作での相違に注意して、必要以上のマッチ数を検出しないようにするために、Configuration Managerアプレット内のOracle WebCenter Contentオプション・リスト・デリミタ文字を変更することを考慮してください。 |
フォルダ( |
Oracle WebCenter Contentフォルダ検索では、 |
すべてのプロパティが検索可能というわけではなく、検索で検索可能でないプロパティに遭遇した場合はParseExceptionが返されます(400エラー)。 |
Oracle WebCenter Content Configuration Manager情報フィールドのセクションを調べるか、ContentType定義を見直すことで、指定のコンテンツ・タイプに対してどのプロパティが検索可能か理解してください。 URLの例:
または、CMISを介して固有のタイプを調べます。 |
すべてのContentTypeが検索可能というわけではありません。検索できないContentTypesに対して検索を試みると、例外がスローされます。たとえば、 |
すべてのContentTypeが検索可能というわけではないことに注意してください。 |
String多値プロパティのみ検索可能です。 |
String以外の多値プロパティ・タイプの検索を指定しないでください。 |
|
サポートされている構文を使用して問合せを再構成してください。 |
ソート基準は1つしかサポートされていません。 |
2つ以上のソート基準を使用する検索表現式を記述しないでください。 |
ソートまたは索引の付いていないフィールドは、結果的に例外となります。 索引の付いていないフィールドで検索を実行すると、「DRG-10837: セクションdStatusは存在しません」などの埋込み例外コードで、例外がスローされます。 |
ソート基準としてそれらを使用する前に、どのフィールドに索引が付けられているのか把握してください。 URLの例: |
検索問合せでは空の値は許可されていません。 |
|
|
検索動作での相違に注意して、サポート対象外の基準に左右される検索表現式を記述しないでください。 |
同じOracle WebCenter Contentリポジトリでの複数の検索パスはサポートされません。 |
検索動作での相違に注意して、サポート対象外の基準に左右される検索表現式を記述しないでください。 |
ドキュメントの検索時には、Oracle WebCenter Contentが適切に構成されていれば再帰的検索(フォルダ・ツリー検索)がサポートされます。 検索パスが設定されていない場合には、リポジトリ内のすべてのドキュメント(ファイル済と未ファイル分の両方)が検索されます。 |
コンテンツ・サーバーの |
ドキュメントの検索で |
検索動作での相違に注意して、サポート対象外の基準に左右される検索表現式を記述しないでください。 |
ドキュメント(select * from cmis:document)を検索する場合、複数のコンテンツ・タイプに検索を限定することはできません。たとえば、 |
検索を複数のコンテンツ・タイプに限定する必要がある場合は、複数の問合せを出して同じ動作を実現します。すべてのタイプを横断的に検索する場合は、select文内でcmis:documentを使用します。 |
|
この機能が必要がある場合は、複数の問合せを発行して同じ動作を実現します。 |
|
|
問合せは、Oracle WebCenter Content検索エンジンの選択に応じて大文字と小文字を区別する場合があります。 |
Oracle WebCenter Content検索エンジンの選択は、大文字と小文字を区別するかどうかに影響することがあるので注意してください。メタデータがOracleTextSearchを使用して検索すると、検索エンジンは一般に大文字と小文字を区別しません。メタデータが |
CMIS仕様の第2.2項「サービス」で説明されているメソッドは、Content Management REST Serviceによって実装されています。具体的な実装の詳細は、第31.2項「CMIS第II部: RESTful AtomPubバインディング」で説明します。
CMIS仕様の3項: 「RESTful AtomPub Binding」では、1つ以上のコンテンツ管理リポジトリとともに動作するアプリケーションで使用可能なAtomPubに基づいた仕様を定義しています。RESTサービスはポータル・インスタンスを通して使用できます。
リポジトリのナビゲーションはすべて、AtomPubサービス・ドキュメントから開始されます。リポジトリ内のすべてのアクセス可能コンテンツの検出は、このドキュメントからコレクション、リンクおよびテンプレートを介して行うことができます。CMIS Webアプリケーションのコンテキスト・ルートからのサービス・ドキュメントのURIは、/rest/cmis/repositoryです。
したがって、前述の例のようにアプリケーションがlibrary-context-root-overrideとともにデプロイされている場合、サービス・ドキュメントにはhttp://hostname:port/rest/cmis/repository
というURLを介してアクセスします。
注意: RESTアプリケーションはポータルとのみ使用可能で、Portal Frameworkアプリケーションとは使用できません。しかし、ポータルで使用可能なRESTおよびCMISリソースにアクセスするためのHTTPリクエストをFrameworkアプリケーションから生成できます。目的とする関連コンテンツへの接続でポータル・インスタンスが構成されていることを確認する必要があります。 |
デフォルトでは、このドキュメントにはOracle WebCenter Contentの構成済のリポジトリごとにワークスペースが含まれています(Oracle WebCenter ContentリポジトリのみがOracle WebCenter PortalのCMIS RESTでサポートされています)。単一リポジトリのサービス・ドキュメントを取得するには、CMIS AtomPubバインディング仕様の3.6.2.1項で説明されているように、repositoryId
問合せパラメータを使用します。
前項で説明したように、サービス・ドキュメントはAtomPubワークスペースから構成されます。各ワークスペースは Oracle WebCenter Portal Content Server接続にマッピングされます。
ユーザーはサービス・ドキュメントから開始して、予測されたパスを使用してコレクションやリンクにナビゲートすることが想定されるためです。コレクションのリンクとタイトルおよびタイプとの関係はすべてCMIS仕様で定義されているため、一般的にはクライアント実装によるナビゲートが可能です。また、パスによるオブジェクトへのアクセス、IDによるオブジェクトへのアクセス、IDによるタイプへのアクセス、および問合せへのアクセスを簡単に行うためにリポジトリごとに定義されたテンプレートもあります。パスおよびIDのテンプレートでの変数の書式を確認するには、フォルダおよびドキュメントのエントリを参照してください。
CMIS仕様の3.1.3項: 「Response Formats」では、Acceptヘッダー内に表示されているサポート対象のメディア・タイプでオーバーライドされないかぎり、デフォルトでAtom/AtomPubスタイル・フォーマットが返されることが示されています。
一般的なAtomPubフィード・リーダーを使用すると、CMIS RESTサーバーにより返されたフィードをウォークスルーできます。すべてのCMIS詳細が表示されるわけではありませんが、リンクをナビゲートすることはできます。一般に、フィード・リーダーを設定するためには、特定のフィードのURIがわかっている必要があります。このURIは、サービス・ドキュメント(たとえば、typesdescendantsのワークスペース・リンク)をナビゲートすることにより確認できます。
問合せ構文の詳細は、CMIS仕様を参照してください。Content Management REST Serviceのベスト・プラクティスおよび例については、第31.3項「Content Management REST Serviceのベスト・プラクティスおよび例」を参照してください。
Content Management REST ServiceではCMIS仕様の他に、次の追加機能を提供します。
この仕様は、次のCMISサービスを定義します。
GET: getChildren
POST: createDocument
またはcreateFolder
またはcreatePolicy
またはmoveObject
またはaddObjectToFolder
Content Management REST Serviceでは、次の追加のサービスが提供されます。
POST: create
このサービスには、uid、fileName、contentId、commentsおよびsimpleResponseという5種類の問合せパラメータと、1つのヘッダー・パラメータSlugが用意されています。これは、簡単なバイナリ・リクエストのアップロードとして使用されることを意図したサービスです。このサービスでは新規ドキュメントが作成されます。SlugおよびfileNameを使用して、リクエストに添付されるバイナリの名前を付けます(両方のパラメータの使用はオプションで、1つのみを定義する必要があります。fileNameが最初にチェックされます)。commentsパラメータはオプションであり、Oracle WebCenter ContentがdDocNameを自動生成するように設定されている場合、contentIdはオプションです。
POST: create Content-Type: multipart/form-data
このサービスには、1つの問合せパラメータuid(ドキュメントが作成されるフォルダのuid)が用意されています。ブール型の問合せパラメータsimpleResponseがfalseに設定されている場合、メディア・タイプapplication/atom+xml;type=entryをレスポンスとして返します。trueに設定されている場合、新しく作成されたドキュメントを指すURIとともに、メディア・タイプtext/htmlがレスポンスとして返されます。commentsおよびsimpleResponseパラメータは両方ともオプションであり、Oracle WebCenter ContentがdDocNameを自動生成するように設定されている場合、contentIdはオプションです。名前"fileUpload"が必要です。
<html> <head> <title>simple post</title> </head> <body> <form action="http://<host>:<port>/rest/api/cmis/children/StellentRepository?uid=IDC:Folder/2" method="POST" enctype="multipart/form-data"> Select a document to upload: <input type="file" name="fileUpload"/><br> <input type="hidden" name="comments" value="this is just a comment"/> <input type="hidden" name="contentId" value="uniqueID1"/> <input type="hidden" name="simpleResponse" value="true"/> <input type="submit" value="Submit"/> </form> </body> </html>
この仕様は、次のCMISサービスを定義します。
GET: getObject、getObjectOfLatestVersion (getObject)
PUT: updateProperties
DELETE: deleteObject
Content Management REST Serviceでは、次の追加のサービスが提供されます。
POST: postToDelete
この新しいサービスには、uidおよび_methodという2つの問合せパラメータが用意されています。ドキュメントはPOSTを介して削除できます。
http://<host>:<port>/rest/api/cmis/document/repoName?uid=ABC&_method="delete"
この仕様は、次のCMISサービスを定義します。
GET: getContentStream
PUT: setContentStream
DELETE: deleteContentStream
Content Management REST Serviceでは、次の追加のサービスが提供されます。
POST: postTunnelContentStream
このサービスには、uid、overwriteFlag、fileName、commentsおよび_methodという5種類の問合せパラメータと、1つのヘッダー・パラメータSlugが用意されています。これは、簡単なバイナリ・リクエストのアップロードまたはPOSTを介した削除として使用されることを意図したサービスです。このサービスには、ドキュメントがすでに存在している必要があります。SlugおよびfileNameを使用して、リクエストに添付されるバイナリの名前を付けます(両方のパラメータの使用はオプションで、1つのみを定義する必要があります。fileNameが最初にチェックされます)。overwriteFlagパラメータは、デフォルトでtrueに設定されています。commentsパラメータはオプションで、_methodの有効な値は"delete"または"put"です(大文字と小文字を区別しません)。
http://<host>:<port>/rest/api/cmis/stream/repoName?uid=ABC&_method="delete"
POST: postTunnelContentStream
Content-Type: multipart/form-data
このサービスには、1つの問合せパラメータuidが用意されています。これは、簡単なhtmlのmultipart/form-dataのアップロードまたはPOSTを介した削除として使用することを意図したサービスです。このサービスには、ドキュメントがすでに存在している必要があります。属性名"fileUpload"は必須です。"comments"はオプションで、"_method"の有効な値は"delete"または"put"です(大文字と小文字を区別しません)。
<form action="http://<host>:<port>/rest/api/cmis/stream/repoName?uid=WDOC019113" method="POST" enctype="multipart/form-data"> Select a document to upload: <input type="file" name="fileUpload"/><br> <input type="hidden" name="comments" value="this is just a comment"/> <input type="hidden" name="_method" value="PUT"/> <input type="submit" value="Submit"/> </form>
この項では、Content Management REST Serviceの使用に関するベスト・プラクティスおよび例を示します。問合せ構文の詳細は、CMIS仕様を参照してください。
この項には次のサブセクションが含まれます:
Content Management REST Serviceを使用するリポジトリに対して推奨されるベスト・プラクティスを次に示します。
問合せの"FROM"部分に使用できるタイプを決めるには、AtomPubサービス・ドキュメントからタイプ・コレクションに関する項目を参照してください。タイプは必ず問合せ可能とし、必ずそのタイプの問合せ名を使用するようにする必要があります。
たとえば、IDC:GlobalProfileは次の例に似たタイプ情報を保持できます。
<cmis:localName>IDC:GlobalProfile</cmis:localName> <cmis:displayName>IDC:GlobalProfile</cmis:displayName> <cmis:queryName>ora:t:IDC!;GlobalProfile</cmis:queryName> <cmis:queryable>true</cmis:queryable>
前述のタイプ情報に関する問合せの例は、"SELECT * FROM ora:t:IDC!;GlobalProfile"とすることができます。
問合せの"SELECT"および"WHERE"部分に使用できるプロパティを決めるには、関連するタイプのエントリを参照してください。そのタイプのプロパティ定義がそれぞれリストされ、問合せ可能および順序付け可能に対応する設定が用意されます。cmis:querynameがこの問合せで使用できる値です。
たとえば、IDC:GlobalProfileは次の例に似たプロパティ定義を保持できます。
<cmis:propertyStringDefinition> <cmis:id>/stanl18-ucm11g/IDC:GlobalProfile.ora:p:dDocName</cmis:id> <cmis:localName>dDocName</cmis:localName> <cmis:displayName>dDocName</cmis:displayName> <cmis:queryName>ora:p:dDocName</cmis:queryName> <cmis:description>Content ID</cmis:description> <cmis:propertyType>string</cmis:propertyType> <cmis:cardinality>single</cmis:cardinality> <cmis:updatability>readwrite</cmis:updatability> <cmis:inherited>false</cmis:inherited> <cmis:required>false</cmis:required> <cmis:queryable>true</cmis:queryable> <cmis:orderable>true</cmis:orderable> </cmis:propertyStringDefinition>
前述のプロパティ定義に関する問合せの例は、"SELECT ora:p:dDocName FROM ora:t:IDC!;GlobalProfile"とすることができます。
問合せの可読性を高めるために、ContentTypeおよびPropertyDefinitionの名前には英数字以外の文字を使用しないでください。
この項では、問合せの例をいくつか示します。問合せ構文の詳細は、CMIS仕様を参照してください。(問合せのURI全部を取得するには、サービス・ドキュメント内の問合せURIテンプレートを参照してください。)
SELECT * from cmis:folder
SELECT cmis:name, cmis:contentStreamFileName, cmis:contentStreamMimeType, cmis:contentStreamLength FROM cmis:document WHERE cmis:contentStreamFileName = 'BinaryName' AND cmis:contentStreamMimeType = 'text/html' AND cmis:contentStreamLength > 1
SELECT cmis:name, cmis:creationDate, cmis:lastModificationDate FROM cmis:folder WHERE cmis:name = 'Trash' AND cmis:lastModificationDate > TIMESTAMP '2008-05-18T10:32:44.703-06:00'
SELECT * FROM cmis:document WHERE cmis:name LIKE 'baker%'
SELECT * FROM cmis:document WHERE cmis:name NOT IN ('nodeBoolean', 'nodeLong')
SELECT cmis:name from cmis:document where IN_TREE('/StellentRepository')
SELECT * FROM ora:t:IDC:GlobalProfile WHERE ora:p:xBooleanTestField = FALSE ORDER BY ora:p:dDocTitle ASC
SELECT ora:p:xMultiValuedDelimiterTest FROM ora:t:IDC:GlobalProfile WHERE ANY ora:p:xMultiValuedDelimiterTest NOT IN ('four')
SELECT cmis:name FROM ora:t:IDC:GlobalProfile WHERE CONTAINS('test') ORDER BY ora:p:dInDate DESC
SELECT * FROM cmis:document where IN_TREE('/StellentRepository/IDC:Folder/2')