DITA

Dita Festa2016

今年もDITAコンソーシアムのDITA Festa 2016が12月7日(水)- 12月9日(金)に開催されます.以下に予告の基調講演、技術講演、ユーザー事例の予告が発表されています. Dita Festa2016 予告 http://dita-jp.org/?page_id=1910#post-1910 とても貴重な報告になり…

辞書でピンインを求める

直接DITAと関係はないのですが、中国語簡体字の文字列比較の話を書きましたので、実際そこで書いた 1. 文字列が与えられる. 2. これを単語に分けて辞書を引き、正確なピンインを求める. 3. 単語の各文字単位に「ピンイン(拼音)/画数/部首/GB0のコード」…

中国語簡体字のコレーション

dita-usersにEliot Kimberさんが辞書ベースで単語のピンインを求めてソーティングに使用できる中国語簡体字のコレーターを開発したとのポストがありました. New DITA Community Project: org.dita-community.i18n https://groups.yahoo.com/neo/groups/dita…

tableを本文領域いっぱいに広げる table/@pgwide="1"

久しぶりに自分でオーサリングして、自分でスタイルシートをインプリメントしてという仕事をやっていたのですが、自分が作ったプラグインにもかかわらず、table/@pgwide="1"としても幅の小さなものは本文領域幅いっぱいに広まってくれません.何故かスタイル…

DITA-OTのカスタマイズ(2)

DITA-OTの拡張ポイントの定義には大きな問題があると書きましたが、それは次のようなものと考えています. 「DITA-OTの動作を自分(プラグイン)の「都合」で変えるのだから、他のプラグインに絶対迷惑をかけてはならない!」 これと同じような例がプラグイ…

DITA-OTのカスタマイズ

DITA-OTには前処理の工程(preprocessと呼ばれる)があって、入力となるmapやtopicをパースし、conrefやフィルタリングなど様々な処理をやってくれます.ここでのDITA-OTの処理をカスタマイズできるのが「拡張ポイント」(Extension point)と呼ばれるもので…

意外と大変なmap参照

同じPDFを作るのにも版下用に作成するのと閲覧用に作成するのは結構要件が異なります.特にいわゆる取扱説明書のように製品に冊子として添付する用途のPDFを作る場合、極力紙を節約するためにページ数をコントロールしたい要望があります.例えばchapterから…

subjectSchemeで@outputclassを検証する(3)

すみません.このsubjectSchemeの書き方は私があまりに難しく考えすぎていたようです.次のようにすると問題なくoXygenで動いてくれます. <subjectScheme> <subjectHead> <subjectHeadMeta> <navtitle> Constraint @outputclass for fig…</navtitle></subjectheadmeta></subjecthead></subjectscheme>

subjectSchemeで@outputclassを検証する(2)

ではどのような場合に不具合が出るのでしょうか?例えば@outputclassは様々な用途に使用されます.でも悩みの種は@outputclassは検証されない点です.subjectSchemaにより検証されれば、スキーマ/DTDを直すことなしに目的の結果を得ることができます.これは…

subjectScehmeで@outputclassを検証する

もしあなたがDTDやスキーマを特殊化しなければきっと@outputclassを使用するでしょう、@outputclassはいわば何でもありの属性です. 3.12.9 Other common attributes http://docs.oasis-open.org/dita/dita/v1.3/os/part3-all-inclusive/langRef/attributes/…

topicの@xml:lang

xml:langという属性はXSL-FOからすると結構重要な属性です.例えば、とかく漢字は日本語を書いていると日本語フォントが選択されて当然と考えられるかもしれませんが、中国、台湾でも漢字はあたりまえに使われますし、ほとんど使われなくなってきているとは…

統一コンテンツ戦略

DITAの和書というには非常に少ないので、たぶんDITAを検討されたり実践されたりしている方はご覧になっている本に、「DITA101 執筆者と管理者のためのDITAの基礎」(2011年刊 DITAコンソーシアム訳)があります.私も非常に参考にさせていただいています. …

属性の特殊化

九州地方地震で被災された方をお見舞いします.遅ればせながら災害募金をさせていただきました. さて、掲題の属性の特殊化ですがずっと長い間理解が行き届いておらず、恥ずかしながらとんでもない遠回りをしていました.それは、GitHubで公開しているah-dit…

特殊化しない選択: data要素の使い方

DITAにはdata要素というたぶんフツーに使っていると「なんだこりゃ?」という要素があります.仕様は以下にあるのですが読んでも読んでもいまいちわかりません. 3.7.2 <data> http://docs.oasis-open.org/dita/dita/v1.3/os/part3-all-inclusive/langRef/base/dat</data>…

DITA 1.3詳解ワークショップ(2)

DITA 1.3詳解ワークショップのEliot Kimberさんの解説を聞いていて感じたことを追加します. DITA 1.3ではCross-deliverable linking、つまりbookmap間の参照(通常分冊間参照と呼んでいる)が出来るようになったという話です.これは具体的にはどのように行…

DITA 1.3詳解ワークショップ

