Document Style Semantics and Specification Language

Document Style Semantics and Specification Language (DSSSL) は、マークアップ言語 SGML もしくは XML で記述された文書のための、スタイルシート言語の一つである。
DSSSL は「ディッセル」と読む。DSSSL に含まれるうちの "expression language" は、プログラミング言語Schemeの部分集合をベースとしている。具体的には、Schemeのうちの副作用を取り除いた（side-effect free）関数的な（functional）機能だけから成る、Schemeの部分集合（subset of Scheme）だけを使っている。DSSSL の開発には、ジェームズ・クラークなどの人々が関わった。
1996年に ISO/IEC 10179:1996 として規格が定められた（対応する日本工業規格は JIS X 4153）。
DSSSL を使うことにより、SGML文書やXML文書を、TeX、PDF、HTML、RTF などの、人間にとって読みやすいさまざまな形式に変換して、コンピュータの画面に表示することや紙に印刷することができる。SGML文書やXML文書の内容は、コンピュータのソフトウェアにとっては読みやすい構造であるが、人間にとってより読みやすい形式が望まれることがある。DSSSL のようなスタイルシート言語を使うことにより、SGML文書やXML文書を、人間にとって読みやすい組版された形式に変換することができる。
DSSSL がよく使われる用途の一つは、DocBook（文書を記述するための SGML/XML技術）で記述された文書の組版である。
DSSSL は、当初は SGML文書のためのスタイルシート言語として開発されたが、XML文書のスタイルシート言語としても、使うことができる。
現在では、DSSSL とは別のスタイルシート言語である XSL (XSLT、XSL-FO) や CSS が使われる事例が多くなっている。
XSL (XSLT、XSL-FO) は、DSSSL の技術をもとに開発された。
DSSSL処理系の機能.
DSSSL の処理系には次の 2つの機能がある。
例えば、SGML/XML文書を、DSSSL処理系を使って、TeX、PDF、HTML、RTF などの形式のファイルに変換することができる (変換先として指定できるファイルの種類は、DSSSL処理系によって異なる)。
また組版機能を使わずに、SGML/XML文書を構造の異なる別の SGML/XML文書に変換するために、DSSSL処理系を使うことができる。
DSSSL処理系の実装.
DSSSL処理系には、商用のものとフリーのものとがある。フリーの処理系としては、ジェームズ・クラークが中心となって開発した Jade、およびそれから派生した OpenJade がある。