Skip to content
This repository was archived by the owner on Oct 6, 2025. It is now read-only.

Commit 0b8175e

Browse files
committed
analyseBefundCode identifier now also removed from blood-gas-panel
Modified the "observation identifier remover" profile modifier to remove the analyseBefundCode identifier not only from the profile https://www.medizininformatik-initiative.de/fhir/core/modul-labor/StructureDefinition/ObservationLab but also from https://www.netzwerk-universitaetsmedizin.de/fhir/StructureDefinition/blood-gas-panel
1 parent d536227 commit 0b8175e

3 files changed

Lines changed: 11 additions & 9 deletions

File tree

codex-process-data-transfer/src/main/java/de/netzwerk_universitaetsmedizin/codex/processes/data_transfer/spring/config/ValidationConfig.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,7 @@ public static enum TerminologyServerConnectionTestStatus
201201
@ProcessDocumentation(description = "List of StructureDefinition modifier classes, modifiers are executed before atempting to generate a StructureDefinition snapshot", processNames = "wwwnetzwerk-universitaetsmedizinde_dataSend")
202202
@Value("#{'${de.netzwerk.universitaetsmedizin.codex.gecco.validation.structuredefinition.modifierClasses:"
203203
+ "de.netzwerk_universitaetsmedizin.codex.processes.data_transfer.validation.structure_definition.ClosedTypeSlicingRemover,"
204-
+ "de.netzwerk_universitaetsmedizin.codex.processes.data_transfer.validation.structure_definition.MiiModuleLabObservationLab10IdentifierRemover,"
204+
+ "de.netzwerk_universitaetsmedizin.codex.processes.data_transfer.validation.structure_definition.ObservationIdentifierRemover,"
205205
+ "de.netzwerk_universitaetsmedizin.codex.processes.data_transfer.validation.structure_definition.SliceMinFixer"
206206
+ "}'.trim().split('(,[ ]?)|(\\n)')}")
207207
private List<String> structureDefinitionModifierClasses;

codex-process-data-transfer/src/main/java/de/netzwerk_universitaetsmedizin/codex/processes/data_transfer/validation/PluginSnapshotGeneratorWithModifiers.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,23 +11,22 @@
1111
import org.springframework.beans.factory.InitializingBean;
1212

1313
import de.netzwerk_universitaetsmedizin.codex.processes.data_transfer.validation.structure_definition.ClosedTypeSlicingRemover;
14-
import de.netzwerk_universitaetsmedizin.codex.processes.data_transfer.validation.structure_definition.MiiModuleLabObservationLab10IdentifierRemover;
14+
import de.netzwerk_universitaetsmedizin.codex.processes.data_transfer.validation.structure_definition.ObservationIdentifierRemover;
1515
import de.netzwerk_universitaetsmedizin.codex.processes.data_transfer.validation.structure_definition.SliceMinFixer;
1616
import de.netzwerk_universitaetsmedizin.codex.processes.data_transfer.validation.structure_definition.StructureDefinitionModifier;
1717

1818
public class PluginSnapshotGeneratorWithModifiers implements SnapshotGenerator, InitializingBean
1919
{
2020
public static final StructureDefinitionModifier CLOSED_TYPE_SLICING_REMOVER = new ClosedTypeSlicingRemover();
21-
public static final StructureDefinitionModifier MII_MODULE_LAB_OBSERVATION_LAB_1_0_IDENTIFIER_REMOVER = new MiiModuleLabObservationLab10IdentifierRemover();
21+
public static final StructureDefinitionModifier OBSERVATION_IDENTIFIER_REMOVER = new ObservationIdentifierRemover();
2222
public static final StructureDefinitionModifier SLICE_MIN_FIXER = new SliceMinFixer();
2323

2424
private final SnapshotGenerator delegate;
2525
private final List<StructureDefinitionModifier> structureDefinitionModifiers = new ArrayList<>();
2626

2727
public PluginSnapshotGeneratorWithModifiers(SnapshotGenerator delegate)
2828
{
29-
this(delegate, Arrays.asList(CLOSED_TYPE_SLICING_REMOVER, MII_MODULE_LAB_OBSERVATION_LAB_1_0_IDENTIFIER_REMOVER,
30-
SLICE_MIN_FIXER));
29+
this(delegate, Arrays.asList(CLOSED_TYPE_SLICING_REMOVER, OBSERVATION_IDENTIFIER_REMOVER, SLICE_MIN_FIXER));
3130
}
3231

3332
public PluginSnapshotGeneratorWithModifiers(SnapshotGenerator delegate,

codex-process-data-transfer/src/main/java/de/netzwerk_universitaetsmedizin/codex/processes/data_transfer/validation/structure_definition/MiiModuleLabObservationLab10IdentifierRemover.java renamed to codex-process-data-transfer/src/main/java/de/netzwerk_universitaetsmedizin/codex/processes/data_transfer/validation/structure_definition/ObservationIdentifierRemover.java

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,17 +10,20 @@
1010
import org.slf4j.LoggerFactory;
1111

1212
/**
13-
* Mandatory identifier on ObservationLab not compatible with data protection rules with current pseudonymization.
13+
* Mandatory identifier on Observation not compatible with data protection rules and current pseudonymization
14+
* implementation.
1415
*/
15-
public class MiiModuleLabObservationLab10IdentifierRemover implements StructureDefinitionModifier
16+
public class ObservationIdentifierRemover implements StructureDefinitionModifier
1617
{
17-
private static final Logger logger = LoggerFactory.getLogger(MiiModuleLabObservationLab10IdentifierRemover.class);
18+
private static final Logger logger = LoggerFactory.getLogger(ObservationIdentifierRemover.class);
1819

1920
@Override
2021
public StructureDefinition modify(StructureDefinition sd)
2122
{
2223
if ("https://www.medizininformatik-initiative.de/fhir/core/modul-labor/StructureDefinition/ObservationLab"
23-
.equals(sd.getUrl()) && "1.0".equals(sd.getVersion()))
24+
.equals(sd.getUrl())
25+
|| "https://www.netzwerk-universitaetsmedizin.de/fhir/StructureDefinition/blood-gas-panel"
26+
.equals(sd.getUrl()))
2427
{
2528
Predicate<? super ElementDefinition> toRemove = e -> e.hasPath()
2629
&& e.getPath().startsWith("Observation.identifier");

0 commit comments

Comments
 (0)