年別アーカイブ: 2020年

CommonMark文書をcmarkでXML形式にする

CommonMark[1]処理系のリファレンス実装であるcmark[2]は、その抽象構文木(AST)をXMLとして出力できます。さらに、このASTの文書型定義(DTD)も存在します。公開されていて、身近でミニマルなDTD、また文書のASTとして学習にも有用です。cmarkのインストール、DTDについての詳細は割愛します。

次のようなCommonMark文書があるとします。

# 見出しレベル1

CommonMarkにはDTDがある。

## 見出しレベル2

docutilsにもDTDがある。

これをcmarkでXML出力すると、次のようになります(xml:space="preserve"プロパティを省略して表示しています)。

<document>
<heading level="1"><text>見出しレベル1</text></heading>
<paragraph><text>CommonMarkにはDTDがある。</text></paragraph>
<heading level="2"><text>見出しレベル2</text></heading>
<paragraph><text>docutilsにもDTDがある。</text></paragraph>
</document>

CommonMarkのDTDの一部を抜き出すと、次のようになっています(表示を省略した箇所は「…」のように記述しています)。

<!ENTITY % block
         'block_quote|list|code_block|paragraph|heading|thematic_break|html_block|custom_block'>
<!ENTITY % inline
         'text|softbreak|linebreak|code|emph|strong|link|image|html_inline|custom_inline'>
...
<!ELEMENT paragraph (%inline;)*>

<!ELEMENT heading (%inline;)*>
<!ATTLIST heading
          level (1|2|3|4|5|6) #REQUIRED>
