前稿に引き続きCMISの概要紹介をしていきます。今回はCMISのモデルにおけるデータタイプを説明します。
基本オブジェクトタイプ
CMISの基本オブジェクトタイプは、文書・フォルダ・関連・ポリシの4つです。文書はリポジトリに格納されるもっとも基本的な構成要素です。フォルダは文書をはじめとする「格納可能なオブジェクト」の集合のコンテナです。関連は2つの独立したオブジェクト(インスタンス)を繋ぐ関係性を定義します。ポリシは1つ以上の「コントロール可能なオブジェクト」に「適用」される管理目的のポリシを表現します。文書とフォルダとポリシの3つは独立したオブジェクトとして位置づけられているため、関連の対象となります。
また、各オブジェクトはオブジェクトIDというユニークな識別子を持ちます。このIDはタイプによらずリポジトリ内でユニークであることが保証されていなければなりません。また、必須ではありませんが、このIDは「永続的」であることが望ましいとされています。(永続的とは、すくなくともそのオブジェクトのライフスパンが終わるまでの間は不変である、ということを意味します。そのオブジェクトが消滅した後で同一のIDが新しい別のオブジェクトにアサインされる可能性については特に規定されていません)。さらに内部的なIDだけでなく、URIを割り振ることもできます(これも必須ではありません。MAYと表現されています)。ただし、URI自体の検証や外部接続性等々についての細かい規定はCMISの対象外となります。
各オブジェクトには属性が定義されます。属性は必ず名前をもちますが、厳密な順番付けは必要としません。(ただし、同一リポジトリの同一クラスの属性のセットについては常に一貫した順番で取得できることが求められています)属性には、String(文字列 xsd:string)・Decimal(小数 xsd:decimal)・Integer(整数 xsd:integer)・Boolean(真偽値 xsd:boolean)・DateTime(日付 xsd:dateTime)・URI(URI xsd:URI)などの型が用意されています。また、ID(xsd:string)とXML(xs:any)とHTML(xs:any)という3つ独自の属性型も定義されています。IDがxsd:idではないことに注意してください。XMLとHTMLはそれぞれのマークアップ言語の断片を格納します。
文書
リポジトリの最も基本的な構成要素です。格納可能で独立したオブジェクトです。他の基本オブジェクト型とは違い、いわゆるファイルの実体にあたるContentStreamをもっています。ContentStreamはバイナリのデータ列で、その最大長はリポジトリの実装に依存します(特に規定はありません)。また、各ContentStreamにはMIMEタイプが設定されます。ContentStream自体には名前はつかず、文書オブジェクトを経由することになります。
続きは会員限定です。無料の読者会員に登録すると続きをお読みいただけます。
- 会員登録 (無料)
- ログインはこちら
ようやく策定されたECMのための共通言語 CMIS
2009.06.15
2008.10.17
2008.09.26