Another batch of 4.2 questions/clarifications

Imported from previous forum

[ original email was from John Hardman - yiq12@dial.pipex.com ]
Another handful of questions that will help me get my 4.2 validation code correct. Many thanks in advance for any help with these (and any help on previously raised questions).

Regards,

John Hardman.

Question #1

In the Allocation message, “Y*” is used to indicate fields that are not required if AllocTransType=Cancel.

In the case of the repeating group of orders, with the count field 73 (NoOrders) and the first repeating field 11 (ClOrdID) what does this mean ? Is it intended that in the case of a Cancel this group should not appear at all, or does it mean that NoOrders could be non-zero with a repeating group that does not include ClOrdID ?

Similar question applies to the repeating group of allocations, with the count field 78 (NoAllocs) and the first repeating field 79 (AllocAccount), although in this case things are even more confused by the comment “Required if NoAllocs > 0” on the AllocAccount field.

Question #2

In the Settlement Instructions message the comment for field 160 says “1=Standing Instructions, 2=Specific Allocation Account Overriding, 3=Specific Allocation Account Standing”. Does this mean that in the Settlement Instructions message field 160 cannot contain the value 0 (zero) ?

Presumably the comment on field 79 (AllocAccount) which says “Required for SettlInstMode=1, 2, or 3” is redundant given that the required flag is “Y” and SettlInstMode cannot be 0.

Question #3

In the Settlement Instructions message various fields have the comment “May be required for SettlInstMode=1”. Can it be clarified under what circumstances the fields are required when SettlInstMode = 1 ?

Question #4

The Field Definitions section of the specification shows field 5 (AdvTransType) being of type String. Every other xxxTransType field is type Char. Should AdvTransType also be type Char ?

Question #5

In the Bid Request message, various fields have the comment “Used in EFP trades”. Is there anything within the message that actually identifies it as being for an EFP trade ?

> Question #1
>
> In the Allocation message, “Y*” is used to indicate fields that are not required if AllocTransType=Cancel.
>
> In the case of the repeating group of orders, with the count field 73 (NoOrders) and the first repeating field 11 (ClOrdID) what does this mean ? Is it intended that in the case of a Cancel this group should not appear at all, or does it mean that NoOrders could be non-zero with a repeating group that does not include ClOrdID ?
>
> Similar question applies to the repeating group of allocations, with the count field 78 (NoAllocs) and the first repeating field 79 (AllocAccount), although in this case things are even more confused by the comment “Required if NoAllocs > 0” on the AllocAccount field.
>

Cancelling, Rejecting, or Replacing an allocation is for a single Allocation message and thus is for all (if more than one) orders, execs, and AllocAccounts specified. i.e. you cannot reject or replace just one allocated account entry, rather must rebook the entire allocation.

>
> Question #2
>
> In the Settlement Instructions message the comment for field 160 says “1=Standing Instructions, 2=Specific Allocation Account Overriding, 3=Specific Allocation Account Standing”. Does this mean that in the Settlement Instructions message field 160 cannot contain the value 0 (zero) ?
>
> Presumably the comment on field 79 (AllocAccount) which says “Required for SettlInstMode=1, 2, or 3” is redundant given that the required flag is “Y” and SettlInstMode cannot be 0.
>

SettlInstMode (tag 160) can have values 0, 1, 2, or 3 per the "Field Definitions", however, a value of 0 ("Default") would not be applicable on a Settlement Instructions message. It could be specified on the Allocation message. Note that the Allocation message specification of that field does not mention value 0, but I think it should.

>
> Question #3
>
> In the Settlement Instructions message various fields have the comment “May be required for SettlInstMode=1”. Can it be clarified under what circumstances the fields are required when SettlInstMode = 1 ?
>

See Appendix F - Settlement Instructions Field Usage Reference.

>
> Question #4
>
> The Field Definitions section of the specification shows field 5 (AdvTransType) being of type String. Every other xxxTransType field is type Char. Should AdvTransType also be type Char ?
>

Probably should have when we converted “char” to either “Char” or “String” when moving from the 4.1 to 4.2 spec. I don’t think we will change the data type to a more restrictive type at this point, though.

>
> Question #5
>
> In the Bid Request message, various fields have the comment “Used in EFP trades”. Is there anything within the message that actually identifies it as being for an EFP trade ?
>
>
>

Will defer to the experts of the list bidding messages and process.

[ original email was from John Hardman - yiq12@dial.pipex.com ]
Please see responses below;

