OSD リファレンス

OSD (Open Software Description) は、 MicrosoftMarimba が 提唱しているソフトウェアの配布のためのデータフォーマットです。 XML アプリケーションの 1 つで、CDF (Channel Definition Format) と 組み合わせることで自動的なアップデートも行えるようになります。

以下は、Microsoft の ウェブサイトにある文書 「Specification for the Open Software Description (OSD) Format」 を基にした、OSD ボキャブラリの簡易リファレンスです。


索引

ABSTRACT CODEBASE DEPENDENCY DISKSIZE IMPLEMENTATION
IMPLTYPE LANGUAGE LICENSE MEMSIZE OS
OSVERSION PROCESSOR SOFTPKG TITLE VM

ABSTRACT

 <!ELEMENT ABSTRACT (#PCDATA)> 
意味
このソフトウェア配布の性質や目的を要約した短い説明を示します。
例: <ABSTRACT>ソリティア by FooBar Corp.</ABSTRACT>
アトリビュート
なし
内容
文字列
親要素
SOFTPKG

CODEBASE

 <!ELEMENT CODEBASE EMPTY>                   
 <!ATTLIST CODEBASE FILENAME CDATA #IMPLIED> 
 <!ATTLIST CODEBASE HREF CDATA #REQUIRED>    
 <!ATTLIST CODEBASE SIZE CDATA #IMPLIED>     
意味
配布用アーカイブのある場所を指定します。<CODEBASE> を複数置くと、そのうち1つがランダムに選ばれて使われます(ミラーサイト)。1つも指定しなかったり、HREF 属性が正しく指定されないとエラーになります。
アトリビュート
FILENAME="<文字列>"
同じアーカイブ内のファイルを指定します。アーカイブ内の OSD ファイルでのみ有効で、単独の場合は無視されます。
HREF="<URL>" (必須)
ダウンロードするアーカイブの URL を指定します。
SIZE="<最大KB>"
アーカイブの最大サイズを指定します。指定した値より大きい場合は、そのソフトウェアはダウンロードされません。単位はキロバイトです。
子要素
親要素
IMPLEMENTATION

DEPENDENCY

 <!ELEMENT DEPENDENCY (CODEBASE|SOFTPKG)* >             
 <!ATTLIST DEPENDENCY ACTION (Assert|Install) "Assert"> 
意味
ソフトウェアやコンポーネント間の依存関係を示します。
アトリビュート
ACTION="(Assert|Install)"
クライアントのマシンを調べて、必要なソフトウェアやコンポーネントがインストールされていなかった場合の動作を指定します。"Assert" を指定すると、この SOFTPKG 自体が無効になります。"Install" を指定すると、必要なソフトウェアコンポーネントを取得・インストールします。デフォルトは "Assert" です。
子要素
CODEBASESOFTPKG
親要素
SOFTPKG

DISKSIZE

 <!ELEMENT DISKSIZE EMPTY>                 
 <!ATTLIST DISKSIZE VALUE CDATA #REQUIRED> 
意味
必要なディスクスペースの量を示します。
アトリビュート
VALUE="<最小KB>" (必須)
必要なディスクスペースの、およその最小サイズを示します。単位はキロバイトです。
子要素
親要素
IMPLEMENTATION

IMPLEMENTATION

 <!ELEMENT IMPLEMENTATION (CODEBASE | DEPENDENCY | DISKSIZE | 
   IMPLTYPE | LANGUAGE | OS | PROCESSOR | VM)*>               
意味
ソフトウェアのインプリメンテーションを表します。
アトリビュート
なし
子要素
CODEBASEDEPENDENCYDISKSIZEIMPLTYPELANGUAGEOSPROCESSORVM
親要素
SOFTPKG

IMPLTYPE

 <!ELEMENT IMPLTYPE EMPTY>                 
 <!ATTLIST IMPLTYPE VALUE CDATA #REQUIRED> 
意味
インプリメンテーションのタイプを示します。
アトリビュート
VALUE="<タイプ>" (必須)
インプリメンテーションのタイプを指定します。
子要素
親要素
IMPLEMENTATION

LANGUAGE

 <!ELEMENT LANGUAGE EMPTY>                 
 <!ATTLIST LANGUAGE VALUE CDATA #REQUIRED> 
意味
ユーザー・インタフェースに必要な自然言語を示します。複数の <LANGUAGE> を置くこともできます。1つも指定しない場合は、どの言語でも実行できることを意味します。
アトリビュート
VALUE="<言語コード>" (必須)
必要な言語を、ISO639 の言語コードで指定します。日本語は "ja"、英語は "en"です。
子要素
親要素
IMPLEMENTATION

LICENSE

 <!ELEMENT LICENSE EMPTY>                
 <!ATTLIST LICENSE HREF CDATA #REQUIRED> 
意味
ライセンス条項や著作権情報が取得できる場所を示します。
アトリビュート
HREF=&"<URL>" (必須)
ライセンス情報が取得できる場所の URL を示します。
子要素
親要素
SOFTPKG

MEMSIZE

 <!ELEMENT MEMSIZE EMPTY>                 
 <!ATTLIST MEMSIZE VALUE CDATA #REQUIRED> 
意味
実行時に必要なメモリ量を示します。
アトリビュート
VALUE="<KB数>" (必須)
必要な実行時メモリの、およその量を示します。単位はキロバイトです。
子要素
親要素
IMPLEMENTATION

OS

 <!ELEMENT OS (OSVERSION)*>          
 <!ATTLIST OS VALUE CDATA #REQUIRED> 
意味
実行に必要なオペレーティングシステムを指定します。複数の <OS> を置くこともできます。1つも指定しない場合は、どのオペレーティングシステムでも実行できることを意味します。
アトリビュート
VALUE="<文字列>" (必須)
必要なオペレーティングシステムを指定します。次の値が使えます。
  • AIX
  • BSDi
  • DECAlpha
  • DOS
  • HPBLS
  • HPUX
  • IRIX
  • Linux
  • MacOS
  • OS/2
  • SCO CMW
  • SCO ODT
  • Solaris
  • SunOS
  • UnixWare
  • Win95
  • WinNT
子要素
OSVERSION
親要素
IMPLEMENTATION

OSVERSION

 <!ELEMENT OSVERSION EMPTY>                 
 <!ATTLIST OSVERSION VALUE CDATA #REQUIRED> 
意味
実行に必要なオペレーティングシステムのバージョンです。複数の <OSVERSION> を置くこともできます。1つも指定しない場合は、どのバージョンでも実行できることを意味します。
アトリビュート
VALUE="<バージョン>" (必須)
オペレーティングシステムのバージョンです。
例: <OS VALUE="WinNT"><OSVERSION VALUE="4,0,0,0"/></OS>
子要素
親要素
OS

PROCESSOR

 <!ELEMENT PROCESSOR EMPTY>                 
 <!ATTLIST PROCESSOR VALUE CDATA #REQUIRED> 
意味
実行に必要なプロセッサ (CPU) を示します。複数の <PROCESSOR> を置くこともできます。1つも指定しない場合は、どのプロセッサでも実行できることを意味します。
アトリビュート
VALUE="<プロセッサ名>" (必須)
必要なプロセッサを指定します。次の値が使えます。
  • x86
  • mips
  • alpha
  • ppc
  • sparc
  • 680x0
子要素
親要素
IMPLEMENTATION

SOFTPKG

 <!ELEMENT SOFTPKG (ABSTRACT | IMPLEMENTATION | DEPENDENCY | LICENSE | 
   TITLE)*>                                                            
 <!ATTLIST SOFTPKG NAME CDATA #REQUIRED>                               
 <!ATTLIST SOFTPKG VERSION CDATA #IMPLIED>                             
意味
ソフトウェア・パッケージを表します。OSD ツリーのルート・エレメントです。
アトリビュート
NAME="<パッケージ名>" (必須)
パッケージの、一意な名前を指定します。
例: NAME="com.foobar.www.Solitaire"
この例では、ドメイン名を逆にしたものにソフトウェアの名称をつけています。
VERSION="<バージョン>"
パッケージのバージョンを示します。
子要素
ABSTRACTIMPLEMENTAIONDEPENDENCYLICENSETITLE
親要素
DEPENDENCY

TITLE

 <!ELEMENT TITLE (#PCDATA) > 
意味
ソフトウェア・パッケージの「わかりやすい」名前を示します。SOFTPKG エレメントの NAME アトリビュートと違って、一意でなくともかまいません。
アトリビュート
なし
内容
文字列
親要素
SOFTPKG

VM

 <!ELEMENT VM EMPTY>                 
 <!ATTLIST VM VALUE CDATA #REQUIRED> 
意味
実行に必要な仮想マシンを示します。
アトリビュート
VALUE="<仮想マシン>" (必須)
必要な仮想マシンを指定します。
子要素
親要素
IMPLEMENTATION


Presented by 夏鰯 <sardine@toyfish.net>