<?xml version='1.0' encoding="Shift_JIS" ?>

<doc>
<head>
<title locale="ja">SmartDocクイックスタート</title>
<title locale="en">SmartDoc Quick Start</title>
<author locale="ja">浅海 智晴</author>
<author locale="en">ASAMI, Tomoharu</author>
<hp>http://www.netpassport.or.jp/~wtasami</hp>
<date locale="ja">1999年9月23日</date>
<date locale="en">Sep. 23, 1999</date>
</head>
<body>

<section title="Hello World">

<subsection>
<title locale="ja">テキスト</title>
<title locale="en">Text</title>

<p locale="ja">
もっとも単純なSmartDocドキュメントは以下のようになります。
</p>
<p locale="en">
The simplest SmartDoc document is as shown below.
</p>

<program src="HelloWorld.sdoc"/>

<div locale="ja">
ただしこれは英語の場合。
日本語の場合にはもう少し<span ruby="おまじない">お呪い</span>が必要に
なります。

<program src="HelloWorld_ja.sdoc" encoding="Shift_JIS"/>

日本語ために必要な設定は以下の2つです。

<ul>
<li>エンコーディングの指定</li>
<li>言語の指定</li>
</ul>

エンコーディングはSmartDocのテキストが使用しているコード系を指定します。
この例ではWindowsで使われているシフトJISを指定していますが、UNIXの場合
には日本語EUCを指定することになるでしょう。

<table caption="コード系">
<thead>
<tr>
<th>コード系</th>
<th>プラットフォーム</th>
<th>指定</th>
</tr>
</thead>
<tbody>
<tr>
<td>シフトJIS</td>
<td>Windows 95/98/NT</td>
<td>Shift_JIS</td>
</tr>
<tr>
<td>日本語EUC</td>
<td>UNIX</td>
<td>EUC-JP</td>
</tr>
<tr>
<td>JIS</td>
<td>電子メール</td>
<td>ISO2022-JP</td>
</tr>
</tbody>
</table>

言語の指定にはタグの属性<code>xml:lang</code>を使用します。
<code>ja</code>は日本語を表しています。
タグに指定した属性は、指定されたタグの中に配置されているタグに引き継
がれます。
この例ではルートのタグである<code>doc</code>に指定しているので、文書全
体で有効になっています。

SmartDocのドキュメントを作成するうえにおいて以上の設定の理由については
深く考える必要はありません。
単に決まり文句として覚えておけばよいでしょう。

</div>

</subsection>

<subsection>
<title locale="ja">実行</title>
<title locale="en">Execution</title>

<p locale="ja">
SmartDocのドキュメントをHTMLやLaTeXに変換するのはSmartDocコマンドで行います。
</p>
<p locale="en">
Conversion from a SmartDoc document to HTML/LaTeX is 
performed using the SmartDoc command.
</p>

<p locale="ja">
さきほどのテキストを<code>HelloWorld.sdoc</code>という名前で格納してあ
るとします。
このテキストからHTMLを生成するのは次のようになります。
</p>
<p locale="en">
For example, the conversion of the text file
<code>HelloWorld.sdoc</code> into an
HTML file is as shown below:
</p>

<console>
C:\tmp&gt;sdoc HelloWorld.sdoc
</console>

<p locale="ja">
この場合は<code>HelloWorld.html</code>が生成されます。
</p>
<p locale="en">
In this case, <code>Helloworld.html</code> is created.
</p>

<p locale="ja">
LaTeXを生成する場合にはformatオプションを使います。
formatオプションにパラメタとしてlatex2eを指定するとLaTeX2eのドキュメン
トが生成されます。
</p>
<p locale="en">
To make a LaTeX file, the format option is used.
When latex2e is specified for the parameter of the format option, a LaTeX2e 
document is created.
</p>

<console>
C:\tmp&gt;sdoc -format:latex2e HelloWorld.sdoc
</console>

<p locale="ja">
HTMLとLaTeXを同時に生成することもできます。
</p>
<p locale="en">
It is also possible to make both an HTML and a LaTeX file at once.
</p>

<p locale="ja">
formatオプションにhtml4とlatex2eの両方を指定すると、HTML4とLaTeX2eのド
キュメントが同時に生成されます。
</p>
<p locale="en">
If both html4 and latex2e are specified for the parameter of the format option,
both an HTML4 and a LaTex2e document are created.
</p>

<console>
C:\tmp&gt;SmartDoc -format:html4,latex2e HelloWorld.sdoc
</console>

</subsection>

</section>

<section title="Text input">
<title locale="ja">文章の入力</title>

<p locale="ja">
SmartDocには以下の2つの文章の入力方法があります。
</p>
<p>
SmartDoc has the following two text input methods:
</p>

<ul locale="ja">
<li>パラグラフタグ</li>
<li>自然入力</li>
</ul>
<ul locale="en">
<li>Paragraph Tag</li>
<li>Natural Input</li>
</ul>

<subsection title="Paragraph Tag">
<title locale="ja">パラグラフタグ</title>

<p locale="ja">
SmartDocはHTMLと同様、パラグラフを入力するためのタグとして
<code>p</code>タグを用意しています。
</p>
<p locale="en">
SmartDoc also has the <code>p</code> tag for entering paragraphs, 
the same as HTML.
</p>

