コンテンツにスキップ

Connect 経由の脚注参照と本文のパターン

Connect トランスポート経由で脚注参照と脚注本文をレンダリングし、構造ツリーに PDF 2.0 の脚注ロールを持たせます。インラインのマーカーは footnote/endnote 参照になり、脚注テキストはノート本文になります。両者の間には相互の後方参照が設定されます。同じ出力を生成できる HTML の形式は 3 つあります。上付き文字内のリンク、明示的な ARIA の role="doc-noteref"、そして <aside class="footnote"> の本文コンテナーです。検証には Pro ティア のアクセシビリティツールを使用します。NextPDF は class_exists() を介してこれを検出し、サーバーと併せて nextpdf/premium がインストールされている場合にのみ登録します。

アクセシビリティツールの結果が合格であっても、それはあくまでアクセシビリティチェックであり、独立した適合性認証ではありません。

Terminal window
composer require nextpdf/server

tools/list 呼び出しで、Pro のアクセシビリティツールが利用可能であることを確認します。/connect/tool-catalog/. を参照してください。

PDF 2.0 は専用の footnote/endnote 構造タイプと、参照とその本文の関係を定義しています(PDF/UA-2 §8.2.5)。脚注参照はその本文と関連付けられている必要があります(PDF/UA-2 §8.2.5)。この関連付けにより、スクリーンリーダーが参照を読み上げ、リンクをたどってノートを読めるようになります。参照と本文の両方が構造ツリーを通じて到達可能でなければなりません(PDF/UA-2 §8.2.4)。

パイプラインは、次の 3 つの参照形式を認識します。

  1. <sup><a href="#fn-N">N</a></sup> — 上付き文字内リンクの省略形。
  2. <sup role="doc-noteref" aria-describedby="fn-N">N</sup> — 明示的な DPUB-ARIA ロール。aria-describedby は後方参照のターゲットとして引き継がれます。
  3. <aside class="footnote" id="fn-N">…</aside>(または role="doc-footnote")— 本文コンテナー。対応する参照への内部参照を伴うノート本文として出力されます。

ツール名は tools/list を介して、実行中のレジストリと照合して検証します。正式なカタログは /connect/tool-catalog/. です。このレシピは Core のドキュメントツールおよび HTML ツールに加えて Pro のアクセシビリティチェックを使用し、ツール数はここでは改めて明示しません。

言語を設定したタグ付きドキュメントを作成し、リンク省略形による参照を追加します。

{
"jsonrpc": "2.0",
"id": 3,
"method": "tools/call",
"params": {
"name": "create_pdf",
"arguments": { "page_size": "A4", "title": "Footnote Patterns", "language": "en" }
}
}

1 回の HTML 追加で両方の参照と両方の本文を出力し、その後にチェックします。

{
"jsonrpc": "2.0",
"id": 5,
"method": "tools/call",
"params": {
"name": "add_html",
"arguments": {
"document_id": "<id from create_pdf>",
"html": "<p>Revenue grew 24%<sup><a href=\"#fn-1\">1</a></sup>.</p><p>Margin 33%<sup role=\"doc-noteref\" aria-describedby=\"fn-2\">2</sup>.</p><aside class=\"footnote\" id=\"fn-1\"><p>YoY vs prior year.</p></aside><aside class=\"footnote\" id=\"fn-2\" role=\"doc-footnote\"><p>(Revenue − OpEx) / Revenue.</p></aside>"
}
}
}

アクセシビリティチェックは、ペアになった reference/body のロールと相互の後方参照を報告します。

  • 参照はあるが本文がない(または本文はあるが参照がない)場合、チェックによって報告されます。すべての参照には対応する本文が必要であり、その逆も同様です。
  • aria-describedby と本文の id の間で id の不一致があると、ペアは未解決のままになります(大文字と小文字は区別されます)。
  • 外部 URL を指す上付き文字のアンカーは、脚注参照ではなく通常のリンクを出力します。外部ターゲットには明示的なロールを使用してください。
  • class/role のない素の <aside> は、ノート本文ではなくランドマークとして扱われます。 class="footnote" または role="doc-footnote" を追加してください。
  • ツールが存在しない場合。 nextpdf/premium がないと Pro のアクセシビリティツールは登録されないため、検証は不明なツールエラーで失敗します。

フロントマターのバジェットは、ドキュメントで定める上限です。脚注のペアリングは通常の構造パスの一部です。

一般的な Connect トランスポートのガイダンス以外に特記事項はありません。

主張条項reference_id
脚注/巻末注の構造タイプと reference/body の関係PDF/UA-2 §8.2.5
脚注参照がその本文と関連付けられているPDF/UA-2 §8.2.5
構造ツリーを通じて到達可能な参照と本文PDF/UA-2 §8.2.4

参照と本文は、PDF 2.0 の footnote/endnote 標準構造タイプを使用します。相互の後方参照は、アクセシブルな脚注のコントラクトです。

関連付けられた脚注参照と本文は、コンテンツレベルで WCAG 2.2 の SC 1.3.1(Info and Relationships)および SC 2.4.1(Bypass Blocks)をサポートします。

アクセシビリティツールの結果が合格であっても、それはアクセシビリティチェックであり、適合性認証ではありません。適合性の判定は独立したチェッカーが行います。

アクセシビリティチェックツールは Pro ティアであり、サーバーと併せて nextpdf/premium がインストールされている場合にのみ登録されます。

create_pdfadd_html、およびアクセシビリティチェックは、共有ツールエグゼキューターを介して MCP、REST、gRPC で同一に呼び出されます。

ドキュメントの作成と HTML の取り込みは caution レベルで、アクセシビリティチェックは読み取り専用です。デフォルトでは、いずれも approval_required ではありません。/connect/hitl-risk-tiers/. を参照してください。

これらのツールは、オペレーターのオーバーライドによっていずれかが approval_required に引き上げられない限り、ゲートをトリガーしません。エンベロープとシングルユースのトークンコントラクトは /connect/hitl-risk-tiers/. にあります。

  • /cookbook/connect/aria-tagged-pdf/ — ランドマークロールのマッピング。
  • /cookbook/connect/figure-caption/ — ネストされた Figure / Caption 構造。
  • /connect/tool-catalog/ — ティアごとのツールセットの算出。
  • /connect/hitl-risk-tiers/ — リスクモデルとゲート。