100 likes | 200 Vues
The Architecture Working Group explores challenges with message type expression in FpML documents, seeking solutions for compatibility and ease of processing within WebServices modeling. The voting process, WSDL issues, and proposed options are discussed in detail for decision-making. Updates to rules of operation and related work implications are also addressed. It concludes with considerations for implementing new features in version 5.0.
E N D
Architecture Working Group Andrew Jacobs
Introduction • The AWG has been examining two separate but related issues: • Having the root node express the message type would make messaging easier to understand and the documents easier to process • e.g. <requestTradeConfirmation/> • Using type substitution on the FpML element is incompatible with WSDL based WebServices
Modelling Issues • Many XML design tools don’t show types that can be substituted • Looking at the FpML element shows an empty element • Have to find message types in a long list of complex types • XML binding tools have poor support type substitution • XML parsing and XSLT processors are fine • Note however: • Type substitution is currently also used in FpML for block trade identifiers. • It is used by a number of firms to introduce extended types into FpML documents
The WSDL Problem • WSDL interfaces are defined in terms of elements • Type substitution within the element is not allowed • The W3C were queried and did not support a change to the WSDL specification to allow it.
First Vote • Changing the root element was first voted on in January along with 3 other issues • Fewer options where considered than latest round • Some uncertainty around the options • Voting was tied • It was decided to look at the problem again, see what some other standards do, and re-vote • Brian Lynn asked to produce a paper
WSDL - A Red Herring? • WSDL documents can contain their own schema definitions to create elements from imported types • Elements for method parameters can be created within the WSDL as needed. • e.g <xsd:element name=“someParam” type=“FpML:RequestTradeConfirmation”> • Using FpML types in WSDL interfaces ties it to a single specific version • Service providers would want probably support several versions simultaneously • Possibly ‘string’ based to allow any XML to be passed
(A) No change <FpML xsi:type=“messageType”> (B) New wrapper element containing FpML <messageType> <FpML>…</FpML></messageType> (C) Substitution group with FpML <FpML …> <messageType>…</messageType></FpML> (D) Message type as a value field <FpML> <transactionType>messageType </transactionType> …</FpML> (E) Root element name indicates message type <messageType version=“5.0”> …</messageType> Expanded Set of Options
May Voting – 7 to 3 DTCC vote received after cut-off.
Modifications to Rules of Operation • Currently doesn’t allow a change to: • The root element, or • FpML version attributes • Both need to changed • To allow multiple root elements • Make version attribute more FpML specific • e.g. fpmlVersion • Requires Standards committee approval.
Related Work • Changes will require updates to: • Architecture specification • Messaging specification • Schemas • Examples & test cases • Other 5.0 features are scheduled for the summer but implementation may take longer • Delay 5.0 or release later as 6.0? • Can’t be 5.1 as changes are not backwards compatible