From 487f8489b6022869374d7fd0e9ab63dda093d63f Mon Sep 17 00:00:00 2001 From: Dino Patti Date: Wed, 30 Sep 2026 10:01:20 +0200 Subject: [PATCH] ENTSOG PartyId type is entsoe.eu, not entsog.eu The ENTSOG AS4 Usage Profile fixes the PartyId type attribute to http://www.entsoe.eu/eic-codes/eic-party-codes-x (the EIC scheme is maintained by ENTSO-E). The constant had entsog.eu. Co-Authored-By: Claude Opus 5.5 (1M context) --- .../java/com/helger/phase4/profile/entsog/ENTSOGPMode.java | 7 ++++++- .../com/helger/phase4/profile/entsog/ENTSOGPModeTest.java | 6 ++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/phase4-profile-entsog/src/main/java/com/helger/phase4/profile/entsog/ENTSOGPMode.java b/phase4-profile-entsog/src/main/java/com/helger/phase4/profile/entsog/ENTSOGPMode.java index 71c9c7f0e..29de1dd71 100644 --- a/phase4-profile-entsog/src/main/java/com/helger/phase4/profile/entsog/ENTSOGPMode.java +++ b/phase4-profile-entsog/src/main/java/com/helger/phase4/profile/entsog/ENTSOGPMode.java @@ -57,7 +57,12 @@ public final class ENTSOGPMode { public static final String DEFAULT_AGREEMENT_ID = "urn:as4:agreement"; - public static final String ENTSOG_PARTY_ID_TYPE = "http://www.entsog.eu/eic-codes/eic-party-codes-x"; + /** + * The fixed value of the type attribute of PartyId, indicating that the + * value is an EIC code. Note the host name is "entsoe.eu" (ENTSO-E maintains the EIC scheme), not + * "entsog.eu". See the ENTSOG AS4 Usage Profile, section "Party Identification". + */ + public static final String ENTSOG_PARTY_ID_TYPE = "http://www.entsoe.eu/eic-codes/eic-party-codes-x"; private ENTSOGPMode () {} diff --git a/phase4-profile-entsog/src/test/java/com/helger/phase4/profile/entsog/ENTSOGPModeTest.java b/phase4-profile-entsog/src/test/java/com/helger/phase4/profile/entsog/ENTSOGPModeTest.java index 25b82f3e7..9ed98063b 100644 --- a/phase4-profile-entsog/src/test/java/com/helger/phase4/profile/entsog/ENTSOGPModeTest.java +++ b/phase4-profile-entsog/src/test/java/com/helger/phase4/profile/entsog/ENTSOGPModeTest.java @@ -19,6 +19,7 @@ */ package com.helger.phase4.profile.entsog; +import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import org.junit.ClassRule; @@ -47,5 +48,10 @@ public void testENTSOGPMode () IPModeIDProvider.DEFAULT_DYNAMIC, false); assertNotNull (aPMode); + + // ENTSOG AS4 Usage Profile: "The type attribute on the PartyId element MUST be present and + // set to the fixed value http://www.entsoe.eu/eic-codes/eic-party-codes-x" + assertEquals ("http://www.entsoe.eu/eic-codes/eic-party-codes-x", aPMode.getInitiator ().getIDType ()); + assertEquals ("http://www.entsoe.eu/eic-codes/eic-party-codes-x", aPMode.getResponder ().getIDType ()); } }