<program locale="ja">
<![CDATA[
<p>
パラグラフはこのように記述します。
</p>
<p>
次のパラグラフはこのようになります。この行は折り返しの効果を見るために
長ああああああああああああああああああああああああああああああああああ
あああああああああああああああああああああいパラグラフになっています。
</p>
]]>
</program>
<program locale="en">
<![CDATA[
<p locale="en">
Paragraphs are written as follows:
</p>
<p locale="en">
This paragraph turns out like this. It is a very very very very very
 very very very very very very very very very very very very very very
  long paragraph to see the effects of wrapping.
</p>
]]>
</program>

<div locale="ja" class="result">
<p>
パラグラフはこのように記述します。
</p>
<p>
次のパラグラフはこのようになります。この行は折り返しの効果を見るために
長ああああああああああああああああああああああああああああああああああ
あああああああああああああああああああああいパラグラフになっています。
</p>
</div>
<div locale="en" class="result">
<p locale="en">
Paragraphs are written as follows:
</p>
<p locale="en">
This paragraph turns out like this. It is a very very very very very
very very very very very very very very very very very very very very
long paragraph to see the effects of wrapping.
</p>
</div>

</subsection>

<subsection title="Natural Input">
<title locale="ja">自然入力</title>

<p locale="ja">
パラグラフタグによる入力はいかにもXMLらしい入力方法なのですが、入力が
繁雑であることは否めません。
この問題を解決するためにSmartDocではLaTeXライクな自然な入力方法を用意
しています。
SmartDocではこの入力方法を自然入力と呼びます。
</p>
<p locale="en">
Entering by paragraph tag is a very similar method to XML, 
but it is complicated.
To simplify this, SmartDoc also has a LaTex-like input method.
This method is called natural input.
</p>

<p locale="ja">
自然入力は以下のルールによってパラグラフを特定します。
</p>
<p locale="en">
For natural input, a paragraph is specified as shown below:
</p>

<ul locale="ja">
<li>空白行をパラグラフの変更とみなす</li>
</ul>
<ul locale="en">
<li>A blank line is recognized as a paragraph change.</li>
</ul>

<p locale="ja">
エディタでSmartDocのドキュメントを入力する場合、この入力方法がとても便
利なのはLaTeXをお使いの方は実感されていると思います。
</p>
<p locale="en">
It is well-known by LaTeX users that entering a document in a text editor 
by this method is very convenient.
</p>

<p locale="ja">
自然入力の例を以下に示します。
</p>
<p locale="en">
An example of natural input is as shown below:
</p>

<program locale="ja">
<![CDATA[
パラグラフはこのように記述します。

次のパラグラフはこのようになります。この行は折り返しの効果を見るために
長ああああああああああああああああああああああああああああああああああ
あああああああああああああああああああああいパラグラフになっています。
]]>
</program>
<program locale="en">
<![CDATA[
Paragraphs are written as follows:

This paragraph turns out like this. It is a very very very very very
very very very very very very very very very very very very very very
long paragraph to see the effects of wrapping.
]]>
</program>

<p locale="ja">
この入力は<code>p</code>を使った以下の入力と同じ意味を持っています。
</p>
<p locale="en">
The function of this entry is the same as <code>p</code> as shown below:
</p>

<program locale="ja">
<![CDATA[
<p>
パラグラフはこのように記述します。
</p>
<p>
次のパラグラフはこのようになります。この行は折り返しの効果を見るために
長ああああああああああああああああああああああああああああああああああ
あああああああああああああああああああああいパラグラフになっています。
</p>
]]>
</program>
<program locale="en">
<![CDATA[
<p>
Paragraphs are written as follows:
</p>
<p>
This paragraph turns out like this. It is a very very very very very
very very very very very very very very very very very very very very
long paragraph to see the effects of wrapping.
</p>
]]>
</program>

<div locale="ja" class="result">
パラグラフはこのように記述します。

次のパラグラフはこのようになります。この行は折り返しの効果を見るために
長ああああああああああああああああああああああああああああああああああ
あああああああああああああああああああああいパラグラフになっています。
</div>
<div locale="en" class="result">
Paragraphs are written as follows:

This paragraph turns out like this. It is a very very very very very
very very very very very very very very very very very very very very
long paragraph to see the effects of wrapping.
</div>

</subsection>

</section>

<section title="Section, SubSection">
<title locale="ja">セクション、サブセクション</title>

<p locale="ja">
SmartDocでは文書の論理構造を指定するためのタグとして以下の５つを用意し
ています。
この構造はLaTeX2eのものと同じです。
</p>
<p locale="en">
SmartDoc has 5 tags for specifying the logical structure of documents.
This structure is the same as LaTeX2e.
</p>

<ul>
<li>part</li>
<li>chapter</li>
<li>section</li>
<li>subsection</li>
<li>subsubsection</li>
</ul>

<p locale="ja">
たとえばこの「クイックスタート」の構造は次のような感じになっています。
</p>
<p locale="en">
For example, this Quick Start structure is shown as below:
</p>

<program locale="ja">
<![CDATA[
<doc>
<head>
...略...
</head>

<body>
<section title="Hello World">
<subsection title="テキスト">
...略...
</subsection>
<subsection title="実行">
...略...
</subsection>
</section>

...略...

</body>
</doc>
]]>
</program>
<program locale="en">
<![CDATA[
<doc>
<head>
......
</head>

<body>
<section title="Hello World">
<subsection title="Text">
......
</subsection>
<subsection title="Execution">
......
</subsection>
</section>

......

</body>
</doc>
]]>
</program>

</section>

<section title="Title">
<title locale="ja">タイトル</title>

<p locale="ja">
文書のタイトルや著者名、作成日付は<code>head</code>に記述します。
</p>
<p locale="en">
The title, author, and date are written as <code>head</code>.
</p>

