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

50
IFX VERSION 2.0 Building upon the Service Oriented foundation of IFX v1

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

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

IFX VERSION 2.0

Building upon the

Service Oriented foundation of IFX v1

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

ANNOUNCING V2.0A! 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.

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

PUBLIC COMMENT 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 www.ifxforum.org and pull down the IFX Standard menu

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

INTRODUCING... 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

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

IFX BMS REPOSITORY

Key ConceptsKey Concepts•IFX is a documented standard, IFX is a documented standard, not a documentnot a document•Generates consistent contentGenerates consistent content•Enforces data integrityEnforces data integrity

RationaleRationale•Improve navigationImprove navigation•Improve integrityImprove integrity•Generate schema and Generate schema and documentation.documentation.

v1.xv1.x v2.xv2.x

TomorrowTomorrow•Demo of db UIDemo of db UI•Demo of Schema Demo of Schema generationgeneration

•A 900+ page MS-Word document…

•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

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

THE IFX STANDARD REPOSITORY

Request processor

IFX Specification

Data

Sub

mit

requ

est

Choose parameters

Receive docum

ents

Produce Specification

Produce XML implementation

Produce Models

Web Interface

Sub

mit

requ

est

CompatibiltyTesting

The original conceptThe original concept The current stateThe current state

Request processor

IFX Specification

Data

Sub

mit

requ

est

Choose parameters

Receive d

ocuments

Produce Specification

Produce XML implementation

Web Interface

Sub

mit

requ

est

IFX Specification

Data

v1.8

v2.0

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

OBJECTS - STRUCTURE

Key ConceptsKey Concepts•Consistent structureConsistent structure•Distinguish manageable Distinguish manageable attributes from read-onlyattributes from read-only

RationaleRationale•IFX Objects have a state and set IFX Objects have a state and set of data attributes that can be of data attributes that can be maintained without sending the maintained without sending the entire object over the wireentire object over the wire

TomorrowTomorrow•The specifics of the IFX The specifics of the IFX Object patternObject 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.xv1.x v2.xv2.x

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

OBJECTS – LIGHTEN UP!

Key ConceptsKey Concepts•Lightweight inquiryLightweight inquiry•Lightweight maintenanceLightweight maintenance•IFXPath is a scope-limited IFXPath is a scope-limited definition of the W3C XPATH definition of the W3C XPATH typetype

RationaleRationale•Support a mechanism to refer to Support a mechanism to refer to one or more fields or aggregates one or more fields or aggregates in a message or objectin a message or object•Add flexibility to Selection criteria Add flexibility to Selection criteria in Inquiriesin Inquiries•Enrich information about error Enrich information about error conditionsconditions•Protect data privacyProtect data privacy

TomorrowTomorrow•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

•Client can specify which data is returned from server

v1.xv1.x

v2.xv2.x

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

OBJECTS - REFERENCING

Key ConceptsKey Concepts•objRef is a standard objRef is a standard elementelement•Object IDs are consistent Object IDs are consistent data typesdata types

RationaleRationale•Support multiple ways to Support multiple ways to reference objects including reference objects including business keysbusiness keys

TomorrowTomorrow•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.xv1.x v2.xv2.x

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

MESSAGES - GENERAL

Key ConceptsKey Concepts•Service Wrappers are goneService Wrappers are gone•MsgHeaders contain transport MsgHeaders contain transport specific instructionsspecific instructions•MsgHeaders contain read-only MsgHeaders contain read-only datadata

RationaleRationale•The Service Wrapper concept The Service Wrapper concept inhibits modularizationinhibits modularization•Internet transports have Internet transports have evolved significantlyevolved significantly

TomorrowTomorrow•Much more about Much more about headersheaders•CredentialsCredentials

•Messages are constrained to services, represented on the wire by Service Wrappers

•Messages are constrained to services, represented on the wire by Service Wrappers

•Continued support of the concept of Interfaces, but defined by implementers.

