Presentation is loading. Please wait.

Presentation is loading. Please wait.

IFX V ERSION 2.0 Building upon the Service Oriented foundation of IFX v1.

Similar presentations


Presentation on theme: "IFX V ERSION 2.0 Building upon the Service Oriented foundation of IFX v1."— Presentation transcript:

1 IFX V ERSION 2.0 Building upon the Service Oriented foundation of IFX v1

2 A NNOUNCING V 2.0 A ! Version 2 continues our commitment... To a business-first approach a Business Message Specification, driven by business use-cases independent of specific technologies To a service oriented approach from business services to SOA, from stateless to REST Of cooperation with other standards setting organizations v.2 addresses shortcomings of v1 that can only be addressed by breaking backwards compatibility A decade of evolution A decade of learning A decade of implementation experience IFX Forum will continue to support v1.x.

3 P UBLIC C OMMENT PERIOD v2.0a is available now for public comment Because IFX is committed to a long-term policy of backward compatibility in a major release, we reserve the privilege to correct errors discovered during this comment period. We will formally conclude the public comment period within 3 – 6 months. Go to and pull down the IFX Standard menuwww.ifxforum.org

4 I NTRODUCING... Specification Repository What it is How it can be accessed It’s value to IFX members It’s value to non-members – subscription access Specification Details Key Concepts, Rationale, Comparisons Objects, Messages, Services - generally Customer, Party, Account – specifically Interfaces, Operations - conceptually Object oriented documentation Object-centric approach Abstract Aggregates Aggregate Extensions

5 IFX BMS R EPOSITORY Key Concepts IFX is a documented standard, not a documentIFX is a documented standard, not a document Generates consistent contentGenerates consistent content Enforces data integrityEnforces data integrityRationale Improve navigationImprove navigation Improve integrityImprove integrity Generate schema and documentation.Generate schema and documentation. v1.x v2.x Tomorrow Demo of db UIDemo of db UI Demo of Schema generationDemo of Schema generation A 900+ page MS-Word document… A fully interactive database repository Generate HTML hyper- linked specification Generate XML schema Support various queries A fully interactive database repository Generate HTML hyper- linked specification Generate XML schema Support various queries

6 T HE IFX S TANDARD R EPOSITORY The original concept The current state

7 O BJECTS - S TRUCTURE Key Concepts Consistent structureConsistent structure Distinguish manageable attributes from read-onlyDistinguish manageable attributes from read-onlyRationale IFX Objects have a state and set of data attributes that can be maintained without sending the entire object over the wireIFX Objects have a state and set of data attributes that can be maintained without sending the entire object over the wire Tomorrow The specifics of the IFX Object patternThe specifics of the IFX Object pattern Conceptually consistent, but not structurally consistent Modifications are whole record replacements IFX defined inquiry capabilities Conceptually consistent, but not structurally consistent Modifications are whole record replacements IFX defined inquiry capabilities Structurally consistent Modify only those attributes necessary More robust inquiry Privacy protection Structurally consistent Modify only those attributes necessary More robust inquiry Privacy protection v1.x v2.x

8 O BJECTS – L IGHTEN U P ! Key Concepts Lightweight inquiryLightweight inquiry Lightweight maintenanceLightweight maintenance IFXPath is a scope-limited definition of the W3C XPATH typeIFXPath is a scope-limited definition of the W3C XPATH type Rationale Support a mechanism to refer to one or more fields or aggregates in a message or objectSupport a mechanism to refer to one or more fields or aggregates in a message or object Add flexibility to Selection criteria in InquiriesAdd flexibility to Selection criteria in Inquiries Enrich information about error conditionsEnrich information about error conditions Protect data privacyProtect data privacy Tomorrow IFXPath examplesIFXPath examples In Mod, Inq and ResponsesIn Mod, Inq and Responses Full record replacement IFX defines which fields are available for selection Full records returned from AddRq, ModRq, InqRq Full record replacement IFX defines which fields are available for selection Full records returned from AddRq, ModRq, InqRq Client can specify which data is returned from server v1.x v2.x

9 O BJECTS - R EFERENCING Key Concepts objRef is a standard elementobjRef is a standard element Object IDs are consistent data typesObject IDs are consistent data typesRationale Support multiple ways to reference objects including business keysSupport multiple ways to reference objects including business keys Tomorrow More about IdentMore about Ident Much more about RefMuch more about Ref Only way to reference to an object is by its ID Some IDs are aggregate structures Only way to reference to an object is by its ID Some IDs are aggregate structures Objects have IDs, Idents and Refs Ident is an aggregate structure generally used to hold business keys Object Refs resolve to a single object Objects have IDs, Idents and Refs Ident is an aggregate structure generally used to hold business keys Object Refs resolve to a single object v1.x v2.x