>> Question #1
>>
>> In the Allocation message, “Y*” is used to indicate fields that are not required if AllocTransType=Cancel.
>>
>> In the case of the repeating group of orders, with the count field 73 (NoOrders) and the first repeating field 11 (ClOrdID) what does this mean ? Is it intended that in the case of a Cancel this group should not appear at all, or does it mean that NoOrders could be non-zero with a repeating group that does not include ClOrdID ?
>> Similar question applies to the repeating group of allocations, with the count field 78 (NoAllocs) and the first repeating field 79 (AllocAccount), although in this case things are even more confused by the comment “Required if NoAllocs > 0” on the AllocAccount field.
>>

>Cancelling, Rejecting, or Replacing an allocation is for a single Allocation message and thus is for all (if more than >one) orders, execs, and AllocAccounts specified. i.e. you cannot reject or replace just one allocated account entry, >rather must rebook the entire allocation.

I am still not clear on this. To clarify the answer can you just give yes or no to each of the following sub-questions please, all questions referring to the Allocation message for the case when AllocTransTyp = Cancel;
(a) Can NoOrders be specified within the message ?
(b) Can NoOrders be non-zero ?
© Can NoOrders be zero ?
(d) Is ClOrdID required if NoOrders > 0 ?
(e) Can NoAllocs be specified within the message ?
(f) Can NoAllocs be non-zero ?
(g) Can NoAllocs be zero ?
(h) Is AllocAccount required if NoAllocs > 0 ?

>>
>> Question #3
>>
>> In the Settlement Instructions message various fields have the comment “May be required for SettlInstMode=1”. Can it be clarified under what circumstances the fields are required when SettlInstMode = 1 ?
>>

>See Appendix F - Settlement Instructions Field Usage Reference.

Having now looked at Appendix F…
(a) could we have a reference to Appendix F added to the text for the Settlement Instructions message in the 4.2 errata please ?
(b) Should the SettlDeliveryType field in the Settlement Instructions message have the comment “May be required for SettlInstMode=1” added ?
© In Appendix F, where it states “(either SettlDepositoryCode or SecuritySettl*)”, if SettlDepositoryCode is not specified, which of the SecuritySettl* fields are required (none, one or more, all) ?
(d) The comment on the SettlLocation field is still ambiguous – would a more accurate version of the text “may not be required if StandInstDbType and StandInstDbID are used” be “not required if Standing Instructions can be referenced by a combination of StandInstDbType, StandInstDbName and StandInstDbID” ?

>>
>> Question #4
>>
>> The Field Definitions section of the specification shows field 5 (AdvTransType) being of type String. Every other xxxTransType field is type Char. Should AdvTransType also be type Char ?
>>

>Probably should have when we converted “char” to either “Char” or “String” when moving from the 4.1 to 4.2 spec. I don’t think we will change the data type to a more restrictive type at this point, though.

I would be surprised if it would cause anyone problems to make this change at this stage, but ok …

>>
>> Question #5
>>
>> In the Bid Request message, various fields have the comment “Used in EFP trades”. Is there anything within the message that actually identifies it as being for an EFP trade ?
>>
>>
>>

>Will defer to the experts of the list bidding messages and process.

Can any expert in list bidding answer this please ?

> Please see responses below;
>
> >> Question #1
> >>
> >> In the Allocation message, “Y*” is used to indicate fields that are not required if AllocTransType=Cancel.
> >>
> >> In the case of the repeating group of orders, with the count field 73 (NoOrders) and the first repeating field 11 (ClOrdID) what does this mean ? Is it intended that in the case of a Cancel this group should not appear at all, or does it mean that NoOrders could be non-zero with a repeating group that does not include ClOrdID ?
> >> Similar question applies to the repeating group of allocations, with the count field 78 (NoAllocs) and the first repeating field 79 (AllocAccount), although in this case things are even more confused by the comment “Required if NoAllocs > 0” on the AllocAccount field.
> >>
>
> >Cancelling, Rejecting, or Replacing an allocation is for a single Allocation message and thus is for all (if more than >one) orders, execs, and AllocAccounts specified. i.e. you cannot reject or replace just one allocated account entry, >rather must rebook the entire allocation.
>
> I am still not clear on this. To clarify the answer can you just give yes or no to each of the following sub-questions please, all questions referring to the Allocation message for the case when AllocTransTyp = Cancel;
> (a) Can NoOrders be specified within the message ?
---- Yes

> (b) Can NoOrders be non-zero ?
---- Yes

> © Can NoOrders be zero ?
---- It should not be specified if zero (assume unknown).

> (d) Is ClOrdID required if NoOrders > 0 ?
---- Yes. It’s the first field in the repeating group and if the repeating group is used, must be present. Note that it already has a “MANUAL” value as an option.