3月16日(水)にDCJ(DITA Consortium Japan)の会員向けに、Eliot Kimberさんをお招きしてのDITA 1.3の詳解ワークショップが開催されました.わたしも同僚と一緒に参加する機会がありましたので感想を報告します. まずDITAの歴史は非常に古くから検討され…

属性追加の欲望(2)

既存のOASIS標準の要素に属性を追加する例がdita-usersで議論されていました. Rethinking "Custom" Attribute Specialization https://groups.yahoo.com/neo/groups/dita-users/conversations/topics/39272 ここで紹介されている方法は 1. @baseを特殊化し…

属性追加の欲望(1)

どうしてもOASIS標準の要素に自分たちで使用したい属性を付けたい場合があります.端的な例としてxrefがあるのではないでしょうか?例えばxrefがtopicを指す場合、 - topic/titleを""で囲んで表示(title-only) - topic/titleを""で囲み次いでページ番号を…

fo:block-containerとxsl:next-matchでランドスケープのテーブルを実現する.

DITA 1.3になって新たに加わった属性の一つとしてtable/@orient="land"があります. 3.2.3.1 <table> http://docs.oasis-open.org/dita/dita/v1.3/os/part3-all-inclusive/langRef/base/table.html#table 通常tableはブロックの進行方向に向けて行がだんだん配置さ</table>…

DITAは何故かくもむつかしいのか?

昨年だっと思いますがある日本の企業がDITAの導入を検討していて最終的に別のアーキテクチャを採用したというような話を聞いたことがあります.「DITAはむつかしすぎる」というのがその理由とのこと.それ以来ずっと頭の隅でくすぶっていたのですが、本当にD…

DITA-OT 2.2.1のチョンボ

DITA-OTは着々とDITA 1.3対応への準備を進めています.DITA-OT 2.2.xでは次のリリースノートに詳しく記述されています. DITA Open Toolkit 2.2.1 Release Notes http://www.dita-ot.org/2.2/release-notes/index.html#highlights このバージョンからDITA 1.…

DITA 1.3がOASIS標準に!

2015年12月18日のdita-commentsへの告知によれば、DITA 1.3はついにOASIS Standardとなりました.(でもWEBではあまり話題になっていないようです??秘密ではないと思いますが?) ---------- Forwarded message ---------- From: Paul Knight <paul.knight@oasis-open.org> Date: Fri, Dec</paul.knight@oasis-open.org>…

DITA-OT Day 2015 (報告)

去年のHoliday InnからHiltonに会場ホテルが変更になり、またDITA Europe 2015の前の日の開催となりました.事前の打ち合わせ議事録では約70人もの方が参加とのことです.このうちそれなりの割合の方がDITA Europe 2015には参加しないとのことでしたので、DI…

DITA-OT Day 2015

昨年DITA Europe 2014カンファレンスへ行かせてもらった際に、その続きの日に開催されたDITA-OT Day 2014に参加してきました.いろいろな話が聞けて面白かったのですが、今年のDITA-OT Day 2015はDITA Eupopeカンファレンスの前日の11月15日に予定され、その…

DITA 1.3の便利なフィルタリング属性deliveryTarget

DITA1.3はなかなか勉強する時間がありません.でも今度正式なスキーマになるRELAX NGで特殊化のサンプルを作ってみました.さてそれで実際に文書を作り、どんなことがDITA 1.3でできるのか考えていたとき、deliveryTargetというフィルタリングの属性が加わっ…

「このレイアウトDITAでできますか?」

前から会社で話題になるときがあるのですが、DITAの導入でお客さんからやはりこう聞かれることがあるのだそうです.でもたぶん営業の人は一瞬答えに窮してしまうでしょう.何故でしょうか? まずDITA自身はOASISが定めたオーサリングアーキテクチャです.そ…

属性の特殊化

属性の特殊化ってやったことはありますでしょうか?既存のDITAの要素に自分の組織にあわせて便利な属性をつけようというものです.よくあるパターンでは次のようなものがあります. 1.xrefでトピックに対する相互参照を行うとき、参照先トピックの表題/参…

DITA 1.2 + XML Schemaの幻想(2)

「ああなんと簡単か!」と思ったのですが感激したのはそこまででした、と考えたのは次のような理由です. たまたまあとになってやめましたが、image/@placement="inline|block"に対して、"flost-left|float-right"を加えようと考えました.しかしそれはでき…

DITA 1.2 + XML Schemaの幻想

昨年DITA Europe 2104に参加させていただきましたが、Eliot Kimberさんのセッションで「スキーマとして何を使っているか?」という聴取者への質問があって、みんなが該当のものに手を挙げてもらう機会がありました.結果はやはりDTDが大部分で、XML Schemaを…

DITA 1.3を垣間見る

DITA-OT 2.1がリリースされています.DITA-OT 2.xは来るべきDITA 1.3のための実装が進んでいるようなのですが、ともかく私からすると目前の仕事に追われていて見る時間がありません.あとダウンロードしてもDITA 1.3のスキーマ/DTDはそもそもOASISからリリー…