Conversation
|
Answer from SIX : no XSD update possible. Without being pessimistic, I was expecting an answer like this.
|
|
And the answer from PHP : it is a known bug not from PHP but libxml library. The bug is fixed since version 2.10.0 and Ubuntu version 20.04 (my dev env and the one used in the github workflow) is shipped with the version 2.9.10. From my point of view, the XSD should be adapted as I suggested in the first message, at least in this library so that the test suite can validate the XML generated. By the way, the version of libxml can be known by checking |
|
Is there someone to review / merge this PR in a new major version 3.X ? |
This PR supports SPS-2022 specifications, issue #10
Delta guide
Specifications
As I have been dealing with several banks for years, I know that there will be a complex transition during 2024 between banks that only accept SPS-2021 files, or only SPS-2022 files, or both. Some banks still provide V11 files instead of CAMT.054 files, for example. I therefore decided to support both formats via the
CustomerCreditTransferconstructor parameter, for reasons of flexibility and backwards compatibility.Changes summary for SPS-2022:
BIC→BICFIReqdExctnDtmust haveDtwrapper for dates€ȘșȚțCtctDtlselementsThere's a real problem with the file
pain.001.001.09.ch.03.xsdon line 1556 with the new RegEx which validates text characters. PHP libxml throw a formatting rules error. After some tests, it works if the lasts rules are inversed.Official :
<xs:pattern value="[\p{IsBasicLatin}\p{IsLatin-1Supplement}\p{IsLatinExtended-A}€ȘșȚț-[\p{C}]]+"/>Fixed :
<xs:pattern value="[\p{IsBasicLatin}\p{IsLatin-1Supplement}\p{IsLatinExtended-A}-\p{C}€ȘșȚț]+"/>Currently, the file
pain.001.001.09.ch.03.xsdcontains the fixed pattern. I have contacted SIX to see if it is possible to change this rule. I will post an update here.