<p locale="ja">
たとえばこの「クイックスタート」の<code>head</code>は以下のようになっ
ています。
</p>
<p locale="en">
For example, this Quick Start <code>head</code> is shown as below:
</p>

<program locale="ja">
<![CDATA[
<head>
<title>SmartDoc FAQ</title>
<author>浅海 智晴</author>
<date>1999年7月15日</date>
</head>
]]>
</program>
<program locale="en">
<![CDATA[
<head>
<title>SmartDoc FAQ</title>
<author>ASAMI, Tomoharu</author>
<date>Sep. 15, 1999</date>
</head>
]]>
</program>

</section>

<section title="List">
<title locale="ja">リスト</title>

<p locale="ja">
SmartDocではHTMLと同じ以下の3つのリストタグを用意しています。
</p>
<p locale="en">
SmartDoc has the following three list tags, the same as HTML:
</p>

<ul>
<li><code>ul</code></li>
<li><code>ol</code></li>
<li><code>dl</code></li>
</ul>

<p locale="ja">
<code>ul</code>は番号なしのリスト、
<code>ol</code>は番号つきのリスト、
<code>dl</code>は説明つきのリストを作るために使用します。
</p>
<p locale="en">
<code>ul</code> is used to make a list without numbers,
<code>ol</code> is used to make a list with numbers,
<code>dl</code> is used to make a list with explanations.
</p>

<p locale="ja">
いずれの場合も使い方はHTMLと同じです。
</p>
<p locale="en">
In each case, the method is the same as HTML.
</p>

<p locale="ja">
<code>ul</code>と<code>ol</code>のリストの項目は<code>li</code>タグを使います。
これもHTMLと同じです。
</p>
<p locale="en">
<code>li</code> tag is used for the items of the <code>ul</code> and <code>ol</code>,
the same as HTML.
</p>

<p locale="ja">
ただしXMLとHTMLの文法の違いによって若干違いがあります。
HTMLでは<code>li</code>タグはリスト項目の先頭にあればよかったのですが、
XMLでは要素は必ずタグで囲まなければならないのでその点に注意が必要です。
</p>
<p locale="en">
However, there are minor differences between the syntax of XML and HTML.
In the HTML, the <code>li</code> tag only needs to be located of the 
beginning of the list item, but in XML, the element must be enclosed by tags.
</p>

<p locale="ja">
<code>dl</code>では<code>dt</code>タグと<code>dd</code>タグによって要素を記述します。
これもHTMLと同じ。
</p>
<p locale="en">
<code>dl</code> elements are written with the <code>dt</code> tag and the 
<code>dd</code> tag.
This is also the same as HTML.
</p>

<subsection title="ul">

<p locale="ja">
<code>ul</code>は番号なしのリストを記述するためのタグです。
</p>
<p locale="en">
<code>ul</code> is the tag for writing a list without numbers.
</p>

<program locale="ja">
<![CDATA[
<ul>
<li>最初の項目</li>
<li>次の項目</li>
<li>その次の項目</li>
</ul>
]]>
</program>
<program locale="en">
<![CDATA[
<ul>
<li>First item</li>
<li>Second item</li>
<li>Third item</li>
</ul>
]]>
</program>

<div locale="ja" class="result">
<ul>
<li>最初の項目</li>
<li>次の項目</li>
<li>その次の項目</li>
</ul>
</div>
<div locale="en" class="result">
<ul>
<li>First item</li>
<li>Second item</li>
<li>Third item</li>
</ul>
</div>

</subsection>

<subsection title="ol">

<p locale="ja">
<code>ol</code>は番号つきのリストを記述するためのタグです。
</p>
<p locale="en">
<code>ol</code> is the tag for writing a list with numbers.
</p>

<program locale="ja">
<![CDATA[
<ol>
<li>最初の項目</li>
<li>次の項目</li>
<li>その次の項目</li>
</ol>
]]>
</program>
<program locale="en">
<![CDATA[
<ol>
<li>First item</li>
<li>Second item</li>
<li>Third item</li>
</ol>
]]>
</program>

<div locale="ja" class="result">
<ol>
<li>最初の項目</li>
<li>次の項目</li>
<li>その次の項目</li>
</ol>
</div>
<div locale="en" class="result">
<ul>
<li>First item</li>
<li>Second item</li>
<li>Third item</li>
</ul>
</div>

</subsection>

<subsection title="dl">

<p locale="ja">
<code>dl</code>は単語の定義のリストを記述するためのタグです。
</p>
<p locale="en">
<code>dl</code> is the tag for writing a list of word definitions.
</p>

<program locale="ja">
<![CDATA[
<dl>
<dt>最初の項目</dt>
<dd>最初の説明</dd>
<dt>次の項目</dt>
<dd>次の説明</dd>
<dt>その次の項目</dt>
<dd>その次の説明</dd>
</dl>
]]>
</program>
<program locale="en">
<![CDATA[
<dl>
<dt>First item</dt>
<dd>First explanation</dd>
<dt>Second item</dt>
<dd>Second explanation</dd>
<dt>Third item</dt>
<dd>Third explanation</dd>
</dl>
]]>
</program>

<div locale="ja" class="result">
<dl>
<dt>最初の項目</dt>
<dd>最初の説明</dd>
<dt>次の項目</dt>
<dd>次の説明</dd>
<dt>その次の項目</dt>
<dd>その次の説明</dd>
</dl>
</div>
<div locale="en" class="result">
<dl>
<dt>First item</dt>
<dd>First explanation</dd>
<dt>Second item</dt>
<dd>Second explanation</dd>
<dt>Third item</dt>
<dd>Third explanation</dd>
</dl>
</div>

