Migrating FA(2) to FA(3): the official XSD diff
The official declaration comparison finds 30 added, 0 removed and 27 changed element declarations, from 301 to 331. Named element and type ancestors form the identity. Changed containers and their descendants count separately; this is not a count of independent legal requirements. Descriptive annotations are excluded.
FA(3) adds Podmiot2/JST and GV, payment LinkDoPlatnosci and IPKSeF, and the structured Zalacznik attachment. A new declaration is not necessarily mandatory: inspect minOccurs and its surrounding choice or sequence.
P_7 and P_7Z change from TZnakowy to TZnakowy512. ZnacznikZaplatyCzesciowej changes from TWybor1 to TWybor1_2. TerminOpis changes from text to a structure with Ilosc, Jednostka and ZdarzeniePoczatkowe. DataUmowy and DataZamowienia change to TDataU.
Map the source data before generating FA (3), version 1-0E and WariantFormularza=3 in the new namespace. Preserve sequence order and check the complete document. Arithmetic and tax applicability require separate checks. This validator accepts FA(3) only, so it cannot validate the source FA(2) document.
Added declarations
Faktura/Fa/Platnosc/IPKSeFFaktura/Fa/Platnosc/LinkDoPlatnosciFaktura/Fa/Platnosc/TerminPlatnosci/TerminOpis/IloscFaktura/Fa/Platnosc/TerminPlatnosci/TerminOpis/JednostkaFaktura/Fa/Platnosc/TerminPlatnosci/TerminOpis/ZdarzeniePoczatkoweFaktura/Fa/Platnosc/ZaplataCzesciowa/FormaPlatnosciFaktura/Fa/Platnosc/ZaplataCzesciowa/OpisPlatnosciFaktura/Fa/Platnosc/ZaplataCzesciowa/PlatnoscInnaFaktura/Podmiot2/GVFaktura/Podmiot2/JSTFaktura/ZalacznikFaktura/Zalacznik/BlokDanychFaktura/Zalacznik/BlokDanych/MetaDaneFaktura/Zalacznik/BlokDanych/MetaDane/ZKluczFaktura/Zalacznik/BlokDanych/MetaDane/ZWartoscFaktura/Zalacznik/BlokDanych/TabelaFaktura/Zalacznik/BlokDanych/Tabela/OpisFaktura/Zalacznik/BlokDanych/Tabela/SumaFaktura/Zalacznik/BlokDanych/Tabela/Suma/SKomFaktura/Zalacznik/BlokDanych/Tabela/TMetaDaneFaktura/Zalacznik/BlokDanych/Tabela/TMetaDane/TKluczFaktura/Zalacznik/BlokDanych/Tabela/TMetaDane/TWartoscFaktura/Zalacznik/BlokDanych/Tabela/TNaglowekFaktura/Zalacznik/BlokDanych/Tabela/TNaglowek/KolFaktura/Zalacznik/BlokDanych/Tabela/TNaglowek/Kol/NKomFaktura/Zalacznik/BlokDanych/Tabela/WierszFaktura/Zalacznik/BlokDanych/Tabela/Wiersz/WKomFaktura/Zalacznik/BlokDanych/TekstFaktura/Zalacznik/BlokDanych/Tekst/AkapitFaktura/Zalacznik/BlokDanych/ZNaglowek
Removed declarations
0
Changed declarations
FakturaFaktura/FaFaktura/Fa/DaneFaKorygowanejFaktura/Fa/FaWierszFaktura/Fa/FaWiersz/P_7Faktura/Fa/PlatnoscFaktura/Fa/Platnosc/TerminPlatnosciFaktura/Fa/Platnosc/TerminPlatnosci/TerminFaktura/Fa/Platnosc/TerminPlatnosci/TerminOpisFaktura/Fa/Platnosc/ZaplataCzesciowaFaktura/Fa/Platnosc/ZnacznikZaplatyCzesciowejFaktura/Fa/WarunkiTransakcjiFaktura/Fa/WarunkiTransakcji/UmowyFaktura/Fa/WarunkiTransakcji/Umowy/DataUmowyFaktura/Fa/WarunkiTransakcji/ZamowieniaFaktura/Fa/WarunkiTransakcji/Zamowienia/DataZamowieniaFaktura/Fa/ZamowienieFaktura/Fa/Zamowienie/ZamowienieWierszFaktura/Fa/Zamowienie/ZamowienieWiersz/P_7ZFaktura/Podmiot2Faktura/Podmiot3Faktura/Podmiot3/Adrestype:TNaglowek/DataWytworzeniaFatype:TNaglowek/KodFormularzatype:TNaglowek/WariantFormularzatype:TPodmiot2/NrIDtype:TPodmiot3/NrID
{
"named_types": {
"added": [
"TDataU",
"TZnakowy2"
],
"removed": [],
"changed": [
"TKodWaluty",
"TNaglowek",
"TNrRB",
"TPodmiot2",
"TPodmiot3",
"TRolaPodmiotu3",
"TStawkaPodatku"
]
},
"schema_sha256": {
"FA2": "b8acb60f0692ac2b05ac40ffcb1929b4d68c12b3c486cac4322e1699796f6999",
"FA3": "b646b6b525f51adf1bb2545f111fc8ca6e7aa6dd2f98948f1667d3695c06d958"
}
}MF FA(2) 12648 · MF FA(3) 13775 · Full structural diff / pełny diff