Upgrade to Pro — share decks privately, control downloads, hide ads and more …

OxygenとAntenna House Formatterで作る_20250609_Ante...

Avatar for XSPA XSPA
June 15, 2025

OxygenとAntenna House Formatterで作る_20250609_Antenna House

学術情報XML推進協議会(XSPA) 「JATSがわかる」出版記念全文XML実践Hybridセミナー
日付: 2025年6月9日 (月曜日)
場所: JST東京本部-別館(K’s五番町) 2階セミナー室

Avatar for XSPA

XSPA

June 15, 2025
Tweet

More Decks by XSPA

Other Decks in Technology

Transcript

  1. “文書変換を自在に、可能性を無限に!” • ソフトウェア開発 • 1984 年(昭和 59 年)設立 2024 年に

    40 周年 • Office 文書・XML・PDF 関連ソフトウェア開発 • スタイルシート・スキーマ・Oxygen フレームワーク開 発受託 • 電子取引・署名・スキャナ保存製品の開発・販売 • XML エディタ(Oxygen, XMetaL)の販売 4 アンテナハウスについて アンテナハウスについて
  2. 1 DTD, RELAX NG, XML Schema, Schematron https://www.oxygenxml.com/ XML 作成・編集ツール

    • Syncro Soft 社(ルーマニア) • XML を CSS で GUI 化してそのまま編集 • XML 変換用スクリプト(XSLT,XProc)も編集可能 • スキーマ 1 による編集中のリアルタイム検証 • プラグイン・フレームワークによる拡張で自社用 XML 用エディタにすることも可能 • アドオンで AI 連携 6 Oxygen XML Editor ソフトウェアの概要
  3. 2 The World Wide Web Consortium 3 本スライドは (CSS) Formatter

    製 4 詰め込み・フロートなど W3C2 標準のスタイルシート仕様(XSL-FO, CSS)による XML/HTML 組版ソフトウェア 3 • アンテナハウス開発、日本語サポート対応 • PDF 2.0, Tagged PDF, PDF/X, PDF/A など様々なプロ ファイル・機能に対応 • ユーザニーズに応えた拡張機能実装 4 • 独自エンジンによる MathML・SVG の描画 • https://www.antenna.co.jp/AHF/ 7 Antenna House Formatter ソフトウェアの概要
  4. 5 作るのが大変→XSLT などで自動的に変換する XSL-FO について ページメディアの Formatting 情報を示す Object(block,inline,...)についての XML。

    組版結果がどのように表示されるかを明確に規定する 5 <fo:block ­ font-family="serif" ­ line-height="1.5" ­ text-indent="1em" ­ >JATS を<fo:inline ­ font-family="sans-serif" ­ font-weight="bold" ­ >XSL-FO に変換して</fo:inline>組版します。 ­ </fo:block> ­ 8 Antenna House Formatter ソフトウェアの概要 FO の例
  5. 6 別の XML、LaTeX 文書、テキスト、JSON……。元の XML にない目次ページの生成なども行える XML を変換 6 するための仕様。

    ­ ­ <p>JATS を ­ <bold>XSL-FO に ­ 変換して ­ </bold> ­ 組版します。 ­ </p> ­ ­ ­ ­ <xsl:template match="p"> ­ <fo:block ­ font-family="serif" ­ line-height="1.5" ­ text-indent="1em"> ­ <xsl:apply-templates ­ mode="#current"/> ­ </fo:block> ­ </xsl:template> ­ 9 XSLT について ソフトウェアの概要 JATS XML p を XSL-FO にする XSLT
  6. 7 ユーザ事例では Word からプログラムで変換し、Oxygen で追加の編集 https://www.antenna.co.jp/AHF/ahf_jirei/201406-nakanishiinsatsu.html XML エディタで JATS XML

    を編集 7 本文編集 書誌データ編集 「JATS XML→XSL-FO→ PDF」 11 Oxygen での編集 編集・出力フロー
  7. front article body p p p XSLTプロセッサ XSLT ユーザが カスタマイズ可能

    FOプロセッサ fo:static-content fo:root fo:page-sequence fo:flow fo:block fo:block fo:block FOにないものは レイアウト できない PDF FOプロセッサの能力が 最終出力の質を決める デスクトップで完結しても、サーバに XML を送るようにしてもよい 12 JATS XML→XSL-FO 編集・出力フロー
  8. 8 XSLT, XSL-FO, 文書スキーマ,Schematron (CSS) • リアルタイムの文書検証 編集中に文書構造、内容を機械的にチェックできる • 殆どの部分が標準仕様

    8 で世界に公開されている ◦ 他の方法で作成した XML を途中からフローに組み込める 14 方法の利点 方法の利点
  9. 9 article タグの中は、順に front、body(省略可) 、back(省略可) ,floats-group(省略可) 、0 以上 の sub-article

    または response のいずれか back の位置が不正 XML の構造を定義するのがスキーマ。処理フローに入る前に「処理可能な形になっている か」を判別できる <!ELEMENT article ­ "(front, ­ body?, ­ back?, ­ floats-group?, ­ (sub-article* | response*) )" > ­ 15 文書検証(スキーマ、スキマトロン) 方法の利点 DTD の例 9
  10. 10 private-char タグまたは glyph-data タグが使われている Schematron 構造上の位置関係(context)をベースに、文書ルールを定めて検証できる <sch:rule ­ context="private-char

    ­ | glyph-data" ­ id="jats.jstage.unrecommend"> ­ <sch:report test="true()">外字は将来の拡張とし、 ­ 現時点では推奨しないものとする。 ­ </sch:report> ­ </sch:rule> ­ 16 文書検証(スキーマ、スキマトロン) 方法の利点 Schematron の例 10
  11. XML と関連仕様の枠内で編集できる • ベンダロックイン(特定のツール依存)しない →◎ ◦ ex. “Microsoft Word がないとフローが動かない”

    • 仕様が公開されている →◎ ◦ カスタマイズの道筋が公開されている ex.“独自の検証ルールを作る” 17 標準仕様準拠の利点(JATS XML 作成) 方法の利点
  12. • ベンダロックイン(特定のツール依存)しない →△ ◦ 完全独自ツールよりは移行し易い ex. Apache FOP で XSL-FO

    を学習、本番で Antenna House Formatter ◦ 実装のカバー率や処理などはツールで異なる • 仕様が公開されている →◎ ◦ ex.仕様書を読み込ませた AI に“CSS・XSL で◦◦のレイアウトを実現するには どうすればいい?”と質問 18 標準仕様準拠の利点(PDF 作成) 方法の利点
  13. 同じ XSL-FO (レイアウト指定) 左 Apache FOP 右 Antenna House Formatter

    実装のカバー率や処理などはツールで異なる 19 標準仕様準拠の利点(PDF 作成) 方法の利点
  14. Oxygen XML + Antenna House Formatter は標準仕様をベースとしており、ケースに合わせ て柔軟に対応できる • グラフィカルな

    XML 編集(リアルタイムチェック) • フローの柔軟性(途中から Oxygen で編集、XSL-FO→PDF をデスクトップでもサーバでも) • 公開仕様(カスタマイズ、AI 連携の可能性) 21 まとめ まとめ