wiki:MSDL-CBML_BML

BML Processing

Order/Report transaction formats

Two BML Order/Report formats are being supported:

IBML upper level structure with IBML elements as was used for MSG-048 experiments. This will be referred to as IBML09.
IBML upper level structure with C_BML Light elements referred to as C_BML or CBML.

The following transactions are supported

	bml:OrderPush           IBML Order with CBML components
	bml:OrderPushIBML       IBML Order compatible with MSG-048 2009 demo
	bml:BMLREPORTS          A set of CBML Reports
	bml:BmlReports          A set of IBML Reports


Note: The apparently inconsistent tag names for the two different report formats are a result of development efforts separated by several years and the attempt to minimize the number of changes requested of clients.

Two reports are supported GeneralStatusReport and PositionStatusReport.

The above transactions are described by IBML schemas and CBML schemas.

Notes:

The IBML09 schema contains three forms of RouteWhere, Along, Towards, and From-Via-To. It appears that only Along was implemented in the scripting used in the 2009 exercises in Manassas. If anyone plans on using the other RouteWhere forms please contact GMU.

Translation

Because participating systems are currently using both BML formats, conversion between them is being performed automatically by the SBML server. Transactions (Orders or Reports) received in one format will be published as received and will also be internally translated to the other format and published in that form.

Publish/Subscribe

The publish/subscribe service provided by the SBML Server is the primary method for receiving notifications of the existence of new orders and reports. Notification is immediate. Once the transaction has been received and processed by the SBML server it will be published on all applicable topics.

The SBML Server matches a set of XPath statements against all transactions that were successfully processed. The current set of XPath statements and corresponding topic names is found is the msgSelectors.xml file.

The following Pub/Sub topics will be supported

	IBML_Order
	CBML_Order
	IBML_Report
	CBML_Report

In accordance with the translation being performed that all IBML 2009 Order’s received will produce a publication of that order in its original form on the IBML_Order top and will be translated and published on the CBML_Order topic. This also applies to C_BML orders, IBML 2009 reports and IBML orders.