<?xml version="1.0" encoding="euc-jp"?>
<diary xmlns="http://www.horobi.com/2004/xhatenaml/0.91">
  <head>
    <title>XHatenaML 0.91 サンプルダイアリー</title>
    <author>なんばりょうすけ</author>
  </head>

  <day date="2004-06-15">
    <title>XHatenaML の名前空間について</title>

    <p>XHatenaML の名前空間としては暫定的に 
    <url>http://www.horobi.com/2004/xhatenaml/0.91</url> を使います。
    まだ要素名/属性名が変更になる可能性があるので注意。</p>
  </day>

  <day date="2004-06-14">
    <title>日記とセクションについて</title>

    <p>一日分の日記は day 要素の中に書きます。日付は YYYY-MM-DD 形式で 
    day 要素の date 属性に書きます。</p>

    <p>日記の大見出しはその最初に書きます(省略も可能)。以下、最初にセ
    クションが出てくるまでは任意のブロックレベル要素(p, div など)が書
    けます<note>最初のセクションより手前に書いたブロック要素の列をまと
    めて「匿名セクション」または「疑似セクション」と呼びます。</note>。
    </p>

    <p>セクションは小見出しを付けたひとまとまりの日記の部分です。はて
    なの入力ルールだと、</p>

    <pre>* [section] セクション内の記述について</pre>

    <p>で区切られた内容に相当します。セクションを作ると、その日の日記
    のそれ以下の部分にはセクションしか書けません。</p>

    <section id="section-content">
      <title>セクション内の記述について</title>
      <c>XHatenaML</c><c>section</c>

      <p>セクションの内容は section 要素の中に書きます。セクションを識
      別する ID を section 要素の id 属性に書けます。これは、はてなの
      入力ルールだと、以下のような name 属性指定付きの小見出し<note>こ
      れはセクションのアンカーの名前を指定するものです。</note>に相当
      します。</p>

      <pre>*section-content*セクション内の記述について</pre>

      <p>セクション内容の先頭にはタイトルとカテゴリが書けます。タイト
      ルは title の中に書きます。セクションのタイトル内ではインライン
      レベル要素が利用できます。タイトルは省略できません。</p>

      <p>カテゴリは c 要素の中に一つずつ書きます。複数のカテゴリは複数
      の c 要素で表現します。カテゴリ内ではタグは使えません。カテゴリ
      は省略可能です。また、カテゴリはタイトルの手前に書いても後ろに書
      いても構いません。</p>

      <p>タイトルとカテゴリより後ろには、内容文を含む任意のブロックレ
      ベル要素が書けます。</p>
    </section>
  </day>

  <day date="2004-06-13">
    <section>
      <title>XHTML の要素について</title>

      <p><a
      href="http://d.hatena.ne.jp/keyword/%a4%cf%a4%c6%a4%ca%a5%c0%a5%a4%a5%a2%a5%ea%a1%bc%cd%f8%cd%d1%b2%c4%c7%bd%a5%bf%a5%b0"
      >はてなダイアリー利用可能タグ</a>にある HTML 要素に対応する 
      XHTML の要素が使えます。構文上の制約は XHTML 1.0 transitional に
      ほぼ相当します。</p>

      <p>なお、これらの要素は XHatenaML の名前空間に含めた形で利用しま
      す。</p>

    </section>
    <section>
      <title>TeX 数式について</title>

      <p>tex 要素の exp 属性に TeX 形式の数式を書くことで数式を表現します。
      tex 要素は空要素です。</p>

      <p>はてなの入力ルールの [tex:x^2 + y^2 = z^2] は 
      <tex exp="x^2 + y^2 = z^2"/> と書きます。</p>

    </section>
    <section>
      <title>キーワード参照について</title>
      
      <p>kw 要素内に語句を書くことでキーワードを表現します。同時にその
      キーワード(の解説)の参照も表現します。kw 要素の g 属性にグループ
      名を指定するとグループ内のキーワードの参照になります。</p>

      <p>はてなの入力ルールの [[keyword:はてな]] (または [[はてな]]) 
      は <kw>はてな</kw>、[g:hatena:keyword:はてなダイアリー利用可能タ
      グ] は <kw g="hatena">はてなダイアリー利用可能タグ</kw> と書きま
      す。</p>

    </section>
    <section>
      <title>URL参照について</title>

      <p>url 要素内に URL を書くことで URL の参照を表現します。例えば
      http://www.horobi.com/xml/XHatenaML/ への参照は 
      <url>http://www.horobi.com/xml/XHatenaML/</url> と書きます。</p>
    </section>
    <section>
      <title>ASIN/ISBN参照について</title>

      <p>ref 要素で ASIN/ISBN の参照を表現します。asin 属性に ASIN ナ
      ンバーを書くとアマゾンの商品の、isbn 属性に ISBN ナンバーを書く
      と書籍の参照になります。asin 属性と isbn 属性は排他的に使用しま
      す。これは必須の属性で asin か isbn のどちらかを必ず指定します。
      </p>

      <p>加えて image 属性で書影の表示を指定できます。image 属性値には
      "small", "medium", "large" の三種類の値が指定できます。image 属
      性を指定しないと書影なしを指定したことになります。</p>

      <p>はてなの入力ルールの asin:B0000C002T:image は <ref
      asin="B0000C002T" image="medium"/>、
      isbn:4-87311-031-9:image:small は <ref isbn="4-87311-031-9"
      image="small"/> と書きます。</p>

    </section>
    <section>
      <title>日記の参照について</title>

      <p>ref 要素で日記の参照を表現します。id 属性に日記所有者のユーザ
      idを書くとそのユーザの日記の参照になります。加えて ref 属性に日
      付やセクションid付きの日付を書くと、日記の該当個所の参照になりま
      す。さらに g 属性にグループ名を書くと、id で指定したユーザのその
      グループ内での日記への参照になります。id 属性は必須ですが、他の
      属性は省略可能です。また、ref 要素は空要素です。</p>

      <p>はてなの入力ルールの id:hatenadiary:20040611 は <ref
      id="hatenadiary" ref="20040611"/>、
      g:hatena:id:hatenadiary は <ref g="hatena" id="hatenadiary"/> 
      と書きます。</p>

    </section>
    <section>
      <title>グループ/アンテナ参照について</title>

      <p>ref 要素でグループ/アンテナの参照を表現します。g 属性にグルー
      プ名を書くとグループの、a 属性にアンテナ所有者のユーザidを書くと
      そのユーザのアンテナの参照になります。これらの属性は排他的に使用
      します。また、ref 要素は空要素です。</p>

      <p>はてなの入力ルールの g:hatena は <ref g="hatena"/>、
      a:id:hatenadiary は <ref a="hatenadiary"/> と書きます。</p>
    </section>
    <section>
      <title>検索参照について</title>

      <p>sf 要素内に検索式を書くことで検索結果の参照を表現します。sf 
      要素の type 属性に "google" を指定すると google による検索結果の、
      "amazon" を指定すると amazon による検索結果の参照になります。</p>

      <p>はてなの入力ルールの [google:はてな] は 
      <sf type="google">はてな</sf>、[amazon:はてな] は 
      <sf type="amazon">はてな</sf> と書きます。</p>
    </section>
    <section>
      <title>脚注について</title>

      <p>note 要素内に文章を書くことで脚注を表現します
      <note>
	これは、はてなの入力ルールの
	<pre>((脚注内容))</pre>
	に相当します。
      </note>
      。脚注内には任意のインラインレベル要素、ブロックレベル要素が書け
      ます<note>はてなダイアリーはページ生成時に脚注の内容を HTML の p 
      要素に入れるので、脚注にブロックレベル要素を書くとはてなダイアリー
      と互換性がなくなります。ページ生成でエラーになるわけではありませ
      んが、生成されたページは valid な HTML ではなくなり、表示も期待
      したレイアウトで表示されなくなることがあります。</note>。ただし、
      note や、直接・間接に note を含む要素は書けません。</p>

    </section>
  </day>
</diary>