</subsection>

</section>

<section title="Table">
<title locale="ja">表</title>

<p locale="ja">
SmartDocでは<code>table</code>タグを使用します。
基本的な使い方はHTMLと同じですが、大幅な機能拡張が行われています。
特に木構造の表の入力やCSVによるデータ入力は非常に強力です。
</p>
<p locale="en">
SmartDoc uses the <code>table</code> tag.
The fundamental usage is the same as HTML, but the functions have 
been greatly enhanced.
It especially has great functionality for entering tree charts and CSV data.
</p>

<subsection title="Basics">
<title locale="ja">基本</title>

<p locale="ja">
まず基本的な表の使い方です。
HTML4とほとんど同じであることが分かります。
</p>
<p locale="en">
First, basic charts are similar to HTML4.
</p>

<program locale="ja">
<![CDATA[
<table>
<thead>
<tr>
  <th>カラム1</th>
  <th>カラム2</th>
  <th>カラム3</th>
</tr>
</thead>
<tbody>
<tr>
  <td>データ1-1</td>
  <td>データ1-2</td>
  <td>データ1-3</td>
</tr>
<tr>
  <td>データ2-1</td>
  <td>データ2-2</td>
  <td>データ2-3</td>
</tr>
</tbody>
</table>
]]>
</program>
<program locale="en">
<![CDATA[
<table>
<thead>
<tr>
  <th>Column 1</th>
  <th>Column 2</th>
  <th>Column 3</th>
</tr>
</thead>
<tbody>
<tr>
  <td>Data 1-1</td>
  <td>Data 1-2</td>
  <td>Data 1-3</td>
</tr>
<tr>
  <td>Data 2-1</td>
  <td>Data 2-2</td>
  <td>Data 2-3</td>
</tr>
</tbody>
</table>
]]>
</program>

<div locale="ja" class="result">
<table>
<thead>
<tr>
  <th>カラム1</th>
  <th>カラム2</th>
  <th>カラム3</th>
</tr>
</thead>
<tbody>
<tr>
  <td>データ1-1</td>
  <td>データ1-2</td>
  <td>データ1-3</td>
</tr>
<tr>
  <td>データ2-1</td>
  <td>データ2-2</td>
  <td>データ2-3</td>
</tr>
</tbody>
</table>
</div>
<div locale="en" class="result">
<table>
<thead>
<tr>
  <th>Column 1</th>
  <th>Column 2</th>
  <th>Column 3</th>
</tr>
</thead>
<tbody>
<tr>
  <td>Data 1-1</td>
  <td>Data 1-2</td>
  <td>Data 1-3</td>
</tr>
<tr>
  <td>Data 2-1</td>
  <td>Data 2-2</td>
  <td>Data 2-3</td>
</tr>
</tbody>
</table>
</div>

<p locale="ja">
theadタグ、tbodyタグは見慣れない方もいらっしゃると思いますが、HTML4で
新規の導入されたタグで、テーブルの論理構造をより正確に表現するためのも
のです。
</p>
<p locale="en">
The thead tag and tbody tag are not familiar. They have just been introduced 
in HTML4, and using them shows the table logic structure more accurately.
</p>

</subsection>

<subsection title="Complex Tables">
<title locale="ja">複雑な表</title>

<p locale="ja">
SmartDocではHTMLと同様に<code>colgroup</code>, <code>colspan</code>,
<code>rowspan</code>を駆使した複雑な表を作成することができます。
</p>
<p locale="en">
By SmartDoc, very complex chart can be craeated with <code>colgroup</code>, 
<code>colspan</code>, <code>rowspan</code> ,which is like HTML.
</p>

<program locale="ja">
<![CDATA[
<table title="表のサンプル">
<colgroup>
<col align="left" class="key" />
</colgroup>
<colgroup span="2">
<col align="center"/>
<col align="right"/>
</colgroup>
<thead>
<tr>
<th>カラム(align=left,class=key)</th>
<th>カラム(align=center)</th>
<th>カラム(align=right)</th>
</tr>
</thead>
<tbody>
<tr>
<td>データ</td>
<td>データ</td>
<td>データ</td>
</tr>
<tr>
<td align="center">データ(align=center)</td>
<td align="right">データ(align=right)</td>
<td align="left">データ(align=left)</td>
</tr>
<tr>
<td rowspan="2">データ(rowspan=2)</td>
<td>データ</td>
<td>データ</td>
</tr>
<tr>
<td colspan="2">データ(colspan=2)</td>
</tr>
<tr>
<td rowspan="2" colspan="2" align="center">データ(rowspan=2,colspan=2,align=center)</td>
<td>データ</td>
</tr>
<tr>
<td>データ</td>
</tr>
<tr>
<td colspan="3" align="right">データ(colspan=3,align=right)</td>
</tr>
</tbody>
</table>
]]>
</program>
<program locale="en">
<![CDATA[
<table title="Sample Table">
<colgroup>
<col align="left" class="key" />
</colgroup>
<colgroup span="2">
<col align="center"/>
<col align="right"/>
</colgroup>
<thead>
<tr>
<th>Column(align=left,class=key)</th>
<th>Column(align=center)</th>
<th>Column(align=right)</th>
</tr>
</thead>
<tbody>
<tr>
<td>Data</td>
<td>Data</td>
<td>Data</td>
</tr>
<tr>
<td align="center">Data(align=center)</td>
<td align="right">Data(align=right)</td>
<td align="left">Data(align=left)</td>
</tr>
<tr>
<td rowspan="2">Data(rowspan=2)</td>
<td>Data</td>
<td>Data</td>
</tr>
<tr>
<td colspan="2">Data(colspan=2)</td>
</tr>
<tr>
<td rowspan="2" colspan="2" align="center">Data(rowspan=2,colspan=2,align=center)</td>
<td>Data</td>
</tr>
<tr>
<td>Data</td>
</tr>
<tr>
<td colspan="3" align="right">Data(colspan=3,align=right)</td>
</tr>
</tbody>
</table>
]]>
</program>

