Infrastructure tools to support an effective radiation oncology learning health system

Document Style Semantics and Specification Language(ドキュメントスタイルセマンティクスアンドスペシフィケーションランゲージ、DSSSL)、通称ディッセルとは、マークアップ言語 SGML もしくは XML で記述された文書のための、スタイルシート言語の一つである。

DSSSL に含まれるうちの "expression language" は、プログラミング言語Scheme部分集合をベースとしている。具体的には、Schemeのうちの副作用を取り除いた(side-effect free)関数的な(functional)機能だけから成る、Schemeの部分集合(subset of Scheme)だけを使っている[1]。DSSSL の開発には、ジェームズ・クラークなどの人々が関わった。 1996年に ISO/IEC 10179:1996 として規格が定められた(対応する日本工業規格は JIS X 4153)。

DSSSL を使うことにより、SGML文書やXML文書を、TeXPDFHTMLRTF などの、人間にとって読みやすいさまざまな形式に変換して、コンピュータの画面に表示することや紙に印刷することができる。SGML文書やXML文書の内容は、コンピュータソフトウェアにとっては読みやすい構造であるが、人間にとってより読みやすい形式が望まれることがある。DSSSL のようなスタイルシート言語を使うことにより、SGML文書やXML文書を、人間にとって読みやすい組版された形式に変換することができる。

DSSSL がよく使われる用途の一つは、DocBook(文書を記述するための SGML/XML技術)で記述された文書の組版である。

DSSSL は、当初は SGML文書のためのスタイルシート言語として開発されたが、XML文書のスタイルシート言語としても、使うことができる。

現在では、DSSSL とは別のスタイルシート言語である XSL (XSLTXSL-FO) や CSS が使われる事例が多くなっている。

XSL (XSLT、XSL-FO) は、DSSSL の技術をもとに開発された。

DSSSL処理系の機能

DSSSL の処理系には次の 2つの機能がある。

  1. SGML もしくは XML の文書を、構造の異なる別の SGML/XML文書に変換する機能
  2. SGML/XML文書を人間に読みやすいように組版して、コンピュータの画面に表示したり紙に印刷することができるようにする機能

例えば、SGML/XML文書を、DSSSL処理系を使って、TeXPDFHTMLRTF などの形式のファイルに変換することができる (変換先として指定できるファイルの種類は、DSSSL処理系によって異なる)。

また組版機能を使わずに、SGML/XML文書を構造の異なる別の SGML/XML文書に変換するために、DSSSL処理系を使うことができる。

DSSSL処理系の実装

DSSSL処理系には、商用のものとフリーのものとがある。フリーの処理系としては、ジェームズ・クラークが中心となって開発した Jade、およびそれから派生した OpenJade がある。

脚注

  1. ^ そのように極めて限定された部分集合ならば、Scheme以外の任意のLispの方言でも、議論はたいして違わない。

外部リンク