...
<!ELEMENT text (#PCDATA)>

CommonMarkの処理系を実装するときに厄介な、ある記法の途中での他の記法の割り込み処理などは変換後のASTには登場しませんから平和な見た目です。さて、このCommonMarkのDTDですが、コメントや見た目の調整のための改行を含めても90行程度。さらにこのXMLは変換前はCommonMark文書ですから、おおよそどんな見た目の記述がこの構造になるかの対応付けも整理をつけやすいのではないでしょうか。「<html_block>」や「<custom_block>」(あるいはこれらのインラインマークアップ)について真面目に考えるならもう少し難しくなりますが、CommonMark文書のASTとしての文書型定義は相当にシンプルです。


こんな記事[3]を見つけました。Markdownからの変換としては多くはLaTeX、近頃はCSS組版などがありますが、ASTをXMLで出力できるならこういったアプローチも可能ですね。目的によってはMarkdownを変換したXHTMLから更に変形するよりも単純な記述で求めるPDF出力を得られるでしょう。
ところで、アンテナハウス製品には最近のフォントも組版できるXSL-FOプロセッサー、Antenna House Formatterがあります。次回、CommonMarkのASTをFOに変換したものをAH Formatterで出力してみる予定です。


参考資料

  1. [1]https://commonmark.org/
  2. [2]https://github.com/commonmark/cmark
  3. [3] Markdown + XSL → PDF


Antenna House Formatter

DITA/XML Service Antenna House


関連記事


e-na伊那谷 旅便り 第29回 五平餅

炊いたごはんをつぶし、わらじ型や団子型にして串にさし、たれをつけて焼く郷土料理です。

NHKの朝ドラ『半分、青い。』で豊川悦司さん演じる漫画家が食べていたことで全国的に有名になりました。
ドラマのヒロインの出身地が岐阜県だったため、五平餅にも岐阜県のイメージが強いかもしれませんが、長野県や愛知県など中部地方の多くの地域に伝わる郷土料理です。

地域によって、形やたれに違いがあります。
伊那谷では家庭で作る場合、少しつぶした団子を2つ竹串にさした形(団子型)を多く見ます。

スーパーや道の駅でも販売しています。

団子型と劇中に登場したわらじ型も売っていました。


製造元は伊那の会社。


網で焼くのが美味しそうですが、今回は電子レンジで。

みそたれが香ばしく美味しいです。
伊那谷の五平餅も機会があったら食べてみてください。


e-na伊那谷 旅便り バナー
e-na伊那谷 旅便り
前回:第28回 黒松仙醸
次回:第30回 お味噌作り

電帳法_電子取引の最新情報! YouTubeミニセミナー第7弾

  • 帳簿・書類等の保存分類方法
    • → 帳簿、書類、スキャナ、電子取引における作成保存
  • 電帳法10条電子取引とは
    • → 電帳法10条を見て、施行規則8条を見る
  • 電子取引の法令要件
    • → 5要件で比較する電子取引
  • 令和2年税制改正での電子取引
    • → 税制改正大綱に記載のあった電帳法の更なる緩和
  • 今後の電子取引の可能性
    • → 電子データを活用した経費精算など

など素朴な疑問を解決します。

内容をギュッと16分に圧縮して、YouTubeでいつでも視聴できるミニセミナーにしました。
お好みのところのみ短時間での確認も可能です!!

皆様のお役に立てれば幸いです。

また、要望を頂ければ、その要望にマッチした、セミナーの制作を検討させていただきます。


【公開セミナー 一覧】

  1. 第1回「日本はデジタル化後進国か?!」
    https://youtu.be/aKctKhLRjOY
  2. 第2回「電帳法」を優しく解説
    https://youtu.be/RbEZe00m0TA
  3. 第3回「帳簿・書類」の7年保存がそもそも何故求められるのか?
    https://youtu.be/Ht68XGdFdnU
  4. 第4回 タイムスタンプって_なに?
    https://youtu.be/RqRbwlHvAfo
  5. 第5回 国税庁の「電子帳簿保存法」のページの見方
    https://youtu.be/pCUfL17KgEY
  6. 第6回 電帳法4制度の横断的概要学習!
    https://youtu.be/5HbsneGZAFQ

筆者紹介
益田康夫
メールアドレス:masuda@antenna.co.jp
1984年に社会人になり、IT業界一筋ながら3回の転職を経て現在に至っています。
特に2008年のリーマンショック後の不況の影響を受けて、2010年6月末にリストラ退社して現本業のアンテナハウス株式会社 https://www.antenna.co.jp/ に入社しました。Sun MicrosystemsやOracleを中心にしたITインフラから、IAサーバとしてのCompaqやIBMなどや、文書管理システムやポータルシステムを販売していた前職と、現在のアンテナハウスでのPDF技術や電子ファイルの変換技術などを中心にした、e-ドキュメントソリューションを探求してノウハウを習得してきました。

特に、2011年以降、個人で学習時間をひねり出して、文書情報管理士資格2級、1級、上級と最短記録でレベルアップさせ、更に国家資格の行政書士※、日商簿記3級を2015年までに取得しました。

※行政書士とは、https://www.gyosei.or.jp/information/ をご覧ください。


ScanSave on ONe SaaS
ScanSave v4

AH FormatterでXSL-FO 2.0 仕様DraftのWebページをPDF化してみる

業務を行っていると、W3Cで公開されている仕様を確認しにいくこと、例えばXSL-FO 2.0のDraft[1]を確認しにいくことがあったりなかったりします。
Webページの利点の1つはスクロール操作によって文書の目的の位置へいけることですが(もちろんそうでない作りのWebページもあります)、手元の電子ペーパー端末でページをめくるように読みたい場合もあります。
「WebページのURLを打ち込むだけでそこそこ読めるPDFを出力してほしい」、そんなときにもCSS組版が可能なお手持ちのAntenna House (CSS) Formatterが利用できます。

AH Formatterでファイルを読み込む際、通常はファイルパスを指定するかと思います(GUIではドラッグ&ドロップも可能です)。しかし、ここにWebページのURLを指定することもできます。マニュアルにも記載してありますね。「組版種別」によって、AH FormatterのデフォルトCSSを使用する設定、元のHTMLのCSSを利用するなど違いがあるので、マニュアルを確認してください[2]。

Windowsの場合、AH Formatterをインストールしたフォルダにhtml.cssがあります。これがHTMLファイルを読み込んだときにAH Formatterのデフォルトとして適用されるCSSです。
今回は「HTML」を指定しました。

全体的な文字サイズやページサイズなどを「組版オプション」で設定してみます。


XSLT2.0の仕様[3]を、ページサイズをJISB5、本文14ptとしてみたところ、673ページ程度になりました。

JIS B5サイズのPDFでXSLT2.0 仕様出力

記事冒頭で「例えば~」とXSL-FO2.0の話題を振っておきながらFOではなくXSLT2.0で例を出しているのは、XSL-FO2.0のドラフトだと1200ページ超え(JISB5、本文14pt程度)となり、GUIでプレビューを表示しながら操作をするには手元のマシンだと厳しいためです[4]。CUIで組版する分には問題ありません。

JIS B5サイズのPDFでXSL 2.0 Draftを出力

今回PDF出力してみたWebページの場合ですと、ソースコードや巨大な画像ではページサイズに収まるように表示できていません。元がリフロー型のWebページなので、デフォルトのCSSでは少し無理があったようです。とはいえ、手軽にそこそこ見やすいPDFを得ることができました。

Antenna House Formatterの評価版は、こちらのページからお申込みいただけます。
AH Formatter 評価版のお申し込み

CSSでのページメディアの印刷に興味がある方へ、アンテナハウスでは『CSSページ組版入門』という書籍を発行しています。

  1. [1] Extensible Stylesheet Language (XSL) Version 2.0
    W3C Working Draft 17 January 2012
  2. [2] ドラッグ&ドロップ組版 – Antenna House Formatter V7 マニュアル グラフィカルユーザインターフェイス
  3. [3] XSL Transformations (XSLT) Version 2.0
  4. [4] ページ数上限自体は変更可能です。 制限事項 – Antenna House Formatter V7 マニュアル グラフィカルユーザインターフェイス

関連記事

  1. AH Formatter の CSS組版例「MathML 3.0 2nd Edition」

Antenna House Formatter V7XSL-FO/CSSスタイルシートにより、XMLとHTMLをサーバー上で高速にPDFに変換!


e-na伊那谷 旅便り 第28回 黒松仙醸

今回は黒松仙醸をご紹介します。
黒松仙醸は伊那市高遠町にある株式会社仙醸で酒造されている日本酒です。

昔、県外での集まりで黒松仙醸を持参したところ、大変好評を博しました。
この記事を書くにあたって、株式会社仙醸のホームページを見てみると
黒松仙醸は随分と種類があるようでした。
純米大吟醸、大吟醸、純米吟醸、純米酒、本醸造等がありました。
迷いましたが、一番馴染み深い黒松仙醸本醸造を購入しました。

夏なので冷酒にしました。ほんのり甘く、コクがあります。
1.8ml¥2,090(税込)でした。口当たりがいいため、酒が進みます。

最近は黒松仙醸どぶろくが好評とのことで、これも購入してみました。

600ml¥1,430(税込)でした。
冷やして飲むのがおすすめの飲み方のようです。
お米の甘さとすっきりした酸味、発酵中に出る炭酸ガスが含まれておりこれが心地よいです。
アルコール度数が6度と低いため、すぐに1本空けてしまいました。

冬は黒松仙醸本醸造を熱燗にして頂きます。熱々のおでんが合いそうです。今から楽しみです。

株式会社仙醸のホームページ https://www.senjyo.co.jp/


e-na伊那谷 旅便り バナー
e-na伊那谷 旅便り
関連記事:第16回 消毒用エタノールの代替品
前回:第27回 風景(2)
次回:第29回 五平餅

電帳法4制度の横断的概要学習! YouTubeミニセミナー第6弾

  1. 「帳簿」データ保存
  2. 「書類」データ保存
  3. 「スキャナ保存」
  4. 「電子取引」

が電帳法4制度です。

  • 帳簿書類の類型を俯瞰する
    • → 「帳簿」「書類」を分類して正しく理解しましょう!
  • 帳簿・書類等の保存分類方法
    • → 「帳簿」「書類」毎の作成保存方法について正しく理解しましょう!
  • 電帳法 5要件など俯瞰表
    • → 電子帳簿保存法の基本5要件を俯瞰して確認しましょう!
  • 電帳法「帳簿」「書類」の要件比較
    • → 電子帳簿保存法の「帳簿」「書類」の要件を比較しながら見ていきましょう!
  • 電帳法「スキャナ保存」要件確認
    • → 「スキャナ保存」には5要件以外に特別な要件が複数あります。

など素朴な疑問を解決します。

内容をギュッと17分に圧縮して、YouTubeでいつでも視聴できるミニセミナーにしました。
お好みのところのみ短時間での確認も可能です!!

皆様のお役に立てれば幸いです。

また、要望を頂ければ、その要望にマッチした、セミナーの制作を検討させていただきます。


【公開セミナー 一覧】

  1. 第1回「日本はデジタル化後進国か?!」
    https://youtu.be/aKctKhLRjOY
  2. 第2回「電帳法」を優しく解説
    https://youtu.be/RbEZe00m0TA
  3. 第3回「帳簿・書類」の7年保存がそもそも何故求められるのか?
    https://youtu.be/Ht68XGdFdnU
  4. 第4回 タイムスタンプって_なに?
    https://youtu.be/RqRbwlHvAfo
  5. 第5回 国税庁の「電子帳簿保存法」のページの見方
    https://youtu.be/pCUfL17KgEY

筆者紹介
益田康夫
メールアドレス:masuda@antenna.co.jp

1984年に社会人になり、IT業界一筋ながら3回の転職を経て現在に至っています。
特に2008年のリーマンショック後の不況の影響を受けて、2010年6月末にリストラ退社して現本業のアンテナハウス株式会社 https://www.antenna.co.jp/ に入社しました。

Sun MicrosystemsやOracleを中心にしたITインフラから、IAサーバとしてのCompaqやIBMなどや、文書管理システムやポータルシステムを販売していた前職と、現在のアンテナハウスでのPDF技術や電子ファイルの変換技術などを中心にした、e-ドキュメントソリューションを探求してノウハウを習得してきました。

特に、2011年以降、個人で学習時間をひねり出して、文書情報管理士資格2級、1級、上級と最短記録でレベルアップさせ、更に国家資格の行政書士※、日商簿記3級を2015年までに取得しました。

※行政書士とは、https://www.gyosei.or.jp/information/ をご覧ください。


ScanSave on ONe SaaS
ScanSave v4

オンラインショップで簡単にお見積書(PDF)の作成 ~セールも開催中!~

オンラインショップで見積キャンペーン開催中

先月(2020年6月)より、アンテナハウスのオンラインショップで、商品のご購入前にお見積書(PDF)を発行できるようになりました。

オンラインショップにログインしていれば、商品を「カゴ」に入れて、「お見積」→「見積書をダウンロード」をクリックするだけで、その場でPDFのお見積書を自動で作成してダウンロードできます。

見積書をダウンロード

見積書をダウンロード

お見積書PDFのサンプル

お見積書PDFのサンプル

宛名の変更もできますので、会社で購入申請時にもご利用いただけます。

お見積書のPDFの発行は無料ですのでお気軽にお試しください。

弊社の自動組版ソフトでWebシステムからお見積書の作成

オンラインショップの見積書PDFの作成には、弊社の自動組版ソフト『Antenna House Formatter』をコマンドラインから利用して自動で生成しています。

見積用データとしてデータベースに登録されたデータから、見積書用に用意したスタイルシート(XSLT)を利用して動的にレイアウトし、PDFを出力しています。

セールも開催中!

現在、記念キャンペーンとして『瞬簡PDFファミリー』製品を2020年7月17日まで特価にて販売しています。

この機会にぜひお見積書の作成機能をお試しください。
(お見積り機能を利用しなくてもキャンペーン価格の商品はご購入いただけます。)

※キャンペーン価格のお見積の有効期限は、キャンペーン期間終了時までとなりますのでご了承ください。

→ お見積書の作成方法について詳しくは「見積り書の発行について」をご覧ください
見積キャンペーンはこちら(2020年7月17日まで)


XMLをMarkdownに変換することについて

前回はMarkdownをDITAに変換する方法について紹介しました。
今回のテーマはXMLからMarkdownへの変換についてですが、見方を変えると、これは「なぜ情報量を落とす不可逆な変換をするのか」ということについてを考えることになります。
もちろん様々なニーズにより行われるのでしょうが、1つの文書型を扱う上でのこと、複数の文書型を扱う上でのこと、そして文書型のことを考えないときのことをみてみましょう。中間形式としての軽量マークアップについて扱っていますが、ライティング形式として扱いやすいといったメリットは今回は省きます。

XMLの欠点として挙げられることの多い点に「複雑」「冗長」といったワードを聞くことがあります。ここでいう「複雑」は構造の話であり、「冗長」は単純に統一された要素と属性のマークアップ記法によって起こる話といえるでしょう。軽量マークアップの多くはまさにこの点を克服するものですが、これは構造の表現力や記法の統一性とのトレードオフでもあります。

ある1つの文書型について考えてみます。文書型情報を持つ「XMLアプリケーション」と呼ばれるもの、XHTMLやDocBookやDITAといった文書では、「それらの文書型を背景に持ちつつ軽量な記法を使う」、今までの記事で取り上げてきたMDITAでいえば「トップレベルの見出しはtopicのtitle、最初の段落はshortdescにする」といったことが可能です。つまり、軽量の記法と変換される構造の対応を一対一に近いものにできます。文書型にもよるでしょうが、「XMLの構造を潰す」ものとしては最小限、不可逆ではあるものの復旧が行える可能性が高いものです。

複数の文書型を扱う上での軽量マークアップを経由する変換について考えてみます。ある文書型Aの文書から文書型Bの文書を変換、生成したいというときにはXMLにおいてはXSLTを使う方が大抵の需要に沿うでしょう。XSLTを逐一用意する必要こそあるものの、明確な構造の対応が取れるのであれば落とす情報、残す情報の選択も自在です。

この場合に落ちる情報には文書型Aの構造aに対応するBの構造がない、といったものもあります。ここで落ちる情報がXSLTを用意する手間を上回り、かつそれでも変換の必要があり、Aの文書もBの文書も相互にやり取りする頻度が高いといった場合には軽量マークアップを保存の形式に選択するのも考慮に入れてもよいかもしれません。変換先に該当の構造がなければその構造は潰れるしかありません。ある軽量な構造Mを、Aのときはこの構造になることにして、Bのときはこの構造を、とするのであれば、処理系の実装言語や環境の問題を除けばMからA、MからBの変換と、ABのXML+XSLT変換はそう変わらないことになります。この場合のMは、PandocやDocutilsの扱う抽象的なデータ型となるでしょうか。


アンテナハウスでは以前に『Markdown+CSS組版で冊子本(PDF)を作ってみる』[1]という書籍を作成しました。また、「Markdown + CSS/TeXで冊子本を作ってみた」[2]というセミナーを開催しました。このセミナーでは、Pandocを使用し、Markdownの拡張機能から抽象データ型にしたものをLaTeX用に変換し書籍を作成するラムダノート様による第一部と、Markdownと、HTMLタグで不足する構造を補ったものをXHTMLに変換し、CSSでスタイルを付与しAntenna House Formatter[3]で書籍を作成するアンテナハウスの第二部となり、対照的なアプローチでの発表となりました。少し話が逸れますが、Markdownそしてその他の軽量マークアップを最終的にHTMLやPDFといった閲覧用の形式にするにあたり、変換におけるどの層にカスタマイズのウエイトを置くのか。様々なバリエーションがあり、必要なスキルセットも方法によって異なります。これは、(できていたかは別として)構造と分離していた表現をどの段階で付与するかということでもあります。抽象データ型の変換で難しいことが起こるときは、(この記事筆者の体感的には)概ねこの部分の感覚の不一致です。


さて、最初のテーマ設定に戻ります。「なぜ情報量を落とす不可逆な変換をするのか」の答えとしては、「落として問題のない情報であるから」ということになるでしょうか。
当たり前の結論ではあります。
しかし「保存形式はXMLより必ずMarkdownがいいのだ」といった話ではなく、「補完可能」あるいは「変換不能」の情報があるとき、元のリッチな表現力の形式に固執すべきかということを考えてみてもよいかもしれません。

参考

  1. ラムダノートの技術 Advent Calendar 2019

関連資料

  1. [1]『Markdown+CSS組版で冊子本(PDF)を作ってみる』 アンテナハウス CAS-UB出版
  2. [2]Markdown + CSS/TeXで冊子本を作ってみた※終了しています
  3. [3]Antenna House Formatter V7

DITA/XML Service Antenna House

Antenna House Formatter

関連記事

  1. Markdown+CSS組版で冊子本(PDF)を作ってみる
  2. XMLエディタで始めるリッチなMarkdown入門?
  3. MDITA(LwDITA uses Markdown)の書き方
  4. DITAとしてのMDITA
  5. Markdown DITAとMDITA
  6. MDITAをDITAに変換する

e-na伊那谷 旅便り 第27回 風景(2)

梅雨に入り雨の日が多くなってきました。
自然豊かな伊那谷もこの時期は少し色あせた景色になってしまいます。

しかし、季節と共に色を変えていくのも伊那谷の良いところ。
例えば桜で有名な高遠城趾公園の場合、春は桜色の風景。ライトアップされた夜桜がとても綺麗です。

高遠城趾の桜

高遠城趾の桜©伊那市観光協会

秋の空には紅葉の赤が美しく映えます。

高遠城趾の紅葉

高遠城趾の紅葉©伊那市観光協会

冬は一転して雪景色。冬の白と秋の赤色の対比が季節を感じさせます。

高遠城趾の雪景色

高遠城趾の雪景色©伊那市観光協会

このように季節に応じた様々な色が目を楽しませてくれます。

緊急事態宣言も解除され少しずつ観光に目を向けられるようになりましたので
伊那谷を訪れてみるのはいかがでしょうか?

伊那市観光協会でアフターコロナ企画と銘打って伊那にまつわるクイズが出題されています。
アフターコロナ企画 – 一般社団法人 伊那市観光協会 公式ホームページ
このクイズに答えると抽選で商品券が当たるようですので
興味のある方は応募してみてはいかがでしょうか?


e-na伊那谷 旅便り
伊那谷の風景:第1回 風景
前回:第26回 伊那谷の城跡(2)
次回:第28回 黒松仙醸

国税庁の「電子帳簿保存法」のページの見方 YouTubeミニセミナー第5弾

  • 国税庁の立ち位置(国税庁とは)
    • → 国税庁の下に、国税局があり、その下に税務署があるのです!
  • 国税3法とは
    • → 帳簿・書類の7年保存を規定している3つの税法
  • 「電帳法」の国税庁ページの全体説明
    • → 『電子帳簿保存法 国税庁』で検索して電帳法TOPページをご覧ください。
  • 「電帳法」の国税庁ページの見方
    • → ページの効率的な見方を伝授します
  • 電帳法関係の今後の改定予測
    • → 3年先まで見渡せます!

など素朴な疑問を解決します。

内容をギュッと11分に圧縮して、YouTubeでいつでも視聴できるミニセミナーにしました。
お好みのところのみ短時間での確認も可能です!!


皆様のお役に立てれば幸いです。

また、要望を頂ければ、その要望にマッチした、セミナーの制作を検討させていただきます。


e-文書法 YouTube 公開セミナー 一覧
第1回「日本はデジタル化後進国か?!」
https://youtu.be/aKctKhLRjOY
第2回「電帳法」を優しく解説
https://youtu.be/RbEZe00m0TA
第3回「帳簿・書類」の7年保存がそもそも何故求められるのか?
https://youtu.be/Ht68XGdFdnU
第4回 タイムスタンプって_なに?
https://youtu.be/RqRbwlHvAfo

筆者紹介
益田康夫
メールアドレス:masuda@antenna.co.jp

1984年に社会人になり、IT業界一筋ながら3回の転職を経て現在に至っています。
特に2008年のリーマンショック後の不況の影響を受けて、2010年6月末にリストラ退社して現本業のアンテナハウス株式会社 https://www.antenna.co.jp/ に入社しました。

Sun MicrosystemsやOracleを中心にしたITインフラから、IAサーバとしてのCompaqやIBMなどや、文書管理システムやポータルシステムを販売していた前職と、現在のアンテナハウスでのPDF技術や電子ファイルの変換技術などを中心にした、e-ドキュメントソリューションを探求してノウハウを習得してきました。

特に、2011年以降、個人で学習時間をひねり出して、文書情報管理士資格2級、1級、上級と最短記録でレベルアップさせ、更に国家資格の行政書士※、日商簿記3級を2015年までに取得しました。

※行政書士とは、https://www.gyosei.or.jp/information/ をご覧ください。


ScanSave on ONe SaaS
ScanSave v4

Pages: Prev 1 2 3 4 5 6 7 8 9 10 ... 17 18 19 Next