<p locale="ja">
この表は以下のように表示されます。
全くHTML4.0と一緒ですね。
</p>
<p locale="en">
This chart is shown as below.
It is identical with HTML , isn't it.
</p>

<div locale="ja" class="result">
<table title="表のサンプル">
<colgroup>
<col align="left" class="key" />
</colgroup>
<colgroup span="2">
<col align="center"/>
<col align="right"/>
</colgroup>
<thead>
<tr>
<th>カラム(align=left,class=key)</th>
<th>カラム(align=center)</th>
<th>カラム(align=right)</th>
</tr>
</thead>
<tbody>
<tr>
<td>データ</td>
<td>データ</td>
<td>データ</td>
</tr>
<tr>
<td align="center">データ(align=center)</td>
<td align="right">データ(align=right)</td>
<td align="left">データ(align=left)</td>
</tr>
<tr>
<td rowspan="2">データ(rowspan=2)</td>
<td>データ</td>
<td>データ</td>
</tr>
<tr>
<td colspan="2">データ(colspan=2)</td>
</tr>
<tr>
<td rowspan="2" colspan="2" align="center">データ(rowspan=2,colspan=2,align=center)</td>
<td>データ</td>
</tr>
<tr>
<td>データ</td>
</tr>
<tr>
<td colspan="3" align="right">データ(colspan=3,align=right)</td>
</tr>
</tbody>
</table>
</div>
<div locale="en" class="result">
<table title="Sample Table">
<colgroup>
<col align="left" class="key" />
</colgroup>
<colgroup span="2">
<col align="center"/>
<col align="right"/>
</colgroup>
<thead>
<tr>
<th>Column(align=left,class=key)</th>
<th>Column(align=center)</th>
<th>Column(align=right)</th>
</tr>
</thead>
<tbody>
<tr>
<td>Data</td>
<td>Data</td>
<td>Data</td>
</tr>
<tr>
<td align="center">Data(align=center)</td>
<td align="right">Data(align=right)</td>
<td align="left">Data(align=left)</td>
</tr>
<tr>
<td rowspan="2">Data(rowspan=2)</td>
<td>Data</td>
<td>Data</td>
</tr>
<tr>
<td colspan="2">Data(colspan=2)</td>
</tr>
<tr>
<td rowspan="2" colspan="2" align="center">Data(rowspan=2,colspan=2,align=center)</td>
<td>Data</td>
</tr>
<tr>
<td>Data</td>
</tr>
<tr>
<td colspan="3" align="right">Data(colspan=3,align=right)</td>
</tr>
</tbody>
</table>
</div>

<p locale="ja">
もちろんXMLで書いた表をHTMLで表示できるだけなら、たいしたことではない
のですが、SmartDocの特筆すべき特徴は、このような複雑な表をそのまま
LaTeX2eの表として再現できること。
LaTeXの表で苦労したことのある方なら、このことの価値を実感することがで
きるでしょう。
</p>
<p locale="en">
Of　cource the chart written by XML can be merely displayed is not paticular
function,　thouth the fantastic characteristic of SmatrDoc is that such a 
complex chart can be translated to the chart of LaTex2e without additional
operation. 
It is beyond descrioption, writer who has struggled with making 
LaTex chart feels it tremendously.  
</p>

</subsection>

<subsection title="Tree Charts">
<title locale="ja">木構造の表</title>

<p locale="ja">
表の中には木構造の構造を持ったデータを持つものが存在します。
</p>
<p locale="en">
Some charts have tree-structured data.
</p>

<p locale="ja">
もちろん前述の方法でも<code>td</code>の<code>rowspan</code>を駆使すれば、
そのような表を作成することは可能ですが、文書の論理構造を入力するという
SmartDocのコンセプトから、もう少し突っ込んだ記述方法を用意しています。
</p>
<p locale="en">
Of course, the above-mentioned entry method can also be used to prepare 
a tree chart by using the <code>rowspan</code> of the <code>td</code>.
However, the SmartDoc concept of entering the logical structure of documents, 
enables a better solution. 
</p>

<p locale="ja">
SmartDocでは木構造のデータを<code>ul</code>と<code>li</code>の組合わせ
で表現することができます。
</p>
<p locale="en">
SmartDoc allows tree-structured data to be written with the combination of 
the <code>ul</code> and <code>li</code>.
</p>

<p locale="ja">
この<code>ul</code>と<code>li</code>の組合わせによるツリーの表現を
<code>tbody</code>に記述することでツリー構造のデータを持つ表が作成され
ます。
</p>
<p locale="en">
A tree chart is made by writing the combination of the <code>ul</code> and 
the <code>li</code> in the <code>tbody</code>.
</p>