•Continued support of the concept of Interfaces, but defined by implementers.

v1.xv1.x v2.xv2.x

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

MESSAGES – FIELDSELECT

Key ConceptsKey Concepts•Modify only desired Modify only desired attributesattributes•Inquire with complete Inquire with complete flexibilityflexibility•Responses can be tailoredResponses can be tailored

RationaleRationale•Conserve bandwidthConserve bandwidth•Protect privacyProtect privacy•Align with common technology Align with common technology practicespractices

TomorrowTomorrow•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.xv1.x v2.xv2.x

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

MESSAGES - RESPONSES

Key ConceptsKey Concepts•Default behavior is to return a Default behavior is to return a StatusRecStatusRec•Client can request additional Client can request additional informationinformation•If server doesn’t support ‘Light If server doesn’t support ‘Light Objects’ it must return entire Objects’ it must return entire recordrecord

RationaleRationale•Conserve bandwidthConserve bandwidth•Protect privacyProtect privacy•Align with common technology Align with common technology practicespractices

TomorrowTomorrow•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

•If server doesn’t support ‘Light Objects’ it must return entire record

v1.xv1.x v2.xv2.x

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

SERVICE PROFILES

Key ConceptsKey Concepts•Services are no longer Services are no longer defined by IFXdefined by IFX•Service wrappers droppedService wrappers dropped

RationaleRationale•Businesses must have flexibility Businesses must have flexibility to define service boundariesto define service boundaries•Continue to support ‘blind-Continue to support ‘blind-routing’ of messages to SPsrouting’ of messages to SPs

TomorrowTomorrow•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.xv1.xv2.xv2.x

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

CUSTOMER

Key ConceptsKey Concepts•Party replaces CustomerParty replaces Customer•Party can be a person or an Party can be a person or an organizationorganization•Party’s have a relationship to Party’s have a relationship to accounts at the FIaccounts at the FI

RationaleRationale•CustID was too many things to CustID was too many things to too many aggregatestoo many aggregates•Reuse the common party info Reuse the common party info whether Organization or whether Organization or PersonPerson

TomorrowTomorrow•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.xv1.x v2.xv2.x

PARTY

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

ACCOUNTS

Key ConceptsKey Concepts•Significantly re-factored in v2Significantly re-factored in v2•AcctRef replaces xTypeAcctId AcctRef replaces xTypeAcctId in 75+ other elementsin 75+ other elements•Added new objects; AcctStmt, Added new objects; AcctStmt, AcctTrnImg, AcctTrnAcctTrnImg, AcctTrn

RationaleRationale•Simplify referencing accounts in Simplify referencing accounts in transactions; Ignore details not transactions; Ignore details not needed to conclude transactionsneeded to conclude transactions•Simplify spec maintenanceSimplify spec maintenance•Address naming inconsistenciesAddress naming inconsistencies

TomorrowTomorrow•Refactoring detailsRefactoring details•PartyAcctRel PartyAcctRel

•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.xv1.xv2.xv2.x

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

RELATIONSHIP OBJECTS

Key ConceptsKey Concepts•Maintainable objects store Maintainable objects store references to related objects references to related objects (such as Party-Acct)(such as Party-Acct)•Leverages objectRef conceptLeverages objectRef concept

RationaleRationale•Be explicit about the details of Be explicit about the details of related objectsrelated objects•Support multiple relationships Support multiple relationships between objects between objects

TomorrowTomorrow•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.xv1.x v2.xv2.x

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

FOREIGN EXCHANGE

Key ConceptsKey Concepts•Completed redesign - existing Completed redesign - existing messages replaced and new messages replaced and new messages addedmessages added•Enhanced functionality Enhanced functionality supports more business supports more business processes and use casesprocesses and use cases

RationaleRationale•Support common business Support common business practices such as offering a rate practices such as offering a rate and accepting a dealand accepting a deal•Solved limitations and Solved limitations and inconsistency issues in existing inconsistency issues in existing messages messages

