From 2feb79ce5eba00740e4b4fb1c0a52ef8e5292bd2 Mon Sep 17 00:00:00 2001 From: mark Date: Tue, 2 Sep 2025 12:35:58 +0100 Subject: [PATCH 1/5] Initial draft --- .../xsd/ts_104144_EPOCAdditionalInfo.xsd | 63 +++++++++++++++++++ testing/xml/ts_104144_xsd.json | 1 + 2 files changed, 64 insertions(+) diff --git a/104144/schema/xsd/ts_104144_EPOCAdditionalInfo.xsd b/104144/schema/xsd/ts_104144_EPOCAdditionalInfo.xsd index 0c671832..5bd44b81 100644 --- a/104144/schema/xsd/ts_104144_EPOCAdditionalInfo.xsd +++ b/104144/schema/xsd/ts_104144_EPOCAdditionalInfo.xsd @@ -7,6 +7,7 @@ + @@ -16,4 +17,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/testing/xml/ts_104144_xsd.json b/testing/xml/ts_104144_xsd.json index 2ae1b305..dc8e4357 100644 --- a/testing/xml/ts_104144_xsd.json +++ b/testing/xml/ts_104144_xsd.json @@ -11,6 +11,7 @@ "103120/schema/xsd/ts_103120_Task.xsd", "103120/schema/xsd/ts_103120_TrafficPolicy.xsd", "103280/TS_103_280.xsd", + "104144/schema/xsd/ts_104144_EPOCAdditionalInfo.xsd", "testing/deps/xmldsig/xmldsig-core-schema.xsd", "103120/examples/xml/FooServiceSchema.xsd" ], -- GitLab From 5330eb2e501f66abd9467f450ff01ad5f8658484 Mon Sep 17 00:00:00 2001 From: mark Date: Wed, 24 Sep 2025 14:28:13 +0100 Subject: [PATCH 2/5] Updating to use new object and updated example --- 104144/examples/form3.xml | 49 +++++++++++- .../xsd/ts_104144_EPOCAdditionalInfo.xsd | 63 --------------- 104144/schema/xsd/ts_104144_Form3.xsd | 79 +++++++++++++++++++ testing/xml/ts_104144_xsd.json | 1 + 4 files changed, 125 insertions(+), 67 deletions(-) create mode 100644 104144/schema/xsd/ts_104144_Form3.xsd diff --git a/104144/examples/form3.xml b/104144/examples/form3.xml index f4c0cddb..de1c428b 100644 --- a/104144/examples/form3.xml +++ b/104144/examples/form3.xml @@ -1,5 +1,5 @@ - +
DE @@ -64,9 +64,7 @@ InformationRequiredFromIssuingAuthority: SectionF_1_Form3 LPTaskStatus Invalid - Reason: INCOMPLETE -Reason: CONTAINS_MANIFEST_ERRORS -ExplanationOrOtherReason:SectionD_1_Form3 + Incomplete and conflict of law @@ -95,6 +93,49 @@ ExplanationOrOtherReason:SectionD_1_Form3 + + 2 + + + 8e3bec9c-0851-46b4-8444-4d6f0384af56 + DE + service-provider-1 + + f966e795-bc92-4bc4-9c6b-96c1b1b8cb1d + + + INCOMPLETE + CONFLICT_OF_LAWS + Other free text can go here + + + Title of law + Applicable statutory provision + + + FUNDAMENTAL_RIGHTS_OF_INDIVIDUALS + Description of conflicting obligation + + + FUNDAMENTAL_INTERESTS_OF_THIRD_COUNTRY + Description of conflicting obligation + + + OTHER_INTERESTS + Description of conflicting obligation + + + Why law is applicable + Why conflict of law is considered + Link between service provider and third country + Consequences for addressee + Any other relevant information + + PRESERVED + Any additional information from section G + + + diff --git a/104144/schema/xsd/ts_104144_EPOCAdditionalInfo.xsd b/104144/schema/xsd/ts_104144_EPOCAdditionalInfo.xsd index 5bd44b81..0c671832 100644 --- a/104144/schema/xsd/ts_104144_EPOCAdditionalInfo.xsd +++ b/104144/schema/xsd/ts_104144_EPOCAdditionalInfo.xsd @@ -7,7 +7,6 @@ - @@ -17,66 +16,4 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/104144/schema/xsd/ts_104144_Form3.xsd b/104144/schema/xsd/ts_104144_Form3.xsd new file mode 100644 index 00000000..c965f3c7 --- /dev/null +++ b/104144/schema/xsd/ts_104144_Form3.xsd @@ -0,0 +1,79 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/testing/xml/ts_104144_xsd.json b/testing/xml/ts_104144_xsd.json index dc8e4357..accb9320 100644 --- a/testing/xml/ts_104144_xsd.json +++ b/testing/xml/ts_104144_xsd.json @@ -12,6 +12,7 @@ "103120/schema/xsd/ts_103120_TrafficPolicy.xsd", "103280/TS_103_280.xsd", "104144/schema/xsd/ts_104144_EPOCAdditionalInfo.xsd", + "104144/schema/xsd/ts_104144_Form3.xsd", "testing/deps/xmldsig/xmldsig-core-schema.xsd", "103120/examples/xml/FooServiceSchema.xsd" ], -- GitLab From f02b087490229e92cccf3399090cd5d4b0ba753f Mon Sep 17 00:00:00 2001 From: mark Date: Wed, 24 Sep 2025 16:34:15 +0100 Subject: [PATCH 3/5] Correcting dictionary and example --- 104144/dictionaries/ts_104144_DictionaryDefinitions.xml | 2 +- 104144/examples/form3.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/104144/dictionaries/ts_104144_DictionaryDefinitions.xml b/104144/dictionaries/ts_104144_DictionaryDefinitions.xml index b9654374..e0e37ba1 100644 --- a/104144/dictionaries/ts_104144_DictionaryDefinitions.xml +++ b/104144/dictionaries/ts_104144_DictionaryDefinitions.xml @@ -330,7 +330,7 @@ EPOCNotificationType - DeFactoImpossibility + NonExecution Indicates that the Service Provider has raised an object to the EPOC or EPOC-PR according to the Regulation [i.1] Form 3. diff --git a/104144/examples/form3.xml b/104144/examples/form3.xml index de1c428b..6c1fcf06 100644 --- a/104144/examples/form3.xml +++ b/104144/examples/form3.xml @@ -34,7 +34,7 @@ ETSI EPOCNotificationType - DeFactoImpossibility + NonExecution true 2025-05-30T14:54:24+01:00 -- GitLab From b7a635e845b91d2b33fc173579e2bfa7677be109 Mon Sep 17 00:00:00 2001 From: mark Date: Wed, 1 Oct 2025 10:11:03 +0100 Subject: [PATCH 4/5] Indenting? --- 104144/examples/form3.xml | 260 +++++++++++++++++++------------------- 1 file changed, 130 insertions(+), 130 deletions(-) diff --git a/104144/examples/form3.xml b/104144/examples/form3.xml index 6c1fcf06..b74a4a13 100644 --- a/104144/examples/form3.xml +++ b/104144/examples/form3.xml @@ -1,52 +1,52 @@ -
- - DE - service-provider-1 - - - XX - RI_API - - 116e67f9-82ad-481e-9b17-e9f007f91434 - 2025-05-30T14:54:24.545502+01:00 - - V1.20.1 - EU - v1.1.1 - -
- - - - - 0 - - - 6801ad8b-4e86-4237-acaa-611684207af9 - DE - service-provider-1 - - 7e84603b-be7b-4cba-af26-8468d177f36a - - Notification of Form 3 - - ETSI - EPOCNotificationType - NonExecution - - true - 2025-05-30T14:54:24+01:00 - - - 7e84603b-be7b-4cba-af26-8468d177f36a - - ETSI - AuthorisationStatus - Invalid - - From Form 3 Section E (as an example of what could be done) +
+ + DE + service-provider-1 + + + XX + RI_API + + 116e67f9-82ad-481e-9b17-e9f007f91434 + 2025-05-30T14:54:24.545502+01:00 + + V1.20.1 + EU + v1.1.1 + +
+ + + + + 0 + + + 6801ad8b-4e86-4237-acaa-611684207af9 + DE + service-provider-1 + + 7e84603b-be7b-4cba-af26-8468d177f36a + + Notification of Form 3 + + ETSI + EPOCNotificationType + NonExecution + + true + 2025-05-30T14:54:24+01:00 + + + 7e84603b-be7b-4cba-af26-8468d177f36a + + ETSI + AuthorisationStatus + Invalid + + From Form 3 Section E (as an example of what could be done) TitleOfLaw: SectionE_1_Form3 ApplicableStatutoryProvision: SectionE_2_Form3 WhyLawIsApplicable: SectionE_6_Form3 @@ -56,87 +56,87 @@ ConsequencesForAddressee: SectionE_9_Form3 AnyOtherRelevantInformation: SectionE_10_Form3 From Section F InformationRequiredFromIssuingAuthority: SectionF_1_Form3 - - - f966e795-bc92-4bc4-9c6b-96c1b1b8cb1d - - ETSI - LPTaskStatus - Invalid - - Incomplete and conflict of law - - - - - - - 1 - - - 03e36530-cdf2-4cb8-bfa3-ceff9fd96c59 - DE - service-provider-1 - - 7e84603b-be7b-4cba-af26-8468d177f36a - - EPOC/EPOC-PR Form - - ETSI - EPOCDocumentType - Form3 - - - RVBPQy9FUE9DLVBSIEZvcm0= - text/plain - - - - - - 2 - - - 8e3bec9c-0851-46b4-8444-4d6f0384af56 - DE - service-provider-1 - - f966e795-bc92-4bc4-9c6b-96c1b1b8cb1d - - - INCOMPLETE - CONFLICT_OF_LAWS - Other free text can go here - - - Title of law - Applicable statutory provision - - - FUNDAMENTAL_RIGHTS_OF_INDIVIDUALS - Description of conflicting obligation - - - FUNDAMENTAL_INTERESTS_OF_THIRD_COUNTRY - Description of conflicting obligation - - - OTHER_INTERESTS - Description of conflicting obligation - - - Why law is applicable - Why conflict of law is considered - Link between service provider and third country - Consequences for addressee - Any other relevant information - - PRESERVED - Any additional information from section G - - - - - - +
+ + f966e795-bc92-4bc4-9c6b-96c1b1b8cb1d + + ETSI + LPTaskStatus + Invalid + + Incomplete and conflict of law + +
+
+
+
+ + 1 + + + 03e36530-cdf2-4cb8-bfa3-ceff9fd96c59 + DE + service-provider-1 + + 7e84603b-be7b-4cba-af26-8468d177f36a + + EPOC/EPOC-PR Form + + ETSI + EPOCDocumentType + Form3 + + + RVBPQy9FUE9DLVBSIEZvcm0= + text/plain + + + + + + 2 + + + 8e3bec9c-0851-46b4-8444-4d6f0384af56 + DE + service-provider-1 + + f966e795-bc92-4bc4-9c6b-96c1b1b8cb1d + + + INCOMPLETE + CONFLICT_OF_LAWS + Other free text can go here + + + Title of law + Applicable statutory provision + + + FUNDAMENTAL_RIGHTS_OF_INDIVIDUALS + Description of conflicting obligation + + + FUNDAMENTAL_INTERESTS_OF_THIRD_COUNTRY + Description of conflicting obligation + + + OTHER_INTERESTS + Description of conflicting obligation + + + Why law is applicable + Why conflict of law is considered + Link between service provider and third country + Consequences for addressee + Any other relevant information + + PRESERVED + Any additional information from section G + + + +
+
+
\ No newline at end of file -- GitLab From a1ca5311df83838cbe9edf9ccea7a85a25e9f6a3 Mon Sep 17 00:00:00 2001 From: vanschelts Date: Wed, 1 Oct 2025 14:27:56 -0400 Subject: [PATCH 5/5] Fix XML linting, improve error marker --- testing/xml/lint_xml.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/testing/xml/lint_xml.py b/testing/xml/lint_xml.py index 85365e36..fdaac248 100644 --- a/testing/xml/lint_xml.py +++ b/testing/xml/lint_xml.py @@ -21,11 +21,11 @@ def print_colorized_diff_line(line: str): def lint(file: Path): completed = subprocess.run( - ["xmllint", str(file)], capture_output=True, text=True, encoding="utf8" + ["xmllint", "--format", str(file)], capture_output=True, text=True, encoding="utf8" ) if completed.returncode != 0: - print(f" {str(f)}: FAIL") + print(f"❌ {str(f)}: FAIL") print(f" xmlint error code {completed.returncode}") lines = completed.stderr.splitlines() for line in lines: -- GitLab