<program locale="ja">
<![CDATA[
<table title="木構造の表">
<thead>
<tr>
<th>大分類</th>
<th>中分類</th>
<th>小分類</th>
</tr>
</thead>
<tbody>
<ul>
<li>動物</li>

<ul>
<li>哺乳類</li>
<ul>
<li>犬</li>
<li>猫</li>
<li>馬</li>
</ul>

<li>爬虫類</li>
<ul>
<li>蛇</li>
<li>蛙</li>
</ul>

<li>昆虫</li>
<ul>
<li>蜻蛉</li>
<li>蝶</li>
<li>蜂</li>
<li>蟋蟀</li>
</ul>
</ul>

<li>植物</li>
<ul>
<li>針葉樹</li>
<ul>
<li>杉</li>
</ul>
</ul>

</ul>

</tbody>
</table>
]]>
</program>
<program locale="en">
<![CDATA[
<table title="Tree Chart">
<thead>
<tr>
<th>General category</th>
<th>Middle category</th>
<th>Detailed category</th>
</tr>
</thead>
<tbody>
<ul>
<li>Animal</li>

<ul>
<li>Mammal</li>
<ul>
<li>Dog</li>
<li>Cat</li>
<li>Horse</li>
</ul>

<li>Reptile</li>
<ul>
<li>Snake</li>
<li>Frog</li>
</ul>

<li>Insect</li>
<ul>
<li>May-fly</li>
<li>Butterfly</li>
<li>Bee</li>
<li>Mantis</li>
</ul>
</ul>

<li>Plant</li>
<ul>
<li>Coniferous tree</li>
<ul>
<li>Cedar</li>
</ul>
</ul>

</ul>

</tbody>
</table>
]]>
</program>

<div locale="ja" class="result">
<table title="木構造の表">
<thead>
<tr>
<th>大分類</th>
<th>中分類</th>
<th>小分類</th>
</tr>
</thead>
<tbody>
<ul>
<li>動物</li>

<ul>
<li>哺乳類</li>
<ul>
<li>犬</li>
<li>猫</li>
<li>馬</li>
</ul>

<li>爬虫類</li>
<ul>
<li>蛇</li>
<li>蛙</li>
</ul>

<li>昆虫</li>
<ul>
<li>蜻蛉</li>
<li>蝶</li>
<li>蜂</li>
<li>蟋蟀</li>
</ul>
</ul>

<li>植物</li>
<ul>
<li>針葉樹</li>
<ul>
<li>杉</li>
</ul>
</ul>

</ul>

</tbody>
</table>
</div>
<div locale="en" class="result">
<table title="Tree Chart">
<thead>
<tr>
<th>General category</th>
<th>Middle category</th>
<th>Detailed category</th>
</tr>
</thead>
<tbody>
<ul>
<li>Animal</li>

<ul>
<li>Mammal</li>
<ul>
<li>Dog</li>
<li>Cat</li>
<li>Horse</li>
</ul>

<li>Reptile</li>
<ul>
<li>Snake</li>
<li>Frog</li>
</ul>

<li>Insect</li>
<ul>
<li>May-fly</li>
<li>Butterfly</li>
<li>Bee</li>
<li>Mantis</li>
</ul>
</ul>

<li>Plant</li>
<ul>
<li>Coniferous tree</li>
<ul>
<li>Cedar</li>
</ul>
</ul>

</ul>

</tbody>
</table>
</div>

</subsection>

<subsection title="CSV Entry">
<title locale="ja">CSVによる入力</title>

<p locale="ja">
SmartDocは表のデータをCSVで入力する機能を提供しています。
</p>
<p locale="en">
SmartDoc offers the functionality of entering chart data by CSV.
</p>

<program locale="ja">
<![CDATA[
<table title="CSVの表">
<thead>
カラム1,カラム2,カラム3
</thead>
<tbody>
データ1,データ2,データ3
データ4,データ5,データ6
データ7,データ8,データ9
</tbody>
</table>
]]>
</program>
<program>
<![CDATA[
<table title="CSV Table">
<thead>
Column 1,Column 2,Column 3
</thead>
<tbody>
Data 1,Data 2,Data 3
Data 4,Data 5,Data 6
Data 7,Data 8,Data 9
</tbody>
</table>
]]>
</program>

<div locale="ja" class="result">
<table title="CSVの表">
<thead>
カラム1,カラム2,カラム3
</thead>
<tbody>
データ1,データ2,データ3
データ4,データ5,データ6
データ7,データ8,データ9
</tbody>
</table>
</div>
<div locale="en" class="result">
<table title="CSV Table">
<thead>
Column 1,Column 2,Column 3
</thead>
<tbody>
Data 1,Data 2,Data 3
Data 4,Data 5,Data 6
Data 7,Data 8,Data 9
</tbody>
</table>
</div>

</subsection>

</section>

<section title="Figure">
<title locale="ja">図</title>

<p locale="ja">
図は<code>figure</code>タグを用いてSmartDocドキュメントに取り込みます。
</p>
<p locale="en">
Figures are inserted into SmartDoc documents by using the <code>figure</code> tag.
</p>

<program locale="ja">
<![CDATA[
<figure src="sample" title="図のサンプル"/>
]]>
</program>
<program locale="en">
<![CDATA[
<figure src="sample" title="Figure Sample"/>
]]>
</program>

<div locale="ja" class="result">
<figure src="figure" title="図のサンプル"/>
</div>
<div locale="en" class="result">
<figure src="figure" title="Figure Sample"/>
</div>

