diff --git a/fim-adapter/pom.xml b/fim-adapter/pom.xml
new file mode 100644
index 0000000000000000000000000000000000000000..b689f1c70031ac3c2eef2d5ec97131dce5e75ac3
--- /dev/null
+++ b/fim-adapter/pom.xml
@@ -0,0 +1,85 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>de.ozgcloud.eingang</groupId>
+        <artifactId>eingang-manager</artifactId>
+        <version>2.5.0-SNAPSHOT</version>
+    </parent>
+    <artifactId>fim-adapter</artifactId>
+    <name>Eingangs Adapter - FIM</name>
+
+    <dependencies>
+        <!--ozg-Cloud-->
+        <dependency>
+            <groupId>de.ozgcloud.eingang</groupId>
+            <artifactId>common</artifactId>
+        </dependency>
+
+        <!--spring-->
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-web</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-actuator</artifactId>
+        </dependency>
+
+        <!--test -->
+        <dependency>
+            <groupId>de.ozgcloud.eingang</groupId>
+            <artifactId>common</artifactId>
+            <type>test-jar</type>
+            <scope>test</scope>
+        </dependency>
+    </dependencies>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.springframework.boot</groupId>
+                <artifactId>spring-boot-maven-plugin</artifactId>
+            </plugin>
+
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-surefire-plugin</artifactId>
+            </plugin>
+
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-failsafe-plugin</artifactId>
+            </plugin>
+
+            <plugin>
+                <groupId>org.jacoco</groupId>
+                <artifactId>jacoco-maven-plugin</artifactId>
+            </plugin>
+        </plugins>
+    </build>
+
+    <profiles>
+        <profile>
+            <id>ci-build</id>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.springframework.boot</groupId>
+                        <artifactId>spring-boot-maven-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>build-image</id>
+                                <phase>
+                                    install</phase>
+                                <goals>
+                                    <goal>build-image</goal>
+                                </goals>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+    </profiles>
+</project>
diff --git a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimAdapterApplication.java b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimAdapterApplication.java
new file mode 100644
index 0000000000000000000000000000000000000000..7c3ad3b214b076f41c1cedec7292df37d7019c95
--- /dev/null
+++ b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimAdapterApplication.java
@@ -0,0 +1,15 @@
+package de.ozgcloud.eingang.fim;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+
+import java.util.TimeZone;
+
+@SpringBootApplication(scanBasePackages = { "de.ozgcloud" })
+public class FimAdapterApplication {
+
+    public static void main(String[] args) {
+        TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
+        SpringApplication.run(FimAdapterApplication.class, args);
+    }
+}
diff --git a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimDataController.java b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimDataController.java
new file mode 100644
index 0000000000000000000000000000000000000000..f3ed708b4080fe03670cff7a83316c0d877d5cfb
--- /dev/null
+++ b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimDataController.java
@@ -0,0 +1,13 @@
+package de.ozgcloud.eingang.fim;
+
+import lombok.RequiredArgsConstructor;
+import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.ResponseBody;
+
+@Controller
+@ResponseBody
+@RequestMapping("formData")
+@RequiredArgsConstructor
+public class FimDataController {
+}
diff --git a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimDataMapper.java b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimDataMapper.java
new file mode 100644
index 0000000000000000000000000000000000000000..291f820bab4855cff880fc4c264b425c5e956252
--- /dev/null
+++ b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimDataMapper.java
@@ -0,0 +1,48 @@
+package de.ozgcloud.eingang.fim;
+
+import de.ozgcloud.eingang.common.formdata.FormData;
+import lombok.extern.log4j.Log4j2;
+import org.springframework.stereotype.Service;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+import org.w3c.dom.Text;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+import java.util.function.BiFunction;
+
+@Service
+@Log4j2
+public class FimDataMapper implements BiFunction<Document, FimScheme, FormData.FormDataBuilder> {
+
+    @Override
+    public FormData.FormDataBuilder apply(final Document document, final FimScheme fimScheme) {
+        final FormData.FormDataBuilder formDataBuilder = FormData.builder();
+        Map<String, Object> data = new LinkedHashMap<>();
+        process(document.getDocumentElement(), fimScheme, data, 0);
+        formDataBuilder.formData(data);
+        return formDataBuilder;
+    }
+
+    private void process(final Element element, final FimScheme fimScheme, final Map<String, Object> data, final int level) {
+        final NodeList childNodes = element.getChildNodes();
+
+        LOG.debug(">".repeat(level) + " " + element.getNodeName());
+
+        for(int i = 0; i < childNodes.getLength();i++) {
+            final Node child = childNodes.item(i);
+            if (!(child instanceof Element)) {
+                continue;
+            }
+            if (child.getChildNodes().getLength() == 1 && child.getChildNodes().item(0) instanceof Text textNode) {
+                data.put(fimScheme.getFieldName(child.getNodeName()), textNode.getTextContent());
+            } else {
+                final Map<String, Object> childMap = new LinkedHashMap<>();
+                data.put(fimScheme.getFieldName(child.getNodeName()), childMap);
+                process((Element) child, fimScheme, childMap, level + 1);
+            }
+        }
+    }
+}
diff --git a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimException.java b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimException.java
new file mode 100644
index 0000000000000000000000000000000000000000..5d2cf83c9efd7ebbbb35640fe2d61dba5da8d27b
--- /dev/null
+++ b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimException.java
@@ -0,0 +1,7 @@
+package de.ozgcloud.eingang.fim;
+
+public class FimException extends RuntimeException {
+    public FimException(final String ex) {
+        super(ex);
+    }
+}
diff --git a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimScheme.java b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimScheme.java
new file mode 100644
index 0000000000000000000000000000000000000000..71bd6e9ac2a0f737cc309a04ce2825e3b11164fe
--- /dev/null
+++ b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimScheme.java
@@ -0,0 +1,42 @@
+package de.ozgcloud.eingang.fim;
+
+import de.ozgcloud.eingang.fim.adapter.FimSchemeAdapter;
+import lombok.Getter;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+
+import org.w3c.dom.NodeList;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+
+public class FimScheme {
+
+    private final Document doc;
+    @Getter
+    private final FimSchemeIdentifier identifier;
+
+    @Getter
+    private final FimSchemeAdapter schemeAdapter;
+    private final Map<String, Element> fieldIndex = new LinkedHashMap<>();
+
+    FimScheme(final Document doc, final FimSchemeIdentifier identifier, final FimSchemeAdapter schemeAdapter) {
+        this.doc = doc;
+        this.identifier = identifier;
+        this.schemeAdapter = schemeAdapter;
+
+        buildFieldIndex();
+    }
+    private void buildFieldIndex() {
+        final NodeList groupList = doc.getElementsByTagName("xs:element");
+        for (int i = 0; i < groupList.getLength();i++) {
+            final Element group = (Element) groupList.item(i);
+            final String groupName = group.getAttribute("name");
+            fieldIndex.put(groupName, group);
+        }
+    }
+
+    public String getFieldName(final String fieldName) {
+        return schemeAdapter.getFieldName(fieldIndex, fieldName);
+    }
+}
diff --git a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimSchemeCatalogue.java b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimSchemeCatalogue.java
new file mode 100644
index 0000000000000000000000000000000000000000..d7cca74faee98eb222c03ec8c0326f3c00671951
--- /dev/null
+++ b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimSchemeCatalogue.java
@@ -0,0 +1,6 @@
+package de.ozgcloud.eingang.fim;
+
+import java.util.LinkedHashMap;
+
+public class FimSchemeCatalogue extends LinkedHashMap<FimSchemeIdentifier, FimScheme> {
+}
diff --git a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimSchemeIdentifier.java b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimSchemeIdentifier.java
new file mode 100644
index 0000000000000000000000000000000000000000..357219d1e22433f2bb3f3469ab1a0a441c0586a7
--- /dev/null
+++ b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimSchemeIdentifier.java
@@ -0,0 +1,30 @@
+package de.ozgcloud.eingang.fim;
+
+import java.util.Objects;
+
+public class FimSchemeIdentifier {
+
+    private final String schemeId;
+
+    FimSchemeIdentifier(String schemeId) {
+        this.schemeId = schemeId;
+    }
+
+    public static FimSchemeIdentifier fromString(final String s) {
+        return new FimSchemeIdentifier(s);
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) return true;
+        if (o == null || getClass() != o.getClass()) return false;
+        FimSchemeIdentifier that = (FimSchemeIdentifier) o;
+        return Objects.equals(schemeId, that.schemeId);
+    }
+
+    @Override
+    public int hashCode() {
+        return Objects.hash(schemeId);
+    }
+
+}
diff --git a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimService.java b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimService.java
new file mode 100644
index 0000000000000000000000000000000000000000..b297cc7518f699bbc8aa00f69a1fe22a7851cdfe
--- /dev/null
+++ b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/FimService.java
@@ -0,0 +1,73 @@
+package de.ozgcloud.eingang.fim;
+
+import de.ozgcloud.eingang.common.formdata.FormData;
+import de.ozgcloud.eingang.fim.adapter.FimSchemeAdapter;
+import io.micrometer.common.util.StringUtils;
+import org.springframework.beans.factory.InitializingBean;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Service;
+import org.w3c.dom.Document;
+import org.xml.sax.SAXException;
+
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.ParserConfigurationException;
+import java.io.File;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+
+@Service
+public class FimService implements InitializingBean {
+
+    @Autowired
+    private final FimDataMapper fimDataMapper = null;
+
+    @Value("${fim.scheme.locations}")
+    private final List<String> fimSchemes = new ArrayList<>();
+    private final FimSchemeCatalogue fimSchemeCatalogue = new FimSchemeCatalogue();
+
+    // TODO Provide a mechanism for non default fim scheme adapters
+    private static final FimSchemeAdapter DEFAULT_FIM_SCHEME_ADAPTER = new FimSchemeAdapter();
+
+    public void afterPropertiesSet() throws ParserConfigurationException, IOException, SAXException {
+        for (final String fimSchemaLocation : fimSchemes) {
+            final FimScheme fimScheme = loadFimScheme(fimSchemaLocation);
+            fimSchemeCatalogue.put(fimScheme.getIdentifier(), fimScheme);
+        }
+    }
+
+    private FimScheme loadFimScheme(final String path) throws ParserConfigurationException, IOException, SAXException {
+        final DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
+        final Document doc = builder.parse(new File("src/main/resources/" + path));
+        final String targetNamespace = doc.getDocumentElement().getAttribute("targetNamespace");
+        return new FimScheme(doc, FimSchemeIdentifier.fromString(targetNamespace), DEFAULT_FIM_SCHEME_ADAPTER);
+    }
+
+    public FormData transformDocument(final Document document) {
+        final String schemeName = document.getDocumentElement().getAttribute("xmlns:xfd");
+        if (StringUtils.isEmpty(schemeName)) {
+            throw new FimException("XML Document does not provide a scheme");
+        }
+        final FimScheme scheme = getSchemeForIdentifier(schemeName);
+        final FormData.FormDataBuilder builder = fimDataMapper.apply(document, scheme);
+
+        final FimSchemeAdapter adapter = scheme.getSchemeAdapter();
+
+        adapter.extractAntragsteller(builder);
+
+        adapter.extractZustaendigeStelle(builder);
+
+        return builder.build();
+    }
+
+    public FimScheme getSchemeForIdentifier(final String fimSchemaName) {
+        final FimSchemeIdentifier fimSchemeIdentifier = FimSchemeIdentifier.fromString(fimSchemaName);
+        final FimScheme fimScheme = fimSchemeCatalogue.get(fimSchemeIdentifier);
+        if (fimScheme == null) {
+            throw  new FimException("Cannot find schema for: "  + fimSchemaName);
+        }
+        return fimScheme;
+    }
+}
diff --git a/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/adapter/FimSchemeAdapter.java b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/adapter/FimSchemeAdapter.java
new file mode 100644
index 0000000000000000000000000000000000000000..4e4cf873dc70a406c5e4a71b7c8ba05e534b2c27
--- /dev/null
+++ b/fim-adapter/src/main/java/de/ozgcloud/eingang/fim/adapter/FimSchemeAdapter.java
@@ -0,0 +1,44 @@
+package de.ozgcloud.eingang.fim.adapter;
+
+import de.ozgcloud.eingang.common.formdata.FormData;
+import de.ozgcloud.eingang.fim.FimException;
+import de.ozgcloud.eingang.fim.FimSchemeIdentifier;
+import org.w3c.dom.Element;
+import org.w3c.dom.NodeList;
+
+import java.util.Map;
+
+public class FimSchemeAdapter {
+
+    public FimSchemeIdentifier forIdentifier() {
+        return null;
+    }
+    public String cleanNodeName(final String s) {
+        return s.trim();
+    }
+
+    public String getFieldName(final Map<String, Element> fieldIndex, final String fieldName) {
+        final String[] fieldNameParts = fieldName.split(":");
+        final String fieldNameWithoutNamespace = fieldNameParts[fieldNameParts.length - 1];
+        if (!fieldIndex.containsKey(fieldNameWithoutNamespace)) {
+            throw new FimException("Cannot find Field: " + fieldName);
+        }
+        final Element nodeNameElement = fieldIndex.get(fieldNameWithoutNamespace);
+        final String nodeName = getNameForElement(nodeNameElement);
+        return cleanNodeName(nodeName);
+    }
+
+    public String getNameForElement(final Element element) {
+        final NodeList nameTags = element.getElementsByTagName("name");
+        if (nameTags.getLength() != 1) {
+            throw new FimException("Multiple name tags for element: " + element.getAttribute("name"));
+        }
+        return nameTags.item(0).getTextContent();
+    }
+
+    public void extractAntragsteller(final FormData.FormDataBuilder builder) {
+    }
+
+    public void extractZustaendigeStelle (final FormData.FormDataBuilder builder) {
+    }
+}
diff --git a/fim-adapter/src/main/resources/application.yml b/fim-adapter/src/main/resources/application.yml
new file mode 100644
index 0000000000000000000000000000000000000000..9286c91676078f4a7bc1fe1b86242d8952db4735
--- /dev/null
+++ b/fim-adapter/src/main/resources/application.yml
@@ -0,0 +1,51 @@
+logging:
+  level:
+    ROOT: WARN
+    '[de.ozgcloud]': INFO
+    
+spring:
+  profiles:
+    include: fim
+  servlet:
+    multipart:
+      max-file-size: 124MB
+      max-request-size: 256MB
+      file-size-threshold: 10MB 
+    
+server:
+  http2:
+    enabled: true
+  error:
+    include-stacktrace: never
+    
+management:
+  server:
+    port: 9999
+  health:
+    livenessState:
+      enabled: true
+    readinessState:
+      enabled: true
+  endpoint:
+    health:
+      group:
+        exploratory:
+          include: livenessState,readinessState,ping
+          show-details: always
+      probes:
+        enabled: true
+    prometheus:
+      enabled: true
+  endpoints:
+    web:
+      exposure:
+        include: health,prometheus
+        
+ozgcloud:
+  adapter:
+    routingStrategy: SINGLE
+
+fim:
+  scheme:
+    locations: >
+      fim-s17000652_1.4/S17000652V1.4_xfall.xsd
\ No newline at end of file
diff --git a/fim-adapter/src/main/resources/fim-s17000652_1.4/C17000420_genericode.xml b/fim-adapter/src/main/resources/fim-s17000652_1.4/C17000420_genericode.xml
new file mode 100644
index 0000000000000000000000000000000000000000..585c7415cc3fe84afd749cc634fb068716e1a523
--- /dev/null
+++ b/fim-adapter/src/main/resources/fim-s17000652_1.4/C17000420_genericode.xml
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><gc:CodeList xmlns:gc="http://docs.oasis-open.org/codelist/ns/genericode/1.0/"><gc:Identification><gc:ShortName>codelist</gc:ShortName><gc:LongName></gc:LongName><gc:Version>2022-02-16</gc:Version><gc:CanonicalUri>urn:de:fim:codeliste:dokumenttyp</gc:CanonicalUri><gc:CanonicalVersionUri>urn:de:fim:codeliste:dokumenttyp_2022-02-16</gc:CanonicalVersionUri></gc:Identification><gc:ColumnSet><gc:Column Id="code" Use="required"><gc:ShortName>Code</gc:ShortName><gc:Data Type="string"/></gc:Column><gc:Column Id="name" Use="required"><gc:ShortName>Name</gc:ShortName><gc:Data Type="string"/></gc:Column><gc:Key Id="codeKey"><gc:ShortName>CodeKey</gc:ShortName><gc:ColumnRef Ref="code"/></gc:Key><gc:Key Id="codenameKey"><gc:ShortName>CodenameKey</gc:ShortName><gc:ColumnRef Ref="name"/></gc:Key></gc:ColumnSet><gc:SimpleCodeList><gc:Row><gc:Value ColumnRef="code"><gc:SimpleValue>01</gc:SimpleValue></gc:Value><gc:Value ColumnRef="name"><gc:SimpleValue>Anzeige einer öffentlichen Versammlung unter freiem Himmel (ortsfest)</gc:SimpleValue></gc:Value></gc:Row><gc:Row><gc:Value ColumnRef="code"><gc:SimpleValue>02</gc:SimpleValue></gc:Value><gc:Value ColumnRef="name"><gc:SimpleValue>Anzeige einer sich fortbewegenden Versammlung (Aufzug, Umzug)</gc:SimpleValue></gc:Value></gc:Row></gc:SimpleCodeList></gc:CodeList>
\ No newline at end of file
diff --git a/fim-adapter/src/main/resources/fim-s17000652_1.4/C17001208_genericode.xml b/fim-adapter/src/main/resources/fim-s17000652_1.4/C17001208_genericode.xml
new file mode 100644
index 0000000000000000000000000000000000000000..cbf9e3f5693fb67c02b34955ee48beefc278c948
--- /dev/null
+++ b/fim-adapter/src/main/resources/fim-s17000652_1.4/C17001208_genericode.xml
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><gc:CodeList xmlns:gc="http://docs.oasis-open.org/codelist/ns/genericode/1.0/"><gc:Identification><gc:ShortName></gc:ShortName><gc:LongName></gc:LongName><gc:Version>2023-09-26</gc:Version><gc:CanonicalUri>urn:de:fim:codeliste:artteilnahmeveranstaltung</gc:CanonicalUri><gc:CanonicalVersionUri>urn:de:fim:codeliste:artteilnahmeveranstaltung_2023-09-26</gc:CanonicalVersionUri></gc:Identification><gc:ColumnSet><gc:Column Id="code" Use="required"><gc:ShortName>Code</gc:ShortName><gc:Data Type="string"/></gc:Column><gc:Column Id="name" Use="required"><gc:ShortName>Name</gc:ShortName><gc:Data Type="string"/></gc:Column><gc:Key Id="codeKey"><gc:ShortName>CodeKey</gc:ShortName><gc:ColumnRef Ref="code"/></gc:Key><gc:Key Id="codenameKey"><gc:ShortName>CodenameKey</gc:ShortName><gc:ColumnRef Ref="name"/></gc:Key></gc:ColumnSet><gc:SimpleCodeList><gc:Row><gc:Value ColumnRef="code"><gc:SimpleValue>001</gc:SimpleValue></gc:Value><gc:Value ColumnRef="name"><gc:SimpleValue>zu Fuß</gc:SimpleValue></gc:Value></gc:Row><gc:Row><gc:Value ColumnRef="code"><gc:SimpleValue>002</gc:SimpleValue></gc:Value><gc:Value ColumnRef="name"><gc:SimpleValue>per Fahrrad</gc:SimpleValue></gc:Value></gc:Row><gc:Row><gc:Value ColumnRef="code"><gc:SimpleValue>003</gc:SimpleValue></gc:Value><gc:Value ColumnRef="name"><gc:SimpleValue>per Motorrad</gc:SimpleValue></gc:Value></gc:Row><gc:Row><gc:Value ColumnRef="code"><gc:SimpleValue>004</gc:SimpleValue></gc:Value><gc:Value ColumnRef="name"><gc:SimpleValue>per Personenkraftwagen</gc:SimpleValue></gc:Value></gc:Row><gc:Row><gc:Value ColumnRef="code"><gc:SimpleValue>005</gc:SimpleValue></gc:Value><gc:Value ColumnRef="name"><gc:SimpleValue>Sonstiges</gc:SimpleValue></gc:Value></gc:Row></gc:SimpleCodeList></gc:CodeList>
\ No newline at end of file
diff --git a/fim-adapter/src/main/resources/fim-s17000652_1.4/C17001209_genericode.xml b/fim-adapter/src/main/resources/fim-s17000652_1.4/C17001209_genericode.xml
new file mode 100644
index 0000000000000000000000000000000000000000..b748e48cd9a77475c3c2cea0020d592bbb9cd61f
--- /dev/null
+++ b/fim-adapter/src/main/resources/fim-s17000652_1.4/C17001209_genericode.xml
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="UTF-8"?><gc:CodeList xmlns:gc="http://docs.oasis-open.org/codelist/ns/genericode/1.0/"><gc:Identification><gc:ShortName></gc:ShortName><gc:LongName></gc:LongName><gc:Version>2023-09-29</gc:Version><gc:CanonicalUri>urn:de:fim:codeliste:buehneversammlung</gc:CanonicalUri><gc:CanonicalVersionUri>urn:de:fim:codeliste:buehneversammlung_2023-09-29</gc:CanonicalVersionUri></gc:Identification><gc:ColumnSet><gc:Column Id="code" Use="required"><gc:ShortName>Code</gc:ShortName><gc:Data Type="string"/></gc:Column><gc:Column Id="name" Use="required"><gc:ShortName>Name</gc:ShortName><gc:Data Type="string"/></gc:Column><gc:Key Id="codeKey"><gc:ShortName>CodeKey</gc:ShortName><gc:ColumnRef Ref="code"/></gc:Key><gc:Key Id="codenameKey"><gc:ShortName>CodenameKey</gc:ShortName><gc:ColumnRef Ref="name"/></gc:Key></gc:ColumnSet><gc:SimpleCodeList><gc:Row><gc:Value ColumnRef="code"><gc:SimpleValue>001</gc:SimpleValue></gc:Value><gc:Value ColumnRef="name"><gc:SimpleValue>Ja</gc:SimpleValue></gc:Value></gc:Row><gc:Row><gc:Value ColumnRef="code"><gc:SimpleValue>002</gc:SimpleValue></gc:Value><gc:Value ColumnRef="name"><gc:SimpleValue>Nein</gc:SimpleValue></gc:Value></gc:Row><gc:Row><gc:Value ColumnRef="code"><gc:SimpleValue>003</gc:SimpleValue></gc:Value><gc:Value ColumnRef="name"><gc:SimpleValue>Nicht bekannt</gc:SimpleValue></gc:Value></gc:Row><gc:Row><gc:Value ColumnRef="code"><gc:SimpleValue>004</gc:SimpleValue></gc:Value><gc:Value ColumnRef="name"><gc:SimpleValue>Keine</gc:SimpleValue></gc:Value></gc:Row></gc:SimpleCodeList></gc:CodeList>
\ No newline at end of file
diff --git a/fim-adapter/src/main/resources/fim-s17000652_1.4/S17000652V1.4_xfall.xsd b/fim-adapter/src/main/resources/fim-s17000652_1.4/S17000652V1.4_xfall.xsd
new file mode 100644
index 0000000000000000000000000000000000000000..c5c859d0a2fec4d7fb668678afd680cbbcbf0088
--- /dev/null
+++ b/fim-adapter/src/main/resources/fim-s17000652_1.4/S17000652V1.4_xfall.xsd
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?><xs:schema xmlns:xfd="urn:xoev-de:xfall:standard:fim-s17000652_1.4" xmlns:xs="http://www.w3.org/2001/XMLSchema" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="urn:xoev-de:xfall:standard:fim-s17000652_1.4" version="V1.4"><xs:element name="fim.S17000652.17000652001004"><xs:complexType><xs:sequence><xs:element name="G17003529" type="xfd:G17003529"><xs:annotation><xs:documentation><name>EfA|SH Standard</name><bezug>tbd</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F17009191" type="xs:boolean"><xs:annotation><xs:documentation><name>Anzeige durch Person </name><definition>Wahrheitswert: ja oder nein&#xD;
+</definition><bezug>Art. 8 GG;§ 11 VershFG SG&#xD;
+</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="G17002112" type="xfd:G17002112"><xs:annotation><xs:documentation><name>Anzeigenersteller:in</name><bezug>Art. 8 GG; § 11 VershFG SG</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="G17005403" type="xfd:G17005403"><xs:annotation><xs:documentation><name>Organisation </name><definition>Angaben zur Organisation, welche die Versammlung durchführen möchte</definition><bezug>Art. 8 GG;§ 11 VershFG SG&#xD;
+</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F17003371" type="xs:string"><xs:annotation><xs:documentation><name>Anzeigenart</name><bezug>Art. 8 GG; § 11 VershFG SG</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="G17005404" type="xfd:G17005404"><xs:annotation><xs:documentation><name>Versammlung (ortsfest)</name><bezug>Art. 8 GG ; § 11 VershFG SH</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="G17005410" type="xfd:G17005410"><xs:annotation><xs:documentation><name>Versammlung (Aufzug)</name><bezug>Art. 8 GG ; § 11 VersFG SH</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType></xs:element><xs:complexType name="G17003529"><xs:sequence><xs:element name="G05001479" type="xfd:G05001479"><xs:annotation><xs:documentation><name>nachrichtenkopf</name><beschreibung>Der Nachrichtenkopf beinhaltet alle erforderlichen Informationen für die Zustellung und Verifizierung mit Hilfe des DVDV.</beschreibung><bezug>DVDV</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F17005454" type="xs:boolean"><xs:annotation><xs:documentation><name>Datenschutzhinweis DSGVO</name><bezug>tbd</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F17005455" type="xs:boolean"><xs:annotation><xs:documentation><name>Zustimmung zu einem digitalen Bescheid</name><bezug>tbd</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F17005533" type="xs:string"><xs:annotation><xs:documentation><name>UUID</name><bezug>tbd</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G05001479"><xs:sequence><xs:element name="G05001480" type="xfd:G05001480"><xs:annotation><xs:documentation><name>identifikation.nachricht</name><bezug>DVDV</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="G05001481" type="xfd:G05001481"><xs:annotation><xs:documentation><name>Leser</name><bezug>DVDV</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="G05001482" type="xfd:G05001482"><xs:annotation><xs:documentation><name>Autor</name><bezug>DVDV</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G05001480"><xs:sequence><xs:element name="F05002750" type="xs:string"><xs:annotation><xs:documentation><name>nachrichtenUUID</name><bezug>DVDV</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F05002751" type="xs:string"><xs:annotation><xs:documentation><name>erstellungszeitpunkt</name><bezug>DVDV</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F05002752" type="xs:string"><xs:annotation><xs:documentation><name>nachrichtentyp</name><bezug>DVDV</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F05002753" type="xs:string"><xs:annotation><xs:documentation><name>dienstname</name><bezug>DVDV</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G05001481"><xs:sequence><xs:element name="F05002754" type="xs:string"><xs:annotation><xs:documentation><name>Organisationsname</name><bezug>DVDV</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F05002755" type="xs:string"><xs:annotation><xs:documentation><name>Organisationsschlüssel</name><bezug>DVDV</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F05002756" type="xs:string"><xs:annotation><xs:documentation><name>Kategorie</name><bezug>DVDV</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G05001482"><xs:sequence><xs:element name="F05002754" type="xs:string"><xs:annotation><xs:documentation><name>Organisationsname</name><bezug>DVDV</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F05002755" type="xs:string"><xs:annotation><xs:documentation><name>Organisationsschlüssel</name><bezug>DVDV</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F05002756" type="xs:string"><xs:annotation><xs:documentation><name>Kategorie</name><bezug>DVDV</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G17002112"><xs:sequence><xs:element name="F60000228" type="xs:string"><xs:annotation><xs:documentation><name>Vornamen</name><beschreibung>Laut BSI TR-03123 soll Vorname ≤ 80 Zeichen betragen.&#xD;
+Laut PAuswV soll Vorname nicht mehr als 26 Zeichen bzw. 2*40 = 80 Zeichen betragen.</beschreibung><definition>Plural zu Vorname</definition><bezug>§ 5 (2) Nr. 2 PAuswG vom 21.6.2019; Anhang 3 PAuswV vom 28.9.2017; &#xD;
+Tabelle 9 BSI TR-03123 Version 1.5.1; XOEV.Kernkomponente.NameNatuerlichePerson.vorname vom 31.08.2020</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F60000227" type="xs:string"><xs:annotation><xs:documentation><name>Familienname</name><beschreibung>Laut BSI TR-03123 soll die Gesamtlänge für Familienname, Titel und Geburtsname nicht mehr als 120 Zeichen betragen. Laut PAuswV soll Name (Familienname und Geburtsname) nicht mehr als 2*26 = 52 Zeichen bzw. 3*40 = 120 Zeichen betragen.</beschreibung><definition>Familienname einer natürlichen Person bestehend aus Nachname, Zuname bzw. Familienname.</definition><bezug>§ 5 (2) Nr. 1 PAuswG vom 21.6.2019; Anhang 3 PAuswV vom 28.9.2017; Tabelle 9 BSI TR-03123 Version 1.5.1; XOEV.Kernkomponente.NameNatuerlichePerson.familienname vom 31.01.2020</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="G60000086" type="xfd:G60000086"><xs:annotation><xs:documentation><name>Anschrift Inland Straßenanschrift</name></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F60000240" type="xs:string"><xs:annotation><xs:documentation><name>Telefon</name><beschreibung>Dieses Feld wurde angelehnt an ITU E.123. Eine Prüfung über ein Pattern erfolgt nicht, um den Eingebenden nicht zu überfordern.</beschreibung><definition>Telefonnummer</definition><bezug>ITU E.123</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F60000242" type="xs:string"><xs:annotation><xs:documentation><name>E-Mail</name><definition>Elektronische Adresse zum Senden und Empfangen von digitalen Nachrichten (E-Mails) z.B. MaxMustermann@email.de</definition><bezug>RFC 5322; RFC 5321</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F17009011" type="xs:boolean"><xs:annotation><xs:documentation><name>Auswahl Anzeigenersteller:in = Verantwortliche Versammlungsleiter:in</name><definition>Angabe ob Sie als Anzeigenersteller:in ebenfalls Verantwortliche Versammlungsleiter:in sind</definition><bezug>Art. 8 GG; § 11 VershFG SG</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="G17002127" type="xfd:G17002127"><xs:annotation><xs:documentation><name>Verantwortliche Versammlungsleiter:in</name><bezug>Art. 8 GG; § 11 VershFG SG</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G60000086"><xs:sequence><xs:element name="F60000243" type="xs:string"><xs:annotation><xs:documentation><name>Straße</name><beschreibung>Kompatibilität zu EPA in TR XhD v 1.4 sollte Feldlänge min. 50. Bei XInneres 8 ist die Feldlänge &lt;= 55 Zeichen.</beschreibung><bezug>XInneres.Meldeanschrift.strasse Version 8</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F60000244" type="xs:string"><xs:annotation><xs:documentation><name>Hausnummer</name><beschreibung>Die Modellierung aus XInneres wurde nicht 1:1 übernommen, um die Komplexität für die Ausfüllenden nicht zu hoch zu setzen. Es wurde darauf verzichtet für das Ende von Hausnummernbereichen eigene Felder zu modellieren. Daher ist die Feldlänge hier heraufgesetzt und eine entsprechende Beschreibung wurde eingefügt. Die Feldlänge setzt sich aus der maximalen Feldlänge zweier Hausnummern (jeweils 4), zweier Buchstaben (jeweils 1) und eines Zeichen (-) zusammen.</beschreibung><definition>Es sind die Ziffern und Buchstabeneiner Hausnummer anzugeben. Eine Hausnummer dient der genauen Lokalisierung eines Grundstücks, Gebäudes oder Gebäudeteils (Eingang) in einer Straße. Geben Sie Hausnummernbereiche immer nach folgendem Beispiel ohne Leerzeichen an: 12a-14d</definition><bezug>XInneres.Meldeanschrift.hausnummer Version 8</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F60000246" type="xs:string"><xs:annotation><xs:documentation><name>Postleitzahl</name><definition>Es ist die Postleitzahl anzugeben.&#xD;
+&#xD;
+Der Typ dieses Elements ist eine Einschränkung des Basistyps String.Latin.</definition><bezug>XInneres.Meldeanschrift.postleitzahl Version 8</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F60000247" type="xs:string"><xs:annotation><xs:documentation><name>Ort</name><beschreibung>Kompatibilität zu EPA in TR XhD v 1.4 sollte Feldlänge min. 44. Laut PAuswV 2*25 = 50 Zeichen. Laut Xinneres.Meldeanschrift.Wohnort Version 8 = 40 Zeichen.&#xD;
+Laut BSI TR-03123 ≤ 105 Zeichen.</beschreibung><definition>Enthält den Namen eines Ortes (Gemeinde, Ortschaft oder Stadt).</definition><bezug>§ 5 (2) Nr. 9 PAuswG vom 21.6.2019; Anhang 3 Abschnitt 1 (Wohnort) PAuswV vom 28.9.2017; Tabelle 11 BSI TR-03123, Version 1.5.1;  Xinneres.Meldeanschrift.Wohnort Version 8; XOEV.Kernkomponente.Anschrift.ort vom 31.01.2020</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F60000248" type="xs:string"><xs:annotation><xs:documentation><name>Anschrift Zusatzangaben</name><definition>Es sind Zusatzangaben zur Anschrift anzugeben, z.B. Hinterhaus, Gartenhaus.&#xD;
+</definition><bezug>XInneres.Meldeanschrift.zusatzangaben Version 8</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G17002127"><xs:sequence><xs:element name="F60000228" type="xs:string"><xs:annotation><xs:documentation><name>Vornamen</name><beschreibung>Laut BSI TR-03123 soll Vorname ≤ 80 Zeichen betragen.&#xD;
+Laut PAuswV soll Vorname nicht mehr als 26 Zeichen bzw. 2*40 = 80 Zeichen betragen.</beschreibung><definition>Plural zu Vorname</definition><bezug>§ 5 (2) Nr. 2 PAuswG vom 21.6.2019; Anhang 3 PAuswV vom 28.9.2017; &#xD;
+Tabelle 9 BSI TR-03123 Version 1.5.1; XOEV.Kernkomponente.NameNatuerlichePerson.vorname vom 31.08.2020</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F60000227" type="xs:string"><xs:annotation><xs:documentation><name>Familienname</name><beschreibung>Laut BSI TR-03123 soll die Gesamtlänge für Familienname, Titel und Geburtsname nicht mehr als 120 Zeichen betragen. Laut PAuswV soll Name (Familienname und Geburtsname) nicht mehr als 2*26 = 52 Zeichen bzw. 3*40 = 120 Zeichen betragen.</beschreibung><definition>Familienname einer natürlichen Person bestehend aus Nachname, Zuname bzw. Familienname.</definition><bezug>§ 5 (2) Nr. 1 PAuswG vom 21.6.2019; Anhang 3 PAuswV vom 28.9.2017; Tabelle 9 BSI TR-03123 Version 1.5.1; XOEV.Kernkomponente.NameNatuerlichePerson.familienname vom 31.01.2020</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="G60000086" type="xfd:G60000086"><xs:annotation><xs:documentation><name>Anschrift Inland Straßenanschrift</name></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F60000242" type="xs:string"><xs:annotation><xs:documentation><name>E-Mail</name><definition>Elektronische Adresse zum Senden und Empfangen von digitalen Nachrichten (E-Mails) z.B. MaxMustermann@email.de</definition><bezug>RFC 5322; RFC 5321</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F60000240" type="xs:string"><xs:annotation><xs:documentation><name>Telefon</name><beschreibung>Dieses Feld wurde angelehnt an ITU E.123. Eine Prüfung über ein Pattern erfolgt nicht, um den Eingebenden nicht zu überfordern.</beschreibung><definition>Telefonnummer</definition><bezug>ITU E.123</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F17011808" type="xs:string"><xs:annotation><xs:documentation><name>Telefonische Erreichbarkeit am Tag der Veranstaltung</name><bezug>§ 11 VershFG</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G17005403"><xs:sequence><xs:element name="G17007200" type="xfd:G17007200"><xs:annotation><xs:documentation><name>Daten der anzeigenden Organisation</name><bezug>Art. 8 GG ;§ 11 VershFG SH</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="G17007201" type="xfd:G17007201"><xs:annotation><xs:documentation><name>Ansprechperson der Organisation</name><definition>Sie sollten als Versammlungsleitung oder veranstaltende Person oder Organisation Ihre Telefonnummer oder E-Mail-Adresse, unter der Sie vor und während der Versammlung erreichbar sind, angeben. Dies dient der schnellen, einfachen und vertrauensvollen Zusammenarbeit mit der Versammlungsbehörde und der Sicherstellung des Schutzes Ihrer Versammlung.</definition><bezug>Art. 8 GG;§ 11 VershFG SG</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="G17002127" type="xfd:G17002127"><xs:annotation><xs:documentation><name>Verantwortliche Versammlungsleiter:in</name><bezug>Art. 8 GG; § 11 VershFG SG</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G17007200"><xs:sequence><xs:element name="F60000319" type="xs:string"><xs:annotation><xs:documentation><name>Eingetragener Name / Organisationsname</name><beschreibung>Laut XGewerbeanzeige.Betrieb.eingetragenerName soll der eingetragene Name 1-1000 Zeichen betragen.</beschreibung><definition>Die im Handels- oder Genossenschaftsregister eingetragene Firma eines wirtschaftlich Tätigen bzw. einer wirtschaftlichen Tätigkeit (z. B. eingetragenes Einzelunternehmen,eingetragene Zweigniederlassung) bzw. der im Vereinsregister, Partnerschaftsregister oder Stiftungsverzeichnis eingetragene Name.&#xD;
+&#xD;
+Der eingetragene Name kann auch in einem Register festgehalten sein, welches in einem anderen Staat geführt wird.&#xD;
+&#xD;
+Der eingetragene Name ist abzugrenzen von der Geschäftsbezeichnung. &#xD;
+&#xD;
+Das Kerndatenobjekt bildet auch die Namen juristischer Personen, Personengesellschaften oder sonstiger Personenvereinigungen ab, die nicht in einem Register, aber kraft Gesetz geführt werden.</definition><bezug>XOEV.Kernkomponente.NameOrganisation.name vom 01.08.2017; XGewerbeanzeige.Betrieb.eingetragenerName Version 2.2; XUnternehmen.Kerndatenmodell.Eingetragener Name Version 1.1</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F17011809" type="xs:string"><xs:annotation><xs:documentation><name>Organisationseinheit</name><definition>Optionale Angabe der Organisationseinheit</definition><bezug>Art. 8 GG;§ 11 VershFG SG</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="G60000086" type="xfd:G60000086"><xs:annotation><xs:documentation><name>Anschrift Inland Straßenanschrift</name><definition>Angaben für die Adressierung im Inland, soweit es sich um die Anschrift eines Gebäudes handelt.</definition><bezug>urn:xoevde:xunternehmen:kerndatenobjekt:anschriftinlandstrassenanschrift</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G60000086"><xs:sequence><xs:element name="F60000243" type="xs:string"><xs:annotation><xs:documentation><name>Straße</name><beschreibung>Kompatibilität zu EPA in TR XhD v 1.4 sollte Feldlänge min. 50. Bei XInneres 8 ist die Feldlänge &lt;= 55 Zeichen.</beschreibung><bezug>XInneres.Meldeanschrift.strasse Version 8</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F60000244" type="xs:string"><xs:annotation><xs:documentation><name>Hausnummer</name><beschreibung>Die Modellierung aus XInneres wurde nicht 1:1 übernommen, um die Komplexität für die Ausfüllenden nicht zu hoch zu setzen. Es wurde darauf verzichtet für das Ende von Hausnummernbereichen eigene Felder zu modellieren. Daher ist die Feldlänge hier heraufgesetzt und eine entsprechende Beschreibung wurde eingefügt. Die Feldlänge setzt sich aus der maximalen Feldlänge zweier Hausnummern (jeweils 4), zweier Buchstaben (jeweils 1) und eines Zeichen (-) zusammen.</beschreibung><definition>Es sind die Ziffern und Buchstabeneiner Hausnummer anzugeben. Eine Hausnummer dient der genauen Lokalisierung eines Grundstücks, Gebäudes oder Gebäudeteils (Eingang) in einer Straße. Geben Sie Hausnummernbereiche immer nach folgendem Beispiel ohne Leerzeichen an: 12a-14d</definition><bezug>XInneres.Meldeanschrift.hausnummer Version 8</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F60000246" type="xs:string"><xs:annotation><xs:documentation><name>Postleitzahl</name><definition>Es ist die Postleitzahl anzugeben.&#xD;
+&#xD;
+Der Typ dieses Elements ist eine Einschränkung des Basistyps String.Latin.</definition><bezug>XInneres.Meldeanschrift.postleitzahl Version 8</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F60000247" type="xs:string"><xs:annotation><xs:documentation><name>Ort</name><beschreibung>Kompatibilität zu EPA in TR XhD v 1.4 sollte Feldlänge min. 44. Laut PAuswV 2*25 = 50 Zeichen. Laut Xinneres.Meldeanschrift.Wohnort Version 8 = 40 Zeichen.
+Laut BSI TR-03123 kleiner gleich 105 Zeichen.</beschreibung><definition>Enthält den Namen eines Ortes (Gemeinde, Ortschaft oder Stadt).</definition><bezug>§ 5 (2) Nr. 9 PAuswG vom 21.6.2019; Anhang 3 Abschnitt 1 (Wohnort) PAuswV vom 28.9.2017; Tabelle 11 BSI TR-03123, Version 1.5.1;  Xinneres.Meldeanschrift.Wohnort Version 8; XOEV.Kernkomponente.Anschrift.ort vom 31.01.2020</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F60000248" type="xs:string"><xs:annotation><xs:documentation><name>Anschrift Zusatzangaben</name><definition>Es sind Zusatzangaben zur Anschrift anzugeben, z.B. Hinterhaus, Gartenhaus.&#xD;
+</definition><bezug>XInneres.Meldeanschrift.zusatzangaben Version 8</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G17007201"><xs:sequence><xs:element name="F60000228" type="xs:string"><xs:annotation><xs:documentation><name>Vornamen</name><beschreibung>Laut BSI TR-03123 soll Vorname &lt;= 80 Zeichen betragen.&#xD;
+Laut PAuswV soll Vorname nicht mehr als 26 Zeichen bzw. 2*40 = 80 Zeichen betragen.</beschreibung><definition>Plural zu Vorname</definition><bezug>§ 5 (2) Nr. 2 PAuswG vom 21.6.2019; Anhang 3 PAuswV vom 28.9.2017; &#xD;
+Tabelle 9 BSI TR-03123 Version 1.5.1; XOEV.Kernkomponente.NameNatuerlichePerson.vorname vom 31.08.2020</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F60000227" type="xs:string"><xs:annotation><xs:documentation><name>Familienname</name><beschreibung>Laut BSI TR-03123 soll die Gesamtlänge für Familienname, Titel und Geburtsname nicht mehr als 120 Zeichen betragen. Laut PAuswV soll Name (Familienname und Geburtsname) nicht mehr als 2*26 = 52 Zeichen bzw. 3*40 = 120 Zeichen betragen.</beschreibung><definition>Familienname einer natürlichen Person bestehend aus Nachname, Zuname bzw. Familienname.</definition><bezug>§ 5 (2) Nr. 1 PAuswG vom 21.6.2019; Anhang 3 PAuswV vom 28.9.2017; Tabelle 9 BSI TR-03123 Version 1.5.1; XOEV.Kernkomponente.NameNatuerlichePerson.familienname vom 31.01.2020</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F60000240" type="xs:string"><xs:annotation><xs:documentation><name>Telefon</name><beschreibung>Dieses Feld wurde angelehnt an ITU E.123. Eine Prüfung über ein Pattern erfolgt nicht, um den Eingebenden nicht zu überfordern.</beschreibung><definition>Telefonnummer</definition><bezug>ITU E.123</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F60000242" type="xs:string"><xs:annotation><xs:documentation><name>E-Mail</name><definition>Elektronische Adresse zum Senden und Empfangen von digitalen Nachrichten (E-Mails) z.B. MaxMustermann@email.de</definition><bezug>RFC 5322; RFC 5321</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G17005404"><xs:sequence><xs:element name="G17007202" type="xfd:G17007202"><xs:annotation><xs:documentation><name>Allgemeine Angaben zur Versammlung</name><bezug>Art. 8 GG ; § 11 VershFG SH</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="G17007205" type="xfd:G17007205"><xs:annotation><xs:documentation><name>Weitere Angaben </name><definition>Angaben zur geplanten Durchführung der Versammlung.</definition><bezug>Art. 8 GG ; §§ 9, 11 VersFG SH</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G17007202"><xs:sequence><xs:element name="F17003373" type="xs:string"><xs:annotation><xs:documentation><name>Thema der Versammlung</name><bezug>Art. 8 GG; § 11 VershFG SG</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F17011810" type="xs:string"><xs:annotation><xs:documentation><name>Beschreibung der Versammlung</name><bezug>Art. 8 GG ; § 11 VershFG SH</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F17003377" type="xs:string"><xs:annotation><xs:documentation><name>Versammlungsort</name><bezug>Art. 8 GG; § 11 VershFG SG</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="G17005405" type="xfd:G17005405"><xs:annotation><xs:documentation><name>Karte Versammlungsort</name><definition>Anlage eines Kartenausschnitts</definition><bezug>Art. 8 GG; § 11 VershFG SG</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="G17005406" type="xfd:G17005406"><xs:annotation><xs:documentation><name>Zeitraum (Versammlungsanzeige)</name><definition>Gibt den Anfang und das Ende eines Zeitraums an.</definition><bezug>Art. 8 GG; § 11 VershFG SG</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F17011814" type="xs:string"><xs:annotation><xs:documentation><name>Grund für die verspätete Anmeldung</name><definition>Im Falle der nicht fristgemäßen Anmeldung der Versammlung - Optional Grund ergänzen. </definition><bezug>Art. 8 GG ; § 11 VershFG SH</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F17011815" type="xs:string"><xs:annotation><xs:documentation><name>Telefonnummer zur Rücksprache der verspäteten Anmeldung</name><bezug>Art. 8 GG ; § 11 VershFG SH iVm ITU E.123</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G17005405"><xs:sequence><xs:element maxOccurs="5" minOccurs="0" name="F60000296" type="xs:string"><xs:annotation><xs:documentation><name>Nachweis</name><definition>Nachweisdokument, um eine Information zu bestätigen, z.B. Sachkundenachweis.</definition></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G17005406"><xs:sequence><xs:element name="F60000048" type="xs:date"><xs:annotation><xs:documentation><name>Anfang</name><definition>Beinhaltet das Datum des Anfangs eines Zeitraums.</definition><bezug>urn:xoev-de:kosit:xoev:kernkomponente:zeitraum vom 31.08.2020</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F17001348" type="xs:decimal"><xs:annotation><xs:documentation><name>Uhrzeit Start</name><bezug>div.</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F60000049" type="xs:date"><xs:annotation><xs:documentation><name>Ende</name><definition>Beinhaltet das Datum des Ende eines Zeitraums.</definition><bezug>urn:xoev-de:kosit:xoev:kernkomponente:zeitraum vom 31.08.2020</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F17001349" type="xs:decimal"><xs:annotation><xs:documentation><name>Uhrzeit Abschluss</name><bezug>div.</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G17007205"><xs:sequence><xs:element name="F17003379" type="xs:integer"><xs:annotation><xs:documentation><name>Anzahl der Teilnehmenden</name><bezug>Art. 8 GG; § 11 VershFG SH</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F17003380" type="xs:integer"><xs:annotation><xs:documentation><name>Anzahl eingeplanter Ordner:innen</name><definition>Empfehlung: 1 Ordner:in je 50 Teilnehmende</definition><bezug>Art. 8 GG; § 11 VershFG SG</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F17003382" type="xs:string"><xs:annotation><xs:documentation><name>Weitere teilnehmende Organisationen</name><bezug>Art. 8 GG; § 11 VershFG SG</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="G17007234" type="xfd:G17007234"><xs:annotation><xs:documentation><name>Aufbauzeit</name><bezug>§§ 11,14 VersFG SH</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="G17007235" type="xfd:G17007235"><xs:annotation><xs:documentation><name>Abbauzeit</name><bezug>§§ 11,14 VersFG SH</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F17003383" type="xs:string"><xs:annotation><xs:documentation><name>Demonstrationsmittel</name><bezug>Art. 8 GG; § 11 VershFG SG</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="G17007207" type="xfd:G17007207"><xs:annotation><xs:documentation><name>Zusätzliche Informationen zu den geplanten Demonstrationsmitteln</name><definition>Optionale Schätzung der Anzahl der Fahnen und Transparente.</definition><bezug>Art. 8 GG ; §§ 9, 11 VershFG SH</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F17003384" type="xs:string"><xs:annotation><xs:documentation><name>Lautsprechereinsatz</name><bezug>Art. 8 GG ; § 11 VersFG SG</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="G17007208" type="xfd:G17007208"><xs:annotation><xs:documentation><name>Zusätzliche Informationen zum geplanten Lautsprechereinsatz</name><definition>Angaben zum geplanten Einsatz von Lautsprechern und ggf. Transportfahrzeugen (Musikanlagen, Megafone, PKW/LKW usw.)</definition><bezug>Art. 8 GG ; § 11 VersFG SH</bezug></xs:documentation></xs:annotation></xs:element><xs:element maxOccurs="unbounded" minOccurs="0" name="G17007209" type="xfd:G17007209"><xs:annotation><xs:documentation><name>Geplante Bühnen</name><bezug>Art. 8 GG ; § 11 VersFG SH</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="G17007210" type="xfd:G17007210"><xs:annotation><xs:documentation><name>Lagepläne / Skizzen der Aufbauten, Bilder / Informationen zu den Demonstrationsmitteln oder sonstige Dokumente/Informationen hochladen</name><bezug>Art. 8 GG ; §§ 9, 11 VersFG SH</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G17007234"><xs:sequence><xs:element name="F17011826" type="xs:string"><xs:annotation><xs:documentation><name>Beträgt die Aufbauzeit über 30 Minuten?</name><bezug>Art. 8 GG ; § 11 VersFG SH</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F17011853" type="xs:integer"><xs:annotation><xs:documentation><name>Auf-/Abbauzeit &gt; 30 min </name><definition>Wenn die Auf- bzw. Abbauzeit mehr als 30 min beträgt in "F17011826 Beträgt die Aufbauzeit über 30 Minuten?" bzw. in "F17011827 Beträgt die Abbauzeit über 30 Minuten?" = Auswahl in C17001209 = 001 "Ja", wird "F17011853 Auf-/Abbauzeit &gt; 30 min" zu einer Pflichtangabe.&#xD;
+</definition><bezug>§§ 11,14 VersFG SH</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G17007235"><xs:sequence><xs:element name="F17011827" type="xs:string"><xs:annotation><xs:documentation><name>Beträgt die Abbauzeit über 30 Minuten?</name><bezug>Art. 8 GG ; § 11 VersFG SH</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F17011853" type="xs:integer"><xs:annotation><xs:documentation><name>Auf-/Abbauzeit &gt; 30 min </name><definition>Wenn die Auf- bzw. Abbauzeit mehr als 30 min beträgt in "F17011826 Beträgt die Aufbauzeit über 30 Minuten?" bzw. in "F17011827 Beträgt die Abbauzeit über 30 Minuten?" = Auswahl in C17001209 = 001 "Ja", wird "F17011853 Auf-/Abbauzeit &gt; 30 min" zu einer Pflichtangabe.&#xD;
+</definition><bezug>§§ 11,14 VersFG SH</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G17007207"><xs:sequence><xs:element minOccurs="0" name="F17011818" type="xs:integer"><xs:annotation><xs:documentation><name>Anzahl Transparente</name><bezug>Art. 8 GG ; § 11 VersFG SH</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F17011819" type="xs:integer"><xs:annotation><xs:documentation><name>Anzahl Fahnen</name><bezug>Art. 8 GG ; § 11 VersFG SH</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G17007208"><xs:sequence><xs:element minOccurs="0" name="F17011820" type="xs:integer"><xs:annotation><xs:documentation><name>Anzahl Lautsprecher(anlagen)</name><bezug>Art. 8 GG ; § 11 VersFG SH</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F17011821" type="xs:integer"><xs:annotation><xs:documentation><name>Anzahl Megafone</name><bezug>Art. 8 GG ; § 11 VersFG SH</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F17011822" type="xs:integer"><xs:annotation><xs:documentation><name>Anzahl PKW</name><bezug>Art. 8 GG ; § 11 VersFG SH</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F17011824" type="xs:integer"><xs:annotation><xs:documentation><name>Anzahl LKW</name><bezug>Art. 8 GG ; § 11 VersFG SH</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F17011823" type="xs:decimal"><xs:annotation><xs:documentation><name>Gewicht LKW</name><bezug>Art. 8 GG ; § 11 VersFG SH</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G17007209"><xs:sequence><xs:element name="F17011825" type="xs:boolean"><xs:annotation><xs:documentation><name>Fester Bühnenaufbau? </name><definition>Wahrheitswert: Auswahl = "ja" entspricht "Fester Aufbau" - Auswahl ="nein" entspricht "mobile Bühne"</definition><bezug>Art. 8 GG ; § 11 VersFG SH</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F60000302" type="xs:decimal"><xs:annotation><xs:documentation><name>Länge in m</name></xs:documentation></xs:annotation></xs:element><xs:element name="F60000303" type="xs:decimal"><xs:annotation><xs:documentation><name>Breite in m</name></xs:documentation></xs:annotation></xs:element><xs:element name="F60000311" type="xs:decimal"><xs:annotation><xs:documentation><name>Gewicht in kg</name></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G17007210"><xs:sequence><xs:element maxOccurs="unbounded" minOccurs="0" name="F60000296" type="xs:string"><xs:annotation><xs:documentation><name>Nachweis</name><definition>Nachweisdokument, um eine Information zu bestätigen, z.B. Sachkundenachweis.</definition></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G17005410"><xs:sequence><xs:element name="G17007211" type="xfd:G17007211"><xs:annotation><xs:documentation><name>Allgemeine Angaben zum Aufzug</name><bezug>Art. 8 GG ; § 11 VershFG SH</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F17011830" type="xs:string"><xs:annotation><xs:documentation><name>Art der Teilnahme</name><definition>Auswahl Art der Teilnahme</definition><bezug>Art. 8 GG ; § 11 VersFG SH</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="G17005412" type="xfd:G17005412"><xs:annotation><xs:documentation><name>Anfangspunkt</name><bezug>Art. 8 GG ; § 11 VersFG SG</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="G17005501" type="xfd:G17005501"><xs:annotation><xs:documentation><name>Streckenverlauf</name><definition>Angaben zum Streckenverlauf und ggf. Karte hinzufügen</definition><bezug>Art. 8 GG ; § 11 VersFG SG</bezug></xs:documentation></xs:annotation></xs:element><xs:element maxOccurs="20" minOccurs="0" name="G17005411" type="xfd:G17005411"><xs:annotation><xs:documentation><name>Zwischenkundgebung</name><definition>Angaben zu möglichen Zwischenkundgebungen</definition><bezug>Art. 8 GG; § 11 VershFG SG&#xD;
+</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F17009218" type="xs:boolean"><xs:annotation><xs:documentation><name>Anfangspunkt = Endpunkt der Versammlung</name><definition>Wenn die Versammlung am gleichen Ort beginnt an dem Sie auch endet</definition><bezug>Art. 8 GG;§ 11 VershFG SG&#xD;
+</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="G17005413" type="xfd:G17005413"><xs:annotation><xs:documentation><name>Anschrift Inland Straßenanschrift (Ende)</name><bezug>Art. 8 GG; § 11 VershFG SG</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="G17007205" type="xfd:G17007205"><xs:annotation><xs:documentation><name>Weitere Angaben </name><definition>Angaben zur geplanten Durchführung der Versammlung.</definition><bezug>Art. 8 GG ; §§ 9, 11 VersFG SH</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G17007211"><xs:sequence><xs:element name="F17011828" type="xs:string"><xs:annotation><xs:documentation><name>Thema des Aufzug</name><bezug>Art. 8 GG; § 11 VersFG SG</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F17011829" type="xs:string"><xs:annotation><xs:documentation><name>Beschreibung des Aufzug</name><bezug>Art. 8 GG ; § 11 VersFG SH</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="G17005406" type="xfd:G17005406"><xs:annotation><xs:documentation><name>Zeitraum (Versammlungsanzeige)</name><definition>Gibt den Anfang und das Ende eines Zeitraums an.</definition><bezug>Art. 8 GG; § 11 VershFG SG</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F17011814" type="xs:string"><xs:annotation><xs:documentation><name>Grund für die verspätete Anmeldung</name><definition>Im Falle der nicht fristgemäßen Anmeldung der Versammlung - Optional Grund ergänzen. </definition><bezug>Art. 8 GG ; § 11 VershFG SH</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F17011815" type="xs:string"><xs:annotation><xs:documentation><name>Telefonnummer zur Rücksprache der verspäteten Anmeldung</name><bezug>Art. 8 GG ; § 11 VershFG SH iVm ITU E.123</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G17005412"><xs:sequence><xs:element name="G60000086" type="xfd:G60000086"><xs:annotation><xs:documentation><name>Anschrift Inland Straßenanschrift</name><definition>Angaben für die Adressierung im Inland, soweit es sich um die Anschrift eines Gebäudes handelt.</definition><bezug>urn:xoevde:xunternehmen:kerndatenobjekt:anschriftinlandstrassenanschrift</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="G17005405" type="xfd:G17005405"><xs:annotation><xs:documentation><name>Karte Versammlungsort</name><definition>Anlage eines Kartenausschnitts</definition><bezug>Art. 8 GG; § 11 VershFG SG</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G17005501"><xs:sequence><xs:element name="F17009317" type="xs:string"><xs:annotation><xs:documentation><name>Beschreibung Streckenverlauf </name><definition>Freitextfeld zum Streckenverlauf.</definition><bezug>Art. 8 GG ; § 11 VersFG SG&#xD;
+</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="G17007212" type="xfd:G17007212"><xs:annotation><xs:documentation><name>Karte Streckenverlauf</name><definition>Anlage eines Kartenausschnitts</definition><bezug>Art. 8 GG; § 11 VershFG SG</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G17007212"><xs:sequence><xs:element maxOccurs="5" minOccurs="0" name="F60000296" type="xs:string"><xs:annotation><xs:documentation><name>Nachweis</name><definition>Nachweisdokument, um eine Information zu bestätigen, z.B. Sachkundenachweis.</definition></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G17005411"><xs:sequence><xs:element name="G17004014" type="xfd:G17004014"><xs:annotation><xs:documentation><name>Zeitraum (Versammlungsanzeige)</name><definition>Gibt den Anfang und das Ende eines Zeitraums an.</definition><bezug>Art. 8 GG; § 11 VershFG SG</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="G60000086" type="xfd:G60000086"><xs:annotation><xs:documentation><name>Anschrift Inland Straßenanschrift</name><definition>Angaben für die Adressierung im Inland, soweit es sich um die Anschrift eines Gebäudes handelt.</definition><bezug>urn:xoevde:xunternehmen:kerndatenobjekt:anschriftinlandstrassenanschrift</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="G17005405" type="xfd:G17005405"><xs:annotation><xs:documentation><name>Karte Versammlungsort</name><definition>Anlage eines Kartenausschnitts</definition><bezug>Art. 8 GG; § 11 VershFG SG</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G17004014"><xs:sequence><xs:element name="F60000048" type="xs:date"><xs:annotation><xs:documentation><name>Anfang</name><definition>Beinhaltet das Datum des Anfangs eines Zeitraums.</definition><bezug>urn:xoev-de:kosit:xoev:kernkomponente:zeitraum vom 31.08.2020</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F17001348" type="xs:decimal"><xs:annotation><xs:documentation><name>Uhrzeit Start</name><bezug>div.</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F60000049" type="xs:date"><xs:annotation><xs:documentation><name>Ende</name><definition>Beinhaltet das Datum des Ende eines Zeitraums.</definition><bezug>urn:xoev-de:kosit:xoev:kernkomponente:zeitraum vom 31.08.2020</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F17001349" type="xs:decimal"><xs:annotation><xs:documentation><name>Uhrzeit Abschluss</name><bezug>div.</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType><xs:complexType name="G17005413"><xs:sequence><xs:element name="F60000243" type="xs:string"><xs:annotation><xs:documentation><name>Straße</name><beschreibung>Kompatibilität zu EPA in TR XhD v 1.4 sollte Feldlänge min. 50. Bei XInneres 8 ist die Feldlänge &lt;= 55 Zeichen.</beschreibung><bezug>XInneres.Meldeanschrift.strasse Version 8</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="F60000244" type="xs:string"><xs:annotation><xs:documentation><name>Hausnummer</name><beschreibung>Die Modellierung aus XInneres wurde nicht 1:1 übernommen, um die Komplexität für die Ausfüllenden nicht zu hoch zu setzen. Es wurde darauf verzichtet für das Ende von Hausnummernbereichen eigene Felder zu modellieren. Daher ist die Feldlänge hier heraufgesetzt und eine entsprechende Beschreibung wurde eingefügt. Die Feldlänge setzt sich aus der maximalen Feldlänge zweier Hausnummern (jeweils 4), zweier Buchstaben (jeweils 1) und eines Zeichen (-) zusammen.</beschreibung><definition>Es sind die Ziffern und Buchstabeneiner Hausnummer anzugeben. Eine Hausnummer dient der genauen Lokalisierung eines Grundstücks, Gebäudes oder Gebäudeteils (Eingang) in einer Straße. Geben Sie Hausnummernbereiche immer nach folgendem Beispiel ohne Leerzeichen an: 12a-14d</definition><bezug>XInneres.Meldeanschrift.hausnummer Version 8</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F60000246" type="xs:string"><xs:annotation><xs:documentation><name>Postleitzahl</name><definition>Es ist die Postleitzahl anzugeben.&#xD;
+&#xD;
+Der Typ dieses Elements ist eine Einschränkung des Basistyps String.Latin.</definition><bezug>XInneres.Meldeanschrift.postleitzahl Version 8</bezug></xs:documentation></xs:annotation></xs:element><xs:element name="F60000247" type="xs:string"><xs:annotation><xs:documentation><name>Ort</name><beschreibung>Kompatibilität zu EPA in TR XhD v 1.4 sollte Feldlänge min. 44. Laut PAuswV 2*25 = 50 Zeichen. Laut Xinneres.Meldeanschrift.Wohnort Version 8 = 40 Zeichen.&#xD;
+Laut BSI TR-03123 ≤ 105 Zeichen.</beschreibung><definition>Enthält den Namen eines Ortes (Gemeinde, Ortschaft oder Stadt).</definition><bezug>§ 5 (2) Nr. 9 PAuswG vom 21.6.2019; Anhang 3 Abschnitt 1 (Wohnort) PAuswV vom 28.9.2017; Tabelle 11 BSI TR-03123, Version 1.5.1;  Xinneres.Meldeanschrift.Wohnort Version 8; XOEV.Kernkomponente.Anschrift.ort vom 31.01.2020</bezug></xs:documentation></xs:annotation></xs:element><xs:element minOccurs="0" name="G17005405" type="xfd:G17005405"><xs:annotation><xs:documentation><name>Karte Versammlungsort</name><definition>Anlage eines Kartenausschnitts</definition><bezug>Art. 8 GG; § 11 VershFG SG</bezug></xs:documentation></xs:annotation></xs:element></xs:sequence></xs:complexType></xs:schema>
\ No newline at end of file
diff --git a/fim-adapter/src/test/java/de/ozgcloud/eingang/fim/FimServiceTest.java b/fim-adapter/src/test/java/de/ozgcloud/eingang/fim/FimServiceTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..8d979c2d39c38dea63177ee254bb68ebded17ccb
--- /dev/null
+++ b/fim-adapter/src/test/java/de/ozgcloud/eingang/fim/FimServiceTest.java
@@ -0,0 +1,109 @@
+package de.ozgcloud.eingang.fim;
+
+import de.ozgcloud.eingang.common.formdata.FormData;
+import org.junit.jupiter.api.Assertions;
+import org.junit.jupiter.api.Test;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.test.context.ActiveProfiles;
+import org.w3c.dom.Document;
+import org.xml.sax.SAXException;
+
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.ParserConfigurationException;
+import java.io.File;
+import java.io.IOException;
+import java.util.Map;
+
+import static org.junit.Assert.*;
+
+@SpringBootTest
+@ActiveProfiles("test")
+@ConfigurationProperties
+public class FimServiceTest {
+
+    @Autowired
+    private FimService fimService = null;
+
+    @Test
+    void shouldFailOnEmptyScheme() {
+        Exception exception = assertThrows(FimException.class, () -> {
+            final Document document = loadDocument("src/test/resources/emptyxml.xml");
+            fimService.transformDocument(document);
+        });
+
+        String expectedMessage = "XML Document does not provide a scheme";
+        String actualMessage = exception.getMessage();
+
+        assertTrue(actualMessage.equals(expectedMessage));
+    }
+
+    @Test
+    void shouldNoFindInvalidScheme() {
+        Exception exception = assertThrows(FimException.class, () -> {
+            fimService.getSchemeForIdentifier("test");
+        });
+
+        String expectedMessage = "Cannot find schema for: test";
+        String actualMessage = exception.getMessage();
+
+        assertTrue(actualMessage.equals(expectedMessage));
+    }
+
+    @Test
+    void shouldFindTestScheme() {
+        final FimScheme scheme = fimService.getSchemeForIdentifier("urn:xoev-de:xfall:standard:fim-s17000652_1.4");
+        assertNotNull(scheme);
+    }
+
+    @Test
+    void shouldTransformEmptyDocument() throws ParserConfigurationException, IOException, SAXException {
+        final Document document = loadDocument("src/test/resources/S17000652V1.4_test01.xml");
+        FormData formData = fimService.transformDocument(document);
+    }
+
+    @Test
+    void shouldTransformDocument() throws ParserConfigurationException, IOException, SAXException {
+        final Document document = loadDocument("src/test/resources/S17000652V1.4_test01.xml");
+        FormData formData = fimService.transformDocument(document);
+
+        assertNotNull(formData);
+        Assertions.assertEquals(true, formData.getFormData().containsKey("EfA|SH Standard"));
+        Map<String, Object> efaSH = (Map<String, Object>) formData.getFormData().get("EfA|SH Standard");
+        Assertions.assertTrue(efaSH.containsKey("nachrichtenkopf"));
+        Map<String, Object> kopf = (Map<String, Object>) efaSH.get("nachrichtenkopf");
+        Assertions.assertTrue(kopf.containsKey("identifikation.nachricht"));
+        Map<String, Object> nachricht = (Map<String, Object>) kopf.get("identifikation.nachricht");
+        Assertions.assertEquals("d447e43a-5723-4821-a170-cb44d2dbf143", nachricht.get("nachrichtenUUID"));
+        Assertions.assertEquals("2022-08-15T09:30:47", nachricht.get("erstellungszeitpunkt"));
+        Assertions.assertEquals("fim.S17000652.17000652001004", nachricht.get("nachrichtentyp"));
+        Assertions.assertEquals("urn:fim:Versammlungsanzeige:1.4", nachricht.get("dienstname"));
+        Assertions.assertTrue(kopf.containsKey("Leser"));
+        Map<String, Object> leser = (Map<String, Object>) kopf.get("Leser");
+        Assertions.assertEquals("Celle", leser.get("Organisationsname"));
+        Assertions.assertEquals("vbe:010550120100", leser.get("Organisationsschlüssel"));
+        Assertions.assertEquals("Versammlungsbehörde", leser.get("Kategorie"));
+        Assertions.assertTrue(kopf.containsKey("Autor"));
+        Map<String, Object> autor = (Map<String, Object>) kopf.get("Autor");
+        Assertions.assertEquals("OSI-Onlinedienst Niedersachsen Versammlungsanzeige", autor.get("Organisationsname"));
+        Assertions.assertEquals("vbe:010550120100", autor.get("Organisationsschlüssel"));
+        Assertions.assertEquals("Engagement- und Hobbyportal", autor.get("Kategorie"));
+        Assertions.assertTrue(efaSH.containsKey("Datenschutzhinweis DSGVO"));
+        Assertions.assertEquals("true", efaSH.get("Datenschutzhinweis DSGVO"));
+        Assertions.assertTrue(efaSH.containsKey("Zustimmung zu einem digitalen Bescheid"));
+        Assertions.assertEquals("true", efaSH.get("Zustimmung zu einem digitalen Bescheid"));
+        Assertions.assertTrue(efaSH.containsKey("UUID"));
+        Assertions.assertEquals("String", efaSH.get("UUID"));
+        Assertions.assertTrue(formData.getFormData().containsKey("Anzeige durch Person"));
+        Assertions.assertEquals("true", formData.getFormData().get("Anzeige durch Person"));
+        Assertions.assertTrue(formData.getFormData().containsKey("Anzeigenart"));
+        Assertions.assertEquals("String", formData.getFormData().get("Anzeigenart"));
+    }
+
+    private Document loadDocument(final String path) throws ParserConfigurationException, IOException, SAXException {
+        final DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
+        return builder.parse(new File(path));
+    }
+}
diff --git a/fim-adapter/src/test/resources/S17000652V1.4_test01.xml b/fim-adapter/src/test/resources/S17000652V1.4_test01.xml
new file mode 100644
index 0000000000000000000000000000000000000000..ca52ce6942015abe0833fb0c7849103070bf1ddf
--- /dev/null
+++ b/fim-adapter/src/test/resources/S17000652V1.4_test01.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--XML-Beispieldatei von XMLSpy generiert v2024 (x64) (http://www.altova.com)-->
+<xfd:fim.S17000652.17000652001004 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xfd="urn:xoev-de:xfall:standard:fim-s17000652_1.4" xsi:schemaLocation="urn:xoev-de:xfall:standard:fim-s17000652_1.4 S17000652V1.4_xfall.xsd">
+    <xfd:G17003529>
+        <xfd:G05001479>
+            <xfd:G05001480>
+                <xfd:F05002750>d447e43a-5723-4821-a170-cb44d2dbf143</xfd:F05002750>
+                <xfd:F05002751>2022-08-15T09:30:47</xfd:F05002751>
+                <xfd:F05002752>fim.S17000652.17000652001004</xfd:F05002752>
+                <xfd:F05002753>urn:fim:Versammlungsanzeige:1.4</xfd:F05002753>
+            </xfd:G05001480>
+            <xfd:G05001481>
+                <xfd:F05002754>Celle</xfd:F05002754>
+                <xfd:F05002755>vbe:010550120100</xfd:F05002755>
+                <xfd:F05002756>Versammlungsbehörde</xfd:F05002756>
+            </xfd:G05001481>
+            <xfd:G05001482>
+                <xfd:F05002754>OSI-Onlinedienst Niedersachsen Versammlungsanzeige</xfd:F05002754>
+                <xfd:F05002755>vbe:010550120100</xfd:F05002755>
+                <xfd:F05002756>Engagement- und Hobbyportal</xfd:F05002756>
+            </xfd:G05001482>
+        </xfd:G05001479>
+        <xfd:F17005454>true</xfd:F17005454>
+        <xfd:F17005455>true</xfd:F17005455>
+        <xfd:F17005533>String</xfd:F17005533>
+    </xfd:G17003529>
+    <xfd:F17009191>true</xfd:F17009191>
+    <xfd:F17003371>String</xfd:F17003371>
+</xfd:fim.S17000652.17000652001004>
diff --git a/fim-adapter/src/test/resources/application-test.yml b/fim-adapter/src/test/resources/application-test.yml
new file mode 100644
index 0000000000000000000000000000000000000000..5bc03f2513b27dd57149815a922bf27dcddf8cce
--- /dev/null
+++ b/fim-adapter/src/test/resources/application-test.yml
@@ -0,0 +1,4 @@
+fim:
+  scheme:
+    locations: >
+      fim-s17000652_1.4/S17000652V1.4_xfall.xsd
\ No newline at end of file
diff --git a/fim-adapter/src/test/resources/emptyxml.xml b/fim-adapter/src/test/resources/emptyxml.xml
new file mode 100644
index 0000000000000000000000000000000000000000..28c4b8b7f7f1f92d05499cb85290b4d5323c1f91
--- /dev/null
+++ b/fim-adapter/src/test/resources/emptyxml.xml
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<body>
+</body>
diff --git a/pom.xml b/pom.xml
index 0c785ea14113aa96c32c0b2fc0454daab2fa0f88..251c26ae24f2f441d3981240e92df902f458fcf7 100644
--- a/pom.xml
+++ b/pom.xml
@@ -51,7 +51,8 @@
 		<module>formcycle-adapter</module>
 		<module>xta-adapter</module>
 		<module>enterprise-adapter</module>
-	</modules>
+        <module>fim-adapter</module>
+    </modules>
 
 	<properties>
 		<vorgang-manager.version>2.7.0</vorgang-manager.version>