Views: 76
データ変換の新時代: 階層型の整然データ(Hierarchical Tidy Data)による論理バインディングと構文バインディング
Nobuyuki SAMBUICHI
ISO/TC295 Audit data services/SG1 Semantic model Convener
東京税理士会「情報通8月号」に記事
『コアインボイスによる中小企業のデジタル化』
を掲載していますが、紙面の関係で技術者向けの内容を全て削除してあるので、 先の記事 で技術的な内容も含めて解説しました。
この記事は、XBRL Japanがコアインボイスゲートウェイサービスおよび汎用検索ブラウザのために実施した実証実験(POC)に基づいています。
コアインボイスゲートウェイ試行版は、 三分一技術士事務所 が、次のURLから公開しています。
https://www.wuwei.space/core-japan/
汎用検索ブラウザ試行版は、次から公開しています。
https://www.wuwei.space/core-japan/journal_entry/
1. 概要
この解説記事では、2つの主要なトピックに焦点を当てています。
-
階層型の整然データ(Hierarchical Tidy Data)による標準形式CSVの解説: この部分では、階層型の整然データ(Hierarchical Tidy Data)を使用して標準化されたCSV形式について詳しく説明しています。
-
相互変換のためのバインディングの解説:
-
構文バインディング: 同じ意味内容を異なる構文規則で表現したXMLファイルと標準形式CSVとの間の変換について解説します。この構文バインディングは、異なる形式間のゲートウェイ機能を提供します。
-
論理バインディング: 会計ソフトが提供する固有形式CSVと標準形式CSVとの間の相互変換について説明します。
-
これらを組み合わせることで、データの標準化と相互運用性についての包括的な視点が提供されます。
階層型の整然データ(Hierarchical Tidy Data)は、通常の整然データ(Tidy Data)の概念を拡張し、複雑な階層構造を持つデータを効率的に表現します。通常の整然データ(Tidy Data)と階層型の整然データ(Hierarchical Tidy Data)の違いを理解するために、以下の点を考えると明確になります。
-
通常の整然データ(Tidy Data):すべての観測が同じ種類で、各観測値が個別の行に、各変数が個別の列に配置されます。
-
階層型の整然データ(Hierarchical Tidy Data):異なる種類の観測が混在し、観測単位(type of observational unit)を構成しています。異なる階層の観測を区別するために追加の識別子が使用されます。この構造は、通常の整然データ(Tidy Data)の三つの基本ルールに基づいていますが、複数階層の異なる観測を表現するために拡張されています。
この新しい形式の利用により、従来の正規化された複数の表の代わりに、請求書全体と明細行のデータを効率的に1つの表で表現できるようになります。例えば、請求書文書の表と明細行の表をJOINする関係代数の操作が不要になり、一つの表にまとまっているため、関係代数を操作することなく必要なデータが取得できます。
階層型の整然データ(Hierarchical Tidy Data)の使用は、特に複雑なデータ構造の場合に非常に有用で、以下の例で詳しく説明します。
2. 階層型の整然データ(Hierarchical Tidy Data)による標準形式CSV
2.1. 階層型の整然データ(Hierarchical Tidy Data)
階層型の整然データ(Hierarchical Tidy Data)は、特に複雑な構造を持つデータを扱う際に使用されるデータ形式で、一般の整然データ(Tidy Data)の概念を拡張しています。
通常の整然データ(Tidy Data)は、同じ種類の観測に対応する変数が個別の列に配置される構造ですが、階層型の整然データ(Hierarchical Tidy Data)はこの概念をさらに進化させ、複数階層の異なる種類の観測についての観測をひとつの表で表現するための構造を持っています。
言い換えれば、階層型の整然データ(Hierarchical Tidy Data)は、一般的な表形式のデータに対して、関連する情報を階層的に構造化する手法です。
階層型の整然データ(Hierarchical Tidy Data)は、Hadley Wickhamが提案した整然データ(Tidy Data)の概念を拡張したもので、通常の整然データ(Tidy Data)と同じ三つの規則があります。
2.3. 整然データ(Tidy Data)
整然データ(Tidy Data)は、データセットの意味をその構造にマッピングする標準的な方法です。データセットが乱雑であるか、整然としているかは、行、列、および表が観測値、変数、および各種類の観測単位とどのように一致しているかによります。整然としたデータでは:
各変数(variable)が列を形成します。
各観測値(observation)が行を形成します。
各種類の観測単位(type of observational unit)が表を形成します。
H. . (2014). Tidy Data. Journal of Statistical Software
標準的な整然データ(Tidy Data)の基本原則に基づきながら、階層型の整然データ(Hierarchical Tidy Data)は、複雑なデータ構造を効果的に表現するための洗練されたフレームワークを提供します。特に、複数のレベルにわたる変数に関連する観測単位を対象としています。
Wickhamはこのアプローチが「Coddの3番目の正規形(Codd 1990)を反映しており、概念が統計的言語に再構築されており、関係データベースに一般的な多数の相互接続されたデータセットよりも個別のデータセットに焦点を当てている」と主張していますが、観測単位が複数のタイプの観測を包含できることを認識することが必要です。例として、私たちのデジタル請求書のシナリオでは、観測単位はドキュメントヘッダと仕訳エントリの行アイテムの両方の観測を組み合わせるかもしれません。
この新しい形式は、かつての複雑な正規化された表の混沌とした迷路を取り払い、データを一つの洗練された表で鮮明に描き出します。あの煩わしい関係代数の操作が不要になり、データのJOINも一切不要。すべてが一つの表にまとまり、必要な情報が素早く、手間なく取得できるようになります。この画期的な改革は、データの取り扱いを革新的にシンプルにしました。
この階層型の整然データ(Hierarchical Tidy Data)の新しい考え方の主な利点は、構造化されていない形式のデータを一貫性を持って整理し、解析しやすくする能力です。
さらに、この形式はデータ分析やビジュアライゼーションのプロセスを容易にし、異なるタイプのデータを一貫した形式で扱うための強力なフレームワークを提供します。
2.2. 例:明細行のある請求書
明細行のある請求書の場合、階層型の整然データ(Hierarchical Tidy Data)の概念は特に有用です。一つの請求書の中には、異なる階層のデータ(請求書全体に関する観測と明細行に関する観測)が存在します。階層型の整然データ(Hierarchical Tidy Data)を使用すると、これらの異なる階層のデータを1つの表で効率的に表現することができます。ここでは、階層型の整然データ(Hierarchical Tidy Data)の形式を用いて、これらの観測を組織化します。
請求書には、一般的に以下のような観測が含まれます:
– 請求書番号
– 請求書発行日
– 売り手
– 買い手
– 合計金額
– 明細行(品目、数量、請求金額など)
階層型の整然データ(Hierarchical Tidy Data)では、これらのデータを以下のように表現します。
-
請求書全体に関連する観測値の行:「請求書番号」、「請求書発行日」、「売り手」、「買い手」、「合計金額」などが記載され、「明細行番号」が空欄。
-
明細行に関連する観測値の行:「請求書番号」、「明細行番号」、「品目」、「単価」、「数量」、「請求金額」などが記載。
この観測値を階層型の整然データ(Hierarchical Tidy Data)で表現する場合、売り手会社Xの発行済み請求書データの具体的な例は、次の表のようになります:
請求書番号 | 明細行番号 | 請求書発行日 | 売り手 | 買い手 | 合計金額 | 品目 | 数量 | 請求金額 |
---|---|---|---|---|---|---|---|---|
1001 |
2023-01-01 |
会社X |
会社A |
1000 |
||||
1001 |
1 |
商品1 |
5 |
500 |
||||
1001 |
2 |
商品2 |
3 |
300 |
||||
1001 |
3 |
商品3 |
2 |
200 |
||||
1002 |
2023-01-02 |
会社X |
会社B |
400 |
||||
1002 |
1 |
商品4 |
4 |
400 |
説明
この表は、階層型の整然データ(Hierarchical Tidy Data)の強力な例を示しています。以下の要素が階層型の整然データ(Hierarchical Tidy Data)の特徴です。
-「請求書番号」により請求書全体が識別され、それぞれの請求書が一意に特定されます。
-「明細行番号」が空欄の場合は、文書全体の観測であり、明細行の場合は明細行の番号が付与され、それぞれの明細行が一意に特定されます。
この表で階層型の整然データ(Hierarchical Tidy Data)が構築されるプロセスは、以下のようになります:
請求書全体についての観測値
-「請求書番号」が請求書全体を識別するためのキーであり、同じ請求書に関連する明細行と関連付けるために使用されます。
– 請求書全体についての行では、明細行に関連する変数の観測値の列は空欄となります。
各明細行についての観測値
– 「明細行番号」と「明細行番号」の組み合わせが各明細行を一意に識別するためのキーとして使用されます。
– 「明細行番号」と「明細行番号」の組み合わせが階層構造を定義しています。
– 明細行についての行では、請求書全体に関連する変数の観測値の列は空欄となります。
2.3. 課税区分別税額の追加
課税区分別の請求書合計金額のCSV表記は、階層型の整然データ(Hierarchical Tidy Data)を使うことで、一つの表で明快に記載が可能になります。
従来の方法では、通常税率10%、軽減税率8%、輸出免税0%などの欄を予め定義する必要がありました。
しかしこの方法では、税率の改定の際に毎回定義を変更する必要がありました。
課税区分別合計金額の追加例の説明
次の表では、請求書の明細行に課税区分と税率が追加されています。
請求書番号 | 明細行番号 | 請求書発行日 | 売り手 | 買い手 | 合計金額 | 品目 | 数量 | 請求金額 | 課税区分 | 税率 |
---|---|---|---|---|---|---|---|---|---|---|
1001 |
2023-01-01 |
会社X |
会社A |
1000 |
||||||
1001 |
1 |
商品1 |
5 |
500 |
S(通常) |
10% |
||||
1001 |
2 |
商品2 |
3 |
300 |
AA(軽減) |
8% |
||||
1001 |
3 |
商品3 |
2 |
200 |
E(対象外) |
0% |
||||
1002 |
2023-01-02 |
会社X |
会社XB |
400 |
||||||
1002 |
1 |
商品4 |
4 |
400 |
G(輸出) |
0% |
階層型の整然データ(Hierarchical Tidy Data)による標準形式CSVでは、「請求書番号」、「課税区分」、「税率」をキーとして追加し、「(課税区分別の)合計課税対象金額」と「(課税区分別の)合計税額」の変数を加えることで、請求書ごとに税区分別の合計金額が1枚の表で記載出来るようになります。
請求書番号 | 課税区分 | 税率 | 明細行番号 | 請求書発行日 | 売り手 | 買い手 | 合計金額 | 合計課税対象金額 | 合計税額 | 品目 | 数量 | 請求金額 | 課税区分 | 税率 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1001 |
2023-01-01 |
会社X |
会社A |
1000 |
||||||||||
1001 |
S(通常) |
10% |
900 |
90 |
||||||||||
1001 |
AA(軽減) |
8% |
300 |
24 |
||||||||||
1001 |
E(対象外) |
0% |
200 |
0 |
||||||||||
1001 |
1 |
商品1 |
5 |
500 |
S(通常) |
10% |
||||||||
1001 |
2 |
商品2 |
3 |
300 |
AA(軽減) |
8% |
||||||||
1001 |
3 |
商品3 |
2 |
200 |
E(対象外) |
0% |
||||||||
1002 |
2023-01-02 |
会社X |
会社B |
400 |
||||||||||
1002 |
G(輸出) |
0% |
400 |
0 |
||||||||||
1002 |
1 |
商品4 |
4 |
400 |
G(輸出) |
0% |
標準形式CSVでは、従来の正規化した表ではなく、この階層型の整然データ(Hierarchical Tidy Data)を使用しています。
3. 階層定義された論理モデル
階層定義された論理モデルは、データの構造を階層的に整理するための枠組みを提供します。
以下の表では、請求書に関連する情報を複数の階層に分割して定義しています。
ID | 階層 | 名称 | データ型 | 繰返し |
---|---|---|---|---|
BG-1 |
0 |
請求書 |
グループ |
0..* |
BT-01 |
1 |
請求書番号 |
ID |
1..1 |
BT-02 |
1 |
請求書発行日 |
Date |
1..1 |
BT-03 |
1 |
売り手 |
Text |
1..1 |
BT-04 |
1 |
買い手 |
Text |
1..1 |
BT-05 |
1 |
合計金額 |
Amount |
1..1 |
BG-2 |
1 |
課税区分別税額 |
グループ |
1..* |
BT-06 |
2 |
課税区分 |
Code |
1..1 |
BT-07 |
2 |
税率 |
Percentage |
1..1 |
BT-09 |
2 |
合計課税対象金額 |
Amount |
1..1 |
BT-09 |
2 |
合計税額 |
Amount |
1..1 |
BG-3 |
1 |
明細行 |
グループ |
1..* |
BT-10 |
2 |
明細行番号 |
ID |
1..1 |
BT-11 |
2 |
品目 |
Text |
1..1 |
BT-12 |
2 |
数量 |
Quantity |
0..1 |
BT-13 |
2 |
請求金額 |
Amount |
1..1 |
BT-14 |
2 |
課税区分 |
Code |
1..1 |
BT-15 |
2 |
税率 |
Percentage |
1..1 |
このモデルは以下のように3つの主要な部分から構成されています:
-
請求書情報: 請求書全体に関連するデータ(請求書番号、発行日、売り手、買い手、合計金額など)。
-
課税区分別税額: 各課税区分ごとの税率と合計金額。
-
明細行: 品目ごとの詳細な情報(明細行番号、品目、数量、請求金額、課税区分、税率など)。
階層型の整然データ(Hierarchical Tidy Data)を用いると、このような階層構造を正確に表現することができます。
全ての階層化された論理モデルに対応する階層型の整然データ(Hierarchical Tidy Data)の定義を作成できるため、階層型の整然データ(Hierarchical Tidy Data)を標準形式CSVとして採用することにより、XML、JSON、Yamlなどの階層的に定義されたデータ構造を一貫した形式で扱うことができます。
階層型の整然データ(Hierarchical Tidy Data)による標準形式CSVは、様々な階層構造のデータに対応可能で、分析やビジュアライゼーションのプロセスを大幅に容易にします。
4. 構文バインディング
階層型の整然データ(Hierarchical Tidy Data)の採用により、各種の階層化された論理モデルに適応する定義の作成が可能になります。構文バインディングが一度定義されれば、XML、JSON、Yamlなどの階層的データ構造と標準形式CSVとの間での変換が容易となります。
この変換プロセスは、プログラムが構文バインディング辞書(タクソノミ)を解釈することで自動化されるため、データの取り扱いが効率的かつ柔軟に進行します。また、構文バインディングの定義を変更するだけで、論理モデルの変更に迅速に対応することも可能です。このシステムはデータ管理の一貫性と柔軟性を高め、分析やビジュアライゼーションのプロセスを大いに助けるものとなります。
4.1. JP PINT 構文バインディング
請求書の通貨で記載されている課税区分別税額グループの構文バインディングを抜粋したのが次の表です。
ここでは、請求書の通貨で記載されている課税区分別税額グループ /Invoice /cac:TaxTotal を指定するために税額の通貨が請求書の文書通貨であることを条件として指定しています。
次の箇所がその条件です。
[cbc:TaxAmount /@currencyID = /Invoice /cbc:DocumentCurrencyCode]
下位要素であるcbc:TaxAmountの@currencyID属性が文書レベルで指定されている文書通貨コード/Invoice /cbc:DocumentCurrencyCodeであるところの /Invoice /cac:TaxTotal を指定するXPath表現です。
/Invoice /cac:TaxTotal [cbc:TaxAmount /@currencyID = /Invoice /cbc:DocumentCurrencyCode]
[source,txt]
core_id | level | 項目名 | 繰返し | Id | Level | Business Term ja | Card. | UBL XPath |
---|---|---|---|---|---|---|---|---|
NC39-NC57 |
2 |
文書ヘッダ課税分類 |
1..n |
IBG-23 |
1 |
税内訳情報 |
1..n |
/Invoice /cac:TaxTotal [cbc:TaxAmount /@currencyID = /Invoice /cbc:DocumentCurrencyCode] /cac:TaxSubtotal |
NC57-01 |
3 |
文書ヘッダ課税分類税額 |
1..1 |
IBT-117 |
2 |
課税分類毎の消費税額 |
1..1 |
/Invoice /cac:TaxTotal [cbc:TaxAmount /@currencyID = /Invoice /cbc:DocumentCurrencyCode] /cac:TaxSubtotal /cbc:TaxAmount |
NC57-03 |
3 |
文書ヘッダ課税分類譲渡資産合計金額(税抜き) |
1..1 |
IBT-116 |
2 |
課税分類毎の課税基準額 |
1..1 |
/Invoice /cac:TaxTotal [cbc:TaxAmount /@currencyID = /Invoice /cbc:DocumentCurrencyCode] /cac:TaxSubtotal /cbc:TaxableAmount |
NC57-04 |
3 |
文書ヘッダ課税分類コード |
1..1 |
IBT-118 |
2 |
課税分類コード |
1..1 |
/Invoice /cac:TaxTotal [cbc:TaxAmount /@currencyID = /Invoice /cbc:DocumentCurrencyCode] /cac:TaxSubtotal /cac:TaxCategory /cbc:ID |
NC57-07 |
3 |
文書ヘッダ税率 |
1..1 |
IBT-119 |
2 |
課税分類毎の税率 |
0..1 |
/Invoice /cac:TaxTotal [cbc:TaxAmount /@currencyID = /Invoice /cbc:DocumentCurrencyCode] /cac:TaxSubtotal /cac:TaxCategory /cbc:Percent |
この構文バインディングの指定に対応する電子請求書の箇所を次に示します。
<?xml version="1.0" encoding="UTF-8"?>
<Invoice xmlns="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2"
xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2"
xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2"
xmlns:ccts="urn:un:unece:uncefact:documentation:2"
xmlns:ext="urn:oasis:names:specification:ubl:schema:xsd:CommonExtensionComponents-2"
xmlns:qdt="urn:oasis:names:specification:ubl:schema:xsd:QualifiedDatatypes-2"
xmlns:udt="urn:un:unece:uncefact:data:specification:UnqualifiedDataTypesSchemaModule:2"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
途中省略
<cac:TaxTotal>
<cbc:TaxAmount currencyID="JPY">25250</cbc:TaxAmount> <!-- IBT-110 - Invoice total TAX amount -->
<cac:TaxSubtotal> <!-- IBG-23 - TAX BREAKDOWN -->
<cbc:TaxableAmount currencyID="JPY">252500</cbc:TaxableAmount> <!-- IBT-116 - TAX category taxable amount -->
<cbc:TaxAmount currencyID="JPY">25250</cbc:TaxAmount> <!-- IBT-117 - TAX category tax amount -->
<cac:TaxCategory>
<cbc:ID>S</cbc:ID> <!-- IBT-118 - TAX category code -->
<cbc:Percent>10</cbc:Percent> <!-- IBT-119 - TAX category rate -->
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID> <!-- IBT-118, qualifier -->
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>
<cac:TaxSubtotal> <!-- IBG-23 - TAX BREAKDOWN -->
<cbc:TaxableAmount currencyID="JPY">3490</cbc:TaxableAmount> <!-- IBT-116 - TAX category taxable amount -->
<cbc:TaxAmount currencyID="JPY">0</cbc:TaxAmount> <!-- IBT-117 - TAX category tax amount -->
<cac:TaxCategory>
<cbc:ID>E</cbc:ID> <!-- IBT-118 - TAX category code -->
<cbc:Percent>0</cbc:Percent> <!-- IBT-119 - TAX category rate -->
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID> <!-- IBT-118, qualifier -->
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>
</cac:TaxTotal>
以降省略
4.2. 中小企業共通EDI 構文バインディング
請求書の通貨で記載されている課税区分別税額グループの構文バインディングを抜粋したのが次の表です。
ここでは、請求書の通貨で記載されている課税区分別税額グループ /rsm:SMEinvoice /rsm:CIIHSupplyChainTradeTransaction /ram:IncludedCIILSupplyChainTradeLineItem /ram:SpecifiedCIILSupplyChainTradeSettlement /ram:ApplicableCITradeTax を指定するために、税額の通貨が請求書の文書通貨であることを条件として指定しています。
次がその条件です。
[ram:CurrencyCode = /rsm:SMEinvoice /rsm:CIIHSupplyChainTradeTransaction /ram:ApplicableCIIHSupplyChainTradeSettlement /ram:InvoiceCurrencyCode]
下位要素である ram:CurrencyCode が文書レベルで指定されている文書通貨コード /rsm:SMEinvoice /rsm:CIIHSupplyChainTradeTransaction /ram:ApplicableCIIHSupplyChainTradeSettlement /ram:InvoiceCurrencyCode であるところの /rsm:SMEinvoice /rsm:CIIHSupplyChainTradeTransaction /ram:IncludedCIILSupplyChainTradeLineItem /ram:SpecifiedCIILSupplyChainTradeSettlement /ram:ApplicableCITradeTax を指定するXPath表現です。
/rsm:SMEinvoice /rsm:CIIHSupplyChainTradeTransaction /ram:IncludedCIILSupplyChainTradeLineItem /ram:SpecifiedCIILSupplyChainTradeSettlement /ram:ApplicableCITradeTax [ram:CurrencyCode = /rsm:SMEinvoice /rsm:CIIHSupplyChainTradeTransaction /ram:ApplicableCIIHSupplyChainTradeSettlement /ram:InvoiceCurrencyCode]
core_id | level | 項目名 | 繰返し | UN_CCL_ID | Level | 項目名 | 繰返し | SME CII XPath |
---|---|---|---|---|---|---|---|---|
NC39-NC57 |
2 |
文書ヘッダ課税分類 |
1..n |
UN01005996 |
5 |
文書ヘッダ決済/文書ヘッダ税グループ |
1..n |
/rsm:SMEinvoice /rsm:CIIHSupplyChainTradeTransaction /ram:IncludedCIILSupplyChainTradeLineItem /ram:SpecifiedCIILSupplyChainTradeSettlement /ram:ApplicableCITradeTax [ram:CurrencyCode = /rsm:SMEinvoice /rsm:CIIHSupplyChainTradeTransaction /ram:ApplicableCIIHSupplyChainTradeSettlement /ram:InvoiceCurrencyCode] |
NC57-01 |
3 |
文書ヘッダ課税分類税額 |
1..1 |
UN01005833 |
6 |
文書ヘッダ課税分類税額 |
1..1 |
/rsm:SMEinvoice /rsm:CIIHSupplyChainTradeTransaction /ram:IncludedCIILSupplyChainTradeLineItem /ram:SpecifiedCIILSupplyChainTradeSettlement /ram:ApplicableCITradeTax [ram:CurrencyCode = /rsm:SMEinvoice /rsm:CIIHSupplyChainTradeTransaction /ram:ApplicableCIIHSupplyChainTradeSettlement /ram:InvoiceCurrencyCode] /ram:CalculatedAmount |
NC57-03 |
3 |
文書ヘッダ課税分類譲渡資産合計金額(税抜き) |
1..1 |
UN01005839 |
6 |
文書ヘッダ課税分類譲渡資産合計金額(税抜き) |
1..1 |
/rsm:SMEinvoice /rsm:CIIHSupplyChainTradeTransaction /ram:IncludedCIILSupplyChainTradeLineItem /ram:SpecifiedCIILSupplyChainTradeSettlement /ram:ApplicableCITradeTax [ram:CurrencyCode = /rsm:SMEinvoice /rsm:CIIHSupplyChainTradeTransaction /ram:ApplicableCIIHSupplyChainTradeSettlement /ram:InvoiceCurrencyCode] /ram:BasisAmount |
NC57-04 |
3 |
文書ヘッダ課税分類コード |
1..1 |
UN01005841 |
6 |
文書ヘッダ課税分類コード |
1..1 |
/rsm:SMEinvoice /rsm:CIIHSupplyChainTradeTransaction /ram:IncludedCIILSupplyChainTradeLineItem /ram:SpecifiedCIILSupplyChainTradeSettlement /ram:ApplicableCITradeTax [ram:CurrencyCode = /rsm:SMEinvoice /rsm:CIIHSupplyChainTradeTransaction /ram:ApplicableCIIHSupplyChainTradeSettlement /ram:InvoiceCurrencyCode] /ram:CategoryCode |
NC57-07 |
3 |
文書ヘッダ税率 |
1..1 |
UN01007174 |
6 |
文書ヘッダ税率 |
1..1 |
/rsm:SMEinvoice /rsm:CIIHSupplyChainTradeTransaction /ram:IncludedCIILSupplyChainTradeLineItem /ram:SpecifiedCIILSupplyChainTradeSettlement /ram:ApplicableCITradeTax [ram:CurrencyCode = /rsm:SMEinvoice /rsm:CIIHSupplyChainTradeTransaction /ram:ApplicableCIIHSupplyChainTradeSettlement /ram:InvoiceCurrencyCode] /ram:RateApplicablePercent |
この構文バインディングの指定に対応する電子請求書の箇所を次に示します。
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<rsm:SMEinvoice xmlns:rsm="urn:un:unece:uncefact:data:standard:SMEinvoice"
xmlns:qdt="urn:un:unece:uncefact:data:standard:QualifiedDataType:31"
xmlns:ram="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:31"
xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:31"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:un:unece:uncefact:data:standard:SMEinvoice https://www.wuwei.space/core-japan/server/data/schema/data/standard/SMEinvoice.xsd">
途中省略
<ram:IncludedCIILSupplyChainTradeLineItem>
<ram:SpecifiedCIILSupplyChainTradeSettlement>
<ram:ApplicableCITradeTax>
<ram:CalculatedAmount>25250</ram:CalculatedAmount>
<ram:TypeCode>VAT</ram:TypeCode>
<ram:BasisAmount>252500</ram:BasisAmount>
<ram:CategoryCode>S</ram:CategoryCode>
<ram:CurrencyCode>JPY</ram:CurrencyCode>
<ram:RateApplicablePercent>10</ram:RateApplicablePercent>
</ram:ApplicableCITradeTax>
<ram:ApplicableCITradeTax>
<ram:CalculatedAmount>0</ram:CalculatedAmount>
<ram:TypeCode>VAT</ram:TypeCode>
<ram:BasisAmount>3490</ram:BasisAmount>
<ram:CategoryCode>E</ram:CategoryCode>
<ram:CurrencyCode>JPY</ram:CurrencyCode>
<ram:RateApplicablePercent>0</ram:RateApplicablePercent>
</ram:ApplicableCITradeTax>
以降省略
4.3. コアインボイスゲートウェイの変換処理
処理フロー
以下のフローチャートは、標準形式CSVを中心とする構文バインディングの変換処理フローを示します。
5. 論理バインディング
論理バインディングは、会計ソフトから提供される固有形式CSVファイルを標準形式CSVに相互変換するプロセスです。
この変換は、特定のツール、具体的には.csv2tidy.pyとtidy2csv.pyを使用して行います。
5.1. 処理フロー
以下のフローチャートは、標準形式CSVを中心とする論理バインディングの変換処理フローを示します。
5.2. 論理バインディング及び構文バインディングの処理フロー
構文バインディングと標準形式CSVの間の変換処理フローも含めると、全体のフローは以下のようになります。
5.3. 論理バインディングの詳細
論理バインディングの際、データの位置を特定するために「論理Path(semPath:semantic path)」という独自の定義を使用します。このsemPathは、XMLのXPathのように、論理階層モデル上の特定の位置を条件付きで指定するのに役立ちます。
この手法の利点は、異なるフォーマット間でのデータ変換が、プログラミングの変更なしに、バインディング辞書(タクソノミ)のみの調整で行えるようになることです。これにより、データ変換が効率的かつ柔軟に実施できます。
column |
name |
card |
Representation |
semSort |
semPath |
fixedValue |
– |
seq |
Identifier |
1010 |
GL02-01 |
||
A |
月種別 |
0 |
||||
B |
種類 |
0 |
||||
C |
形式 |
0..1 |
Document Reference |
1240 |
GL55-03 |
|
D |
作成方法 |
0 |
||||
E |
付箋 |
0 |
||||
F |
伝票日付 |
0..1 |
Date |
1230 |
GL55-02 |
|
G |
伝票番号 |
0..1 |
Code |
1020 |
GL02-02 |
|
H |
伝票摘要 |
0..1 |
Text |
1030 |
GL02-03 |
|
I |
枝番 |
0..1 |
Code |
1220 |
GL55-01 |
|
J |
借方部門 |
0..1 |
Document Reference |
1490 |
GL02-GL55[GL55-05=借方]/GL55-GL61[GL61-01=部門]/GL60-02 |
|
K |
借方部門名 |
0..1 |
Text |
1500 |
GL02-GL55[GL55-05=借方]/GL55-GL61[GL61-01=部門]/GL60-03 |
|
L |
借方科目 |
1..1 |
Identifier |
1320 |
GL02-GL55[GL55-05=借方]/GL55-GL63/GL63-01 |
|
M |
借方科目名 |
0..1 |
Text |
1330 |
GL02-GL55[GL55-05=借方]/GL55-GL63/GL63-02 |
|
N |
借方補助 |
0..1 |
Text |
1390 |
GL02-GL55[GL55-05=借方]/GL55-GL60[GL60-01=補助科目]/GL60-02 |
|
O |
借方補助科目名 |
0..1 |
Text |
1400 |
GL02-GL55[GL55-05=借方]/GL55-GL60[GL60-01=補助科目]/GL60-03 |
|
P |
借方金額 |
1..1 |
Monetary Amount |
1350 |
GL02-GL55[GL55-05=借方]/GL55-GL56/GL56-01 |
|
Q |
借方消費税コード |
0..1 |
Code |
1520 |
GL02-GL55[GL55-05=借方]/GL55-GL68[GL68-04=消費税]/GL68-01 |
|
R |
借方消費税業種 |
0..1 |
Text |
1430 |
GL02-GL55[GL55-05=借方]/GL55-GL60[GL60-01=業種]/GL60-02 |
|
S |
借方消費税税率 |
0..1 |
Percentage |
1530 |
GL02-GL55[GL55-05=借方]/GL55-GL68[GL68-04=消費税]/GL68-02 |
|
T |
借方資金区分 |
0..1 |
Text |
1460 |
GL02-GL55[GL55-05=借方]/GL55-GL60[GL60-01=資金区分]/GL60-02 |
|
U |
借方任意項目1 |
|||||
V |
借方任意項目2 |
|||||
W |
貸方部門 |
0..1 |
0 |
1730 |
GL02-GL55[GL55-05=貸方]/GL55-GL61[GL61-01=部門]/GL60-02 |
|
X |
貸方部門名 |
0..1 |
Text |
1740 |
GL02-GL55[GL55-05=貸方]/GL55-GL61[GL61-01=部門]/GL60-03 |
|
Y |
貸方科目 |
1..1 |
Identifier |
1560 |
GL02-GL55[GL55-05=貸方]/GL55-GL63/GL63-01 |
|
Z |
貸方科目名 |
0..1 |
Text |
1570 |
GL02-GL55[GL55-05=貸方]/GL55-GL63/GL63-02 |
|
AA |
貸方補助 |
0..1 |
Text |
1630 |
GL02-GL55[GL55-05=貸方]/GL55-GL60[GL60-01=補助科目]/GL60-02 |
|
AB |
貸方補助科目名 |
0..1 |
Text |
1640 |
GL02-GL55[GL55-05=貸方]/GL55-GL60[GL60-01=補助科目]/GL60-03 |
|
AC |
貸方金額 |
1..1 |
Monetary Amount |
1590 |
GL02-GL55[GL55-05=貸方]/GL55-GL56/GL56-01 |
|
AD |
貸方消費税コード |
0..1 |
Code |
1760 |
GL02-GL55[GL55-05=貸方]/GL55-GL68[GL68-04=消費税]/GL68-01 |
|
AE |
貸方消費税業種 |
0..1 |
Text |
1670 |
GL02-GL55[GL55-05=貸方]/GL55-GL60[GL60-01=業種]/GL60-02 |
|
AF |
貸方消費税税率 |
0..1 |
Percentage |
1770 |
GL02-GL55[GL55-05=貸方]/GL55-GL68[GL68-04=消費税]/GL68-02 |
|
AG |
貸方資金区分 |
0..1 |
Text |
1700 |
GL02-GL55[GL55-05=貸方]/GL55-GL60[GL60-01=資金区分]/GL60-02 |
|
AH |
貸方任意項目1 |
|||||
AI |
貸方任意項目2 |
|||||
AJ |
摘要 |
0..1 |
Text |
1250 |
GL55-04 |
|
AK |
期日 |
0..1 |
Date |
1290 |
GL55-08 |
|
AL |
証番号 |
0..1 |
Code |
1270 |
GL55-06 |
|
AM |
入力ユーザ |
0..1 |
Identifier |
1150 |
GL57-01 |
|
AN |
入力マシン |
0..1 |
Document Reference |
1130 |
GL64-04 |
|
AO |
入力アプリ |
0..1 |
Text |
1120 |
GL64-03 |
|
AP |
入力会社 |
0..1 |
Text |
1110 |
GL64-02 |
|
AQ |
入力日付 |
0..1 |
Date |
1160 |
GL57-02 |
6. 例: Japan PINT Invoice UBL Example1-minimum.xml
<?xml version="1.0" encoding="UTF-8"?>
<Invoice xmlns="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2"
xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2"
xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2"
xmlns:ccts="urn:un:unece:uncefact:documentation:2"
xmlns:ext="urn:oasis:names:specification:ubl:schema:xsd:CommonExtensionComponents-2"
xmlns:qdt="urn:oasis:names:specification:ubl:schema:xsd:QualifiedDatatypes-2"
xmlns:udt="urn:un:unece:uncefact:data:specification:UnqualifiedDataTypesSchemaModule:2"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<!--
Japan common commercial invoice, example1-minimum
-->
<cbc:UBLVersionID>2.1</cbc:UBLVersionID>
<cbc:CustomizationID>urn:fdc:peppol:jp:billing:3.0</cbc:CustomizationID> <!-- IBT-024 - Specification identifier -->
<cbc:ProfileID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</cbc:ProfileID> <!-- IBT-023 - Business process type -->
<cbc:ID>156</cbc:ID> <!-- IBT-001 - Invoice number -->
<cbc:IssueDate>2023-10-24</cbc:IssueDate> <!-- IBT-002 - Invoice issue date -->
<cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode> <!-- IBT-003 - Invoice type code -->
<cbc:DocumentCurrencyCode>JPY</cbc:DocumentCurrencyCode> <!-- IBT-005 - Invoice currency code -->
<cac:InvoicePeriod> <!-- IBG-14 - INVOICING PERIOD -->
<cbc:StartDate>2023-10-18</cbc:StartDate> <!-- IBT-073 - Invoicing period start date -->
<cbc:EndDate>2023-10-18</cbc:EndDate> <!-- IBT-074 - Invoicing period end date -->
</cac:InvoicePeriod>
<cac:AccountingSupplierParty> <!-- IBG-04 - SELLER -->
<cac:Party>
<cbc:EndpointID schemeID="0188">1234567890123</cbc:EndpointID> <!-- IBT-034 - Seller electronic address, IBT-034-1 - Scheme identifier -->
<cac:PostalAddress> <!-- IBG-05 - SELLER POSTAL ADDRESS -->
<cac:Country>
<cbc:IdentificationCode>JP</cbc:IdentificationCode> <!-- IBT-040 - Seller country code -->
</cac:Country>
</cac:PostalAddress>
<cac:PartyTaxScheme>
<cbc:CompanyID>T1234567890123</cbc:CompanyID> <!-- IBT-031 - Seller TAX identifier -->
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID> <!-- IBT-031, qualifier -->
</cac:TaxScheme>
</cac:PartyTaxScheme>
<cac:PartyLegalEntity>
<cbc:RegistrationName>株式会社 〇〇商事</cbc:RegistrationName> <!-- IBT-027 - Seller name -->
</cac:PartyLegalEntity>
</cac:Party>
</cac:AccountingSupplierParty>
<cac:AccountingCustomerParty> <!-- IBG-07 - BUYER -->
<cac:Party>
<cbc:EndpointID schemeID="0188">3210987654321</cbc:EndpointID> <!-- IBT-049 - Buyer electronic address, IBT-049-1 - Scheme identifier -->
<cac:PostalAddress> <!-- IBG-08 - BUYER POSTAL ADDRESS -->
<cac:Country>
<cbc:IdentificationCode>JP</cbc:IdentificationCode> <!-- IBT-055 - Buyer country code -->
</cac:Country>
</cac:PostalAddress>
<cac:PartyLegalEntity>
<cbc:RegistrationName>株式会社 〇〇物産</cbc:RegistrationName> <!-- IBT-044 - Buyer name -->
</cac:PartyLegalEntity>
</cac:Party>
</cac:AccountingCustomerParty>
<cac:TaxTotal>
<cbc:TaxAmount currencyID="JPY">25250</cbc:TaxAmount> <!-- IBT-110 - Invoice total TAX amount -->
<cac:TaxSubtotal> <!-- IBG-23 - TAX BREAKDOWN -->
<cbc:TaxableAmount currencyID="JPY">252500</cbc:TaxableAmount> <!-- IBT-116 - TAX category taxable amount -->
<cbc:TaxAmount currencyID="JPY">25250</cbc:TaxAmount> <!-- IBT-117 - TAX category tax amount -->
<cac:TaxCategory>
<cbc:ID>S</cbc:ID> <!-- IBT-118 - TAX category code -->
<cbc:Percent>10</cbc:Percent> <!-- IBT-119 - TAX category rate -->
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID> <!-- IBT-118, qualifier -->
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>
<cac:TaxSubtotal> <!-- IBG-23 - TAX BREAKDOWN -->
<cbc:TaxableAmount currencyID="JPY">3490</cbc:TaxableAmount> <!-- IBT-116 - TAX category taxable amount -->
<cbc:TaxAmount currencyID="JPY">0</cbc:TaxAmount> <!-- IBT-117 - TAX category tax amount -->
<cac:TaxCategory>
<cbc:ID>E</cbc:ID> <!-- IBT-118 - TAX category code -->
<cbc:Percent>0</cbc:Percent> <!-- IBT-119 - TAX category rate -->
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID> <!-- IBT-118, qualifier -->
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>
</cac:TaxTotal>
<cac:LegalMonetaryTotal> <!-- IBG-22 - DOCUMENT TOTALS -->
<cbc:LineExtensionAmount currencyID="JPY">255990</cbc:LineExtensionAmount> <!-- IBT-106 - Sum of Invoice line net amount -->
<cbc:TaxExclusiveAmount currencyID="JPY">255990</cbc:TaxExclusiveAmount> <!-- IBT-109 - Invoice total amount without TAX -->
<cbc:TaxInclusiveAmount currencyID="JPY">281240</cbc:TaxInclusiveAmount> <!-- IBT-112 - Invoice total amount with TAX -->
<cbc:AllowanceTotalAmount currencyID="JPY">0</cbc:AllowanceTotalAmount> <!-- IBT-107 - Sum of allowances on document level -->
<cbc:ChargeTotalAmount currencyID="JPY">0</cbc:ChargeTotalAmount> <!-- IBT-108 - Sum of charges on document level -->
<cbc:PrepaidAmount currencyID="JPY">0</cbc:PrepaidAmount> <!-- IBT-113 - Paid amount -->
<cbc:PayableRoundingAmount currencyID="JPY">0</cbc:PayableRoundingAmount> <!-- IBT-114 - Rounding amount -->
<cbc:PayableAmount currencyID="JPY">281240</cbc:PayableAmount> <!-- IBT-115 - Amount due for payment -->
</cac:LegalMonetaryTotal>
<cac:InvoiceLine> <!-- IBG-25 - INVOICE LINE -->
<cbc:ID>1</cbc:ID> <!-- IBT-126 - Invoice line identifier -->
<cbc:InvoicedQuantity unitCode="H87">5</cbc:InvoicedQuantity> <!-- IBT-129 - Invoiced quantity, IBT-130 - Invoiced quantity unit of measure code -->
<cbc:LineExtensionAmount currencyID="JPY">250000</cbc:LineExtensionAmount> <!-- IBT-131 - Invoice line net amount -->
<cac:InvoicePeriod> <!-- IBG-26 - INVOICE LINE PERIOD -->
<cbc:StartDate>2023-10-18</cbc:StartDate> <!-- IBT-134 - Invoice line period start date -->
<cbc:EndDate>2023-10-18</cbc:EndDate> <!-- IBT-135 - Invoice line period end date -->
</cac:InvoicePeriod>
<cac:Item> <!-- IBG-31 - ITEM INFORMATION -->
<cbc:Name>デスクチェア</cbc:Name> <!-- IBT-153 - Item name -->
<cac:ClassifiedTaxCategory> <!-- IBG-30 - LINE TAX INFORMATION -->
<cbc:ID>S</cbc:ID> <!-- IBT-151 - Invoiced item TAX category code -->
<cbc:Percent>10</cbc:Percent> <!-- IBT-152 - Invoiced item TAX rate -->
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID> <!-- IBT-167 - Tax Scheme -->
</cac:TaxScheme>
</cac:ClassifiedTaxCategory>
</cac:Item>
<cac:Price> <!-- IBG-29 - PRICE DETAILS -->
<cbc:PriceAmount currencyID="JPY">50000</cbc:PriceAmount> <!-- IBT-146 - Item net price -->
<cbc:BaseQuantity unitCode="H87">1</cbc:BaseQuantity> <!-- IBT-149 - Item price base quantity, IBT-150 - Item price base quantity unit of measure code -->
</cac:Price>
</cac:InvoiceLine>
<cac:InvoiceLine> <!-- IBG-25 - INVOICE LINE -->
<cbc:ID>2</cbc:ID> <!-- IBT-126 - Invoice line identifier -->
<cbc:InvoicedQuantity unitCode="H87">5</cbc:InvoicedQuantity> <!-- IBT-130 - Invoiced quantity unit of measure code, IBT-129 - Invoiced quantity -->
<cbc:LineExtensionAmount currencyID="JPY">2500</cbc:LineExtensionAmount> <!-- IBT-131 - Invoice line net amount -->
<cac:InvoicePeriod> <!-- IBG-26 - INVOICE LINE PERIOD -->
<cbc:StartDate>2023-10-18</cbc:StartDate> <!-- IBT-134 - Invoice line period start date -->
<cbc:EndDate>2023-10-18</cbc:EndDate> <!-- IBT-135 - Invoice line period end date -->
</cac:InvoicePeriod>
<cac:Item> <!-- IBG-31 - ITEM INFORMATION -->
<cbc:Name>コピー用紙(A4)</cbc:Name> <!-- IBT-153 - Item name -->
<cac:ClassifiedTaxCategory> <!-- IBG-30 - LINE TAX INFORMATION -->
<cbc:ID>S</cbc:ID> <!-- IBT-151 - Invoiced item TAX category code -->
<cbc:Percent>10</cbc:Percent> <!-- IBT-152 - Invoiced item TAX rate -->
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID> <!-- IBT-167 - Tax Scheme -->
</cac:TaxScheme>
</cac:ClassifiedTaxCategory> <!-- IBG-32 - ITEM ATTRIBUTES -->
</cac:Item>
<cac:Price> <!-- IBG-29 - PRICE DETAILS -->
<cbc:PriceAmount currencyID="JPY">500</cbc:PriceAmount> <!-- IBT-146 - Item net price -->
<cbc:BaseQuantity unitCode="H87">1</cbc:BaseQuantity> <!-- IBT-149 - Item price base quantity, IBT-150 - Item price base quantity unit of measure code -->
</cac:Price>
</cac:InvoiceLine>
<cac:InvoiceLine> <!-- IBG-25 - INVOICE LINE -->
<cbc:ID>3</cbc:ID> <!-- IBT-126 - Invoice line identifier -->
<cbc:InvoicedQuantity unitCode="H87">10</cbc:InvoicedQuantity> <!-- IBT-130 - Invoiced quantity unit of measure code, IBT-129 - Invoiced quantity -->
<cbc:LineExtensionAmount currencyID="JPY">3490</cbc:LineExtensionAmount> <!-- IBT-131 - Invoice line net amount -->
<cac:InvoicePeriod> <!-- IBG-26 - INVOICE LINE PERIOD -->
<cbc:StartDate>2023-10-18</cbc:StartDate> <!-- IBT-134 - Invoice line period start date -->
<cbc:EndDate>2023-10-18</cbc:EndDate> <!-- IBT-135 - Invoice line period end date -->
</cac:InvoicePeriod>
<cac:Item> <!-- IBG-31 - ITEM INFORMATION -->
<cbc:Name>検定済教科書(算数)</cbc:Name> <!-- IBT-153 - Item name -->
<cac:ClassifiedTaxCategory> <!-- IBG-30 - LINE TAX INFORMATION -->
<cbc:ID>E</cbc:ID> <!-- IBT-151 - Invoiced item TAX category code -->
<cbc:Percent>0</cbc:Percent> <!-- IBT-152 - Invoiced item TAX rate -->
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID> <!-- IBT-167 - Tax Scheme -->
</cac:TaxScheme>
</cac:ClassifiedTaxCategory>
</cac:Item>
<cac:Price> <!-- IBG-29 - PRICE DETAILS -->
<cbc:PriceAmount currencyID="JPY">349</cbc:PriceAmount> <!-- IBT-146 - Item net price -->
<cbc:BaseQuantity unitCode="H87">1</cbc:BaseQuantity> <!-- IBT-149 - Item price base quantity, IBT-150 - Item price base quantity unit of measure code -->
</cac:Price>
</cac:InvoiceLine>
</Invoice>
d_NC00 | 0 | 0 | 0 | 0 | 0 | 0 |
---|---|---|---|---|---|---|
d_NC39-NC57 |
0 |
1 |
||||
d_NC39-NC61 |
0 |
1 |
2 |
|||
NC00-01 |
JPY |
|||||
NC00-07 |
urn:fdc:peppol.eu:2017:poacc:billing:01:1.0 |
|||||
NC00-15 |
urn:fdc:peppol:jp:billing:3.0 |
|||||
NC00-19 |
156 |
|||||
NC00-21 |
380 |
|||||
NC00-22 |
2023-10-24 |
|||||
NC00-29 |
2023-10-18 |
|||||
NC00-30 |
2023-10-18 |
|||||
NC09-05 |
株式会社 〇〇商事 |
|||||
NC09-07 |
T1234567890123 |
|||||
NC09-08 |
VAT |
|||||
NC09-10 |
VAT |
|||||
NC09-11 |
1234567890123 |
|||||
NC09-12 |
0188 |
|||||
NC11-07 |
JP |
|||||
NC12-05 |
株式会社 〇〇物産 |
|||||
NC12-09 |
3210987654321 |
|||||
NC12-10 |
0188 |
|||||
NC14-07 |
JP |
|||||
NC55-01 |
0 |
|||||
NC55-02 |
0 |
|||||
NC55-03 |
25250 |
|||||
NC55-04 |
255990 |
|||||
NC55-05 |
255990 |
|||||
NC55-06 |
281240 |
|||||
NC55-07 |
281240 |
|||||
NC57-01 |
25250 |
0 |
||||
NC57-02 |
VAT |
VAT |
||||
NC57-03 |
252500 |
3490 |
||||
NC57-04 |
S |
E |
||||
NC57-05 |
JPY |
JPY |
||||
NC57-07 |
10 |
0 |
||||
NC61-01 |
1 |
2 |
3 |
|||
NC61-03 |
250000 |
2500 |
3490 |
|||
NC62-01 |
2023-10-18 |
2023-10-18 |
2023-10-18 |
|||
NC62-02 |
2023-10-18 |
2023-10-18 |
2023-10-18 |
|||
NC63-04 |
5 |
5 |
10 |
|||
NC63-05 |
H87 |
H87 |
H87 |
|||
NC71-01 |
VAT |
VAT |
VAT |
|||
NC71-02 |
S |
S |
E |
|||
NC71-04 |
10 |
10 |
0 |
|||
NC75-07 |
デスクチェア |
コピー用紙(A4) |
検定済教科書(算数) |
|||
NC76-02 |
50000 |
500 |
349 |
|||
NC76-07 |
1 |
1 |
1 |
|||
NC76-08 |
H87 |
H87 |
H87 |
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<rsm:SMEinvoice xmlns:rsm="urn:un:unece:uncefact:data:standard:SMEinvoice"
xmlns:qdt="urn:un:unece:uncefact:data:standard:QualifiedDataType:31"
xmlns:ram="urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:31"
xmlns:udt="urn:un:unece:uncefact:data:standard:UnqualifiedDataType:31"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:un:unece:uncefact:data:standard:SMEinvoice https://www.wuwei.space/core-japan/server/data/schema/data/standard/SMEinvoice.xsd">
<rsm:CIExchangedDocumentContext>
<ram:BusinessProcessSpecifiedCIDocumentContextParameter>
<ram:ID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</ram:ID>
</ram:BusinessProcessSpecifiedCIDocumentContextParameter>
<ram:SubsetSpecifiedCIDocumentContextParameter>
<ram:ID>urn:fdc:peppol:jp:billing:3.0</ram:ID>
</ram:SubsetSpecifiedCIDocumentContextParameter>
</rsm:CIExchangedDocumentContext>
<rsm:CIIHExchangedDocument>
<ram:ID>156</ram:ID>
<ram:TypeCode>380</ram:TypeCode>
<ram:IssueDateTime>
<udt:DateTimeString>2023-10-24</udt:DateTimeString>
</ram:IssueDateTime>
</rsm:CIIHExchangedDocument>
<rsm:CIIHSupplyChainTradeTransaction>
<ram:ApplicableCIIHSupplyChainTradeAgreement>
<ram:SellerCITradeParty>
<ram:Name>株式会社 〇〇商事</ram:Name>
<ram:RegisteredID>T1234567890123</ram:RegisteredID>
<ram:TypeCode>VAT</ram:TypeCode>
<ram:EndPointURICIUniversalCommunication>
<ram:CompleteNumber>1234567890123</ram:CompleteNumber>
<ram:ChannelCode>0188</ram:ChannelCode>
</ram:EndPointURICIUniversalCommunication>
<ram:PostalCITradeAddress>
<ram:CountryID>JP</ram:CountryID>
</ram:PostalCITradeAddress>
</ram:SellerCITradeParty>
<ram:BuyerCITradeParty>
<ram:Name>株式会社 〇〇物産</ram:Name>
<ram:EndPointURICIUniversalCommunication>
<ram:CompleteNumber>3210987654321</ram:CompleteNumber>
<ram:ChannelCode>0188</ram:ChannelCode>
</ram:EndPointURICIUniversalCommunication>
<ram:PostalCITradeAddress>
<ram:CountryID>JP</ram:CountryID>
</ram:PostalCITradeAddress>
</ram:BuyerCITradeParty>
</ram:ApplicableCIIHSupplyChainTradeAgreement>
<ram:ApplicableCIIHSupplyChainTradeSettlement>
<ram:InvoiceCurrencyCode>JPY</ram:InvoiceCurrencyCode>
<ram:BillingCISpecifiedPeriod>
<ram:StartDateTime>
<udt:DateTimeString>2023-10-18</udt:DateTimeString>
</ram:StartDateTime>
<ram:EndDateTime>
<udt:DateTimeString>2023-10-18</udt:DateTimeString>
</ram:EndDateTime>
</ram:BillingCISpecifiedPeriod>
</ram:ApplicableCIIHSupplyChainTradeSettlement>
<ram:IncludedCIILSupplyChainTradeLineItem>
<ram:SpecifiedCIILSupplyChainTradeSettlement>
<ram:ApplicableCITradeTax>
<ram:CalculatedAmount>25250</ram:CalculatedAmount>
<ram:TypeCode>VAT</ram:TypeCode>
<ram:BasisAmount>252500</ram:BasisAmount>
<ram:CategoryCode>S</ram:CategoryCode>
<ram:CurrencyCode>JPY</ram:CurrencyCode>
<ram:RateApplicablePercent>10</ram:RateApplicablePercent>
</ram:ApplicableCITradeTax>
<ram:ApplicableCITradeTax>
<ram:CalculatedAmount>0</ram:CalculatedAmount>
<ram:TypeCode>VAT</ram:TypeCode>
<ram:BasisAmount>3490</ram:BasisAmount>
<ram:CategoryCode>E</ram:CategoryCode>
<ram:CurrencyCode>JPY</ram:CurrencyCode>
<ram:RateApplicablePercent>0</ram:RateApplicablePercent>
</ram:ApplicableCITradeTax>
<ram:SpecifiedCIILTradeSettlementMonetarySummation>
<ram:ChargeTotalAmount>0</ram:ChargeTotalAmount>
<ram:AllowanceTotalAmount>0</ram:AllowanceTotalAmount>
<ram:TaxTotalAmount currencyID="JPY">25250</ram:TaxTotalAmount>
<ram:GrossLineTotalAmount>255990</ram:GrossLineTotalAmount>
<ram:NetLineTotalAmount>255990</ram:NetLineTotalAmount>
<ram:NetIncludingTaxesLineTotalAmount>281240</ram:NetIncludingTaxesLineTotalAmount>
<ram:GrandTotalAmount>281240</ram:GrandTotalAmount>
</ram:SpecifiedCIILTradeSettlementMonetarySummation>
</ram:SpecifiedCIILSupplyChainTradeSettlement>
<ram:SubordinateCIILBSubordinateTradeLineItem>
<ram:ID>1</ram:ID>
<ram:SpecifiedCIILBSupplyChainTradeAgreement>
<ram:NetPriceProductCITradePrice>
<ram:ChargeAmount>50000</ram:ChargeAmount>
<ram:BasisQuantity unitCode="H87">1</ram:BasisQuantity>
</ram:NetPriceProductCITradePrice>
</ram:SpecifiedCIILBSupplyChainTradeAgreement>
<ram:SpecifiedCIILBSupplyChainTradeDelivery>
<ram:BilledQuantity unitCode="H87">5</ram:BilledQuantity>
</ram:SpecifiedCIILBSupplyChainTradeDelivery>
<ram:SpecifiedCIILBSupplyChainTradeSettlement>
<ram:ApplicableCITradeTax>
<ram:TypeCode>VAT</ram:TypeCode>
<ram:BasisAmount>250000</ram:BasisAmount>
<ram:CategoryCode>S</ram:CategoryCode>
<ram:RateApplicablePercent>10</ram:RateApplicablePercent>
</ram:ApplicableCITradeTax>
<ram:BillingCISpecifiedPeriod>
<ram:StartDateTime>
<udt:DateTimeString>2023-10-18</udt:DateTimeString>
</ram:StartDateTime>
<ram:EndDateTime>
<udt:DateTimeString>2023-10-18</udt:DateTimeString>
</ram:EndDateTime>
</ram:BillingCISpecifiedPeriod>
</ram:SpecifiedCIILBSupplyChainTradeSettlement>
<ram:ApplicableCITradeProduct>
<ram:Name>デスクチェア</ram:Name>
</ram:ApplicableCITradeProduct>
</ram:SubordinateCIILBSubordinateTradeLineItem>
<ram:SubordinateCIILBSubordinateTradeLineItem>
<ram:ID>2</ram:ID>
<ram:SpecifiedCIILBSupplyChainTradeAgreement>
<ram:NetPriceProductCITradePrice>
<ram:ChargeAmount>500</ram:ChargeAmount>
<ram:BasisQuantity unitCode="H87">1</ram:BasisQuantity>
</ram:NetPriceProductCITradePrice>
</ram:SpecifiedCIILBSupplyChainTradeAgreement>
<ram:SpecifiedCIILBSupplyChainTradeDelivery>
<ram:BilledQuantity unitCode="H87">5</ram:BilledQuantity>
</ram:SpecifiedCIILBSupplyChainTradeDelivery>
<ram:SpecifiedCIILBSupplyChainTradeSettlement>
<ram:ApplicableCITradeTax>
<ram:TypeCode>VAT</ram:TypeCode>
<ram:BasisAmount>2500</ram:BasisAmount>
<ram:CategoryCode>S</ram:CategoryCode>
<ram:RateApplicablePercent>10</ram:RateApplicablePercent>
</ram:ApplicableCITradeTax>
<ram:BillingCISpecifiedPeriod>
<ram:StartDateTime>
<udt:DateTimeString>2023-10-18</udt:DateTimeString>
</ram:StartDateTime>
<ram:EndDateTime>
<udt:DateTimeString>2023-10-18</udt:DateTimeString>
</ram:EndDateTime>
</ram:BillingCISpecifiedPeriod>
</ram:SpecifiedCIILBSupplyChainTradeSettlement>
<ram:ApplicableCITradeProduct>
<ram:Name>コピー用紙(A4)</ram:Name>
</ram:ApplicableCITradeProduct>
</ram:SubordinateCIILBSubordinateTradeLineItem>
<ram:SubordinateCIILBSubordinateTradeLineItem>
<ram:ID>3</ram:ID>
<ram:SpecifiedCIILBSupplyChainTradeAgreement>
<ram:NetPriceProductCITradePrice>
<ram:ChargeAmount>349</ram:ChargeAmount>
<ram:BasisQuantity unitCode="H87">1</ram:BasisQuantity>
</ram:NetPriceProductCITradePrice>
</ram:SpecifiedCIILBSupplyChainTradeAgreement>
<ram:SpecifiedCIILBSupplyChainTradeDelivery>
<ram:BilledQuantity unitCode="H87">10</ram:BilledQuantity>
</ram:SpecifiedCIILBSupplyChainTradeDelivery>
<ram:SpecifiedCIILBSupplyChainTradeSettlement>
<ram:ApplicableCITradeTax>
<ram:TypeCode>VAT</ram:TypeCode>
<ram:BasisAmount>3490</ram:BasisAmount>
<ram:CategoryCode>E</ram:CategoryCode>
<ram:RateApplicablePercent>0</ram:RateApplicablePercent>
</ram:ApplicableCITradeTax>
<ram:BillingCISpecifiedPeriod>
<ram:StartDateTime>
<udt:DateTimeString>2023-10-18</udt:DateTimeString>
</ram:StartDateTime>
<ram:EndDateTime>
<udt:DateTimeString>2023-10-18</udt:DateTimeString>
</ram:EndDateTime>
</ram:BillingCISpecifiedPeriod>
</ram:SpecifiedCIILBSupplyChainTradeSettlement>
<ram:ApplicableCITradeProduct>
<ram:Name>検定済教科書(算数)</ram:Name>
</ram:ApplicableCITradeProduct>
</ram:SubordinateCIILBSubordinateTradeLineItem>
</ram:IncludedCIILSupplyChainTradeLineItem>
</rsm:CIIHSupplyChainTradeTransaction>
</rsm:SMEinvoice>