Introduction to Sequenced SIF and the SIF Parser
Sequenced Standard Interface Format (SIF) is a pipe delimited data format suitable for loading data into InfoSphere® MDM using Party maintenance services configured to be invoked with the SIF Parser.
Sequenced SIF provides simpler alternative to XML message format.
Sequenced SIF defines two record types: 'P' for Party and 'C' for Contract. Within each record type are sub record types for individual InfoSphere MDM business object. These two record type identifiers, Record Type and Sub-Type, are routinely referred to as "RT" and "ST" respectively.
One row in Sequenced SIF file corresponds to one InfoSphere MDM transaction. Each row must start with single letter field representing record type, followed by pipe, followed by another single letter field representing sub record type, followed by the InfoSphere MDM business object data fields separated by pipes.
One row in Sequenced SIF file could and sometimes should contain several nested record types. For example, person SIF record (P|P) would contain person data fields followed by nested person name record (P|H) because person name is a mandatory child element of Person business object for add person scenario. Combined records are separated by pipe, which is the same separator used within SIF input record. The same SIF record might also contain other person child objects.
Maintenance transactions invoke InfoSphere MDM core transactions that check data integrity. Therefore, it is not possible to load the child record before the parent record using maintenance transactions. Input files for the Sequenced SIF format must contain records homogeneous records only. For example, the input file should contain only the following information:
- Person or Organization records with all its nested child record types
- Contract records with all its nested child record types except contract value records C|M)
- Party relationship records
- Contract value records (C|M)
This allows you to run load in the order of parent-child dependency.
Here is the example of single Sequenced SIF record of the P|P record type, with multiple nested children (for example, P|H, P|C, P|I and P|B). Note that on documentation page this record appears to span multiple rows but in fact it represents single row in the data load file. End of record is indicated by end of line (HEX OD OA).
P|P|1|99999799737154||N||1|100|Helen Rock|N|N|4|1|1|1||N|||||||||||||||2|31|185
|3|2|M|1944-05-25||1|||N|1|0|0|0|0|0|0|0|0|0|0|0|1|0|0|0|0|0|0|0|0|0|0|0|0|0|0|
0|0|0|0|0|0|0|0|0|P|H|1|99999799737154||16||1||THOMAS|RAY|||KIRKLAND|||2008-01-
01||||||||||||||||0|0|0|0|0|0|0|1|0|0|0|0|0|P|A|1|99999799737154||||||||||2008-
01-01||||||1|185|2|6|2626 Water St|Unit-97||El Paso|69878-5956|N|N|||||||||||||
|||||||||0|1|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|1|0|0|0|0|0|0|0|0|0|0|0|0|0|
0|0|0|0|0|P|C|1|99999799737154||||N|Y|0720|0615|09:10:10|10:10:10|1997-07-07|2084
-12-30|2000-12-30|2000-12-30|1|7|2|Y|Y|size|no comments at this point|2626 Water
St|||||||1|1|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|P|I|1|99999799737154||1|1|
69361297046181|2003-08-11||2100-12-30|||jan03|108|2000-12-30|2000-12-30|1|0|0|0|0
|1|0|0|0|0|0|P|B|1|99999799737154||CONTACT|1|1|1999-01-09|2014-12-30|0|
| SIF RT|ST | Description |
|---|---|
| P|P | Person Contact. Must contain nested P|H record. Can contain nested P|A, P|C, P|I, P|B, P|M, P|S, P|T |
| P|O | Organization Contact Must contain nested P|G record. Can contain nested P|A, P|C, P|I, P|B, P|M, P|S, P|T |
| P|G | Organization Name |
| P|H | Person Name |
| P|E | External Match |
| P|A | Party Address |
| P|C | Party Contact Method |
| P|I | Identifier |
| P|B | Line of Business Relationship |
| P|R | Contact Relationship. Does not have any parent or child SIF record types. Records of this type must be loaded as separate input file |
| P|M | Party Miscellaneous Value |
| P|S | Privacy Preference |
| P|T | Party Alert |
| SIF RT|ST | Description |
|---|---|
| C|H | Contract. Can contain C|C and C|T |
| C|K | Native Key |
| C|C | Contract Component. Can contain C|R and C|V |
| C|R | Contract Role. Can contain C|L |
| C|L | Role Location |
| C|V | Contract Component Values |
| C|M | Contract Miscellaneous Values. Does not have any parent or child SIF records. Records of this type must be loaded as separate input file |
| C|T | Contract Alert |
The format of data fields for particular the SIF record subtype is defined in appropriate SIF metadata property file with file extension .sif (for example, Contact.sif), located in the root of the bundle in the PartyMaintenance project in the development environment. The mapping between RT|ST and SIF metadata file is defined in the SIF.properties file, for example: metadata.P.P=Contact.sif. The SIF.properties file is also in the root of the bundle. To change this file, you must do so in the development environment and then export it.