TomorrowTomorrow•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.xv1.x v2.xv2.x

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

CARD OBJECT

Key ConceptsKey Concepts•Standard IFX ObjectStandard IFX Object•Will have Party-Card and Card-Will have Party-Card and Card-Acct relationship objectsAcct relationship objects

RationaleRationale•Formalize Management and Formalize Management and Servicing of cardsServicing of cards•Support association of cards with Support association of cards with persons and accountspersons and accounts

TomorrowTomorrow•All working groups joint All working groups joint meeting with focus on meeting with focus on CardCard

•Minimal messaging support•Minimal messaging support•New Working Group will focus on this object and its interactions throughout the BMS

•New Working Group will focus on this object and its interactions throughout the BMS

v1.xv1.xv2.xv2.x

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

OPERATIONS

Key ConceptsKey Concepts•Create new functionality by Create new functionality by combining messagescombining messages•Define simple rules Define simple rules governing processing and governing processing and error handlingerror handling

RationaleRationale•Allows explicit creation of Allows explicit creation of complex functionality using complex functionality using existing messagesexisting messages

TomorrowTomorrow•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.xv1.x v2.xv2.x

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

INTERFACES

Key ConceptsKey Concepts•An Interface forms a An Interface forms a contract between service contract between service provider and IFX clientprovider and IFX client•Packages messages and Packages messages and operationsoperations

RationaleRationale•Flexible replacement for fixed Flexible replacement for fixed service wrappersservice wrappers•Allows modularized schema Allows modularized schema generation generation

TomorrowTomorrow•How are Interfaces How are Interfaces defineddefined

•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

•Interfaces can be defined for business areas by the forum or by service providers

v1.xv1.x v2.xv2.x

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

SUMMARIZINGSUMMARIZING

Specific ObjectsSpecific Objects• Party Replaces CustomerParty Replaces Customer• AccountAccount• Service ProfileService Profile• Foreign ExchangeForeign Exchange• CardCard

Key ConceptsKey Concepts• BMS RepositoryBMS Repository

• Generate XML SchemaGenerate XML Schema• Available to members and Available to members and

subscriberssubscribers

• Object formalizationObject formalization• StructureStructure• ReferencingReferencing

• Abstraction and ExtensionAbstraction and Extension• Capturing object relationshipsCapturing object relationships• Data typesData types

MessagesMessages• Drop Service WrappersDrop Service Wrappers• Changes to AuthenticationChanges to Authentication• Light Objects – Field SelectLight Objects – Field Select• OperationsOperations• Define your own InterfacesDefine your own Interfaces

IFX Forum will continue to support v1.x.

IFX v2.0a is available now for public review.

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

QUESTIONS?

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

DETAILS

Holding place for extra details about various v2 concepts

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

IFX OBJECT- THE BASIC PATTERN

Key ConceptsKey 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 Object Status can also be found in a named StatusRecStatusRec•This pattern is enforced in the Standard This pattern is enforced in the Standard RepositoryRepository

xxxRec xxxID +xxxInfo +xxxEnvr +xxxStatus

xxxInfo dataAttributes

xxxStatus xxxStatusCode StatusDesc EffDt ApprovalId StatusModBy

xxxEnvr Extends BaseEnvr CreatedDt CreateRefIdent ClientCreateDt ClientBusinessDt LastUpdateDt LastUpdateRqUID NetworkTrnData PointOfServiceData ThisObjectEnvrData

xxxStatusRec xxxID +xxxStatus

xxxStatus xxxStatusCode StatusDesc EffDt ApprovalId StatusModBy

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

OBJECT- INFO AND ENVR

Key ConceptsKey Concepts•All objects have InfoAll objects have Info•All objects have EnvrAll objects have Envr•All xxxEnvr extend All xxxEnvr extend BaseEnvr 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

xxxRec xxxID +xxxInfo +xxxEnvr +xxxStatus