10 M ESSAGES - G ENERAL Key Concepts Service Wrappers are goneService Wrappers are gone MsgHeaders contain transport specific instructionsMsgHeaders contain transport specific instructions MsgHeaders contain read-only dataMsgHeaders contain read-only dataRationale The Service Wrapper concept inhibits modularizationThe Service Wrapper concept inhibits modularization Internet transports have evolved significantlyInternet transports have evolved significantly Tomorrow Much more about headersMuch more about headers CredentialsCredentials Messages are constrained to services, represented on the wire by Service Wrappers Continued support of the concept of Interfaces, but defined by implementers. v1.x v2.x

11 M ESSAGES – F IELD S ELECT Key Concepts Modify only desired attributesModify only desired attributes Inquire with complete flexibilityInquire with complete flexibility Responses can be tailoredResponses can be tailoredRationale Conserve bandwidthConserve bandwidth Protect privacyProtect privacy Align with common technology practicesAlign with common technology practices Tomorrow IFXPathIFXPath Full record inquiry Full record replacement Full record inquiry Full record replacement Client can specify which data is returned from server Modify only those attributes necessary More robust inquiry Privacy protection Client can specify which data is returned from server Modify only those attributes necessary More robust inquiry Privacy protection v1.x v2.x

12 M ESSAGES - R ESPONSES Key Concepts Default behavior is to return a StatusRecDefault behavior is to return a StatusRec Client can request additional informationClient can request additional information If server doesn’t support ‘Light Objects’ it must return entire recordIf server doesn’t support ‘Light Objects’ it must return entire recordRationale Conserve bandwidthConserve bandwidth Protect privacyProtect privacy Align with common technology practicesAlign with common technology practices Tomorrow Detail 1Detail 1 Detail 2Detail 2 Full record inquiry Full record replacement Full record response Full record inquiry Full record replacement Full record response If server doesn’t support ‘Light Objects’ it must return entire record v1.x v2.x

13 S ERVICE P ROFILES Key Concepts Services are no longer defined by IFXServices are no longer defined by IFX Service wrappers droppedService wrappers droppedRationale Businesses must have flexibility to define service boundariesBusinesses must have flexibility to define service boundaries Continue to support ‘blind- routing’ of messages to SPsContinue to support ‘blind- routing’ of messages to SPs Tomorrow Service Profile detailsService Profile details Activating ServicesActivating Services Describing InterfacesDescribing Interfaces Service Profiles describe messages supported Service Profiles are ‘virtual’ object Service Profiles describe messages supported Service Profiles are ‘virtual’ object Service Profiles describe services and interfaces Service Profiles are true IFX objects Service Profiles describe services and interfaces Service Profiles are true IFX objects v1.x v2.x

14 C USTOMER Key Concepts Party replaces CustomerParty replaces Customer Party can be a person or an organizationParty can be a person or an organization Party’s have a relationship to accounts at the FIParty’s have a relationship to accounts at the FIRationale CustID was too many things to too many aggregatesCustID was too many things to too many aggregates Reuse the common party info whether Organization or PersonReuse the common party info whether Organization or Person Tomorrow AuthenticationAuthentication IssuedIdentIssuedIdent PartyRefPartyRef Customer is an object Customer ‘signs on’ One authentication per session Customer is an object Customer ‘signs on’ One authentication per session Party is the object Transactor authenticates Multiple authentications supported OBO easier to support Party is the object Transactor authenticates Multiple authentications supported OBO easier to support v1.x v2.x P ARTY

15 A CCOUNTS Key Concepts Significantly re-factored in v2Significantly re-factored in v2 AcctRef replaces xTypeAcctId in 75+ other elementsAcctRef replaces xTypeAcctId in 75+ other elements Added new objects; AcctStmt, AcctTrnImg, AcctTrnAdded new objects; AcctStmt, AcctTrnImg, AcctTrnRationale Simplify referencing accounts in transactions; Ignore details not needed to conclude transactionsSimplify referencing accounts in transactions; Ignore details not needed to conclude transactions Simplify spec maintenanceSimplify spec maintenance Address naming inconsistenciesAddress naming inconsistencies Tomorrow Refactoring detailsRefactoring details PartyAcctRelPartyAcctRel Various Acct Types are XORd in transactions Each new Transaction requires duplicate maintenance Adding new Acct types is significant effort Various Acct Types are XORd in transactions Each new Transaction requires duplicate maintenance Adding new Acct types is significant effort AcctRef greatly simplifies things Party-Acct association supports role-based authorizations AcctRef greatly simplifies things Party-Acct association supports role-based authorizations v1.x v2.x