> (e) Can NoAllocs be specified within the message ?
---- Yes

> (f) Can NoAllocs be non-zero ?
---- Yes

> (g) Can NoAllocs be zero ?
---- It should not be specified if zero (assume unknown).

> (h) Is AllocAccount required if NoAllocs > 0 ?
---- Yes. It’s the first field in the repeating group and if the repeating group is used, must be present.

> >> Question #3
> >>
> >> In the Settlement Instructions message various fields have the comment “May be required for SettlInstMode=1”. Can it be clarified under what circumstances the fields are required when SettlInstMode = 1 ?
> >>
>
> >See Appendix F - Settlement Instructions Field Usage Reference.
>
> Having now looked at Appendix F…
> (a) could we have a reference to Appendix F added to the text for the Settlement Instructions message in the 4.2 errata please ?
— Ok, Added to the Errata candidate list.

> (b) Should the SettlDeliveryType field in the Settlement Instructions message have the comment “May be required for SettlInstMode=1” added ?
— ok

> © In Appendix F, where it states “(either SettlDepositoryCode or SecuritySettl*)”, if SettlDepositoryCode is not specified, which of the SecuritySettl* fields are required (none, one or more, all) ?
— one or more.

> (d) The comment on the SettlLocation field is still ambiguous – would a more accurate version of the text “may not be required if StandInstDbType and StandInstDbID are used” be “not required if Standing Instructions can be referenced by a combination of StandInstDbType, StandInstDbName and StandInstDbID” ?
— Will add to consideration list for Errata.

> Please see responses below;
>
> >> Question #1
> >>
> >> In the Allocation message, “Y*” is used to indicate fields that are not required if AllocTransType=Cancel.
> >>
> >> In the case of the repeating group of orders, with the count field 73 (NoOrders) and the first repeating field 11 (ClOrdID) what does this mean ? Is it intended that in the case of a Cancel this group should not appear at all, or does it mean that NoOrders could be non-zero with a repeating group that does not include ClOrdID ?
> >> Similar question applies to the repeating group of allocations, with the count field 78 (NoAllocs) and the first repeating field 79 (AllocAccount), although in this case things are even more confused by the comment “Required if NoAllocs > 0” on the AllocAccount field.
> >>
>
> >Cancelling, Rejecting, or Replacing an allocation is for a single Allocation message and thus is for all (if more than >one) orders, execs, and AllocAccounts specified. i.e. you cannot reject or replace just one allocated account entry, >rather must rebook the entire allocation.
>
> I am still not clear on this. To clarify the answer can you just give yes or no to each of the following sub-questions please, all questions referring to the Allocation message for the case when AllocTransTyp = Cancel;
> (a) Can NoOrders be specified within the message ?
---- Yes

> (b) Can NoOrders be non-zero ?
---- Yes

> © Can NoOrders be zero ?
---- It should not be specified if zero (assume unknown).

> (d) Is ClOrdID required if NoOrders > 0 ?
---- Yes. It’s the first field in the repeating group and if the repeating group is used, must be present. Note that it already has a “MANUAL” value as an option.

> (e) Can NoAllocs be specified within the message ?
---- Yes

> (f) Can NoAllocs be non-zero ?
---- Yes

> (g) Can NoAllocs be zero ?
---- It should not be specified if zero (assume unknown).

> (h) Is AllocAccount required if NoAllocs > 0 ?
---- Yes. It’s the first field in the repeating group and if the repeating group is used, must be present.

> >> Question #3
> >>
> >> In the Settlement Instructions message various fields have the comment “May be required for SettlInstMode=1”. Can it be clarified under what circumstances the fields are required when SettlInstMode = 1 ?
> >>
>
> >See Appendix F - Settlement Instructions Field Usage Reference.
>
> Having now looked at Appendix F…
> (a) could we have a reference to Appendix F added to the text for the Settlement Instructions message in the 4.2 errata please ?
— Ok, Added to the Errata candidate list.

> (b) Should the SettlDeliveryType field in the Settlement Instructions message have the comment “May be required for SettlInstMode=1” added ?
— ok

> © In Appendix F, where it states “(either SettlDepositoryCode or SecuritySettl*)”, if SettlDepositoryCode is not specified, which of the SecuritySettl* fields are required (none, one or more, all) ?
— one or more.

> (d) The comment on the SettlLocation field is still ambiguous – would a more accurate version of the text “may not be required if StandInstDbType and StandInstDbID are used” be “not required if Standing Instructions can be referenced by a combination of StandInstDbType, StandInstDbName and StandInstDbID” ?
— Will add to consideration list for Errata.