xxxInfo dataAttributes

xxxStatus xxxStatusCode StatusDesc EffDt ApprovalId StatusModBy

xxxEnvr Extends BaseEnvr CreatedDt CreateRefIdent ClientCreateDt ClientBusinessDt LastUpdateDt LastUpdateRqUID NetworkTrnData PointOfServiceData ThisObjectEnvrData

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

OBJECT- DATA TYPES, ETC

Key ConceptsKey Concepts•There are a few new data constructionsThere are a few new data constructions•Abstract AggregatesAbstract Aggregates•IFXPath is a scope-limited definition of IFXPath is a scope-limited definition of the W3C XPATH typethe 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)

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

OBJECT- IFXPATH

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 ConceptsKey Concepts•IFXPath is a scope-limited definition of IFXPath is a scope-limited definition of the W3C XPATH typethe W3C XPATH type•Used in Inquiry, Modify and ErrorPathUsed in Inquiry, Modify and ErrorPath IFXPath limitationsIFXPath limitations

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

SERVICES - SVCPROFILE

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.xv1.x v2.xv2.x

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

V1.X SERVICE-ACCOUNT LINKAGE

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

V2. PARTY-ACCOUNT-SERVICE

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

V2. RELATIONSHIPS

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

V2. RELATIONSHIPS

v2.xv2.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.

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

V2. PARTY

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

PARTY USES SEVERAL NEW V2 CONCEPTS

PartyInfo is an abstract aggregate that will manifest itself as either Organization or Person Info

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

V2. PARTY

PartyData is an abstract aggregate that will manifest itself as either Organization or Person Data

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

V2. PARTY-ACCOUNT-SERVICE

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

V1.X – V2.X TRANSITION, 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

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

RELATIONSHIP OBJECTS – EXAMPLE

Key ConceptsKey Concepts•The related instances of The related instances of objects are indentified by objects are indentified by objectRefsobjectRefs

•Relationship objects are created with xxxyyyRelAddRq

•Relationship objects are created with xxxyyyRelAddRq

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

RELATIONSHIP OBJECTS

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 ConceptsKey Concepts•Relationship Objects are Relationship Objects are true IFX objectstrue IFX objects•They explicitly identify 2 They explicitly identify 2 or more relationshipsor more relationships•Attributes specifically Attributes specifically describing the relationship describing the relationship are in the Info aggregateare in the Info aggregate

PartySvcRelRec (was CustSvcRec) PartyRef SvcRef

+PartySvcRelInfoPartySvcRelInfo +PartySvcDisclosureData

PartySvcDisclosureData PartyID DiscID DiscInfo +PartySvcDiscStatus

PartySvcDiscStatus PartySvcDiscStatusCode StatusDesc EffDt StatusModBy

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

ABSTRACTIONS

Key ConceptKey Concept•IFX defines some IFX defines some aggregates as “Abstract”aggregates as “Abstract”

•PartyInfo is an abstract aggregate that will manifest itself as either Organization or Person Info

•PartyInfo is an abstract aggregate that will manifest itself as either Organization or Person Info

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

ABSTRACTIONS

Key ConceptKey Concept•Extending aggregates is key to Extending aggregates is key to consistent structures and re-useconsistent structures and re-use

•PartyData is an abstract aggregate that will manifest itself as Org/Person Data

•PartyData is an abstract aggregate that will manifest itself as Org/Person Data

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

MESSAGE HEADERS- INTRO

The message request header aggregate contains common information for request messages

Key ConceptsKey Concepts•MsgRqHdrMsgRqHdr•CredentialsRqHdrCredentialsRqHdr•ContextRqHdrContextRqHdr•FeeRqHdrFeeRqHdr•There are Rs equivalentsThere are Rs equivalents

MsgRqHdr AsyncRqUID +CredentialsRqHdr +ContextRqHdr FeeRqHdr

ContextRqHdr variousData MsgAuthCode miscAttributes +Interface SPName