16 R ELATIONSHIP O BJECTS Key Concepts Maintainable objects store references to related objects (such as Party-Acct)Maintainable objects store references to related objects (such as Party-Acct) Leverages objectRef conceptLeverages objectRef conceptRationale Be explicit about the details of related objectsBe explicit about the details of related objects Support multiple relationships between objectsSupport multiple relationships between objects Tomorrow Party-Acct detailsParty-Acct details ERD illustrationsERD illustrations Sometimes supported by repeating elements Sometimes related ‘objects’ are embedded Sometimes supported by repeating elements Sometimes related ‘objects’ are embedded Explicitly create Rel objects (such as PartyAcctRel, PartySvcRel, SvcAcctRel) Rel objects have Info that contain information about the relationship (such as Role) Explicitly create Rel objects (such as PartyAcctRel, PartySvcRel, SvcAcctRel) Rel objects have Info that contain information about the relationship (such as Role) v1.x v2.x

17 F OREIGN E XCHANGE Key Concepts Completed redesign - existing messages replaced and new messages addedCompleted redesign - existing messages replaced and new messages added Enhanced functionality supports more business processes and use casesEnhanced functionality supports more business processes and use casesRationale Support common business practices such as offering a rate and accepting a dealSupport common business practices such as offering a rate and accepting a deal Solved limitations and inconsistency issues in existing messagesSolved limitations and inconsistency issues in existing messages Tomorrow A bit moreA bit more Minimal messaging support Does not include explicit Cancel for Quotes, or Rate Sheets No support for cross-currency Limited options for Deal types and characteristics Minimal messaging support Does not include explicit Cancel for Quotes, or Rate Sheets No support for cross-currency Limited options for Deal types and characteristics Includes robust objects for Rate Quotes, Deals (Contracts) and Rate Sheets Supports cross-currency, two-way pricing models, FX swaps, FX offsets, one-step deal process Includes robust objects for Rate Quotes, Deals (Contracts) and Rate Sheets Supports cross-currency, two-way pricing models, FX swaps, FX offsets, one-step deal process v1.x v2.x

18 C ARD O BJECT Key Concepts Standard IFX ObjectStandard IFX Object Will have Party-Card and Card- Acct relationship objectsWill have Party-Card and Card- Acct relationship objectsRationale Formalize Management and Servicing of cardsFormalize Management and Servicing of cards Support association of cards with persons and accountsSupport association of cards with persons and accounts Tomorrow All working groups joint meeting with focus on CardAll working groups joint meeting with focus on Card Minimal messaging support New Working Group will focus on this object and its interactions throughout the BMS v1.x v2.x

19 O PERATIONS Key Concepts Create new functionality by combining messagesCreate new functionality by combining messages Define simple rules governing processing and error handlingDefine simple rules governing processing and error handlingRationale Allows explicit creation of complex functionality using existing messagesAllows explicit creation of complex functionality using existing messages Tomorrow Operation DefinitionOperation Definition Operation RulesOperation Rules Documented Business Rules govern processing rules for related messages Example: ATM Implementation Guide No message support Documented Business Rules govern processing rules for related messages Example: ATM Implementation Guide No message support Explicit operation definition An Operation is an “aggregate” of messages Explicit operation definition An Operation is an “aggregate” of messages v1.x v2.x

20 I NTERFACES Key Concepts An Interface forms a contract between service provider and IFX clientAn Interface forms a contract between service provider and IFX client Packages messages and operationsPackages messages and operationsRationale Flexible replacement for fixed service wrappersFlexible replacement for fixed service wrappers Allows modularized schema generationAllows modularized schema generation Tomorrow How are Interfaces definedHow are Interfaces defined Fixed Service wrappers defined by IFX Defines groups of functionality IFX schema must be hand crafted to simplify and make it usable Fixed Service wrappers defined by IFX Defines groups of functionality IFX schema must be hand crafted to simplify and make it usable Interfaces can be defined for business areas by the forum or by service providers v1.x v2.x