<p locale="ja">
図として取り込むファイルは<code>src</code>属性で指定するのですが、以下
のものを&quot;,&quot;を区切りにして複数指定することができます。
</p>
<p locale="en">
The figure file is specified by the <code>src</code> attribute.
The following files are all specified at the same time by using 
&quot;,&quot; to delineate them.
</p>

<ul locale="ja">
<li>ファイル名</li>
<li>ファイル名のボディ部</li>
</ul>
<ul locale="en">
<li>File name</li>
<li>Core part of the file name</li>
</ul>

<p locale="ja">
ファイル名の場合はサフィックスから図のフォーマットを認識し、適切なファ
イルを取り込みます。
</p>
<p locale="en">
If the file name I specified, the format of the figure is recognized by 
the suffix and the appropriate file is inserted.
</p>

<p locale="ja">
ファイル名のボディ部のみが指定された場合には、SmartDocのターゲットの
フォーマットに適した図のフォーマットを自動的に選択します。
</p>
<p locale="en">
If only the core part of the file name is specified, the format of the 
figure is selected automatically by the SmartDoc target format.
</p>

</section>

<section title="Program and Console">
<title locale="ja">プログラムとコンソール</title>

<p locale="ja">
SmartDocではプログラムのソースコードとコマンド実行などコンソール入出力
を取り込むためのタグを用意しています。
</p>
<p locale="en">
SmartDoc has tags for console input/output such as program source code and 
command execution.
</p>

<p locale="ja">
この機能を使用することでプログラムのマニュアルやソフトウェア技術に関す
る記事などの執筆が非常に楽に行えるようになります。
</p>
<p locale="en">
This function simplifies writing program manuals and software technology articles.
</p>

<subsection title="Program">
<title locale="ja">プログラム</title>

<p locale="ja">
プログラムと本文の内容を常に同期させておくことは結構手間のかかる作業で
す。
</p>
<p locale="en">
Maintaining consistency between the program and document can be
time-consuming.
</p>

<p locale="ja">
動作確認の済んだプログラムをわざわざ文書内に取り込むのはあまりにもめん
どくさいのでSmartDocではプログラムを外部から取り込む機能を用意しました。
もちろん本文内にプログラムを記述することもできます。
</p>
<p locale="en">
It is troublesome to enter a confirmed program into a document. Therefore, 
SmartDoc has a function to insert an external program. Of course, it is also 
possible to write the program within the document.
</p>

<p locale="ja">
このプログラムの取り込みは<code>program</code>タグによって実現します。
</p>
<p locale="en">
Inserting the program is done with the <code>program</code> tag.
</p>

<p locale="ja">
<code>program</code>は通常の<code>pre</code>と比べて以下の点が拡張され
ています。
</p>
<p locale="en">
The <code>program</code> tag functionality has been expanded from the 
<code>pre</code> as shown below:
</p>

<ul locale="ja">
<li>タイトルが図、表ではなくリストとなる</li>
<li>リスト番号が採番される</li>
<li>リスト表示に適した形にレイアウトされる</li>
<li>コメントを使ってハイライトの指定ができる</li>
</ul>
<ul locale="en">
<li>The title is a list, not a chart or figure.</li>
<li>List index number is automatically added.</li>
<li>The layout is prepared according to the list display.</li>
<li>Comments can be used to specify high-lights.</li>
</ul>

<p locale="ja">
これらの機能の詳細についてはユーザガイド(作成中)、リファレンスマニュア
ル(作成中)で説明する予定です。
ここではQuick Startの趣旨に沿って基本的な使い方を説明します。
</p>
<p locale="en">
These functions will be explained in detail in the Users' Guide (being
prepared now) 
and the Reference Manual (being prepared now).
The fundamental methods are shown here from a Quick Start perspective.
</p>

<subsubsection title="Inserting an External File">
<title locale="ja">外部からの取り込み</title>

<program>
&lt;program src="Sample.java"&gt;
</program>

<div class="result">
<program src="Sample.java" />
</div>

</subsubsection>

<subsubsection title="Internal Definition">
<title locale="ja">内部での定義</title>

<p locale="ja"> 
なお内部で定義する場合にはXMLの標準エンティティをエスケープしなければ
ならないことに注意が必要です。
</p>
<p locale="en">
For internal definition, note that the standard XML entity is escaped.
</p>

<program src="Sample.java.escape"/>

<div class="result">
<program>
public class Sample {
    public static void main(String[] args) {
        if (args.length &gt; 0) {
            System.out.println("Hello");
	}
    }
}
</program>
</div>

<p locale="ja">
またエスケープする場所が多い場合にはXMLの持っているCDATAセクション機能
を使うのが便利でしょう。
CDATAセクション内ではXMLの文法にとらわれず自由にテキストを記述すること
ができます。
</p>
<p locale="en">
f many escape have to be performed, it is better to use the CDATA 
section function of XML.
In the CDATA section, text can be entered freely without concern for the XML syntax.
</p>

<program src="Sample.java.cdata"/>

</subsubsection>

</subsection>

<subsection title="Console">
<title locale="ja">コンソール</title>

<p locale="ja">
コンソールの場合も使い方はプログラムの場合と同様です。
</p>
<p locale="en">
The method for using the console is the same as for a program.
</p>

<p locale="ja">
もちろん<code>console</code>タグを使った場合にはコンソールに適切な形態
で表示されることになります。
</p>
<p locale="en">
Of course, if a <code>console</code> tag is used, it is displayed in a form 
appropriate to the console.
</p>

<subsubsection title="External Insertion">
<title locale="ja">外部からの取り込み</title>