CredentialsRqHdr SubjectRole StartSession PartyRef SeqNum SecToken

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

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 ConceptsKey Concepts•CredentialsRqHdrCredentialsRqHdr•SubjectRoleSubjectRole•Multiple extensions of Multiple extensions of abstract SecTokenabstract SecToken

• SecTokenLoginSecTokenLogin• SecTokenCardSecTokenCard• ……

CredentialsRqHdrSubjectRoleStartSessionPartyRefSeqNumabstract SecToken

CredentialsRqHdrSubjectRoleStartSessionPartyRefSeqNumSecTokenLogin

CredentialsRqHdrSubjectRoleStartSessionPartyRefSeqNumSecTokenCard

or

or …

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

MESSAGE HEADERS- FEES

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 ConceptsKey Concepts•Fees can be specified for Fees can be specified for an operation or a message an operation or a message in the headerin the header•Uses DebitRef or AcctRefUses DebitRef or AcctRef

FeeRqHdr

DebitRefCreditRefAcctRefChargeRegulation

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

MESSAGE HEADERS- OPERRQHDR

Key ConceptsKey Concepts•OperRqHdr extends MsgRqHdrOperRqHdr extends MsgRqHdr

•OperRqHdr will always look like a MsgRqHdr + OperRules

•OperRqHdr will always look like a MsgRqHdr + OperRules

OperRqHdr extends MsgRqHdr OperRules

Messages in an Operation do not require a MsgRqHdr.

If a MsgRqHdr is present, any content overrides the corresponding content in the <OperRqHdr>.

OperRqHdr AsyncRqUID +CredentialsRqHdr +ContextRqHdr FeeRqHdr OperRules

ContextRqHdr variousData MsgAuthCode miscAttributes +Interface SPName

CredentialsRqHdr SubjectRole StartSession PartyRef SeqNum SecToken

MsgRqHdr AsyncRqUID +CredentialsRqHdr +ContextRqHdr FeeRqHdr

ContextRqHdr variousData MsgAuthCode miscAttributes +Interface SPName

CredentialsRqHdr SubjectRole StartSession PartyRef SeqNum SecToken

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

MESSAGES - METHODS

Key ConceptsKey Concepts•Messages always act on a Messages always act on a particular object except particular object except Reversals act on messages Reversals act on messages (transactions)(transactions)•The list of methods is The list of methods is unchanged from v1unchanged from v1•Particular implementations Particular implementations of messages change to of messages change to accommodate pattern accommodate pattern normalizationnormalization

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

OPERATIONS - DEFINITION

Key ConceptsKey Concepts•Create new functionality by Create new functionality by combining messagescombining messages•Operations have name and Operations have name and namespacenamespace•Combine messages like Combine messages like building an aggregatebuilding an aggregate

• RequiredRequired• OptionalOptional• RepeatingRepeating• ……

•A special Operation can be A special Operation can be used to reverse the used to reverse the business functionality (if business functionality (if defined)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)

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

OPERATIONS – RULES

OnError / OnWarning Continue Abort ReverseProcessed ReverseAll

Key ConceptsKey Concepts•Rules define processing Rules define processing and error behaviorand error behavior

• Concurrent vs Concurrent vs SequentialSequential

• OnError behaviorOnError behavior• OnWarning behaviorOnWarning behavior

•Transmitted in the Transmitted in the OperRqHdrOperRqHdr

OperRules

ProcessConcurrentOnWarningOnError

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

INTERFACES - DEFINITION

Key ConceptsKey Concepts•Not an IFX object•Does not appear on the wire

• Definition can be as a Definition can be as a schema or wsdlschema or wsdl

•Must contain• Namespace, Name,

Version• All messages and

operations supported by the interface

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

MESSAGES – SELECTION

Using the industry standard XPATH construct allows implementers more flexibility in data retrieval.

Key ConceptsKey Concepts•Selection uses the new Selection uses the new IFXPath data typeIFXPath data type