21 S UMMARIZING Specific Objects Party Replaces Customer Party Replaces Customer Account Account Service Profile Service Profile Foreign Exchange Foreign Exchange Card Card Key Concepts BMS Repository BMS Repository Generate XML Schema Generate XML Schema Available to members and subscribers Available to members and subscribers Object formalization Object formalization Structure Structure Referencing Referencing Abstraction and Extension Abstraction and Extension Capturing object relationships Capturing object relationships Data types Data typesMessages Drop Service Wrappers Drop Service Wrappers Changes to Authentication Changes to Authentication Light Objects – Field Select Light Objects – Field Select Operations Operations Define your own Interfaces Define your own Interfaces IFX Forum will continue to support v1.x. IFX v2.0a is available now for public review.

22 Q UESTIONS ?

23 D ETAILS Holding place for extra details about various v2 concepts

24 IFX O BJECT - T HE B ASIC P ATTERN Key Concepts All IFX Objects adhere to a basic patternAll IFX Objects adhere to a basic pattern Object Status can also be found in a named StatusRecObject Status can also be found in a named StatusRec This pattern is enforced in the Standard RepositoryThis pattern is enforced in the Standard Repository

25 O BJECT - I NFO AND E NVR Key Concepts All objects have InfoAll objects have Info All objects have EnvrAll objects have Envr All xxxEnvr extend BaseEnvrAll xxxEnvr extend BaseEnvr The “…Info” aggregate generally defines the modifiable properties of the defined object The “…Envr” aggregate defines properties of the object environment including computed properties. BaseEnvr expresses most commonly used server-generated data. All other Envrs extend BaseEnvr The “…Info” aggregate generally defines the modifiable properties of the defined object The “…Envr” aggregate defines properties of the object environment including computed properties. BaseEnvr expresses most commonly used server-generated data. All other Envrs extend BaseEnvr

26 O BJECT - D ATA T YPES, ETC Key Concepts There are a few new data constructionsThere are a few new data constructions Abstract AggregatesAbstract Aggregates IFXPath is a scope-limited definition of the W3C XPATH typeIFXPath is a scope-limited definition of the W3C XPATH type Abstract Aggregate Timeframe Measurement External standard references (Codes) IFXPath (next page) Abstract Aggregate Timeframe Measurement External standard references (Codes) IFXPath (next page)

27 O BJECT - IFXP ATH Primary purpose of a path field is to refer to one or more fields or aggregates in a message or object Fully qualified Locations must always be fully qualified (specified from the xxxRec). Comparative predicates will be limited to =, ≠,, =. In ErrorPath Location is fully qualified relative to the original Rq. Positional predicates are supported to indicate which of the multiple occurrences are in question. Key Concepts IFXPath is a scope-limited definition of the W3C XPATH typeIFXPath is a scope-limited definition of the W3C XPATH type Used in Inquiry, Modify and ErrorPathUsed in Inquiry, Modify and ErrorPath IFXPath limitations

28 S ERVICES - S VC P ROFILE Services are defined by IFX SvcProfile is virtual object Service Wrappers are a message construct Customers sign-on and deliver messages Services are defined by you Service Profiles are true objects Service Wrappers are gone Users authenticate and customers are a party in messages or transactions v1.x v2.x

29 V 1. X S ERVICE -A CCOUNT L INKAGE

30 V 2. P ARTY -A CCOUNT -S ERVICE

31 V 2. R ELATIONSHIPS

32 v2.x Relationship objects are created with xxxyyyRelAddRq Rel objects are manipulated like other IFX objects, responding to Mod, Del, etc. messages Rel objects have data (info), status, etc. Rel objects have references to the objects they relate Activating a service for a particular customer is accomplished via PartySvcRelAddRq which creates the necessary PartySvcRelRec.

33 V 2. P ARTY

34 PARTY USES SEVERAL NEW V2 CONCEPTS PartyInfo is an abstract aggregate that will manifest itself as either Organization or Person Info

35 V 2. P ARTY PartyData is an abstract aggregate that will manifest itself as either Organization or Person Data

36 V 2. P ARTY -A CCOUNT -S ERVICE

37 V 1. X – V 2. X T RANSITION, PART 1 ID aggregates become true IDs External reference IDs becomes REFs Service Profiles become true IFX objects Customer will be replaced with Party Service Profiles are objects Services are defined by implementer

38 RELATIONSHIP OBJECTS – EXAMPLE Key Concepts The related instances of objects are indentified by objectRefsThe related instances of objects are indentified by objectRefs Relationship objects are created with xxxyyyRelAddRq

39 R ELATIONSHIP O BJECTS Rel objects are manipulated like other IFX objects, responding to Mod, Del, etc. messages Rel objects have data (info), status, etc. Rel objects have references to the objects they relate Key Concepts Relationship Objects are true IFX objectsRelationship Objects are true IFX objects They explicitly identify 2 or more relationshipsThey explicitly identify 2 or more relationships Attributes specifically describing the relationship are in the Info aggregateAttributes specifically describing the relationship are in the Info aggregate

