標準書 技術編


Copyright © The Federation Of Electric Power Companies All Rights Reserved.
資材系電力ビジネスプロトコル標準
III.技 術 編
Ver.3B-02
平成26年3月
電気事業連合会
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
目次
1. はじめに .............................................................................. 1
2. ebXMLの概要 ........................................................................... 2
2.1. ebXML仕様の構成 .................................................................... 2
2.2. ebXMLの階層構造 .................................................................... 3
2.3. 本標準で採用するebXMLの定義......................................................... 4
3. メッセージ搬送......................................................................... 5
3.1. ebMSの採用バージョン................................................................ 5
3.2. メッセージの種類 ................................................................... 6
3.3. メッセージ搬送の流れ................................................................ 6
3.4. メッセージ搬送の種類................................................................ 7
3.4.1. 一方向Push型MEP(One-way/Push MEP) ............................................. 7
3.4.2. 一方向Pull型MEP(One-way/Pull MEP) ............................................. 7
3.5. 信頼性保証機能 ..................................................................... 8
3.5.1. 到達保証 ........................................................................ 8
3.5.2. 重複破棄 ........................................................................ 9
3.5.3. 順序保証 ....................................................................... 10
4. パッケージング........................................................................ 11
4.1. HTTPヘッダー ...................................................................... 12
4.2. MIMEヘッダー ...................................................................... 12
4.3. ebMSヘッダー ...................................................................... 13
4.4. SOAPヘッダー ...................................................................... 14
5. XMLデータ ............................................................................ 16
5.1. XMLデータの構造 ................................................................... 16
5.2. SBDヘッダー ....................................................................... 17
5.3. SBDボディ ......................................................................... 18
5.4. SBDデータ ......................................................................... 18
5.5. XMLデータで使用する文字............................................................ 19
5.5.1. 文字コード符号化形式 ........................................................... 19
5.5.2. 文字セット ..................................................................... 19
5.6. 添付ファイルの扱い................................................................. 19
5.6.1. 添付ファイル名 ................................................................. 19
5.6.2. 添付ファイル数 ................................................................. 19
5.7. データ形式の変換 .................................................................. 20
6. XMLデータの検証....................................................................... 21
6.1. XML schemaによるXMLデータの検証.................................................... 21
6.2. XML schemaの設計規則............................................................... 22
6.3. XML schemaの名前空間............................................................... 22
6.4. XML schemaの構造 .................................................................. 23
6.5. XML schemaによるデータ項目の定義例................................................. 23
6.5.1. 属性の定義例 ................................................................... 23
6.5.2. 出現回数の定義例 ............................................................... 24
6.6. XML schemaのバージョン管理......................................................... 25
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
6.6.1. XML schemaのファイル名 ......................................................... 25
6.6.2. XML schemaの管理ディレクトリ名 ................................................. 26
7. セキュリティの向上.................................................................... 26
7.1. 情報セキュリティの三要件........................................................... 26
7.2. セキュリティ対策 .................................................................. 26
7.2.1. 不正アクセス防止対策 ........................................................... 26
7.2.2. 盗聴対策 ....................................................................... 26
7.2.3. なりすまし策 ................................................................... 26
7.2.4. 改ざん対策 ..................................................................... 26
7.2.5. ログの管理 ..................................................................... 26
8. EDI取引に関する技術的な合意 ........................................................... 27
8.1. メッセージ搬送の技術仕様の合意..................................................... 27
8.2. XMLデータの保存期間................................................................ 28
8.3. 業務システムに関するエラー内容などの通知........................................... 28
III - 1
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
1. はじめに
本書では、資材系電力ビジネスプロトコル標準のシステム面・技術面について定義する。
III - 2
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
2. ebXMLの概要
2.1. ebXML仕様の構成
ebXMLは、XMLを用いたインターネット上の企業間EDI取引のための標準仕様である。表 2-1に
示すとおり5つの仕様が存在しており、現在も改良が続けられている。各仕様の改良や維持管理は、
業務寄りの仕様をUN/CEFACTが、システム寄りの仕様をOASISが分担している。各仕様の関係を図
2-1に示す。
表 2-1 ebXML仕様の構成
仕様の日本語名 仕様の英語名 説明
メッセージ搬送 ebMS ebXML Message Service Specification
企業間取引合意
ebCPPA ebXML Collaboration-Protocol Profile and Agreement
Specification
企業間取引プロセ
ス記述
ebBPSS ebXML Business Process Specification Schema
企業情報登録管理
ebR&R ebXML Registry information model specification & Registry
services specification
構成要素モデル ebCCTS ebXML Core Components Technical Specification
図 2-1 ebXMLの各仕様の関係
ebXMLでは、ebBPSSによるコラボレーションXML/EDIが利用できる。コラボレーションXML/EDIで
は、企業間のビジネスプロセスも標準化・電子化が可能となる。
《System》
EDIサーバ
ebXML
レジストリ
《System》
EDIサーバ
《電力会社》
《取引先》
1CPA、BPSS取得
2EDIシステム構築CPA3CPA登録
4CPA、BPSS取得CPA5システム仕様合意
6取引開始
III - 3
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
2.2. ebXMLの階層構造
ebXMLは、図 2-2に示すとおり階層構造をとっており、各階層の仕様を簡単に述べる。
図 2-2 ebXMLの階層構造
(1)トランスポート層
通信に関するプロトコルを規定する階層である。ebMSではHTTPやSMTP等を利用できる。
(2)メッセ-ジ搬送層
トランスポート層を使用し、指定されたメッセージを確実に指定された宛先に送信するため
の機能を提供する階層である。ebMSは、搬送情報(From、To、ID等)、再送処理や重複削除、受
領通知要求、リトライ間隔指定、リトライ回数等の信頼性を提供する。
また、企業間で技術的な合意をとる仕様としてebCPPAがある。
(3)ビジネスアクション層
送信されたメッセージの受信確認と受領確認を行う階層である。ebBPPSのビジネストランザ
クション仕様に基づいた受信確認と受領確認処理を行う。
(4)ビジネスコラボレーション層
ビジネスプロセスを管理する階層である。ebBPPS仕様に従い、ebMSと連携して動作する。
(5)業務アプリケーション層
データ交換を行う業務アプリケーションが管理する階層である。本標準に準拠した取引デー
タを作成し、ebXMLの各階層で処理され受取側に送信される。受取側も同様に取引データを作
成し、送信相手に送信する。
インターネット
《電力会社》
ビジネスコラボレーション
(ebBPSS)
ビジネスアクション
(ebBPSS-TB)
メッセ-ジ搬送
(SOAP、ebMS、ebCPPA)
業務アプリケーション
《取引先》
ビジネスコラボレーション
(ebBPSS)
ビジネスアクション
(ebBPSS-TB)
メッセ-ジ搬送
(SOAP、ebMS、ebCPPA)
業務アプリケーション
トランスポート
(HTTP、SSL)
トランスポート
(HTTP、SSL)
取引データ
取引データ
メッセージ メッセージ
III - 4
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
2.3. 本標準で採用するebXMLの定義
本標準では、サーバtoサーバ方式(Push型)に加えて、クライアントtoサーバ方式(Pull型)に対応
するため、ebMS 3.0を採用する。
しかし、ebCPPAおよびebBPSSは、クライアントtoサーバ方式(Pull型)を含む仕様が公開されてい
ないため、使用しない。
ebMSでは、通信プロトコルにHTTPやSMTP等を利用できるが、本標準では、HTTP (セキュリティは
SSL/TLS) を採用する。
また、ebMSでは取引データのデータ形式を限定していない。本標準では、インターネットを用い
たEDIに適したXML形式を採用する。本書では、XML形式の取引データをXMLデータとする。
標準化項目に対するebXMLの定義と本標準で採用する定義の関係を表 2-2に示す。
表 2-2 本標準で採用するebXMLの定義
標準化項目 ebXMLの定義 本標準の定義業務定義
ビジネスプロセ
ス定義
ビジネスプロセスのモデリング手法
(UMM)を定義。
UMMを利用しない。
ビジネスプロセ
ス仕様記述
自動化を目的としたビジネスプロセ
スの記述方法(ebBPSS)を定義。
ebBPSSを利用しない。
(将来的には、BPSSの提供を検討する)
データ項目定義 コア構成要素(コアコンポーネン
ト)を定義し、これに基づいて業界
標準でビジネス情報項目(データ項
目)を作成する手法(コア構成要素
技術仕様)を定義。
コア構成要素技術仕様を利用しない。システム定義
技術合意書 EDI取引に関する技術仕様(ebCPPA)を
合意することを定義。
ebCPPAを利用しない。
当事者間で合意する。(将来的には、
CPA雛形の提供を検討する)
レジストリ・レ
ポジトリ
データ参照・格納仕様(ebR&R)を定
義。
ebR&Rを利用しない。
(CPAの登録・公開を行わないため)
メッセージ搬送
(ルーティン
グ、信頼性搬送)ebMSを定義。 ebMS 3.0を採用する。
OASIS ebXML Messaging Service 3.0
http://docs.oasis-open.org/ebxml-
msg/ebms/v3.0/core/ebms_core-3.0-
spec.pdf
パッケージング ebMSを定義。 ebMS 3.0を採用する。
(SOAP仕様に準拠する)
データ形式 限定なし。ebMSで採用するデータ形
式は、業界標準で定義することを想
定。
XML形式を採用する。
XML schemaを提供する。
通信プロトコル 限定なし。ebMSで採用する通信プロ
トコルは、業界標準で定義すること
を想定。
HTTPを採用する。
セキュリティ 限定なし。業界標準で定義すること
を想定。
SSL/TLSを採用する。
(インターネットでの伝送を想定するた
め、暗号化通信と相互認証を行う)
III - 5
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
3. メッセージ搬送
3.1. ebMSの採用バージョン
ebMSは、ebXMLにおけるメッセージ搬送に関する仕様で、SOAPに企業間EDI取引に必要な機能を追
加したものである。
ebMS 2.0は、ISO15000-2で標準化されているが、策定当時は、セキュリティや高信頼性搬送など
の国際標準仕様(RFC、ISO等)が整っておらず、ebMS独自で実装していた。また、サーバtoサーバ方
式(Push型)のみの対応であった。。
その後、ebMS独自で実装されていたセキュリティや高信頼性搬送が標準化され、ebMS 3.0にバー
ジョンアップされた。ebMS 3.0は、中小企業にとって導入しやすいクライアントtoサーバ方式
(Pull型)にも対応している。
ebMS 2.0からebMS 3.0の変更点を表 3-1に示す。ebMS 3.0の主な機能については表 3-2に
示す。
表 3-1 ebMS 2.0からebMS 3.0の変更点
変更点 説明
Webサービス技術との親和性向上 SOAP Body でメッセージを送信可能となった。
高信頼メッセージ搬送機能として、Web-Reliability/RMを採用。
セキュリティ機能として、Web-Securityを採用。
中小企業向けEDI利用モデルへの対応クライアントtoサーバ方式(Pull型)を規定。
ベーシック認証の追加。
コア機能と拡張機能の整理 一般的に利用される機能をコア機能、それ以外を拡張機能として
整理。
表 3-2 ebMS 3.0の主な機能
機能大 機能小 説明
基本メッセージ搬送同期メッセージ搬送 双方向のメッセージ送受信を下位プロトコルの1組
のリクエストとレスポンスにマッピングし、送受信
を同期する。
非同期メッセージ搬送 片方向のメッセージ送受信を非同期に行う。
Pull型メッセージ搬送 受信側からメッセージを受け取りにいく。
高信頼メッセージ
搬送
到達保証 メッセージ到達を保証する。
重複削除 重複メッセージを削除する。
順序保証 送信したメッセージ順に受信側にメッセージを搬送
する。
セキュリティ デジタル署名 メッセージに署名することで改ざんを防止する。
暗号化 メッセージを暗号化し、情報漏洩を防止する。
認証 ベーシック認証を行う。
エラー通知 メッセージ搬送時のエラーを通知する。
III - 6
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
3.2. メッセージの種類
ebMS 3.0では表 3-3に示すように3種類のメッセージを規定している。
表 3-3 ebMS 3.0のメッセージの種類
種類 説明
メッセージ
(SOAPメッ
セージ)ebMSメッセージ
ユーザ
メッセージ
SOAPメッセージ。
XMLデータを格納し送信する。
シグナル
メッセージ
SOAPメッセージ。
ebMSのメッセージ搬送を円滑に処理したり、メッセージ
の状態を通知する。以下のメッセージがある。
・ebMS Errorメッセージ(eb:Errors)
・ebMS Pullメッセージ(eb:PullRequest)
・ebMS Receiptメッセージ(eb:Receipt)
アクセサリーメッセージ SOAPメッセージ。
ebMSメッセージを補助する。以下のメッセージがある。
・信頼性通信プロトコル・メッセージのマッピング
・信頼性通信の確認
・SOAP Faults または HTTP Error
3.3. メッセージ搬送の流れ
ebMS 3.0では、MSHによって、メッセージの送受信が制御される。MSHによるメッセージ搬送の流
れを図 3-1に示す。
提出 : XMLデータを生成し、MSH側に提出する。
送信 : 送信側MSHから受信側MSHにメッセージを搬送する。
受信 : 送信側MSHから受信側MSHへメッセージの搬送を完了する。
配信 : 受信側MSHがメッセージからXMLデータを配信する。
通知 : 提出または受信されたメッセージの状態をSystemに通知する。
図 3-1 MSHによるメッセージ搬送の流れ
《MSH》
送信側
メッセージ制御
《System》
XMLデータ生成
《MSH》
受信側
メッセージ制御
《System》
XMLデータ利用
提出
通知
配信
通知
送信 受信
III - 7
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
3.4. メッセージ搬送の種類
ebMS 3.0では、Push型とPull型の2種類のメッセージ搬送が可能となっている。
3.4.1. 一方向Push型MEP(One-way/Push MEP)
ロール(役割)が"送信"のMSHから開始される。図 3-2に示すように、ユーザメッセージを一
方向に送信する。
図 3-2 一方向Push型MEP(One-way/Push MEP)
3.4.2. 一方向Pull型MEP(One-way/Pull MEP)
ロールが"受信"のMSHから開始される。図 3-3に示すように、まずシグナルメッセージ
PullRequestを応答側MSHに送信され、その応答として応答側MSHは引き当てたユーザメッセージを
送信する。
図 3-3 一方向Pull型MEP(One-way/Pull MEP)
開始側MSH
HTTP Request
応答側MSH
ユーザメッセージ
ロール:送信 ロール:受信
HTTP Response
HTTP Session
SOAPメッセージXMLデータ
業務
システム
業務
システムXMLデータ
開始側MSH
HTTP Request
応答側MSH
シグナルメッセージ
ロール:受信 ロール:送信
HTTP Response
ユーザメッセージ
HTTP Session
SOAPメッセージXMLデータ
業務
システム
業務
システムXMLデータ
III - 8
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
3.5. 信頼性保証機能
MSHと業務システム間のメッセージの流れを図 3-4に示す。ebMSの信頼性保証機能については
表 3-2に示すように3種類ある。
図 3-4 業務システムとMSH間のメッセージの流れ
3.5.1. 到達保証
MSH間のメッセージの到達保証は、図 3-5に示すように、Receiptシグナルメッセージと再送
(Retry)の組み合わせで実現される。通信経路で異常が発生した際に再送することでメッセージの
到達を保証する。
図 3-5 再送発生時のフローの例
開始側MSHは、設定した「再送間隔」時間内にReceipt応答がなければ再送処理を行う。再送は、
設定した「再送回数」分繰り返す。
ユーザ
メッセージ
SOAPメッセージ
XMLデータXMLデータ
シグナル
メッセージ
開始側MSH応答側MSH業務
システム
業務
システム
ユーザ
メッセージ
SOAPメッセージ
XMLデータ
Receipt
開始側MSH応答側MSH業務
システム
業務
システム
ユーザ
メッセージ
異常
再送XMLデータXMLデータXMLデータ
III - 9
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
3.5.2. 重複破棄
障害が開始側MSHではなく、応答側MSHで発生することも想定している。Receiptシグナルメッセ
ージが開始側MSH側に到達しなかった場合、開始側MSHから再送が行われる。これにより応答側MSH
は重複したメッセージを受け取ることになる。
ebMSでは応答側MSHが最初に受け取ったメッセージを保持しており、重複メッセージか否か判断
する。重複メッセージである場合は、図 3-6に示すように、開始側MSHに対しReceiptシグナル
メッセージを返す。重複メッセージを破棄することで、業務システムに対しては重複メッセージを
渡さない。
図 3-6 重複発生時のフローの例
ユーザ
メッセージ
SOAPメッセージ
XMLデータ
Receipt
開始側MSH応答側MSH業務
システム
業務
システム
異常
重複破棄
制御
Receipt
ユーザ
メッセージXMLデータXMLデータ
III - 10
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
3.5.3. 順序保証
複数のXMLデータが関連を持っている場合、XMLデータの順番が入れ替わってしまうと業務に支障
が出てしまう。
これを避けるため、図 3-7に示すように、MSH間でメッセージを送信する際にシーケンス番号
を付与し、応答側MSHがXMLデータを、シーケンス番号順に業務システムに渡すことで順序を保証す
る。
図 3-7 順序保証のフローの例
ユーザ
メッセージ1SOAPメッセージ
XMLデータ
Receipt
開始側MSH応答側MSH業務
システム
業務
システム
異常
順序保証
制御
Receipt
ReceiptXMLデータ1XML
データ2XML
データ1XML
データ2ユーザ
メッセージ1ユーザ
メッセージ2 III - 11
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
4. パッケージング
メッセージは、トランスポート層から独立したSOAPメッセージとして、図 4-1に示すように
パッケージ化される。パッケージングの仕様はebMS 3.0に準拠する。アンパッケージングの仕様は
ebMS 2.0に準拠する。
図 4-1 ユーザメッセージ(左)とシグナルメッセージ(右)の構造
トランスポートエンベロープ(HTTP)
アタッチメント付きSOAPエンベロープ
MIMEパート
SOAP:Envelope(MIMEタイプ:maltipart/related)
SOAP:Header
eb:Message
SOAPボディ
Payload(s)
eb:UserMessage
eb:MessageInfo
eb:PartyInfo
eb:CollaborationInfo
eb:MessageProfiles
eb:PayloaInfo
wss:Security
wsr:Reliabillity/wsrm:ReliableMessaging
MIMEパート
MIMEヘッダー:::HTTPヘッダー
MIMEヘッダー
Payload(s)
トランスポートエンベロープ(HTTP)
アタッチメント付きSOAPエンベロープ
MIMEパート
SOAP:Envelope(MIMEタイプ:maltipart/related)
SOAP:Header
eb:Message
SOAPボディ
Payload(s)
eb:SignalMessage
eb:MessageInfo
wss:Security
wsr:Reliabillity/wsrm:ReliableMessaging:HTTPヘッダー
MIMEヘッダー
eb:PullRequestoreb:Receiptoreb:Error
SOAPメッセージ
ebMSヘッダー
HTTPヘッダー
MIMEヘッダー
SOAPヘッダー(セキュリティ)
SOAPヘッダー(信頼性)
III - 12
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
4.1. HTTPヘッダー
HTTPヘッダーの仕様は、RFC2616およびRFC2387に準拠する。本標準のHTTPヘッダーの仕様を表
4-1に示す。
表 4-1 HTTPヘッダー
要素 説明
POST 企業間で取り決めたURLを設定する。
Content-Length
Host RFC2616に従って設定する。
SOAPAction "ebXML"(固定)を設定する。
Content-type ユーザメッセージの場合、MIMEパートのPayloadにXMLデータが格納されるた
め、"multipart/related;"となる。その他属性は以下の通りとする。
boundary Playloadの区切り文字列。任意文字
type "text/xml"(固定)を設定する。
start RFC2387に従い、SOAPエンベロープの存在するパート
のContent-IDを設定する。
4.2. MIMEヘッダー
MIMEヘッダーの仕様はRFC2045に準拠する。本標準のMIMEヘッダーの仕様を表 4-2に示す。
表 4-2 MIMEヘッダー
要素 説明
Content-ID RFC2045に従い、メッセージの全パート間で一意な文字列を設定する。
Content-type Payloadに格納するXMLデータや添付ファイルの形式にあったMIME Media
Typeを設定する。一例を以下に示す。
本書BD application/xml
Zipアーカイブ application/zip
Excelファイル application/vnd.ms-excel
JPEG画像 image/jpeg
PDFファイル application/pdf
その他 application/octet-stream
III - 13
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
4.3. ebMSヘッダー
本標準のebMSヘッダーの仕様を表 4-3に示す。
表 4-3 ebMSヘッダー
タグ/属性 説明
eb:Message -
@eb:version ebMS 3.0を利用する際は"3.0"(固定)とする
eb:UserMessage -
eb:MessageInfo -
eb:Timestamp メッセージ時刻
eb:MessageId メッセージを一意に識別するための識別子。
MSHによって自動的に生成され、アプリケーションからは制御で
きない。
eb:PartyInfo -
eb:From tp:PartyInfoおよびtp:PartyIdを設定する。
eb:PartyId (注記)
@type ebCPPA v2.1仕様に準拠
@Role ebCPPA v2.1仕様およびebBPSS v2.0仕様に準拠
eb:To eb:Fromを参照方。
eb:PartyId eb:Fromを参照方。
@type eb:Fromを参照方。
@Role eb:Fromを参照方。
eb:CollaborationInfo ―
eb:AgreementRef メッセージ搬送に適用するCPA識別子(CPAID)
eb:Service サービス名。
ebBPSSで使用される値と同一である必要がある。
eb:Action サービス内で処理を特定するアクションを表す。
ユーザメッセージの場合、値はグローバルビジネス・アクション
・コードである必要がある。
ebBPSSの受信シグナルと受領シグナルの場合は、ebBPSS仕様に従
う。
eb:ConversationId 一連のメッセージを識別するための識別子。
BPSS-Ackの場合は、BPSS-Ack対象となるメッセージで設定されて
いる値を引継ぐ。
eb:PayloadInfo メッセージに関連しているペイロードデータを特定する。
eb:PartInfo -
@href サービス内容部を指す。
eb:Schema XMLデータのスキーマを識別するURN。
(注記) eb:UserMessage/eb:PartyInfo/eb:Fromおよびeb:Toで指定するeb:PartyIdは、本来ISO6523に準
拠しDUNSもしくはGLNを指定する必要があるが、本標準では、標準企業コードを指定するものと
する。
ebMS 3.0では、拡張要素eb:MessageによってSOAPメッセージが拡張される。ebMS 3.0のSOAPエン
ベロープ拡張に対する名前空間宣言(擬似属性xmlns)として、以下の値が必須となる。
http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-3_0.xsd
安全性ヘッダー(wss:Security)や信頼性ヘッダー(wsr:Reliabillity)については、ebXMLとは異
なる国際標準規格であるため、ebXML名前空間下にはない。
III - 14
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
4.4. SOAPヘッダー
クライアントtoサーバ方式(Pull型)を採用した場合、ベーシック認証(ユーザID/パスワード)に
利用するSOAPヘッダーの情報を表 4-4に示す。
表 4-4 SOAPヘッダー(セキュリティ)
タグ/属性 説明
wsse:Security ベーシック認証用情報を設定する。
wsse:UsernameToken ユーザIDとパスワード情報
wsse:Username 認証用ユーザID
wsse:Password 認証用パスワード
SOAPヘッダーの信頼性関連の情報を表 4-5に示す。
表 4-5 SOAPヘッダー(信頼性)
タグ/属性 説明
Wsrm:Request ReliabilityMessageを行うための必要情報を設定する
wsrm:MessageId メッセージID
@groupId XMLデータを一意に識別するID属性
wsrm:ExpiryTime メッセージ有効期限
wsrm:ReplyPattern リプライパターン
wsrm:Value リプライパターン値
wsrm:AckRewuested MSH Ackの利用有無
wsrm:AckSignatureRequested MSH Ackへの電子署名の要否
wsrm:DuplicateElimination 重複削除要否
wsrm:MessageOrder 順序保証要否
III - 15
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
ebXMLのSOAPメッセージの例を図 4-2に示す。
<SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope"
xmlns:xsi="http://www.w3.org/2001/XMLschema-instance" ・・・>
<SOAP:Header
xmlns:eb="http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-3_0.xsd"
xsi:schemaLocation="http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-3_0.xsd"><eb:Message
eb:version="3.0"
SOAP:mustUnderstand="1"><eb:UserMessage>
<eb:MessageInfo>
<eb:timestamp>・・・</eb:timestamp>
<eb:MessageID>・・・</eb:MessageID>
<eb:RefToMessageID>・・・</eb: RefToMessageID >
</eb:UserMessage>
<eb:PartyInfo>
<eb:From>
<eb:PartyId>・・・</eb:PartyId>
<eb:Role>・・・</eb:Role>
</eb:From>
<eb:To>
<eb:PartyId>・・・</eb:PartyId>
<eb:Role>・・・</eb:Role>
</eb:To>
</eb:PartyInfo>:</eb:UserMessage>:</eb:Message>
</SOAP:Header>
<SOAP:Body
xmlns:eb="http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-3_0.xsd"
xsi:schemaLocation="http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-3_0.xsd">:
</SOAP:Body>
</SOAP:Envelope>
図 4-2 ebXMLのSOAPメッセージ例
III - 16
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
5. XMLデータ
5.1. XMLデータの構造
本標準は、UN/CEFACTが提供しているSBDHの仕様を採用する。図 5-1に示すように、SBDヘッ
ダー、SBDボディ、SBDデータで構成される。XMLデータは、SOAPエンベロープのSOAPボディ内に格
納される。
図 5-1 SOAPメッセージにおけるXMLデータの構造
トランスポートエンベロープ(HTTP)
アタッチメント付きSOAPエンベロープ
MIMEパート
SOAP:Envelope(MIMEタイプ:maltipart/related)
SOAP:Header
eb:Message
SOAPボディ
Payload(s)
eb:UserMessage
eb:MessageInfo
eb:PartyInfo
eb:CollaborationInfo
eb:MessageProfiles
eb:PayloaInfo
wss:Security
wsr:Reliabillity/wsrm:ReliableMessaging::
HTTPヘッダー
MIMEヘッダー
MIMEパート
MIMEヘッダー:Payload(s)
MIMEパート
MIMEヘッダー:Payload(s) 添付ファイル2
sh:StandardBusinessDocument
sh:StandardBusinessDocumentHeader
StandardBusinessDocumentBody
StandardBusinessDocumentData
共通部
明細部
明細部:XMLデータ
SBDヘッダー
SBDボディ
SBDデータ
添付ファイル1
III - 17
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
(1)SBDヘッダー
SBDHの仕様に準拠したメッセージ送受信に必要な情報を、XML形式で記述する。メッセージ
搬送レベル(ebMS)の情報を組み立てるために必要な情報を記述する。(図 5-1のSBDヘッダー)(2)SBDボディ
取引データ以外の業務システム用の付加情報等をXML形式で記述する。SBDデータの整合性や
システムメッセージ等を記述する。(図 5-1のSBDボディ)
(3)SBDデータ
SDBボディの下位要素になり、取引データをXML形式で記述する。(図 5-1のSBDデータ)
5.2. SBDヘッダー
XMLデータの送信先等のメッセージ・ルーティング情報は、SBDヘッダーに記述する。表 5-1
にSBDヘッダーを示す。省略されているタグ/属性に関してはUN/CEFACTが提供しているSBDHの仕様
を参照すること。
表 5-1 SBDヘッダー
タグ/属性
出現
頻度
名称 説明
sh:StandardBusinessDocument 1..1 - SBDのルート要素
sh:StandardBusinessDocumentHeader 0..1 - SBDヘッダーのルート要素
sh:HeaderVersion 1..1 SBDHバージョン
sh:Sender 1..* - 送信者情報
sh:Identifier 1..1 ID 送信者ID
sh:Authority 0..1 発行元。
sh:ContactInformation 0..* -
sh:Contact 0..1 連絡担当者 送信側の連絡担当者名
sh:EmailAddress 0..1 e-mailアドレス 送信側のe-mailアドレス
sh:FaxNumber 0..1 FAX番号 送信側のFAX番号
sh:TelephoneNumber 0..1 電話番号 送信側の電話番号
sh:ContactTypeIdentifier 0..1 IDの権限 送信側のID権限
sh:Receiver 1..* - 受信者情報
sh:Identifier 1..1 ID 受信者ID
sh:Authority 0..1 発行元。
sh:ContactInformation 0..*
sh:Contact 0..1 連絡担当者 受信側の連絡担当者名
sh:EmailAddress 0..1 e-mailアドレス 受信側のe-mailアドレス
sh:FaxNumber 0..1 FAX番号 受信側のFAX場号
sh:TelephoneNumber 0..1 電話番号 受信側の電話番号
sh:ContactTypeIdentifier 0..1 IDの権限 受信側のID権限
sh:DocumentIdentification 1..1 -
sh:Starndard 1..1 標準名
sh:TypeVersion 1..1
sh:InstanceIdentifier 1..1
sh:Type 1..1
sh:MultipleType 0..1
sh:CreationDataAndTime 1..1
sh:Mainfest 0..1 - マニフェスト
sh:NumberOfItems 1..1
sh:Manifesttem 1..*
sh:MineTypeQualifierCode 1..1
sh:UniformResourceIdentifier 1..1
III - 18
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
タグ/属性
出現
頻度
名称 説明
sh:Description 0..1
sh:LanguageCode 0..1 言語コード
sh:BusinessScope 0..1 - (拡張処理用)
StandardBusinessDocumentBody:1..1
SBDボディを格納する。
SBDヘッダーは、ebMSヘッダーと独立して保持する。また、ebMSヘッダーの情報と類似ヘッダー
の情報に矛盾が生じる場合は、ebMSヘッダーの情報が優先されるものとする。
5.3. SBDボディ
SBDボディは、表 5-2に示すとおり、1つのSBDデータを包含するものとする。SBDボディのタ
グ/属性は、SBDデータに格納するデータを、Key/Valueストア形式で設定する。
表 5-2 SBDボディ
タグ/属性
出現
頻度
名称 説明
StandardBusinessDocumentBody 1..1 SBDボディのルート要素
entityIdentification 0..1
Identification 1..1 ID SBDボディの通し番号
systemInfo 0..* SBDデータのシステム情報
@type 1..1 情報種別 キー
key 1..1 キー キー値
value 1..1 値 キーに対する値
StandardBusinessDocumentData:1..1 SBDデータを格納する
5.4. SBDデータ
SBDデータには、「VI.ビジネスドキュメント編」に定義している個々のビジネスドキュメント
を、具体的にデータ化した内容が含まれる。SBDデータを表 5-3に示す。
表 5-3 SBDデータ
タグ/属性
出現
頻度
名称 説明
StandardBusinessDocumentData 1..1 ルート SBDデータのルートタグ
"JP"+データ項目ID 1..* データ項目 SBDデータのデータタグ
Mn 0..* 明細部 SBDデータの明細部タグ
ITEM 1..1 明細部行 1明細を表す区切りタグ
"JP"+データ項目ID 1..* データ項目 明細部のデータタグ
III - 19
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
5.5. XMLデータで使用する文字
5.5.1. 文字コード符号化形式
XMLはテキストデータであるが、様々な文字コードを使用すると受け取ったシステムに取込むた
めに文字コード変換処理が必要となる。データ交換によって文字化けなどの問題や非効率な処理を
排除するため、本標準ではXMLのデフォルトエンコードである「UTF-8」に統一する。UTF-8の指定
例を図 5-2に示す。
<?xml version="1.0" encode="UTF-8"?>
<SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope"
xmlns:xsi="http://www.w3.org/2001/XMLschema-instance" ・・・>:図 5-2 UTF-8エンコード指定例
5.5.2. 文字セット
データ交換によって文字化けなどの問題や非効率な処理を排除するため、本標準で利用可能な文
字セットは、表 5-4に示すものを使用する。
表 5-4 利用可能な文字セット
JIS規格 利用可否
JIS X 0201(英数字) しろまる
JIS X 0208(第一、第二水準漢字) しろまる
JIS X 0212(補助漢字) ×ばつ
JIS X 0213(第三、第四水準漢字) ×ばつ
5.6. 添付ファイルの扱い
カタログや図面などの補足情報のファイルを、メッセージに添付できるものとする。これらの添
付ファイルは、SOAPメッセージ内のMIMEパートに格納される。SOAPメッセージと添付ファイルの関
係は図 5-1を参照すること。
5.6.1. 添付ファイル名
SOAPメッセージに格納された添付ファイルのファイル名は保証されるものとする。
5.6.2. 添付ファイル数
図 5-1に示すとおり、MIMEパートを複数格納することで、複数のファイルを添付することがで
きるものとする。
III - 20
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
5.7. データ形式の変換
通常の場合、図 5-3に示すように、業務システムで利用しているデータ形式からXML形式に変
換(その逆も含む)する必要性がある。
図 5-3 サーバtoサーバ方式(Push型)の変換処理インタ|ネット《取引先》
《DMZ》EDIサーバ
業務
システム
《電力会社》
《DMZ》
《Strage》
業務システム
のデータ形式
変換
処理EDIサーバ
変換
処理
《Strage》
業務システム
のデータ形式
業務
システム
:XML形式
:業務システム形式
III - 21
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
6. XMLデータの検証
6.1. XML schemaによるXMLデータの検証
本標準では、XML形式を採用するため、W3Cで策定されているXML schemaを提供する。XML schema
はX、MLデータの構造を定義するスキーマ言語である。これを使用することで、XMLデータに出現す
る要素や属性、その順序などを検証することが可能となる。検証可能な項目を表 6-1に示す。
表 6-1 XML schemaで検証可能な検証項目
検証項目 検証例
データ構造 タグ名称 <BDS103111>が正しいところ、<BDS103211>になっていた。
必須要素 <12345>は必須項目だが、XMLデータ内になかった。
不要要素 定義されていないタグが含まれていた。
繰り返し <00001>は繰り返し不可として定義されているが、複数定義
されていた。
要素出現順序 <M1>→<M2>の順番が、<M2>→<M1>のようになっている。
データ属性 許可文字 数字のみに限定されたデータ項目に、英字が混在された。
サイズ・桁数 8桁の数字で記述するよう定義されているが、6桁の値が定
義されていた。
範囲 整数値をとるよう定義されているが、負の値が定義されて
いた。
共通コード 未定義コード 定義されていないコード値を使用している。
本標準で利用するXML schemaの検証項目を表 6-2に示す。
表 6-2 本標準で利用するXML schemaの検証項目
検証項目 利用の有無 説明
データ構造 タグ名称 しろまる データ項目IDが正しいか検証する。
必須要素 しろまる 必須要素が不足していないか検証する。
不要要素 ×ばつ
繰り返し ×ばつ
要素出現順序 ×ばつ
データ属性 許可文字 ×ばつ
サイズ・桁数 しろまる データ項目サイズを検証する。
範囲 ×ばつ
共通コード 未定義コード
しろまる
未定義コードが利用されていないか検証
する。
III - 22
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
XML schema、XMLデータおよび業務システムの関係を図 6-1に示す。SOAPメッセージの記載は
省略している。
図 6-1 XML schema関係概略図
6.2. XML schemaの設計規則
表 6-3に示すXML schemaの設計規則(Naming & Design Rule : 以下NDR)に従い、XML
schemaを作成する。
表 6-3 XML schemaの設計規則(W3C勧告)
規則 URL
XML 1.0 http://www.w3.org/TR/REC-xml
XML schema Part0:Primer http://www.w3.org/TR/xmlschema-0/
XML schema Part1:Structures http://www.w3.org/TR/xmlschema-1/
XML schema Part2:DataTypes http://www.w3.org/TR/xmlschema-2/
6.3. XML schemaの名前空間
名前空間は図 6-2の規則に従い指定するものとする。
http://www.fepc.or.jp/schemas/BDID_majorVersion_minorVersion
(注記)BDID :ビジネスドキュメント(BD)のID
(注記)majorVersion:メジャーバージョンの番号
(注記)minorVersion:マイナーバージョンの番号
例)http://www.fepc.or.jp/schemas/BDS103111_3A_Z001
図 6-2 XML schema名前空間規則
《Strage》
データ
ベース
《XML Parser》
XML構文解析
《XMLデータ》
見積依頼情報
BDS103111
《XML schema》
見積依頼
BDS103111
《XML schema》
見積
BDS1BA2
《XMLデータ》
見積情報
BDS1BA2
《System》
業務システム
(例:見積管理)
《Translater》
データ形式変換
III - 23
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
6.4. XML schemaの構造
XML schemaの構造を図 6-3に示す。XMLデータの構造と密接に関わるため、5.1を併せて参
照すること。
図 6-3 XML schemaの構造
6.5. XML schemaによるデータ項目の定義例
6.5.1. 属性の定義例
本標準に使用される属性に対応するXML schemaの定義例を表 6-4に示す。
表 6-4 データ項目の定義例
型名 属性 定義例
半角文字 X(n)
n:文字数
<xsd:restriction base="xsd:string">
<xsd:minLength value="0"/>
<xsd:maxLength value="n"/>
</xsd:restriction>
全角文字 K(n)
n:文字数
<xsd:restriction base="xsd:string">
<xsd:minLength value="0"/>
<xsd:maxLength value="n"/>
</xsd:restriction>
整数 9(n)
n:桁数
<xsd:restriction base="xsd:nonNegativeInteger">
<xsd:totalDigits value="n"/>
</xsd:restriction>
《XML schema》
《外部定義》
SBDH定義
《外部定義》
コード定義
《外部定義》
データ型定義
宣言部
ルート部
全体部
SBDヘッダー
《BPSS》
データ型定義
《CPA》
SBDデータ
提供 将来提供検討
III - 24
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
型名 属性 定義例
符号付き整数 N9(n)
n:桁数
<xsd:restriction base="xsd:integer">
<xsd:totalDigits value="n"/>
</xsd:restriction>
小数点付き実数9(n)V(m)
n:整数部桁数
m:小数部桁数
<xsd:restriction base="xsd:decimal">
<xsd:minInclusive value="0"/>
<xsd:maxInclusive value="n個の9.m個の9"/>
<xsd:fractionDigits value="m"/>
</xsd:restriction>
符号、小数点
付き実数
N9(n)V(m)
n:整数部桁数
m:小数部桁数
<xsd:restriction base="xsd:decimal">
<xsd:minInclusive value="0"/>
<xsd:maxInclusive value="n個の9.m個の9"/>
<xsd:fractionDigits value="m"/>
</xsd:restriction>
共通コード X(n)
n:文字数
<xsd:restriction base="xsd:String">
<xsd:length value="3"/>
<xsd:enumeration value="001"/>
<xsd:enumeration value="002"/>
<xsd:enumeration value="003"/>
</xsd:restriction>
6.5.2. 出現回数の定義例
XMLデータにおけるデータ項目の出現回数と、XML schemaの定義例を表 6-5に示す。
表 6-5 データ項目の出現回数の定義例
出現回数 定義例
0 minOccurs=0、maxOccurs=0
1 minOccurs=1、maxOccurs=1 または省略
0 または 1 minOccurs=0、maxOccurs=1
0 〜 n (n≧0) minOccurs=0、maxOccurs=n
m 〜 n (n≧m) minOccurs=1、maxOccurs=n
unbounded 出現回数が無制限の場合。
III - 25
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
6.6. XML schemaのバージョン管理
ebXMLを策定したUN/CEFACTでは、XML schemaを利用する場合のバージョン管理を、メジャーバー
ジョンとマイナーバージョンで管理するように定めており、本標準もこれに準拠する。
6.6.1. XML schemaのファイル名
XML schemaのファイル名の付与規則を図 6-4に示す。
[BDID]+"_"+[majorVersion]+"_"+[minorVersion]
(注記)BDID :ビジネスドキュメント(BD)のID
(注記)majorVersion:メジャーバージョンの番号
(注記)minorVersion:マイナーバージョンの番号
例)BDS103111_3A_0000001
図 6-4 XML schemaのファイル名の付与規則
変更内容とバージョンアップの関係を表 6-6に示す。
表 6-6 変更内容とバージョンの関係
変更内容
標準書 XML schema セット
メジャー マイナー メジャー マイナーデ|タ項目共通部 必須+キー 項目追加 しろまる しろまる
項目削除 しろまる しろまる
属性変更 しろまる しろまる
共通コード変更 しろまる しろまる
必須 項目追加 しろまる しろまる
項目削除 しろまる しろまる
属性変更 しろまる しろまる
共通コード変更 しろまる しろまる
任意 項目追加 しろまる しろまる
項目削除 しろまる しろまる
属性変更 しろまる しろまる
共通コード変更 しろまる しろまる
明細部 必須 項目追加 しろまる しろまる
項目削除 しろまる しろまる
属性変更 しろまる しろまる
共通コード変更 しろまる しろまる
任意 項目追加 しろまる しろまる
項目削除 しろまる しろまる
属性変更 しろまる しろまる
共通コード変更 しろまる しろまる
ビジネスドキュメント BD 追加 しろまる しろまる
BD 削除 しろまる しろまる
ビジネスモデル 追加 しろまる (しろまる)
変更 しろまる (しろまる)
削除 しろまる (しろまる)
ebMS 仕様 変更 しろまる (しろまる)
()は必要に応じて更新する
III - 26
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
6.6.2. XML schemaの管理ディレクトリ名
2つ以上のバージョンのXML schema (XML schemaセット)を運用する場合、XML schemaを保存する
ディレクトリ名にメジャーバージョンとマイナーバージョンを含むものとする。
7. セキュリティの向上
7.1. 情報セキュリティの三要件
情報システムの安全性と信頼性を確保する3つの要素を以下に示す。
(1)機密性
正当な権利を持っている人以外に情報を開示しないこと
(2)完全性
実際の取引とシステム上のデータの相違がないこと。
(3)可用性
運用設定した時間帯において、システムが正常に稼働し利用できること。
7.2. セキュリティ対策
上記を踏まえ、主なセキュリティ対策を以下に示す。
7.2.1. 不正アクセス防止対策
ファイアウォールなどを導入することで、第三者による不正なアクセスを遮断する。
7.2.2. 盗聴対策
信頼のできる第三者の認証機関が発行したデジタル証明書(サーバ証明書)を使用し、SSL/TLS
によってメッセージを暗号化することで、第三者による通信途中のメッセージの盗聴を防止する。
7.2.3. なりすまし策
信頼のできる第三者の認証機関が発行したデジタル証明書(サーバ証明書、クライアント証明
書)を使用し、SSL/TLSによって相互認証を利用することにより、双方のなりすましを防止する。
7.2.4. 改ざん対策
必要によりデータの改ざん対策を検討する。メッセージに添付したデジタル署名に、XMLデータ
のハッシュ値を含めることで、XMLデータの改ざんを検知することができる。またメッセージ内の
エンベロープ、XMLデータ、XMLデータ内データ項目等の各レベルにおいて署名することも有効であ
る。
7.2.5. ログの管理
システムで採取する各種ログは、システムのエラー予測や検知、および重要な情報の漏洩や改ざ
んの検知や追跡が可能となるように取得する必要がある。取得するログは、関連する社内外システ
ムを全て含めるのが望ましい。
III - 27
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
8. EDI取引に関する技術的な合意
取引当事者間で合意すべき、業務システム処理に必要な技術的な内容について以下に述べる。
8.1. メッセージ搬送の技術仕様の合意
信頼性通信の実施要否やリトライ回数、リトライ間隔などメッセージ搬送に必要な情報を取引当
事者間で合意する。合意すべき技術仕様を表 8-1に、技術仕様の適用の流れを図 8-1に示す。
表 8-1 メッセージ搬送の技術仕様の一覧
分類 項目 説明
共通 CPAID 当事者間で合意された名前空間内で一意な値
送受信分類 送信/受信のいずれかを指定
有効期限(自) 定義の有効開始期限
有効期限(至) 定義の有効終了期限
通信情報 転送プロトコル トランスポート層で使用する通信プロトコルを指定
適用セキュリティプロトコル 通信プロトコルで使用するセキュリティプロトコルを指定
ebMSメッセージ保存期間 ebMS層でのメッセージ保存期間
送信側 送信側ID メッセージ送信側を識別するためのID
送信側PartyId 当事者間で相互に合意されたURI
SSLクライアント認証要否 SSLクライアント認証の要否
信頼性通信 信頼性通信の要否
重複削除 重複除去の要否
非同期通信 非同期通信の要否
リトライ回数 エラー発生時のリトライ回数
リトライ間隔 リトライ処理を実施する間隔
順番保証要否 順番保証制御の要否
暗号化要否 暗号化の要否
受信側 受信側ID メッセージ受信側を識別するためのID
受信側PartyId 当事者間で相互に合意されたURI
SSLサーバ認証 SSLクライアント認証の要否
信頼性通信 信頼性通信の要否
重複削除 重複除去の要否
非同期通信 非同期通信の要否
リトライ回数 エラー発生時のリトライ回数
リトライ間隔 リトライ処理を実施する間隔
順番保証要否 順番保証制御の要否
暗号化要否 暗号化の要否
図 8-1 技術仕様の適用の流れ
《取引先》MSH業務アプリケーション
インターネット
《電力会社》MSH業務アプリケーション
技術仕様
定義表XMLschema反映
《取引先》
プロファイル反映
《電力会社》
プロファイル
技術仕様
定義表
III - 28
Copyright © The Federation Of Electric Power Companies All Rights Reserved.
8.2. XMLデータの保存期間
業務システムに保存するXMLデータの保存期間について、取引当事者間で取り決める。表 8-2
に示す状態を考慮する。合意した保存期間内に、業務システムからXMLデータの再送要求を受けた
場合、要求先に当該XMLデータを再送する。
表 8-2 保存するXMLデータの状態
状態 説明
配送済み 相手に配送されたことが確認されたXMLデータ。再送要求に応えるため保存する。
未配送 相手に配送が確認できていないXMLデータ。
8.3. 業務システムに関するエラー内容などの通知
エラー通知コードの規定や、XMLデータの検証でエラーとなった場合に、エラーのXMLデータを削
除するといった対応など、エラー発生時の通知方法や対応内容について、取引当事者間で取り決め
る。
例えば、正常時にはXMLデータ(取引受領確認)により受信側の業務システムは送信側の業務シ
ステムに対してXMLデータを正しく受領した旨を通知し、エラー発生時には、エラー内容と対応内
容を通知する。そのために、XMLデータ(取引受領確認)の内容を、取引当事者間で取り決める。
正常時のXMLデータ(取引受領確認)の流れの例を図 8-2に示す。
図 8-2 正常時のXMLデータ(取引受領確認)の流れの例
ユーザ
メッセージ
SOAPメッセージ
XMLデータ
XMLデータ
シグナル
メッセージ
開始側MSH応答側MSH業務
システム
業務
システム
XMLデータ
ユーザ
メッセージ
シグナル
メッセージ
XMLデータ(取引受領確認)
XMLデータ
(取引受領確認)
XMLデータ
(取引受領確認)

AltStyle によって変換されたページ (->オリジナル) /