<p locale="ja">
コンソールの場合も外部からの取り込みはプログラムの場合と同じような形に
なります。
</p>
<p locale="en">
For the console, external insertion is the same as for a program.
</p>

<program>
&lt;console src="sample.console"/&gt;
</program>

<div class="result">
<console src="sample.console"/>
</div>

</subsubsection>

<subsubsection title="Internal definition">
<title locale="ja">内部での定義</title>

<program>
&lt;console&gt;
C:\tmp&gt;SmartDoc sample.sdoc
Copyright (c) 1998,1999 ASAMI, Tomoharu. All rights reserved.
SmartDoc Version 0.2.3 (19990327) by ASAMI@Yokohama
&lt;/console&gt;
</program>

<div class="result">
<console>
C:\tmp&gt;SmartDoc sample.sdoc
Copyright (c) 1998,1999 ASAMI, Tomoharu. All rights reserved.
SmartDoc Version 0.2.3 (19990327) by ASAMI@Yokohama
</console>
</div>

</subsubsection>

</subsection>

</section>

<section title="The differences between XML and HTML">
<title locale="ja">XMLとHTMLの違い</title>

<p locale="ja">
以上のようにSmartDocのフォーマットはほぼHTMLと同様であることがおわかり
いただけたと思います。
</p>
<p locale="en">
The similarity between the SmartDoc format and HTML should now be clear.
</p>

<p locale="ja">
しかし、もちろんXMLとHTMLには機能的な違いがありこれを正しく理解してい
ないとSmartDocを使用することが難しいのも事実です。
HTMLで許されている文法のいくつかはXMLでは無効で、少なくてもこの点を押
さえておかないと混乱の元になるでしょう。
</p>
<p locale="en">
However, there are some functional differences between XML and HTML, and these 
need to be properly recognized to use SmartDoc.
</p>

<subsection title="Document Start Declaration">
<title locale="ja">文章の開始宣言</title>

<dl locale="ja">
<dt>HTML</dt>
<dd>開始宣言はない</dd>
<dt>XML</dt>
<dd>UTF-8以外のエンコーディングの場合、開始宣言は省略はできない</dd>
</dl>
<dl locale="en">
<dt>HTML</dt>
<dd>No declaration</dd>
<dt>XML</dt>
<dd memo="check">Case of encoding other than UTF-8, declaration required</dd>
</dl>

</subsection>

<subsection title="Omission of End Tag">
<title locale="ja">終了タグの省略</title>

<dl locale="ja">
<dt>HTML</dt>
<dd>終了タグの省略は可能</dd>
<dt>XML</dt>
<dd>終了タグの省略はできない</dd>
</dl>
<dl locale="en">
<dt>HTML</dt>
<dd>Omission of end tag is permitted.</dd>
<dt>XML</dt>
<dd>Omission of end tag is not permitted.</dd>
</dl>

</subsection>

<subsection title="Omission of Attributes">
<title locale="ja">属性値の省略</title>

<dl locale="ja">
<dt>HTML</dt>
<dd>属性は属性名だけの記述が可能で属性値は省略できる</dd>
<dt>XML</dt>
<dd>属性値は省略できない</dd>
</dl>
<dl locale="en">
<dt>HTML</dt>
<dd>Including only the attribute name is possible, with the value omitted.</dd>
<dt>XML</dt>
<dd>Omission of attribute is not permitted.</dd>
</dl>

</subsection>

<subsection title="Specifing Attribute Value">
<title locale="ja">属性値の指定</title>

<dl locale="ja">
<dt>HTML</dt>
<dd>属性値は引用符で囲んでも囲まなくてもよい</dd>
<dt>XML</dt>
<dd>属性値は引用符で囲まなければならない</dd>
</dl>
<dl locale="en">
<dt>HTML</dt>
<dd>Attribute value may, or may not be enclosed in quotes.</dd>
<dt>XML</dt>
<dd>Attribute value has to be enclosed in quotes.</dd>
</dl>

</subsection>

</section>

<section title="Option">
<title locale="ja">オプション</title>

<p locale="ja">
SmartDocでは実行時オプションによって目次や索引などの情報を生成するドキュ
メントに自動的に付加する機能を持っています。
</p>
<p locale="en">
SmartDoc has the functionality to add the table of contents and index data 
automatically to the created document.
</p>

<table locale="ja" title="オプション">
<thead>
オプション,引数,機能
</thead>
<tbody>
<![CDATA[
format,"フォーマット名[,フォーマット名...]",生成するフォーマット
toc,true|false,目次の生成
]]>
</tbody>
</table>
<table locale="en" title="Option">
<thead>
Options, References, Functions
</thead>
<tbody>
<![CDATA[
Format,"Format Name [,Format Name...]", Creation Format
toc, true|false, creating contents
]]>
</tbody>
</table>

<table locale="ja" title="フォーマット">
<thead>
名前,フォーマット
</thead>
<tbody>
html4,HTML4.0
html3,HTML3.2
latex2e,LaTeX2e
javahelp,JavaHelp
pure,PureSmartDoc
</tbody>
</table>
<table locale="en" title="Format">
<thead>
Name, Format
</thead>
<tbody>
html4,HTML4.0
html3,HTML3.2
latex2e,LaTeX2e
javahelp,JavaHelp
pure,PureSmartDoc
</tbody>
</table>

</section>

<section locale="en" title="Thanx">

English translation is strongly supported by WANAKA, Yoshinori and Jim
Winebrenner.

</section>

</body>
</doc>