40 A BSTRACTIONS Key Concept IFX defines some aggregates as “Abstract”IFX defines some aggregates as “Abstract” PartyInfo is an abstract aggregate that will manifest itself as either Organization or Person Info

41 A BSTRACTIONS Key Concept Extending aggregates is key to consistent structures and re-useExtending aggregates is key to consistent structures and re-use PartyData is an abstract aggregate that will manifest itself as Org/Person Data

42 M ESSAGE H EADERS - I NTRO The message request header aggregate contains common information for request messages Key Concepts MsgRqHdrMsgRqHdr CredentialsRqHdrCredentialsRqHdr ContextRqHdrContextRqHdr FeeRqHdrFeeRqHdr There are Rs equivalentsThere are Rs equivalents

43 MESSAGE HEADERS- CREDENTIALS The CredentialsRqHdr contains the credentials of the user / client. Multiple credentials with different roles can be supplied The abstract SecToken is replaced by a real Token Key Concepts CredentialsRqHdrCredentialsRqHdr SubjectRoleSubjectRole Multiple extensions of abstract SecTokenMultiple extensions of abstract SecToken SecTokenLoginSecTokenLogin SecTokenCardSecTokenCard … CredentialsRqHdr SubjectRole StartSession PartyRef SeqNum abstract SecToken CredentialsRqHdr SubjectRole StartSession PartyRef SeqNum SecTokenLogin CredentialsRqHdr SubjectRole StartSession PartyRef SeqNum SecTokenCard or or …

44 M ESSAGE H EADERS - F EES Use DebitRef to specify the fee Complete Info aggregate or Reference existing Info aggregate in message Use AcctRef to specify account to which fees should be charged CreditRef can be used for rebates Key Concepts Fees can be specified for an operation or a message in the headerFees can be specified for an operation or a message in the header Uses DebitRef or AcctRefUses DebitRef or AcctRef FeeRqHdr DebitRef CreditRef AcctRef ChargeRegulation

45 MESSAGE HEADERS- OPERRQHDR Key Concepts OperRqHdr extends MsgRqHdrOperRqHdr extends MsgRqHdr OperRqHdr will always look like a MsgRqHdr + OperRules Messages in an Operation do not require a MsgRqHdr. If a MsgRqHdr is present, any content overrides the corresponding content in the.

46 M ESSAGES - M ETHODS Key Concepts Messages always act on a particular object except Reversals act on messages (transactions)Messages always act on a particular object except Reversals act on messages (transactions) The list of methods is unchanged from v1The list of methods is unchanged from v1 Particular implementations of messages change to accommodate pattern normalizationParticular implementations of messages change to accommodate pattern normalization

47 O PERATIONS - D EFINITION Key Concepts Create new functionality by combining messagesCreate new functionality by combining messages Operations have name and namespaceOperations have name and namespace Combine messages like building an aggregateCombine messages like building an aggregate RequiredRequired OptionalOptional RepeatingRepeating … A special Operation can be used to reverse the business functionality (if defined)A special Operation can be used to reverse the business functionality (if defined) Operations are defined like aggregates, but contain only message names as elements Naming convention: ends in …OperRq/Rs Reversal Operation with same name - ends in OperRevRq/Rs SampleOperRq MessageARq (rpt) MessageBRq (rqd) MessageCRq (opt)

48 O PERATIONS – R ULES OnError / OnWarning Continue Abort ReverseProcessed ReverseAll Key Concepts Rules define processing and error behaviorRules define processing and error behavior Concurrent vs SequentialConcurrent vs Sequential OnError behaviorOnError behavior OnWarning behaviorOnWarning behavior Transmitted in the OperRqHdrTransmitted in the OperRqHdr OperRules ProcessConcurrent OnWarning OnError

49 I NTERFACES - D EFINITION Key Concepts Not an IFX object Does not appear on the wire Definition can be as a schema or wsdlDefinition can be as a schema or wsdl Must contain Namespace, Name, Version All messages and operations supported by the interface

50 M ESSAGES – S ELECTION Using the industry standard XPATH construct allows implementers more flexibility in data retrieval. Key Concepts Selection uses the new IFXPath data typeSelection uses the new IFXPath data type


Download ppt "IFX V ERSION 2.0 Building upon the Service Oriented foundation of IFX v1."

Similar presentations


Ads by Google