diff --git a/pom.xml b/pom.xml index ceee7dbc6511870cffa2c2ad47d11f66a43fb44f..ea61cbb215276c40b313ddad63c41fa6974e7de3 100644 --- a/pom.xml +++ b/pom.xml @@ -34,7 +34,7 @@ <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> - <version>1.4.14</version> + <version>1.5.6</version> </dependency> <!-- https://mvnrepository.com/artifact/jaxen/jaxen --> @@ -50,7 +50,7 @@ <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-api</artifactId> - <version>5.10.1</version> + <version>5.10.2</version> <scope>test</scope> </dependency> @@ -58,20 +58,20 @@ <dependency> <groupId>org.json</groupId> <artifactId>json</artifactId> - <version>20231013</version> + <version>20240303</version> </dependency> <!-- https://mvnrepository.com/artifact/org.apache.httpcomponents.client5/httpclient5 --> <dependency> <groupId>org.apache.httpcomponents.client5</groupId> <artifactId>httpclient5</artifactId> - <version>5.3</version> + <version>5.3.1</version> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> - <version>5.8.0</version> + <version>5.11.0</version> <scope>test</scope> </dependency> @@ -84,7 +84,7 @@ <dependency> <groupId>uk.org.webcompere</groupId> <artifactId>system-stubs-jupiter</artifactId> - <version>2.1.5</version> + <version>2.1.6</version> <scope>test</scope> </dependency> @@ -92,13 +92,13 @@ <dependency> <groupId>io.undertow</groupId> <artifactId>undertow-core</artifactId> - <version>2.3.10.Final</version> + <version>2.3.12.Final</version> </dependency> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-engine</artifactId> - <version>5.10.1</version> + <version>5.10.2</version> <scope>test</scope> </dependency> diff --git a/src/main/java/de/landsh/opendata/csw2dcat/CswInterface.java b/src/main/java/de/landsh/opendata/csw2dcat/CswInterface.java index ddb4a48e2c8b0270b9c3c4610fcfa4dd69ab067c..c8433b4e15a10cd3c20c5873d33e91af3fc82420 100644 --- a/src/main/java/de/landsh/opendata/csw2dcat/CswInterface.java +++ b/src/main/java/de/landsh/opendata/csw2dcat/CswInterface.java @@ -1,5 +1,6 @@ package de.landsh.opendata.csw2dcat; +import org.apache.commons.lang3.StringEscapeUtils; import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.math.NumberUtils; import org.apache.hc.client5.http.classic.methods.HttpPost; @@ -16,7 +17,6 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.io.File; -import java.io.FileOutputStream; import java.io.FileWriter; import java.io.IOException; import java.nio.charset.StandardCharsets; @@ -45,11 +45,6 @@ public class CswInterface { private String[] typeInclude; private CloseableHttpClient httpClient = HttpClients.createMinimal(); private String dumpCswResponse = null; - - public void setVerboseLogging(String verboseLogging) { - this.verboseLogging = verboseLogging; - } - /** * Name of a directory. If set all incoming messages will be logged into files in this directory. */ @@ -75,6 +70,10 @@ public class CswInterface { typeInclude = settings.typeInclude; } + public void setVerboseLogging(String verboseLogging) { + this.verboseLogging = verboseLogging; + } + public void setTypeExclude(String[] typeExclude) { this.typeExclude = typeExclude; } @@ -193,7 +192,7 @@ public class CswInterface { fw.close(); } - if( verboseLogging != null) { + if (verboseLogging != null) { // Write the response into file final File dir = new File(verboseLogging); @@ -300,7 +299,7 @@ public class CswInterface { filter.append(" <ogc:PropertyIsEqualTo>" + " <ogc:PropertyName>operatesOn</ogc:PropertyName>" + " <ogc:Literal>") - .append(id) + .append(StringEscapeUtils.escapeXml11(id)) .append("</ogc:Literal>") .append(" </ogc:PropertyIsEqualTo>\n"); @@ -314,7 +313,7 @@ public class CswInterface { final String xmlRequest = "<csw:GetRecords xmlns:csw=\"http://www.opengis.net/cat/csw/2.0.2\" xmlns:ogc=\"http://www.opengis.net/ogc\"\n" + "xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:ows=\"http://www.opengis.net/ows\"\n" + - "xmlns:apiso=\"http://www.opengis.net/cat/apiso/1.0\" "+ + "xmlns:apiso=\"http://www.opengis.net/cat/apiso/1.0\" " + "outputSchema=\"http://www.isotc211.org/2005/gmd\" outputFormat=\"application/xml\" version=\"2.0.2\" service=\"CSW\" resultType=\"results\"\n" + "maxRecords=\"999\" xsi:schemaLocation=\"http://www.opengis.net/cat/csw/2.0.2 http://schemas.opengis.net/csw/2.0.2/CSW-discovery.xsd\">\n" + " <csw:Query typeNames=\"csw:Record\">\n" + diff --git a/src/main/java/de/landsh/opendata/csw2dcat/MDMetadata2Dataset.java b/src/main/java/de/landsh/opendata/csw2dcat/MDMetadata2Dataset.java index e484eadc994d151fab25fc548965de518e0b8072..2e2863f0d09f106919d88f2a2039dc2c8317a682 100644 --- a/src/main/java/de/landsh/opendata/csw2dcat/MDMetadata2Dataset.java +++ b/src/main/java/de/landsh/opendata/csw2dcat/MDMetadata2Dataset.java @@ -27,6 +27,8 @@ import org.slf4j.LoggerFactory; import java.io.IOException; import java.net.MalformedURLException; import java.net.URL; +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; import java.time.LocalDate; import java.util.*; import java.util.stream.Collectors; @@ -37,12 +39,14 @@ import java.util.stream.Collectors; public class MDMetadata2Dataset { private static final String LANGUAGE_DE = "de"; + private static final String LANGUAGE_EN = "en"; + private static final Logger log = LoggerFactory.getLogger(MDMetadata2Dataset.class); private static final String XPATH_OPERATION_GET_CAPABILITIES = "gmd:identificationInfo/*/srv:containsOperations/srv:SV_OperationMetadata[srv:operationName/gco:CharacterString/text()='GetCapabilities']"; - private static final Property PROPERTY_applicable_Legislation = ResourceFactory.createProperty("http://data.europa.eu/r5r/", "applicableLegislation"); static IRIFactory factory = IRIFactory.iriImplementation(); private final Model model; private final Map<String, String> keywordMapping = new HashMap<>(); + private final Map<String, JSONObject> url2license = new HashMap<>(); Map<String, String[]> themeMapping = new HashMap<>(); boolean ignoreInvalidMapping = true; private CswInterface cswInterface; @@ -77,6 +81,12 @@ public class MDMetadata2Dataset { final String value = entry.getString(key); keywordMapping.put(key, value); } + + JSONArray licenses = new JSONArray(new JSONTokener(Objects.requireNonNull(getClass().getResourceAsStream("/licenses.json")))); + for (Object l : licenses) { + JSONObject license = (JSONObject) l; + url2license.put(license.getString("uri"), license); + } } static String getTextOrNull(Node node) { @@ -501,10 +511,14 @@ public class MDMetadata2Dataset { final String applicationProfile = getTextOrNull(onlineResource.selectSingleNode("gmd:applicationProfile/*")); - Resource format; + Resource format = null; if (StringUtils.startsWith(applicationProfile, "http://publications.europa.eu/resource/authority/file-type/")) { format = ResourceFactory.createResource(applicationProfile); - } else { + } else if (StringUtils.isNotEmpty(applicationProfile)) { + format = Mapping.mapFormat(applicationProfile); + } + + if (format == null) { // Guess the format. format = guessFormat(url); } @@ -520,6 +534,7 @@ public class MDMetadata2Dataset { } else if( url.contains("feed") && url.toLowerCase().contains("atom") && url.endsWith(".xml")) { format = ResourceFactory.createResource("http://publications.europa.eu/resource/authority/file-type/ATOM"); } + } @@ -533,18 +548,39 @@ public class MDMetadata2Dataset { } private void addLicenseInformation(Resource resource, List<Node> otherLegalConstraints) { - final JSONObject licenceInformation = findLicenseInformation(otherLegalConstraints); - if (licenceInformation != null) { - resource.addLiteral(DCATAPde.licenseAttributionByText, licenceInformation.getString("quelle")); - if (licenceInformation.has("url") && licenceInformation.getString("url").startsWith("http://dcat-ap.de/def/licenses/")) { - // Some publishers specify the licence as the URL and not the id. - resource.addProperty(DCTerms.license, model.createResource(licenceInformation.getString("url"))); + final JSONObject licenseInformation = findLicenseInformation(otherLegalConstraints); + + if (licenseInformation != null) { + resource.addLiteral(DCATAPde.licenseAttributionByText, licenseInformation.getString("quelle")); + + if (licenseInformation.has("url")) { + String licenseURL = licenseInformation.getString("url"); + + if (licenseURL.startsWith("http://dcat-ap.de/def/licenses/")) { + resource.addProperty(DCTerms.license, model.createResource(licenseURL)); + } else { + final JSONObject license = url2license.get(licenseURL); + + if (license != null && license.has("uri")) { + resource.addProperty(DCTerms.license, model.createResource(license.getString("uri"))); + } else { + log.debug("Unknown license: {}", licenseURL); + handleUnknownLicense(resource, licenseInformation.getString("id")); + } + } } else { - resource.addProperty(DCTerms.license, model.createResource("http://dcat-ap.de/def/licenses/" + licenceInformation.getString("id"))); + handleUnknownLicense(resource, licenseInformation.getString("id")); } } } + private void handleUnknownLicense(Resource resource, String licenseId) { + licenseId = URLEncoder.encode(licenseId, StandardCharsets.UTF_8) + .replaceAll("%2F", "/"); // Replace the encoded slash with the original slash + resource.addProperty(DCTerms.license, model.createResource("http://dcat-ap.de/def/licenses/" + licenseId)); + log.debug("Falling back to: {}", licenseId); + } + private Resource guessFormat(String url) { final String lowerCaseURL = url.toLowerCase(); if (lowerCaseURL.contains("service=wms")) { @@ -554,9 +590,12 @@ public class MDMetadata2Dataset { log.info("WMS with output format: {}", url); return null; } + } else if (lowerCaseURL.contains("service=wfs") && lowerCaseURL.contains("getcapabilities")) { + return ResourceFactory.createResource("http://publications.europa.eu/resource/authority/file-type/WFS_SRVC"); } else if (lowerCaseURL.contains("service=wfs")) { if (!lowerCaseURL.contains("outputformat=")) { - return ResourceFactory.createResource("http://publications.europa.eu/resource/authority/file-type/WFS_SRVC"); + // assume that the WFS returns GML als standard output format + return ResourceFactory.createResource("http://publications.europa.eu/resource/authority/file-type/GML"); } else if (lowerCaseURL.contains("outputformat=shape-zip")) { return ResourceFactory.createResource("http://publications.europa.eu/resource/authority/file-type/SHP"); } else if (lowerCaseURL.contains("outputformat=csv")) { @@ -565,13 +604,15 @@ public class MDMetadata2Dataset { log.info("WFS with unkown output format: {}", url); return null; } + } else if (lowerCaseURL.endsWith(".html")) { + return ResourceFactory.createResource("http://publications.europa.eu/resource/authority/file-type/HTML"); } return null; } /** - * Convert a {@Document} containin a gmd:MD_Metadata element into a DCAT-AP.de compliant dcat:Dataset {@link Resource}. + * Convert a {@link Document} containin a gmd:MD_Metadata element into a DCAT-AP.de compliant dcat:Dataset {@link Resource}. */ public Resource convert(Document input) throws DocumentException, IOException { return convert(input.getRootElement()); @@ -612,12 +653,25 @@ public class MDMetadata2Dataset { dataset.addProperty(RDF.type, DCAT.Dataset); if (scopeCode != null) { - dataset.addProperty(DCTerms.type, model.createResource(Mapping.mapScopeCode(scopeCode))); + try { + dataset.addProperty(DCTerms.type, model.createResource(Mapping.mapScopeCode(scopeCode))); + } catch (IllegalArgumentException ignore) { + log.warn("Dataset {} has an invalid scopeCode.", id); + } } final String title = getTextOrNull(metadata.selectSingleNode("gmd:identificationInfo/*/gmd:citation/gmd:CI_Citation/gmd:title/gco:CharacterString")); if (title != null) { - dataset.addLiteral(DCTerms.title, model.createLiteral(title.trim(), LANGUAGE_DE)); + + if (title.contains("#locale-eng:")) { + // In some source systems, German and English titles are strangely combined in one text. + String germanTitle = StringUtils.substringBefore(title, "#locale-eng:"); + String englishTitle = StringUtils.substringAfter(title, "#locale-eng:"); + dataset.addLiteral(DCTerms.title, model.createLiteral(germanTitle.trim(), LANGUAGE_DE)); + dataset.addLiteral(DCTerms.title, model.createLiteral(englishTitle.trim(), LANGUAGE_EN)); + } else { + dataset.addLiteral(DCTerms.title, model.createLiteral(title.trim(), LANGUAGE_DE)); + } } final String description = getTextOrNull(metadata.selectSingleNode("gmd:identificationInfo/*/gmd:abstract/gco:CharacterString")); @@ -643,13 +697,21 @@ public class MDMetadata2Dataset { final Element characterSet = (Element) metadata.selectSingleNode("gmd:characterSet/gmd:MD_CharacterSetCode"); if (characterSet != null) { - dataset.addLiteral(Content.characterEncoding, - model.createTypedLiteral(Mapping.mapCharacterSetCode(characterSet), XSDDatatype.XSDstring)); + try { + dataset.addLiteral(Content.characterEncoding, + model.createTypedLiteral(Mapping.mapCharacterSetCode(characterSet), XSDDatatype.XSDstring)); + } catch (IllegalArgumentException ignore) { + log.warn("Dataset {} has an invalid characterEncoding.", id); + } } final Element maintenanceFrequencyCode = (Element) metadata.selectSingleNode("gmd:identificationInfo/*/gmd:resourceMaintenance/gmd:MD_MaintenanceInformation/gmd:maintenanceAndUpdateFrequency/gmd:MD_MaintenanceFrequencyCode"); if (maintenanceFrequencyCode != null) { - dataset.addProperty(DCTerms.accrualPeriodicity, model.createResource(Mapping.mapMaintenanceFrequencyCode(maintenanceFrequencyCode))); + try { + dataset.addProperty(DCTerms.accrualPeriodicity, model.createResource(Mapping.mapMaintenanceFrequencyCode(maintenanceFrequencyCode))); + } catch (IllegalArgumentException ignore) { + log.warn("Dataset {} has an invalid maintenanceFrequencyCode.", id); + } } final List<Node> topicCategories = metadata.selectNodes("gmd:identificationInfo/*/gmd:topicCategory/*"); @@ -752,14 +814,35 @@ public class MDMetadata2Dataset { dataset.addProperty(DCTerms.conformsTo, model.createResource("http://data.europa.eu/eli/reg/2010/1089/oj")); } else if ("VERORDNUNG (EG) Nr. 976/2009 DER KOMMISSION vom 19. Oktober 2009 zur Durchführung der Richtlinie 2007/2/EG des Europäischen Parlaments und des Rates hinsichtlich der Netzdienste".equals(identifier)) { dataset.addProperty(DCTerms.conformsTo, model.createResource("http://data.europa.eu/eli/reg/2009/976/oj")); + } else if (StringUtils.contains(identifier, "Verordnung (EG) Nr. 1205/2008")) { + dataset.addProperty(DCTerms.conformsTo, model.createResource("http://data.europa.eu/eli/reg/2008/1205/oj")); } } // convert INSPIRE keywords into dcatap:applicableLegislation properties - if (descriptiveKeywords.contains("inspireidentifiziert") - || descriptiveKeywords.contains("INSPIRE") - || descriptiveKeywords.contains("inspire")) { - dataset.addProperty(PROPERTY_applicable_Legislation, model.createResource("http://data.europa.eu/eli/dir/2007/2/2019-06-26")); + if (descriptiveKeywords.contains("inspireidentifiziert")) { + dataset.addProperty(DCATAP.applicableLegislation, model.createResource("http://data.europa.eu/eli/dir/2007/2/2019-06-26")); + } + + // Create the HVD properties in accordance with the GDI-DE mapping rules of 2024-03-20 + final List<Node> hvdRelevantKeywordNodes = + metadata.selectNodes("gmd:identificationInfo/*/gmd:descriptiveKeywords/gmd:MD_Keywords[" + + "gmd:thesaurusName/gmd:CI_Citation/gmd:title/gco:CharacterString = 'High-value dataset categories'" + + " or gmd:thesaurusName/gmd:CI_Citation/gmd:title/gmx:Anchor/@xlink:href = 'http://data.europa.eu/bna/asd487ae75']"); + if (!hvdRelevantKeywordNodes.isEmpty()) { + dataset.addProperty(DCATAP.applicableLegislation, model.createResource("http://data.europa.eu/eli/reg_impl/2023/138/oj")); + } + for (Node keyword : hvdRelevantKeywordNodes) { + Node characterString = keyword.selectSingleNode("./gmd:keyword/gco:CharacterString/text()"); + Node anchorRef = keyword.selectSingleNode("./gmd:keyword/gmx:Anchor/@xlink:href"); + + if (characterString != null) { + dataset.addProperty(DCATAP.hvdCategory, Mapping.mapHvdCategory(characterString.getStringValue())); + } + + if (anchorRef != null) { + dataset.addProperty(DCATAP.hvdCategory, model.createResource(anchorRef.getStringValue())); + } } // convert preview image @@ -781,7 +864,13 @@ public class MDMetadata2Dataset { // add coupled services if (cswInterface != null && searchId != null) { - final List<Element> services = cswInterface.findOperatesOn(searchId); + List<Element> services; + try { + services = cswInterface.findOperatesOn(searchId); + } catch (Exception e) { + log.error("Error searching for coupled services of dataset {}: {}", id, e.getMessage()); + services = Collections.emptyList(); + } for (Element service : services) { try { for (Resource dist : convertServiceToDistributions(service)) { @@ -843,6 +932,7 @@ public class MDMetadata2Dataset { return dataset; } + private boolean isMultiFormatDataset(Element metadata) { final List<Node> formatElements = metadata.selectNodes("gmd:distributionInfo/*/gmd:distributionFormat"); return formatElements.size() > 1; @@ -915,6 +1005,10 @@ public class MDMetadata2Dataset { } } + if (formatResource == null) { + formatResource = guessFormat(url); + } + if (formatResource != null) { distribution.addProperty(DCTerms.format, formatResource); } else if (!ignoreInvalidMapping) { diff --git a/src/main/java/de/landsh/opendata/csw2dcat/Mapping.java b/src/main/java/de/landsh/opendata/csw2dcat/Mapping.java index 641d069988e651514e862c32d844796fcc09bd04..1432def28f4772c0d96d1848c24bd6646d0eacca 100644 --- a/src/main/java/de/landsh/opendata/csw2dcat/Mapping.java +++ b/src/main/java/de/landsh/opendata/csw2dcat/Mapping.java @@ -144,7 +144,7 @@ public class Mapping { } else if ("weekly".equals(codeListValue)) { return "http://publications.europa.eu/resource/authority/frequency/WEEKLY"; } else { - if( StringUtils.isNotBlank( codeListValue)) { + if (StringUtils.isNotBlank(codeListValue)) { log.warn("Unknown value {} for MD_MaintenanceFrequencyCode", codeListValue); } return null; @@ -204,9 +204,30 @@ public class Mapping { return ResourceFactory.createResource("http://publications.europa.eu/resource/authority/file-type/CSV"); } else if ("HTML".equals(applicationProfile)) { return ResourceFactory.createResource("http://publications.europa.eu/resource/authority/file-type/HTML"); + } else if ("GML".equals(applicationProfile)) { + return ResourceFactory.createResource("http://publications.europa.eu/resource/authority/file-type/GML"); } else { log.info("{} is not an allowed applicationProfile.", applicationProfile); throw new IllegalArgumentException(applicationProfile + " is not an allowed applicationProfile."); } } + + public static Resource mapHvdCategory(String germanName) { + if ("Georaum".equals(germanName)) { + return ResourceFactory.createResource("http://data.europa.eu/bna/c_ac64a52d"); + } else if ("Erdbeobachtung und Umwelt".equals(germanName)) { + return ResourceFactory.createResource("http://data.europa.eu/bna/c_dd313021"); + } else if ("Meteorologie".equals(germanName)) { + return ResourceFactory.createResource("http://data.europa.eu/bna/c_164e0bf5"); + } else if ("Statistik".equals(germanName)) { + return ResourceFactory.createResource("http://data.europa.eu/bna/c_e1da4e07"); + } else if ("Unternehmen und Eigentümerschaft von Unternehmen".equals(germanName)) { + return ResourceFactory.createResource("http://data.europa.eu/bna/c_a9135398"); + } else if ("Mobilität".equals(germanName)) { + return ResourceFactory.createResource("http://data.europa.eu/bna/c_b79e35eb"); + } else { + log.info("{} is not an allowed HVD category.", germanName); + throw new IllegalArgumentException(germanName + " is not an allowed HVD category."); + } + } } diff --git a/src/main/java/de/landsh/opendata/csw2dcat/vocabulary/DCATAP.java b/src/main/java/de/landsh/opendata/csw2dcat/vocabulary/DCATAP.java new file mode 100644 index 0000000000000000000000000000000000000000..e568112b2b386cc505e6dff9cd1a6953bfbb91e3 --- /dev/null +++ b/src/main/java/de/landsh/opendata/csw2dcat/vocabulary/DCATAP.java @@ -0,0 +1,28 @@ +package de.landsh.opendata.csw2dcat.vocabulary; + +import org.apache.jena.rdf.model.Model; +import org.apache.jena.rdf.model.ModelFactory; +import org.apache.jena.rdf.model.Property; +import org.apache.jena.rdf.model.Resource; + +public class DCATAP { + public static final String NS = "http://data.europa.eu/r5r/"; + public static final Resource NAMESPACE; + public static final Property applicableLegislation; + public static final Property hvdCategory; + + private static final Model m_model = ModelFactory.createDefaultModel(); + + static { + NAMESPACE = m_model.createResource(NS); + applicableLegislation = m_model.createProperty(NS, "applicableLegislation"); + hvdCategory = m_model.createProperty(NS, "hvdCategory"); + } + + private DCATAP() { + } + + public static String getURI() { + return NS; + } +} diff --git a/src/test/java/de/landsh/opendata/csw2dcat/MDMetadata2DatasetTests.java b/src/test/java/de/landsh/opendata/csw2dcat/MDMetadata2DatasetTests.java index 56e6252328dc42750c9cfce8d0d1d5cf53153fc5..083d2a4321037f9017cf39855b51ca0399128611 100644 --- a/src/test/java/de/landsh/opendata/csw2dcat/MDMetadata2DatasetTests.java +++ b/src/test/java/de/landsh/opendata/csw2dcat/MDMetadata2DatasetTests.java @@ -30,6 +30,7 @@ public class MDMetadata2DatasetTests { private static final Resource FILE_TYPE_WFS_SRC = ResourceFactory.createResource("http://publications.europa.eu/resource/authority/file-type/WFS_SRVC"); private static final Resource FILE_TYPE_CSV = ResourceFactory.createResource("http://publications.europa.eu/resource/authority/file-type/CSV"); private static final Resource FILE_TYPE_SHP = ResourceFactory.createResource("http://publications.europa.eu/resource/authority/file-type/SHP"); + private static final Resource FILE_TYPE_GML = ResourceFactory.createResource("http://publications.europa.eu/resource/authority/file-type/GML"); private static final Property PROPERTY_applicable_Legislation = ResourceFactory.createProperty("http://data.europa.eu/r5r/", "applicableLegislation"); static Namespace NS_GMD = Namespace.get("gmd", "http://www.isotc211.org/2005/gmd"); @@ -1288,6 +1289,88 @@ public class MDMetadata2DatasetTests { assertEquals(1, distributionHTML, "one HTML distribution (the Atom feed viewer)"); assertEquals(1, distributionATOM, "one ATOM distribution (the feed itself)"); + } + + /** + * An incorrect code list specification (in this case for MD_MaintenanceFrequencyCode) must not stop the process. + */ + @Test + public void convert_incorrectMaintenanceFrequencyCode() throws DocumentException, IOException { + settings.findWMSinInfo = true; + + final Document inputDocument = saxReader.read(getClass().getResourceAsStream("/bb585473-0987-436a-bc7a-132880a4df0d.xml")); + final Resource dataset = service.convert(inputDocument); + + assertNotNull(dataset); + assertEquals("bb585473-0987-436a-bc7a-132880a4df0d", dataset.getProperty(DCTerms.identifier).getString()); + } + + /** + * Detect multiple formats (SHP and GML) in one dataset. + * The WMS link is so broken that it won't be detected as a WMS. + */ + @Test + public void convert_multiFormat() throws DocumentException, IOException { + settings.findWMSinInfo = true; + + final Document inputDocument = saxReader.read(getClass().getResourceAsStream("/6782583C-9747-4C16-B94D-3EAF2BFDB171.xml")); + + final Resource result = service.convert(inputDocument); + + final Map<String, Resource> distributionMap = collectDistributions(result); + assertEquals(2, distributionMap.size()); + + Resource distribution = distributionMap.get("https://opendata.schleswig-holstein.de/dataset/d501a7ab-a85e-4988-a98e-8f3ae3ab5df2/resource/1bcad7cd-9c94-4a06-bbbc-c7929bb37751/download/lsg.zip"); + assertEquals(FILE_TYPE_SHP, distribution.getProperty(DCTerms.format).getResource()); + assertEquals("Landschaftsschutzgebiete (1:25.000)", distribution.getProperty(DCTerms.title).getString()); + Resource distribution2 = distributionMap.get("https://umweltgeodienste.schleswig-holstein.de/WFS_UWAT?service=wfs&version=2.0.0&request=GetFeature&typeNames=app:lsg"); + assertEquals(FILE_TYPE_GML, distribution2.getProperty(DCTerms.format).getResource()); + assertEquals("WFS Landschaftsschutzgebiete (1:25.000)", distribution2.getProperty(DCTerms.title).getString()); } + + /** + * Specification of the HVD category as free text in characterString elements + * (in accordance with the GDI-DE mapping rules of 2024-03-20 variant a) + */ + @Test + public void convert_highValueDataset_a() throws DocumentException, IOException { + final Document inputDocument = saxReader.read(getClass().getResourceAsStream("/hvd1.xml")); + final Resource result = service.convert(inputDocument); + + assertEquals("http://data.europa.eu/eli/reg_impl/2023/138/oj", + result.getPropertyResourceValue(DCATAP.applicableLegislation).getURI()); + assertEquals("http://data.europa.eu/bna/c_ac64a52d", + result.getPropertyResourceValue(DCATAP.hvdCategory).getURI()); + } + + /** + * Referencing the EU vocabulary for HVD categories as gmx:Anchor elements + * (in accordance with the GDI-DE mapping rules of 2024-03-20 variant b) + */ + @Test + public void convert_highValueDataset_b() throws DocumentException, IOException { + final Document inputDocument = saxReader.read(getClass().getResourceAsStream("/hvd2.xml")); + final Resource result = service.convert(inputDocument); + + assertEquals("http://data.europa.eu/eli/reg_impl/2023/138/oj", + result.getPropertyResourceValue(DCATAP.applicableLegislation).getURI()); + assertEquals("http://data.europa.eu/bna/c_ac64a52d", + result.getPropertyResourceValue(DCATAP.hvdCategory).getURI()); + } + + /** + * In some source systems, German and English titles are strangely combined in one text. + */ + @Test + public void convert_mixedGermanEnglishTitles() throws DocumentException, IOException { + final Document inputDocument = saxReader.read(getClass().getResourceAsStream("/00729c12-e689-446d-83bd-dd8cfd0eeeb8.xml")); + final Resource result = service.convert(inputDocument); + + assertTrue(result.hasProperty( DCTerms.title, ResourceFactory.createLangLiteral( + "Robben im Schleswig-Holsteinischen Wattenmeer 1995", "de") )); + assertTrue(result.hasProperty( DCTerms.title, ResourceFactory.createLangLiteral( + "Seals in the Schleswig-Holstein Wadden Sea in 1995", "en") )); + } + } diff --git a/src/test/resources/00729c12-e689-446d-83bd-dd8cfd0eeeb8.xml b/src/test/resources/00729c12-e689-446d-83bd-dd8cfd0eeeb8.xml new file mode 100644 index 0000000000000000000000000000000000000000..47dee2bd9776ea2586fd7f9ecf7f3d6bb8a34853 --- /dev/null +++ b/src/test/resources/00729c12-e689-446d-83bd-dd8cfd0eeeb8.xml @@ -0,0 +1 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?><csw:GetRecordByIdResponse xmlns:csw="http://www.opengis.net/cat/csw/2.0.2"><gmd:MD_Metadata xmlns:gco="http://www.isotc211.org/2005/gco" xmlns:gmd="http://www.isotc211.org/2005/gmd" xmlns:gml="http://www.opengis.net/gml/3.2" xmlns:gmx="http://www.isotc211.org/2005/gmx" xmlns:gts="http://www.isotc211.org/2005/gts" xmlns:igctx="https://www.ingrid-oss.eu/schemas/igctx" xmlns:srv="http://www.isotc211.org/2005/srv" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.isotc211.org/2005/gmd http://repository.gdi-de.org/schemas/geonetwork/2020-12-11/csw/2.0.2/profiles/apiso/1.0.1/apiso.xsd https://www.ingrid-oss.eu/schemas/igctx https://www.ingrid-oss.eu/schemas/igctx/igctx.xsd"><gmd:fileIdentifier><gco:CharacterString>00729c12-e689-446d-83bd-dd8cfd0eeeb8</gco:CharacterString></gmd:fileIdentifier><gmd:language><gmd:LanguageCode codeList="http://www.loc.gov/standards/iso639-2/" codeListValue="ger"/></gmd:language><gmd:characterSet><gmd:MD_CharacterSetCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_CharacterSetCode" codeListValue="utf8"/></gmd:characterSet><gmd:parentIdentifier><gco:CharacterString>5d62f05e-29ca-4eff-9683-96eaaa5b1ba2</gco:CharacterString></gmd:parentIdentifier><gmd:hierarchyLevel><gmd:MD_ScopeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_ScopeCode" codeListValue="dataset">dataset</gmd:MD_ScopeCode></gmd:hierarchyLevel><gmd:contact><gmd:CI_ResponsibleParty uuid="8ac62792-18cc-8743-0119-57923bb80004"><gmd:organisationName><gco:CharacterString>Landesbetrieb für Küstenschutz, Nationalpark und Meeresschutz Schleswig-Holstein</gco:CharacterString></gmd:organisationName><gmd:contactInfo><gmd:CI_Contact><gmd:address><gmd:CI_Address><gmd:electronicMailAddress><gco:CharacterString>info@lkn.landsh.de</gco:CharacterString></gmd:electronicMailAddress></gmd:CI_Address></gmd:address><gmd:hoursOfService><gco:CharacterString>Mo-Do 9:00-12:00 u. 14:00-16:00; Fr 9:00-12:00</gco:CharacterString></gmd:hoursOfService></gmd:CI_Contact></gmd:contactInfo><gmd:role><gmd:CI_RoleCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_RoleCode" codeListValue="pointOfContact"/></gmd:role></gmd:CI_ResponsibleParty></gmd:contact><gmd:dateStamp><gco:Date>2024-04-15</gco:Date></gmd:dateStamp><gmd:metadataStandardName><gco:CharacterString>ISO19115</gco:CharacterString></gmd:metadataStandardName><gmd:metadataStandardVersion><gco:CharacterString>2003/Cor.1:2006</gco:CharacterString></gmd:metadataStandardVersion><gmd:spatialRepresentationInfo><gmd:MD_VectorSpatialRepresentation><gmd:topologyLevel><gmd:MD_TopologyLevelCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_TopologyLevelCode" codeListValue="geometryOnly"/></gmd:topologyLevel><gmd:geometricObjects><gmd:MD_GeometricObjects><gmd:geometricObjectType><gmd:MD_GeometricObjectTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_GeometricObjectTypeCode" codeListValue="point"/></gmd:geometricObjectType><gmd:geometricObjectCount><gco:Integer>748</gco:Integer></gmd:geometricObjectCount></gmd:MD_GeometricObjects></gmd:geometricObjects></gmd:MD_VectorSpatialRepresentation></gmd:spatialRepresentationInfo><gmd:spatialRepresentationInfo><igctx:MD_GeometryContext gco:isoType="AbstractMD_SpatialRepresentation_Type"><igctx:geometryType><gco:CharacterString>point</gco:CharacterString></igctx:geometryType><igctx:geometricFeature><igctx:OtherFeature><igctx:featureName><gco:CharacterString>poskey</gco:CharacterString></igctx:featureName><igctx:featureDescription><gco:CharacterString>Teilregionen von A bis M mit Beobachtungsnummer nach dem Muster A001 bis A064. Als Maximalwert ist die größte Positionsnummer je Teilgebiete genannt.</gco:CharacterString></igctx:featureDescription><igctx:featureDataType><gco:CharacterString>Char</gco:CharacterString></igctx:featureDataType><igctx:featureAttributes><igctx:FeatureAttributes><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Lister Tidebecken</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>AXXX</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Hörnumbecken</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>BXXX</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Vortrapptief</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>CXXX</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Norderaue West</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>DXXX</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Norderaue Ost</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>EXXX</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Süderaue</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>FXXX</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Japsand</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>GXXX</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Rummelloch</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>HXXX</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Norderhever West</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>IXXX</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Hever</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>JXXX</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Purrenstrom</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>VXXX</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Wesselburener Loch Ost</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>WXXX</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Norderpiep u. Meldorfer Bucht</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>XXXX</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Westlich Trischen</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>YXXX</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Norderelbe</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>ZXXX</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute></igctx:FeatureAttributes></igctx:featureAttributes></igctx:OtherFeature></igctx:geometricFeature></igctx:MD_GeometryContext></gmd:spatialRepresentationInfo><gmd:spatialRepresentationInfo><igctx:MD_GeometryContext gco:isoType="AbstractMD_SpatialRepresentation_Type"><igctx:geometryType><gco:CharacterString>point</gco:CharacterString></igctx:geometryType><igctx:geometricFeature><igctx:OtherFeature><igctx:featureName><gco:CharacterString>kennb</gco:CharacterString></igctx:featureName><igctx:featureDescription><gco:CharacterString>regionaler Kennbuchstabe</gco:CharacterString></igctx:featureDescription><igctx:featureDataType><gco:CharacterString>char</gco:CharacterString></igctx:featureDataType><igctx:featureAttributes><igctx:FeatureAttributes><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Lister Tidebecken</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>a</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Hörnumbecken</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>b</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Vortrapptief</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>c</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Norderaue West</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>d</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Norderaue Ost</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>e</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Süderaue</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>f</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Japsand</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>g</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Rummelloch</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>h</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Norderhever West</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>i</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Hever</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>j</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Purrenstrom</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>v</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Wesselburener Loch Ost</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>w</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Norderpiep u. Meldorfer Bucht</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>x</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>westlich Trischen</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>y</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Norderelbe</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>z</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute></igctx:FeatureAttributes></igctx:featureAttributes></igctx:OtherFeature></igctx:geometricFeature></igctx:MD_GeometryContext></gmd:spatialRepresentationInfo><gmd:spatialRepresentationInfo><igctx:MD_GeometryContext gco:isoType="AbstractMD_SpatialRepresentation_Type"><igctx:geometryType><gco:CharacterString>point</gco:CharacterString></igctx:geometryType><igctx:geometricFeature><igctx:OtherFeature><igctx:featureName><gco:CharacterString>nad</gco:CharacterString></igctx:featureName><igctx:featureDescription><gco:CharacterString>Anzahl adulter Tiere</gco:CharacterString></igctx:featureDescription><igctx:featureDataType><gco:CharacterString>integer</gco:CharacterString></igctx:featureDataType></igctx:OtherFeature></igctx:geometricFeature></igctx:MD_GeometryContext></gmd:spatialRepresentationInfo><gmd:spatialRepresentationInfo><igctx:MD_GeometryContext gco:isoType="AbstractMD_SpatialRepresentation_Type"><igctx:geometryType><gco:CharacterString>point</gco:CharacterString></igctx:geometryType><igctx:geometricFeature><igctx:OtherFeature><igctx:featureName><gco:CharacterString>njuv</gco:CharacterString></igctx:featureName><igctx:featureDescription><gco:CharacterString>Anzahl juveniler Tiere</gco:CharacterString></igctx:featureDescription><igctx:featureDataType><gco:CharacterString>integer</gco:CharacterString></igctx:featureDataType></igctx:OtherFeature></igctx:geometricFeature></igctx:MD_GeometryContext></gmd:spatialRepresentationInfo><gmd:spatialRepresentationInfo><igctx:MD_GeometryContext gco:isoType="AbstractMD_SpatialRepresentation_Type"><igctx:geometryType><gco:CharacterString>point</gco:CharacterString></igctx:geometryType><igctx:geometricFeature><igctx:OtherFeature><igctx:featureName><gco:CharacterString>nges</gco:CharacterString></igctx:featureName><igctx:featureDescription><gco:CharacterString>Anzahl aller Seehunde</gco:CharacterString></igctx:featureDescription><igctx:featureDataType><gco:CharacterString>integer</gco:CharacterString></igctx:featureDataType></igctx:OtherFeature></igctx:geometricFeature></igctx:MD_GeometryContext></gmd:spatialRepresentationInfo><gmd:spatialRepresentationInfo><igctx:MD_GeometryContext gco:isoType="AbstractMD_SpatialRepresentation_Type"><igctx:geometryType><gco:CharacterString>point</gco:CharacterString></igctx:geometryType><igctx:geometricFeature><igctx:OtherFeature><igctx:featureName><gco:CharacterString>bem</gco:CharacterString></igctx:featureName><igctx:featureDescription><gco:CharacterString>Bemerkungen, geben Besonderheiten der einzelnen Zählplätze an, z.B. bedeutet "überflutet", dass der Zählplatz zum Zeitpunkt der Zählung überflutet war. Feld ist häufig nicht ausgefüllt.</gco:CharacterString></igctx:featureDescription><igctx:featureDataType><gco:CharacterString>char</gco:CharacterString></igctx:featureDataType></igctx:OtherFeature></igctx:geometricFeature></igctx:MD_GeometryContext></gmd:spatialRepresentationInfo><gmd:spatialRepresentationInfo><igctx:MD_GeometryContext gco:isoType="AbstractMD_SpatialRepresentation_Type"><igctx:geometryType><gco:CharacterString>point</gco:CharacterString></igctx:geometryType><igctx:geometricFeature><igctx:OtherFeature><igctx:featureName><gco:CharacterString>datuma</gco:CharacterString></igctx:featureName><igctx:featureDescription><gco:CharacterString>Tag der Zählung nach Muster yyyymmdd</gco:CharacterString></igctx:featureDescription><igctx:featureDataType><gco:CharacterString>char</gco:CharacterString></igctx:featureDataType><igctx:featureAttributes><igctx:FeatureAttributes><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Zählung am 23.05.95</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>19950523</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Zählung am 23.06.95</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>19950623</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Zählung am 08.07.95</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>19950708</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Zählung am 22.07.95</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>19950722</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Zählung am 07.08.95</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>19950807</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Zählung am 18.08.95</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>19950818</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute></igctx:FeatureAttributes></igctx:featureAttributes></igctx:OtherFeature></igctx:geometricFeature></igctx:MD_GeometryContext></gmd:spatialRepresentationInfo><gmd:spatialRepresentationInfo><igctx:MD_GeometryContext gco:isoType="AbstractMD_SpatialRepresentation_Type"><igctx:geometryType><gco:CharacterString>point</gco:CharacterString></igctx:geometryType><igctx:geometricFeature><igctx:OtherFeature><igctx:featureName><gco:CharacterString>kegr</gco:CharacterString></igctx:featureName><igctx:featureDescription><gco:CharacterString>Anzahl der Kegelrobben</gco:CharacterString></igctx:featureDescription><igctx:featureDataType><gco:CharacterString>integer</gco:CharacterString></igctx:featureDataType></igctx:OtherFeature></igctx:geometricFeature></igctx:MD_GeometryContext></gmd:spatialRepresentationInfo><gmd:spatialRepresentationInfo><igctx:MD_GeometryContext gco:isoType="AbstractMD_SpatialRepresentation_Type"><igctx:geometryType><gco:CharacterString>point</gco:CharacterString></igctx:geometryType><igctx:geometricFeature><igctx:OtherFeature><igctx:featureName><gco:CharacterString>kennw</gco:CharacterString></igctx:featureName><igctx:featureDescription><gco:CharacterString>Befliegungscode nach dem Muster yyyyxx, wobei yyyy das Jahr und xx die jeweilige Befliegung meint</gco:CharacterString></igctx:featureDescription><igctx:featureDataType><gco:CharacterString>integer</gco:CharacterString></igctx:featureDataType><igctx:featureAttributes><igctx:FeatureAttributes><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Zählung am 23.05.95</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>199501</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Zählung am 23.06.95</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>199502</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Zählung am 08.07.95</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>199503</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Zählung am 22.07.95</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>199504</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Zählung am 07.08.95</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>199505</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Zählung am 18.08.95</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>199506</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute></igctx:FeatureAttributes></igctx:featureAttributes></igctx:OtherFeature></igctx:geometricFeature></igctx:MD_GeometryContext></gmd:spatialRepresentationInfo><gmd:spatialRepresentationInfo><igctx:MD_GeometryContext gco:isoType="AbstractMD_SpatialRepresentation_Type"><igctx:geometryType><gco:CharacterString>point</gco:CharacterString></igctx:geometryType><igctx:geometricFeature><igctx:OtherFeature><igctx:featureName><gco:CharacterString>spuren</gco:CharacterString></igctx:featureName><igctx:featureDescription><gco:CharacterString>Anzahl der gesichteten Robbenspuren</gco:CharacterString></igctx:featureDescription><igctx:featureDataType><gco:CharacterString>integer</gco:CharacterString></igctx:featureDataType></igctx:OtherFeature></igctx:geometricFeature></igctx:MD_GeometryContext></gmd:spatialRepresentationInfo><gmd:spatialRepresentationInfo><igctx:MD_GeometryContext gco:isoType="AbstractMD_SpatialRepresentation_Type"><igctx:geometryType><gco:CharacterString>point</gco:CharacterString></igctx:geometryType><igctx:geometricFeature><igctx:OtherFeature><igctx:featureName><gco:CharacterString>docnr</gco:CharacterString></igctx:featureName><igctx:featureDescription><gco:CharacterString>Dokumentationsnummer</gco:CharacterString></igctx:featureDescription><igctx:featureDataType><gco:CharacterString>integer</gco:CharacterString></igctx:featureDataType><igctx:featureAttributes><igctx:FeatureAttributes><igctx:attribute><igctx:OtherFeatureAttribute><igctx:attributeDescription><gco:CharacterString>Erfassung und Ortsversatz, Ulrich Erg,22.5.1997</gco:CharacterString></igctx:attributeDescription><igctx:attributeContent><gco:CharacterString>1</gco:CharacterString></igctx:attributeContent></igctx:OtherFeatureAttribute></igctx:attribute></igctx:FeatureAttributes></igctx:featureAttributes></igctx:OtherFeature></igctx:geometricFeature></igctx:MD_GeometryContext></gmd:spatialRepresentationInfo><gmd:referenceSystemInfo><gmd:MD_ReferenceSystem><gmd:referenceSystemIdentifier><gmd:RS_Identifier><gmd:code><gmx:Anchor xlink:href="http://www.opengis.net/def/crs/EPSG/0/4647">EPSG 4647: ETRS89 / UTM Zone 32N (zE-N)</gmx:Anchor></gmd:code></gmd:RS_Identifier></gmd:referenceSystemIdentifier></gmd:MD_ReferenceSystem></gmd:referenceSystemInfo><gmd:identificationInfo><gmd:MD_DataIdentification uuid="https://mdi-sh.org#5aef2e23-838c-494a-baa1-73ffc285a001"><gmd:citation><gmd:CI_Citation><gmd:title><gco:CharacterString>Robben im Schleswig-Holsteinischen Wattenmeer 1995#locale-eng:Seals in the Schleswig-Holstein Wadden Sea in 1995</gco:CharacterString></gmd:title><gmd:alternateTitle><gco:CharacterString>Seehundliegeplätze_SH_1995</gco:CharacterString></gmd:alternateTitle><gmd:date><gmd:CI_Date><gmd:date><gco:DateTime>2000-11-18T00:00:00.000+01:00</gco:DateTime></gmd:date><gmd:dateType><gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" codeListValue="revision"/></gmd:dateType></gmd:CI_Date></gmd:date><gmd:date><gmd:CI_Date><gmd:date><gco:DateTime>2000-11-18T00:00:00.000+01:00</gco:DateTime></gmd:date><gmd:dateType><gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" codeListValue="publication"/></gmd:dateType></gmd:CI_Date></gmd:date><gmd:identifier><gmd:MD_Identifier><gmd:code><gco:CharacterString>https://mdi-sh.org#5aef2e23-838c-494a-baa1-73ffc285a001</gco:CharacterString></gmd:code></gmd:MD_Identifier></gmd:identifier></gmd:CI_Citation></gmd:citation><gmd:abstract><gco:CharacterString>Übersichtskarte Schleswig-Holsteinisches Wattenmeer, Punktdaten</gco:CharacterString></gmd:abstract><gmd:purpose><gco:CharacterString>Ergebnis im Rahmen des Trilateralen Monitorings TMAP</gco:CharacterString></gmd:purpose><gmd:status><gmd:MD_ProgressCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_ProgressCode" codeListValue="completed"/></gmd:status><gmd:pointOfContact><gmd:CI_ResponsibleParty uuid="03a5391b-4ec2-45a3-b455-8fe78d82f5cf"><gmd:organisationName><gco:CharacterString>Landesbetrieb für Küstenschutz, Nationalpark und Meeresschutz Schleswig-Holstein</gco:CharacterString></gmd:organisationName><gmd:positionName><gco:CharacterString>Geodaten, Fernerkundung, Datennetzwerke</gco:CharacterString></gmd:positionName><gmd:contactInfo><gmd:CI_Contact><gmd:phone><gmd:CI_Telephone><gmd:voice><gco:CharacterString>048616160</gco:CharacterString></gmd:voice><gmd:facsimile><gco:CharacterString>0486161669</gco:CharacterString></gmd:facsimile></gmd:CI_Telephone></gmd:phone><gmd:address><gmd:CI_Address><gmd:deliveryPoint><gco:CharacterString>Schlossgarten 1</gco:CharacterString></gmd:deliveryPoint><gmd:city><gco:CharacterString>Tönning</gco:CharacterString></gmd:city><gmd:administrativeArea><gco:CharacterString>Schleswig-Holstein</gco:CharacterString></gmd:administrativeArea><gmd:postalCode><gco:CharacterString>25832</gco:CharacterString></gmd:postalCode><gmd:electronicMailAddress><gco:CharacterString>poststelle@lkn.landsh.de</gco:CharacterString></gmd:electronicMailAddress></gmd:CI_Address></gmd:address><gmd:onlineResource><gmd:CI_OnlineResource><gmd:linkage><gmd:URL>http://www.wattenmeer-nationalparke.de/sh</gmd:URL></gmd:linkage></gmd:CI_OnlineResource></gmd:onlineResource><gmd:hoursOfService><gco:CharacterString>Mo-Do 9:00-12:00 u. 14:00-16:00; Fr 9:00-12:00</gco:CharacterString></gmd:hoursOfService></gmd:CI_Contact></gmd:contactInfo><gmd:role><gmd:CI_RoleCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_RoleCode" codeListValue="originator"/></gmd:role></gmd:CI_ResponsibleParty></gmd:pointOfContact><gmd:pointOfContact><gmd:CI_ResponsibleParty uuid="8ac62792-18cc-8743-0119-57923bb80004"><gmd:individualName><gco:CharacterString>JK</gco:CharacterString></gmd:individualName><gmd:organisationName><gco:CharacterString>Landesbetrieb für Küstenschutz, Nationalpark und Meeresschutz Schleswig-Holstein</gco:CharacterString></gmd:organisationName><gmd:positionName><gco:CharacterString>Geodaten, Fernerkundung, Datennetzwerke</gco:CharacterString></gmd:positionName><gmd:contactInfo><gmd:CI_Contact><gmd:phone><gmd:CI_Telephone><gmd:voice><gco:CharacterString>+49 (0)4861 616-46</gco:CharacterString></gmd:voice><gmd:facsimile><gco:CharacterString>+49 (0)4861 616-69</gco:CharacterString></gmd:facsimile></gmd:CI_Telephone></gmd:phone><gmd:address><gmd:CI_Address><gmd:deliveryPoint><gco:CharacterString>Schlossgarten 1</gco:CharacterString></gmd:deliveryPoint><gmd:city><gco:CharacterString>Tönning</gco:CharacterString></gmd:city><gmd:administrativeArea><gco:CharacterString>Schleswig-Holstein</gco:CharacterString></gmd:administrativeArea><gmd:postalCode><gco:CharacterString>25832</gco:CharacterString></gmd:postalCode><gmd:electronicMailAddress><gco:CharacterString>info@lkn.landsh.de</gco:CharacterString></gmd:electronicMailAddress></gmd:CI_Address></gmd:address><gmd:onlineResource><gmd:CI_OnlineResource><gmd:linkage><gmd:URL>http://www.wattenmeer-nationalparke.de/sh</gmd:URL></gmd:linkage></gmd:CI_OnlineResource></gmd:onlineResource><gmd:hoursOfService><gco:CharacterString>Mo-Do 9:00-12:00 u. 14:00-16:00; Fr 9:00-12:00</gco:CharacterString></gmd:hoursOfService></gmd:CI_Contact></gmd:contactInfo><gmd:role><gmd:CI_RoleCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_RoleCode" codeListValue="pointOfContact"/></gmd:role></gmd:CI_ResponsibleParty></gmd:pointOfContact><gmd:pointOfContact><gmd:CI_ResponsibleParty uuid="03a5391b-4ec2-45a3-b455-8fe78d82f5cf"><gmd:organisationName><gco:CharacterString>Landesbetrieb für Küstenschutz, Nationalpark und Meeresschutz Schleswig-Holstein</gco:CharacterString></gmd:organisationName><gmd:positionName><gco:CharacterString>Geodaten, Fernerkundung, Datennetzwerke</gco:CharacterString></gmd:positionName><gmd:contactInfo><gmd:CI_Contact><gmd:phone><gmd:CI_Telephone><gmd:voice><gco:CharacterString>048616160</gco:CharacterString></gmd:voice><gmd:facsimile><gco:CharacterString>0486161669</gco:CharacterString></gmd:facsimile></gmd:CI_Telephone></gmd:phone><gmd:address><gmd:CI_Address><gmd:deliveryPoint><gco:CharacterString>Schlossgarten 1</gco:CharacterString></gmd:deliveryPoint><gmd:city><gco:CharacterString>Tönning</gco:CharacterString></gmd:city><gmd:administrativeArea><gco:CharacterString>Schleswig-Holstein</gco:CharacterString></gmd:administrativeArea><gmd:postalCode><gco:CharacterString>25832</gco:CharacterString></gmd:postalCode><gmd:electronicMailAddress><gco:CharacterString>poststelle@lkn.landsh.de</gco:CharacterString></gmd:electronicMailAddress></gmd:CI_Address></gmd:address><gmd:onlineResource><gmd:CI_OnlineResource><gmd:linkage><gmd:URL>http://www.wattenmeer-nationalparke.de/sh</gmd:URL></gmd:linkage></gmd:CI_OnlineResource></gmd:onlineResource><gmd:hoursOfService><gco:CharacterString>Mo-Do 9:00-12:00 u. 14:00-16:00; Fr 9:00-12:00</gco:CharacterString></gmd:hoursOfService></gmd:CI_Contact></gmd:contactInfo><gmd:role><gmd:CI_RoleCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_RoleCode" codeListValue="publisher"/></gmd:role></gmd:CI_ResponsibleParty></gmd:pointOfContact><gmd:resourceMaintenance><gmd:MD_MaintenanceInformation><gmd:maintenanceAndUpdateFrequency><gmd:MD_MaintenanceFrequencyCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_MaintenanceFrequencyCode" codeListValue="notPlanned"/></gmd:maintenanceAndUpdateFrequency><gmd:updateScope><gmd:MD_ScopeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_ScopeCode" codeListValue="dataset"/></gmd:updateScope></gmd:MD_MaintenanceInformation></gmd:resourceMaintenance><gmd:graphicOverview><gmd:MD_BrowseGraphic><gmd:fileName><gco:CharacterString>https://s-h.nokis.org/ingrid_graphics/00729c12-e689-446d-83bd-dd8cfd0eeeb8/seehp1995.png</gco:CharacterString></gmd:fileName><gmd:fileDescription><gco:CharacterString>grafische Darstellung</gco:CharacterString></gmd:fileDescription></gmd:MD_BrowseGraphic></gmd:graphicOverview><gmd:descriptiveKeywords><gmd:MD_Keywords><gmd:keyword><gco:CharacterString>Ozeanografisch-geografische Kennwerte</gco:CharacterString></gmd:keyword><gmd:type><gmd:MD_KeywordTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_KeywordTypeCode" codeListValue="theme"/></gmd:type><gmd:thesaurusName><gmd:CI_Citation><gmd:title><gco:CharacterString>GEMET - INSPIRE themes, version 1.0</gco:CharacterString></gmd:title><gmd:date><gmd:CI_Date><gmd:date><gco:Date>2008-06-01</gco:Date></gmd:date><gmd:dateType><gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" codeListValue="publication">publication</gmd:CI_DateTypeCode></gmd:dateType></gmd:CI_Date></gmd:date></gmd:CI_Citation></gmd:thesaurusName></gmd:MD_Keywords></gmd:descriptiveKeywords><gmd:descriptiveKeywords><gmd:MD_Keywords><gmd:keyword><gco:CharacterString>Umwelt und Klima</gco:CharacterString></gmd:keyword><gmd:keyword><gco:CharacterString>gdi-sh</gco:CharacterString></gmd:keyword><gmd:keyword><gco:CharacterString>Kegelrobbe</gco:CharacterString></gmd:keyword><gmd:keyword><gco:CharacterString>Phoca vitulina vitulina</gco:CharacterString></gmd:keyword><gmd:keyword><gco:CharacterString>Halichoerus grypus</gco:CharacterString></gmd:keyword><gmd:keyword><gco:CharacterString>Common seal</gco:CharacterString></gmd:keyword><gmd:keyword><gco:CharacterString>Grey seal</gco:CharacterString></gmd:keyword><gmd:keyword><gco:CharacterString>Schleswig-Holsteinisches Wattenmeer</gco:CharacterString></gmd:keyword><gmd:keyword><gco:CharacterString>opendata</gco:CharacterString></gmd:keyword></gmd:MD_Keywords></gmd:descriptiveKeywords><gmd:descriptiveKeywords><gmd:MD_Keywords><gmd:keyword><gco:CharacterString/></gmd:keyword><gmd:thesaurusName><gmd:CI_Citation><gmd:title><gmx:Anchor xlink:href="http://inspire.ec.europa.eu/metadata-codelist/SpatialScope">Spatial scope</gmx:Anchor></gmd:title><gmd:date><gmd:CI_Date><gmd:date><gco:Date>2019-05-22</gco:Date></gmd:date><gmd:dateType><gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" codeListValue="publication">publication</gmd:CI_DateTypeCode></gmd:dateType></gmd:CI_Date></gmd:date></gmd:CI_Citation></gmd:thesaurusName></gmd:MD_Keywords></gmd:descriptiveKeywords><gmd:descriptiveKeywords><gmd:MD_Keywords><gmd:keyword><gco:CharacterString>ENVI</gco:CharacterString></gmd:keyword><gmd:type><gmd:MD_KeywordTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_KeywordTypeCode" codeListValue="theme"/></gmd:type></gmd:MD_Keywords></gmd:descriptiveKeywords><gmd:resourceConstraints><gmd:MD_LegalConstraints><gmd:useLimitation><gco:CharacterString>keine</gco:CharacterString></gmd:useLimitation></gmd:MD_LegalConstraints></gmd:resourceConstraints><gmd:resourceConstraints><gmd:MD_LegalConstraints><gmd:useConstraints><gmd:MD_RestrictionCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_RestrictionCode" codeListValue="otherRestrictions"/></gmd:useConstraints><gmd:otherConstraints><gco:CharacterString>Datenlizenz Deutschland Namensnennung 2.0</gco:CharacterString></gmd:otherConstraints><gmd:otherConstraints><gco:CharacterString>Quellenvermerk: LKN SH Nationalparkverwaltung</gco:CharacterString></gmd:otherConstraints><gmd:otherConstraints><gco:CharacterString>{"id":"dl-by-de/2.0","name":"Datenlizenz Deutschland Namensnennung 2.0","url":"https://www.govdata.de/dl-de/by-2-0","quelle":"LKN SH Nationalparkverwaltung"}</gco:CharacterString></gmd:otherConstraints></gmd:MD_LegalConstraints></gmd:resourceConstraints><gmd:resourceConstraints><gmd:MD_LegalConstraints><gmd:accessConstraints><gmd:MD_RestrictionCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_RestrictionCode" codeListValue="otherRestrictions">otherRestrictions</gmd:MD_RestrictionCode></gmd:accessConstraints><gmd:otherConstraints><gmx:Anchor xlink:href="http://inspire.ec.europa.eu/metadata-codelist/LimitationsOnPublicAccess/noLimitations">Es gelten keine Zugriffsbeschränkungen</gmx:Anchor></gmd:otherConstraints></gmd:MD_LegalConstraints></gmd:resourceConstraints><gmd:spatialRepresentationType><gmd:MD_SpatialRepresentationTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_SpatialRepresentationTypeCode" codeListValue="vector"/></gmd:spatialRepresentationType><gmd:spatialResolution><gmd:MD_Resolution><gmd:equivalentScale><gmd:MD_RepresentativeFraction><gmd:denominator><gco:Integer>100000</gco:Integer></gmd:denominator></gmd:MD_RepresentativeFraction></gmd:equivalentScale></gmd:MD_Resolution></gmd:spatialResolution><gmd:language><gmd:LanguageCode codeList="http://www.loc.gov/standards/iso639-2/" codeListValue="ger"/></gmd:language><gmd:topicCategory><gmd:MD_TopicCategoryCode>biota</gmd:MD_TopicCategoryCode></gmd:topicCategory><gmd:topicCategory><gmd:MD_TopicCategoryCode>oceans</gmd:MD_TopicCategoryCode></gmd:topicCategory><gmd:extent><gmd:EX_Extent><gmd:geographicElement><gmd:EX_GeographicDescription><gmd:extentTypeCode><gco:Boolean>true</gco:Boolean></gmd:extentTypeCode><gmd:geographicIdentifier><gmd:MD_Identifier><gmd:code><gco:CharacterString>Schleswig-Holsteinisches Wattenmeer</gco:CharacterString></gmd:code></gmd:MD_Identifier></gmd:geographicIdentifier></gmd:EX_GeographicDescription></gmd:geographicElement><gmd:geographicElement><gmd:EX_GeographicBoundingBox><gmd:extentTypeCode><gco:Boolean>true</gco:Boolean></gmd:extentTypeCode><gmd:westBoundLongitude><gco:Decimal>8.23</gco:Decimal></gmd:westBoundLongitude><gmd:eastBoundLongitude><gco:Decimal>8.95</gco:Decimal></gmd:eastBoundLongitude><gmd:southBoundLatitude><gco:Decimal>53.85</gco:Decimal></gmd:southBoundLatitude><gmd:northBoundLatitude><gco:Decimal>55.04</gco:Decimal></gmd:northBoundLatitude></gmd:EX_GeographicBoundingBox></gmd:geographicElement><gmd:temporalElement><gmd:EX_TemporalExtent><gmd:extent><gml:TimePeriod gml:id="timePeriod_ID_f996a508-2ad1-4b0c-9717-59b7a9faa063"><gml:beginPosition>1995-05-23T00:00:00.000+02:00</gml:beginPosition><gml:endPosition>1995-08-18T00:00:00.000+02:00</gml:endPosition></gml:TimePeriod></gmd:extent></gmd:EX_TemporalExtent></gmd:temporalElement></gmd:EX_Extent></gmd:extent></gmd:MD_DataIdentification></gmd:identificationInfo><gmd:distributionInfo><gmd:MD_Distribution><gmd:distributionFormat><gmd:MD_Format><gmd:name><gco:CharacterString>Shapefiles</gco:CharacterString></gmd:name><gmd:version><gco:CharacterString>1.0</gco:CharacterString></gmd:version></gmd:MD_Format></gmd:distributionFormat><gmd:distributor><gmd:MD_Distributor><gmd:distributorContact><gmd:CI_ResponsibleParty><gmd:role><gmd:CI_RoleCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_RoleCode" codeListValue="distributor"/></gmd:role></gmd:CI_ResponsibleParty></gmd:distributorContact><gmd:distributionOrderProcess><gmd:MD_StandardOrderProcess><gmd:orderingInstructions><gco:CharacterString>Gebuehren: keine</gco:CharacterString></gmd:orderingInstructions></gmd:MD_StandardOrderProcess></gmd:distributionOrderProcess></gmd:MD_Distributor></gmd:distributor><gmd:transferOptions><gmd:MD_DigitalTransferOptions><gmd:onLine><gmd:CI_OnlineResource><gmd:linkage><gmd:URL>https://s-h.nokis.org/Geodaten/utmsh/mod100/s_seeh/1995_b/seehp95pt/seehp95pt.zip</gmd:URL></gmd:linkage><gmd:name><gco:CharacterString>https://s-h.nokis.org/Geodaten/utmsh/mod100/s_seeh/1995_b/seehp95pt/seehp95pt.zip</gco:CharacterString></gmd:name><gmd:function><gmd:CI_OnLineFunctionCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_OnLineFunctionCode" codeListValue="download">download</gmd:CI_OnLineFunctionCode></gmd:function></gmd:CI_OnlineResource></gmd:onLine></gmd:MD_DigitalTransferOptions></gmd:transferOptions></gmd:MD_Distribution></gmd:distributionInfo><gmd:dataQualityInfo><gmd:DQ_DataQuality><gmd:scope><gmd:DQ_Scope><gmd:level><gmd:MD_ScopeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_ScopeCode" codeListValue="dataset"/></gmd:level></gmd:DQ_Scope></gmd:scope><gmd:report><gmd:DQ_CompletenessOmission><gmd:nameOfMeasure><gco:CharacterString>Rate of missing items</gco:CharacterString></gmd:nameOfMeasure><gmd:measureIdentification><gmd:MD_Identifier><gmd:code><gco:CharacterString>7</gco:CharacterString></gmd:code></gmd:MD_Identifier></gmd:measureIdentification><gmd:measureDescription><gco:CharacterString>completeness omission (rec_grade)</gco:CharacterString></gmd:measureDescription><gmd:result><gmd:DQ_QuantitativeResult><gmd:valueUnit><gml:UnitDefinition gml:id="unitDefinition_ID_d9654c07-5c27-4ab8-8260-60995d63c2c7"><gml:identifier codeSpace=""/><gml:name>percent</gml:name><gml:quantityType>completeness omission</gml:quantityType><gml:catalogSymbol>%</gml:catalogSymbol></gml:UnitDefinition></gmd:valueUnit><gmd:value><gco:Record>0</gco:Record></gmd:value></gmd:DQ_QuantitativeResult></gmd:result></gmd:DQ_CompletenessOmission></gmd:report><gmd:report><gmd:DQ_DomainConsistency><gmd:result><gmd:DQ_ConformanceResult><gmd:specification><gmd:CI_Citation><gmd:title><gco:CharacterString>VERORDNUNG (EG) Nr. 976/2009 DER KOMMISSION vom 19. Oktober 2009 zur Durchführung der Richtlinie 2007/2/EG des Europäischen Parlaments und des Rates hinsichtlich der Netzdienste</gco:CharacterString></gmd:title><gmd:date><gmd:CI_Date><gmd:date><gco:Date>2009-10-20</gco:Date></gmd:date><gmd:dateType><gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" codeListValue="publication">publication</gmd:CI_DateTypeCode></gmd:dateType></gmd:CI_Date></gmd:date></gmd:CI_Citation></gmd:specification><gmd:explanation><gco:CharacterString>Die Qualität der Daten entspricht den Datenspezifikationen.</gco:CharacterString></gmd:explanation><gmd:pass><gco:Boolean>true</gco:Boolean></gmd:pass></gmd:DQ_ConformanceResult></gmd:result></gmd:DQ_DomainConsistency></gmd:report><gmd:report><gmd:DQ_DomainConsistency><gmd:result><gmd:DQ_ConformanceResult><gmd:specification><gmd:CI_Citation><gmd:title><gco:CharacterString>VERORDNUNG (EG) Nr. 1089/2010 DER KOMMISSION vom 23. November 2010 zur Durchführung der Richtlinie 2007/2/EG des Europäischen Parlaments und des Rates hinsichtlich der Interoperabilität von Geodatensätzen und -diensten</gco:CharacterString></gmd:title><gmd:date><gmd:CI_Date><gmd:date><gco:Date>2010-12-08</gco:Date></gmd:date><gmd:dateType><gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" codeListValue="publication">publication</gmd:CI_DateTypeCode></gmd:dateType></gmd:CI_Date></gmd:date></gmd:CI_Citation></gmd:specification><gmd:explanation><gco:CharacterString>Die Qualität der Daten entspricht den Datenspezifikationen.</gco:CharacterString></gmd:explanation><gmd:pass><gco:Boolean>true</gco:Boolean></gmd:pass></gmd:DQ_ConformanceResult></gmd:result></gmd:DQ_DomainConsistency></gmd:report><gmd:lineage><gmd:LI_Lineage><gmd:statement><gco:CharacterString>Kai Abt (1995) Befliegungen und Begehungen Hersg.: FTZ Bericht zur Datenqualität:</gco:CharacterString></gmd:statement></gmd:LI_Lineage></gmd:lineage></gmd:DQ_DataQuality></gmd:dataQualityInfo></gmd:MD_Metadata></csw:GetRecordByIdResponse> diff --git a/src/test/resources/6782583C-9747-4C16-B94D-3EAF2BFDB171.xml b/src/test/resources/6782583C-9747-4C16-B94D-3EAF2BFDB171.xml new file mode 100644 index 0000000000000000000000000000000000000000..0d5b61a854776cc9b2663c156915a548254f3ddd --- /dev/null +++ b/src/test/resources/6782583C-9747-4C16-B94D-3EAF2BFDB171.xml @@ -0,0 +1,538 @@ +<?xml version="1.0" encoding="UTF-8"?><csw:GetRecordByIdResponse xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:xs="http://www.w3.org/2001/XMLSchema"><gmd:MD_Metadata xmlns:gmd="http://www.isotc211.org/2005/gmd" xmlns:gco="http://www.isotc211.org/2005/gco" xmlns:gml="http://www.opengis.net/gml/3.2" xmlns:gmx="http://www.isotc211.org/2005/gmx" xmlns:gts="http://www.isotc211.org/2005/gts" xmlns:igctx="https://www.ingrid-oss.eu/schemas/igctx" xmlns:srv="http://www.isotc211.org/2005/srv" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.isotc211.org/2005/gmd http://repository.gdi-de.org/schemas/geonetwork/2020-12-11/csw/2.0.2/profiles/apiso/1.0.1/apiso.xsd https://www.ingrid-oss.eu/schemas/igctx https://www.ingrid-oss.eu/schemas/igctx/igctx.xsd"> + <gmd:fileIdentifier> + <gco:CharacterString>6782583C-9747-4C16-B94D-3EAF2BFDB171</gco:CharacterString> + </gmd:fileIdentifier> + <gmd:language> + <gmd:LanguageCode codeList="http://www.loc.gov/standards/iso639-2/" codeListValue="ger"/> + </gmd:language> + <gmd:characterSet> + <gmd:MD_CharacterSetCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_CharacterSetCode" codeListValue="utf8"/> + </gmd:characterSet> + <gmd:parentIdentifier> + <gco:CharacterString>68BD7DA4-2F78-4681-9F50-0CD292292D31</gco:CharacterString> + </gmd:parentIdentifier> + <gmd:hierarchyLevel> + <gmd:MD_ScopeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_ScopeCode" codeListValue="dataset">dataset</gmd:MD_ScopeCode> + </gmd:hierarchyLevel> + <gmd:contact> + <gmd:CI_ResponsibleParty uuid="7168FFB6-F77F-4A2C-ADB0-987B90D19FF7"> + <gmd:organisationName> + <gco:CharacterString>Landesamt für Umwelt des Landes Schleswig-Holstein (LfU)</gco:CharacterString> + </gmd:organisationName> + <gmd:contactInfo> + <gmd:CI_Contact> + <gmd:address> + <gmd:CI_Address> + <gmd:electronicMailAddress> + <gco:CharacterString>info@lfu.landsh.de</gco:CharacterString> + </gmd:electronicMailAddress> + </gmd:CI_Address> + </gmd:address> + </gmd:CI_Contact> + </gmd:contactInfo> + <gmd:role> + <gmd:CI_RoleCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_RoleCode" codeListValue="pointOfContact"/> + </gmd:role> + </gmd:CI_ResponsibleParty> + </gmd:contact> + <gmd:dateStamp> + <gco:Date>2024-01-11</gco:Date> + </gmd:dateStamp> + <gmd:metadataStandardName> + <gco:CharacterString>ISO19115</gco:CharacterString> + </gmd:metadataStandardName> + <gmd:metadataStandardVersion> + <gco:CharacterString>2003/Cor.1:2006</gco:CharacterString> + </gmd:metadataStandardVersion> + <gmd:referenceSystemInfo> + <gmd:MD_ReferenceSystem> + <gmd:referenceSystemIdentifier> + <gmd:RS_Identifier> + <gmd:code> + <gmx:Anchor xlink:href="http://www.opengis.net/def/crs/EPSG/0/4647">EPSG 4647: ETRS89 / UTM Zone 32N (zE-N)</gmx:Anchor> + </gmd:code> + </gmd:RS_Identifier> + </gmd:referenceSystemIdentifier> + </gmd:MD_ReferenceSystem> + </gmd:referenceSystemInfo> + <gmd:identificationInfo> + <gmd:MD_DataIdentification uuid="http://portalu.de/igc_sh#Schleswig-Holstein:6782583C-9747-4C16-B94D-3EAF2BFDB171"> + <gmd:citation> + <gmd:CI_Citation> + <gmd:title> + <gco:CharacterString>Landschaftsschutzgebiete (1:25.000) in Schleswig-Holstein LfU</gco:CharacterString> + </gmd:title> + <gmd:date> + <gmd:CI_Date> + <gmd:date> + <gco:DateTime>2022-12-31T00:00:00.000+01:00</gco:DateTime> + </gmd:date> + <gmd:dateType> + <gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" codeListValue="revision"/> + </gmd:dateType> + </gmd:CI_Date> + </gmd:date> + <gmd:identifier> + <gmd:MD_Identifier> + <gmd:code> + <gco:CharacterString>http://portalu.de/igc_sh#Schleswig-Holstein:6782583C-9747-4C16-B94D-3EAF2BFDB171</gco:CharacterString> + </gmd:code> + </gmd:MD_Identifier> + </gmd:identifier> + </gmd:CI_Citation> + </gmd:citation> + <gmd:abstract> + <gco:CharacterString>Gebietsabgrenzungen der bestehenden Landschaftsschutzgebiete (LSG) gemäß § 26 Bundesnaturschutzgesetz vom 29. Juli 2009 [BGBl. I S. 2542] (zuletzt geändert 6. Oktober 2011 [BGBl. I S. 1986) in Verbindung mit § 15 Landesnaturschutzgesetz vom 24. Februrar 2010 [GVOBl. Schl.-H. S. 301] (zuletzt geändert 13. Juli 2011 [GVOBl. Schl.-H. S. 225]). Die Zuständigkeit für die Ausweisung von Landschaftsschutzgebieten liegt bei den Kreisen als Untere Naturschutzbehörden. Die Vollständigkeit der Daten kann insofern nicht garantiert werden (abhängig von Zulieferung durch die Kreise). Hier dargestellt sind nur LSG-Flächen, die außerhalb von Naturschutzgebieten (NSG) liegen. +Die digitalen Abgrenzungen sind durch Übertragung der analog vorliegenden Verordnungskarten der Kreise entstanden. Bei Detailfragen gelten letztendlich die Originalkarten der jeweiligen Verordnung (liegen bei den Kreisen/Unteren Naturschutzbehörden sowie beim Land/Oberste Naturschutzbehörde) Gebietsspezifische Anfragen bitte an den zuständigen Kreis. Die "Gebietsnr" (als lfd. Nr. je Kreis) ergibt sich nach folgenden Grundsätzen: +1) Reihenfolge ergibt sich aus dem Datum der Erstverordnung. +2) Werden in einer Verordnung mehrere räumlich oder durch eindeutige Bezeichnung getrennt liegende Landschaftsteile geschützt oder wird explizit deren eigenständige Führung in der amtlichen / offiziellen Liste des Kreises genannt, erhält jeder Landschaftsteil eine eigene lfd. Nummer (und Name). +3) Wird ein LSG aufgehoben, werden die entsprechenden Polygone und Datensätze gelöscht. Dadurch können Sprünge/Lücken in der durchgängigen Nummerierung entstehen. +4) Wird innerhalb eines bereits geschützten Bereichs ein Teilgebiet als LSG ausgewiesen, erhält dieses eine neue lfd. Nummer (und Name). Im Datensatz wird im Feld Jahr als Hinweis auf den durchgängigen bzw. vorausgehenden Schutz - die Angabe des zeitlich vorhergehenden LSG nachrichtlich übernommen. Innerhalb des Landesamtes werden im GIS, im Schutzgebietskataster (SGK) sowie im Aktenplan kreisweise identische lfd. Nummern verwendet. Das Aktenzeichen für LSG lautet: 5322.1-,nachfolgend die Kreiskennziffer sowie die lfd. Nr. (vollzogen für OD, OH, PI - ansonsten bislang nur Übereinstimmumng von GIS und SGK) Zwischen den Verzeichnissen der Kreise und des Landesamtes kann es abweichende Nummerierungen geben.</gco:CharacterString> + </gmd:abstract> + <gmd:status> + <gmd:MD_ProgressCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_ProgressCode" codeListValue="onGoing"/> + </gmd:status> + <gmd:pointOfContact> + <gmd:CI_ResponsibleParty uuid="43507209-849b-4836-94ea-aa053594c9a8"> + <gmd:individualName> + <gco:CharacterString>jeweiliger Kreis</gco:CharacterString> + </gmd:individualName> + <gmd:organisationName> + <gco:CharacterString>Kreis</gco:CharacterString> + </gmd:organisationName> + <gmd:positionName> + <gco:CharacterString>Abteilung 5 LfU Naturschutz, Kreis</gco:CharacterString> + </gmd:positionName> + <gmd:contactInfo> + <gmd:CI_Contact> + <gmd:address> + <gmd:CI_Address> + <gmd:administrativeArea> + <gco:CharacterString>Schleswig-Holstein</gco:CharacterString> + </gmd:administrativeArea> + <gmd:electronicMailAddress> + <gco:CharacterString>xxx.xxx@kreis-xxx.de</gco:CharacterString> + </gmd:electronicMailAddress> + </gmd:CI_Address> + </gmd:address> + </gmd:CI_Contact> + </gmd:contactInfo> + <gmd:role> + <gmd:CI_RoleCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_RoleCode" codeListValue="resourceProvider"/> + </gmd:role> + </gmd:CI_ResponsibleParty> + </gmd:pointOfContact> + <gmd:pointOfContact> + <gmd:CI_ResponsibleParty uuid="eefa7a86-1254-405c-8715-00a3fa20d90a"> + <gmd:individualName> + <gco:CharacterString>Kontakt</gco:CharacterString> + </gmd:individualName> + <gmd:organisationName> + <gco:CharacterString>Landesamt für Umwelt des Landes Schleswig-Holstein (LfU)</gco:CharacterString> + </gmd:organisationName> + <gmd:positionName> + <gco:CharacterString>Dezernatsleiterin 55</gco:CharacterString> + </gmd:positionName> + <gmd:contactInfo> + <gmd:CI_Contact> + <gmd:phone> + <gmd:CI_Telephone> + <gmd:voice> + <gco:CharacterString>04347-0</gco:CharacterString> + </gmd:voice> + </gmd:CI_Telephone> + </gmd:phone> + <gmd:address> + <gmd:CI_Address> + <gmd:deliveryPoint> + <gco:CharacterString>Hamburger Chaussee 25</gco:CharacterString> + </gmd:deliveryPoint> + <gmd:city> + <gco:CharacterString>Flintbek</gco:CharacterString> + </gmd:city> + <gmd:administrativeArea> + <gco:CharacterString>Schleswig-Holstein</gco:CharacterString> + </gmd:administrativeArea> + <gmd:postalCode> + <gco:CharacterString>24220</gco:CharacterString> + </gmd:postalCode> + <gmd:country> + <gco:CharacterString>DEU</gco:CharacterString> + </gmd:country> + <gmd:electronicMailAddress> + <gco:CharacterString>info@lfu.landsh.de</gco:CharacterString> + </gmd:electronicMailAddress> + </gmd:CI_Address> + </gmd:address> + <gmd:onlineResource> + <gmd:CI_OnlineResource> + <gmd:linkage> + <gmd:URL>https://www.schleswig-holstein.de/DE/landesregierung/ministerien-behoerden/LFU/organisation/abteilungen/abteilung5_naturschutz.html</gmd:URL> + </gmd:linkage> + </gmd:CI_OnlineResource> + </gmd:onlineResource> + </gmd:CI_Contact> + </gmd:contactInfo> + <gmd:role> + <gmd:CI_RoleCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_RoleCode" codeListValue="pointOfContact"/> + </gmd:role> + </gmd:CI_ResponsibleParty> + </gmd:pointOfContact> + <gmd:resourceMaintenance> + <gmd:MD_MaintenanceInformation> + <gmd:maintenanceAndUpdateFrequency> + <gmd:MD_MaintenanceFrequencyCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_MaintenanceFrequencyCode" codeListValue="asNeeded"/> + </gmd:maintenanceAndUpdateFrequency> + <gmd:updateScope> + <gmd:MD_ScopeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_ScopeCode" codeListValue="dataset"/> + </gmd:updateScope> + </gmd:MD_MaintenanceInformation> + </gmd:resourceMaintenance> + <gmd:descriptiveKeywords> + <gmd:MD_Keywords> + <gmd:keyword> + <gco:CharacterString>Schutzgebiete</gco:CharacterString> + </gmd:keyword> + <gmd:type> + <gmd:MD_KeywordTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_KeywordTypeCode" codeListValue="theme"/> + </gmd:type> + <gmd:thesaurusName> + <gmd:CI_Citation> + <gmd:title> + <gco:CharacterString>GEMET - INSPIRE themes, version 1.0</gco:CharacterString> + </gmd:title> + <gmd:date> + <gmd:CI_Date> + <gmd:date> + <gco:Date>2008-06-01</gco:Date> + </gmd:date> + <gmd:dateType> + <gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" codeListValue="publication">publication</gmd:CI_DateTypeCode> + </gmd:dateType> + </gmd:CI_Date> + </gmd:date> + </gmd:CI_Citation> + </gmd:thesaurusName> + </gmd:MD_Keywords> + </gmd:descriptiveKeywords> + <gmd:descriptiveKeywords> + <gmd:MD_Keywords> + <gmd:keyword> + <gco:CharacterString>gdi-sh</gco:CharacterString> + </gmd:keyword> + <gmd:keyword> + <gco:CharacterString>Schutzgebiete</gco:CharacterString> + </gmd:keyword> + <gmd:keyword> + <gco:CharacterString>opendata</gco:CharacterString> + </gmd:keyword> + </gmd:MD_Keywords> + </gmd:descriptiveKeywords> + <gmd:descriptiveKeywords> + <gmd:MD_Keywords> + <gmd:keyword> + <gmx:Anchor xlink:href="http://inspire.ec.europa.eu/metadata-codelist/PriorityDataset/NationallyDesignatedAreasCDDA">Nationale Schutzgebiete - CDDA</gmx:Anchor> + </gmd:keyword> + <gmd:thesaurusName> + <gmd:CI_Citation> + <gmd:title> + <gmx:Anchor xlink:href="http://inspire.ec.europa.eu/metadata-codelist/PriorityDataset">INSPIRE priority data set</gmx:Anchor> + </gmd:title> + <gmd:date> + <gmd:CI_Date> + <gmd:date> + <gco:Date>2018-04-04</gco:Date> + </gmd:date> + <gmd:dateType> + <gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" codeListValue="publication">publication</gmd:CI_DateTypeCode> + </gmd:dateType> + </gmd:CI_Date> + </gmd:date> + </gmd:CI_Citation> + </gmd:thesaurusName> + </gmd:MD_Keywords> + </gmd:descriptiveKeywords> + <gmd:descriptiveKeywords> + <gmd:MD_Keywords> + <gmd:keyword> + <gmx:Anchor xlink:href="http://inspire.ec.europa.eu/metadata-codelist/SpatialScope/regional">Regional</gmx:Anchor> + </gmd:keyword> + <gmd:thesaurusName> + <gmd:CI_Citation> + <gmd:title> + <gmx:Anchor xlink:href="http://inspire.ec.europa.eu/metadata-codelist/SpatialScope">Spatial scope</gmx:Anchor> + </gmd:title> + <gmd:date> + <gmd:CI_Date> + <gmd:date> + <gco:Date>2019-05-22</gco:Date> + </gmd:date> + <gmd:dateType> + <gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" codeListValue="publication">publication</gmd:CI_DateTypeCode> + </gmd:dateType> + </gmd:CI_Date> + </gmd:date> + </gmd:CI_Citation> + </gmd:thesaurusName> + </gmd:MD_Keywords> + </gmd:descriptiveKeywords> + <gmd:descriptiveKeywords> + <gmd:MD_Keywords> + <gmd:keyword> + <gco:CharacterString>ENVI</gco:CharacterString> + </gmd:keyword> + <gmd:type> + <gmd:MD_KeywordTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_KeywordTypeCode" codeListValue="theme"/> + </gmd:type> + </gmd:MD_Keywords> + </gmd:descriptiveKeywords> + <gmd:descriptiveKeywords> + <gmd:MD_Keywords> + <gmd:keyword> + <gco:CharacterString>inspireidentifiziert</gco:CharacterString> + </gmd:keyword> + </gmd:MD_Keywords> + </gmd:descriptiveKeywords> + <gmd:resourceConstraints> + <gmd:MD_LegalConstraints> + <gmd:useLimitation> + <gco:CharacterString>keine</gco:CharacterString> + </gmd:useLimitation> + </gmd:MD_LegalConstraints> + </gmd:resourceConstraints> + <gmd:resourceConstraints> + <gmd:MD_LegalConstraints> + <gmd:useConstraints> + <gmd:MD_RestrictionCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_RestrictionCode" codeListValue="otherRestrictions"/> + </gmd:useConstraints> + <gmd:otherConstraints> + <gco:CharacterString>Datenlizenz Deutschland Namensnennung 2.0</gco:CharacterString> + </gmd:otherConstraints> + <gmd:otherConstraints> + <gco:CharacterString>Quellenvermerk: LLUR SH</gco:CharacterString> + </gmd:otherConstraints> + <gmd:otherConstraints> + <gco:CharacterString>{"id":"dl-by-de/2.0","name":"Datenlizenz Deutschland Namensnennung 2.0","url":"https://www.govdata.de/dl-de/by-2-0","quelle":"LLUR SH"}</gco:CharacterString> + </gmd:otherConstraints> + </gmd:MD_LegalConstraints> + </gmd:resourceConstraints> + <gmd:resourceConstraints> + <gmd:MD_LegalConstraints> + <gmd:accessConstraints> + <gmd:MD_RestrictionCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_RestrictionCode" codeListValue="otherRestrictions">otherRestrictions</gmd:MD_RestrictionCode> + </gmd:accessConstraints> + <gmd:otherConstraints> + <gmx:Anchor xlink:href="http://inspire.ec.europa.eu/metadata-codelist/LimitationsOnPublicAccess/noLimitations">Es gelten keine Zugriffsbeschränkungen</gmx:Anchor> + </gmd:otherConstraints> + </gmd:MD_LegalConstraints> + </gmd:resourceConstraints> + <gmd:spatialRepresentationType> + <gmd:MD_SpatialRepresentationTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_SpatialRepresentationTypeCode" codeListValue="vector"/> + </gmd:spatialRepresentationType> + <gmd:spatialResolution> + <gmd:MD_Resolution> + <gmd:equivalentScale> + <gmd:MD_RepresentativeFraction> + <gmd:denominator> + <gco:Integer>25000</gco:Integer> + </gmd:denominator> + </gmd:MD_RepresentativeFraction> + </gmd:equivalentScale> + </gmd:MD_Resolution> + </gmd:spatialResolution> + <gmd:language> + <gmd:LanguageCode codeList="http://www.loc.gov/standards/iso639-2/" codeListValue="ger"/> + </gmd:language> + <gmd:topicCategory> + <gmd:MD_TopicCategoryCode>environment</gmd:MD_TopicCategoryCode> + </gmd:topicCategory> + <gmd:extent> + <gmd:EX_Extent> + <gmd:geographicElement> + <gmd:EX_GeographicDescription> + <gmd:extentTypeCode> + <gco:Boolean>true</gco:Boolean> + </gmd:extentTypeCode> + <gmd:geographicIdentifier> + <gmd:MD_Identifier> + <gmd:code> + <gco:CharacterString>Raumbezug des Datensatzes</gco:CharacterString> + </gmd:code> + </gmd:MD_Identifier> + </gmd:geographicIdentifier> + </gmd:EX_GeographicDescription> + </gmd:geographicElement> + <gmd:geographicElement> + <gmd:EX_GeographicBoundingBox> + <gmd:extentTypeCode> + <gco:Boolean>true</gco:Boolean> + </gmd:extentTypeCode> + <gmd:westBoundLongitude> + <gco:Decimal>7.87</gco:Decimal> + </gmd:westBoundLongitude> + <gmd:eastBoundLongitude> + <gco:Decimal>11.31</gco:Decimal> + </gmd:eastBoundLongitude> + <gmd:southBoundLatitude> + <gco:Decimal>53.36</gco:Decimal> + </gmd:southBoundLatitude> + <gmd:northBoundLatitude> + <gco:Decimal>55.06</gco:Decimal> + </gmd:northBoundLatitude> + </gmd:EX_GeographicBoundingBox> + </gmd:geographicElement> + </gmd:EX_Extent> + </gmd:extent> + </gmd:MD_DataIdentification> + </gmd:identificationInfo> + <gmd:distributionInfo> + <gmd:MD_Distribution> + <gmd:distributionFormat> + <gmd:MD_Format> + <gmd:name> + <gco:CharacterString>GML</gco:CharacterString> + </gmd:name> + <gmd:version gco:nilReason="unknown"/> + </gmd:MD_Format> + </gmd:distributionFormat> + <gmd:distributionFormat> + <gmd:MD_Format> + <gmd:name> + <gco:CharacterString>Shapefiles</gco:CharacterString> + </gmd:name> + <gmd:version gco:nilReason="unknown"/> + </gmd:MD_Format> + </gmd:distributionFormat> + <gmd:transferOptions> + <gmd:MD_DigitalTransferOptions> + <gmd:onLine> + <gmd:CI_OnlineResource> + <gmd:linkage> + <gmd:URL>https://umweltgeodienste.schleswig-holstein.de/WFS_UWAT?service=wfs&version=2.0.0&request=GetFeature&typeNames=app:lsg</gmd:URL> + </gmd:linkage> + <gmd:applicationProfile> + <gco:CharacterString>GML</gco:CharacterString> + </gmd:applicationProfile> + <gmd:name> + <gco:CharacterString>WFS Landschaftsschutzgebiete (1:25.000)</gco:CharacterString> + </gmd:name> + <gmd:function> + <gmd:CI_OnLineFunctionCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_OnLineFunctionCode" codeListValue="download">download</gmd:CI_OnLineFunctionCode> + </gmd:function> + </gmd:CI_OnlineResource> + </gmd:onLine> + </gmd:MD_DigitalTransferOptions> + </gmd:transferOptions> + <gmd:transferOptions> + <gmd:MD_DigitalTransferOptions> + <gmd:onLine> + <gmd:CI_OnlineResource> + <gmd:linkage> + <gmd:URL>https://opendata.schleswig-holstein.de/dataset/d501a7ab-a85e-4988-a98e-8f3ae3ab5df2/resource/1bcad7cd-9c94-4a06-bbbc-c7929bb37751/download/lsg.zip</gmd:URL> + </gmd:linkage> + <gmd:applicationProfile> + <gco:CharacterString>Shapefiles</gco:CharacterString> + </gmd:applicationProfile> + <gmd:name> + <gco:CharacterString>Landschaftsschutzgebiete (1:25.000)</gco:CharacterString> + </gmd:name> + <gmd:function> + <gmd:CI_OnLineFunctionCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_OnLineFunctionCode" codeListValue="download">download</gmd:CI_OnLineFunctionCode> + </gmd:function> + </gmd:CI_OnlineResource> + </gmd:onLine> + </gmd:MD_DigitalTransferOptions> + </gmd:transferOptions> + <gmd:transferOptions> + <gmd:MD_DigitalTransferOptions> + <gmd:onLine> + <gmd:CI_OnlineResource> + <gmd:linkage> + <gmd:URL>https://umweltgeodienste.schleswig-holstein.de/WMS_UWAT_NAT?</gmd:URL> + </gmd:linkage> + <gmd:name> + <gco:CharacterString>WMS Fachthema Naturschutz</gco:CharacterString> + </gmd:name> + <gmd:function> + <gmd:CI_OnLineFunctionCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_OnLineFunctionCode" codeListValue="information">information</gmd:CI_OnLineFunctionCode> + </gmd:function> + </gmd:CI_OnlineResource> + </gmd:onLine> + </gmd:MD_DigitalTransferOptions> + </gmd:transferOptions> + <gmd:transferOptions> + <gmd:MD_DigitalTransferOptions> + <gmd:onLine> + <gmd:CI_OnlineResource> + <gmd:linkage> + <gmd:URL>https://umweltgeodienste.schleswig-holstein.de/WFS_UWAT?</gmd:URL> + </gmd:linkage> + <gmd:name> + <gco:CharacterString>WFS Fachthemen Umwelt</gco:CharacterString> + </gmd:name> + <gmd:function> + <gmd:CI_OnLineFunctionCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_OnLineFunctionCode" codeListValue="information">information</gmd:CI_OnLineFunctionCode> + </gmd:function> + </gmd:CI_OnlineResource> + </gmd:onLine> + </gmd:MD_DigitalTransferOptions> + </gmd:transferOptions> + </gmd:MD_Distribution> + </gmd:distributionInfo> + <gmd:dataQualityInfo> + <gmd:DQ_DataQuality> + <gmd:scope> + <gmd:DQ_Scope> + <gmd:level> + <gmd:MD_ScopeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_ScopeCode" codeListValue="dataset"/> + </gmd:level> + </gmd:DQ_Scope> + </gmd:scope> + <gmd:report> + <gmd:DQ_DomainConsistency> + <gmd:result> + <gmd:DQ_ConformanceResult> + <gmd:specification> + <gmd:CI_Citation> + <gmd:title> + <gco:CharacterString>VERORDNUNG (EG) Nr. 1089/2010 DER KOMMISSION vom 23. November 2010 zur Durchführung der Richtlinie 2007/2/EG des Europäischen Parlaments und des Rates hinsichtlich der Interoperabilität von Geodatensätzen und -diensten</gco:CharacterString> + </gmd:title> + <gmd:date> + <gmd:CI_Date> + <gmd:date> + <gco:Date>2010-12-08</gco:Date> + </gmd:date> + <gmd:dateType> + <gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" codeListValue="publication">publication</gmd:CI_DateTypeCode> + </gmd:dateType> + </gmd:CI_Date> + </gmd:date> + </gmd:CI_Citation> + </gmd:specification> + <gmd:explanation> + <gco:CharacterString>see the referenced specification</gco:CharacterString> + </gmd:explanation> + <gmd:pass> + <gco:Boolean>false</gco:Boolean> + </gmd:pass> + </gmd:DQ_ConformanceResult> + </gmd:result> + </gmd:DQ_DomainConsistency> + </gmd:report> + <gmd:lineage> + <gmd:LI_Lineage> + <gmd:statement> + <gco:CharacterString>Die Zuständigkeit für die Ausweisung von Landschaftschutzgebieten liegt bei den Kreisen und kreisfreien Städten als Untere Naturschutzbehörden. Die Vollständigkeit der Daten kann insofern nicht garantiert werden (abhängig von Zuarbeit durch die Kreise/kreisfreien Städte). Die digitalen Abgrenzungen sind durch Übertragungen der analog vorliegenden Verordnungskarten der Kreise/kreisfreien Städte entstanden. Bei Detailfragen gelten letztendlich die Originalkarten der jeweiligen Verordnung (liegen bei den Kreisen/kreisfreien Städten als Untere Naturschutzbehörde sowie beim Land /Oberste Naturschutzbehörde). Stand: April 2005 (seit dem nur einzelne Nachträge vorgenommen)</gco:CharacterString> + </gmd:statement> + <gmd:processStep> + <gmd:LI_ProcessStep> + <gmd:description> + <gco:CharacterString>Passgenauigkeit: Blattschnittfrei ...</gco:CharacterString> + </gmd:description> + </gmd:LI_ProcessStep> + </gmd:processStep> + </gmd:LI_Lineage> + </gmd:lineage> + </gmd:DQ_DataQuality> + </gmd:dataQualityInfo> +</gmd:MD_Metadata></csw:GetRecordByIdResponse> diff --git a/src/test/resources/bb585473-0987-436a-bc7a-132880a4df0d.xml b/src/test/resources/bb585473-0987-436a-bc7a-132880a4df0d.xml new file mode 100644 index 0000000000000000000000000000000000000000..89f758005d5fcb12f845f990fdc87955f252a3f6 --- /dev/null +++ b/src/test/resources/bb585473-0987-436a-bc7a-132880a4df0d.xml @@ -0,0 +1,440 @@ +<?xml version="1.0" encoding="UTF-8"?> +<gmd:MD_Metadata xmlns:gmd="http://www.isotc211.org/2005/gmd" + xmlns="http://www.opengis.net/cat/csw/apiso/1.0" + xmlns:gco="http://www.isotc211.org/2005/gco" + xmlns:gmx="http://www.isotc211.org/2005/gmx" + xmlns:gfc="http://www.isotc211.org/2005/gfc" + xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" + xmlns:srv="http://www.isotc211.org/2005/srv" + xmlns:gml="http://www.opengis.net/gml/3.2" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <gmd:fileIdentifier> + <gco:CharacterString>bb585473-0987-436a-bc7a-132880a4df0d</gco:CharacterString> + </gmd:fileIdentifier> + <gmd:language> + <gmd:LanguageCode codeList="http://www.loc.gov/standards/iso639-2/" codeListValue="ger"/> + </gmd:language> + <gmd:characterSet> + <gmd:MD_CharacterSetCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_CharacterSetCode" + codeListValue="utf8">utf8</gmd:MD_CharacterSetCode> + </gmd:characterSet> + <gmd:hierarchyLevel> + <gmd:MD_ScopeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_ScopeCode" + codeListValue="dataset">dataset</gmd:MD_ScopeCode> + </gmd:hierarchyLevel> + <gmd:hierarchyLevelName> + <gco:CharacterString>Landesverwaltungen</gco:CharacterString> + </gmd:hierarchyLevelName> + <gmd:hierarchyLevelName> + <gco:CharacterString>Stadt Norderstedt</gco:CharacterString> + </gmd:hierarchyLevelName> + <gmd:contact> + <gmd:CI_ResponsibleParty> + <gmd:individualName> + <gco:CharacterString>Servicestelle Metadaten</gco:CharacterString> + </gmd:individualName> + <gmd:organisationName> + <gco:CharacterString>Stadtverwaltung Norderstedt</gco:CharacterString> + </gmd:organisationName> + <gmd:positionName> + <gco:CharacterString>Ansprechpartner Metadaten</gco:CharacterString> + </gmd:positionName> + <gmd:contactInfo> + <gmd:CI_Contact> + <gmd:phone> + <gmd:CI_Telephone> + <gmd:voice> + <gco:CharacterString/> + </gmd:voice> + </gmd:CI_Telephone> + </gmd:phone> + <gmd:address> + <gmd:CI_Address> + <gmd:deliveryPoint> + <gco:CharacterString>Rathausallee 50</gco:CharacterString> + </gmd:deliveryPoint> + <gmd:city> + <gco:CharacterString>Norderstedt</gco:CharacterString> + </gmd:city> + <gmd:administrativeArea> + <gco:CharacterString>Schleswig-Holstein</gco:CharacterString> + </gmd:administrativeArea> + <gmd:postalCode> + <gco:CharacterString>22846</gco:CharacterString> + </gmd:postalCode> + <gmd:country> + <gco:CharacterString>Deutschland</gco:CharacterString> + </gmd:country> + <gmd:electronicMailAddress> + <gco:CharacterString>gis@norderstedt.de</gco:CharacterString> + </gmd:electronicMailAddress> + </gmd:CI_Address> + </gmd:address> + <gmd:onlineResource> + <gmd:CI_OnlineResource> + <gmd:linkage> + <gmd:URL/> + </gmd:linkage> + </gmd:CI_OnlineResource> + </gmd:onlineResource> + </gmd:CI_Contact> + </gmd:contactInfo> + <gmd:role> + <gmd:CI_RoleCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_RoleCode" + codeListValue="pointOfContact">pointOfContact</gmd:CI_RoleCode> + </gmd:role> + </gmd:CI_ResponsibleParty> + </gmd:contact> + <gmd:dateStamp> + <gco:Date>2023-10-09</gco:Date> + </gmd:dateStamp> + <gmd:metadataStandardName> + <gco:CharacterString>ISO19119</gco:CharacterString> + </gmd:metadataStandardName> + <gmd:metadataStandardVersion> + <gco:CharacterString>2003(E)/Cor.1:2006(E);1.0:2019</gco:CharacterString> + </gmd:metadataStandardVersion> + <gmd:referenceSystemInfo> + <gmd:MD_ReferenceSystem> + <gmd:referenceSystemIdentifier> + <gmd:RS_Identifier> + <gmd:code> + <gmx:Anchor xlink:href="urn:ogc:def:crs:EPSG">25832</gmx:Anchor> + </gmd:code> + <gmd:version> + <gco:CharacterString>6.11.2</gco:CharacterString> + </gmd:version> + </gmd:RS_Identifier> + </gmd:referenceSystemIdentifier> + </gmd:MD_ReferenceSystem> + </gmd:referenceSystemInfo> + <gmd:identificationInfo> + <gmd:MD_DataIdentification> + <gmd:citation> + <gmd:CI_Citation> + <gmd:title> + <gco:CharacterString>Abfallbehälter</gco:CharacterString> + </gmd:title> + <gmd:date> + <gmd:CI_Date> + <gmd:date> + <gco:Date>2022-09-01</gco:Date> + </gmd:date> + <gmd:dateType> + <gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" + codeListValue="creation">creation</gmd:CI_DateTypeCode> + </gmd:dateType> + </gmd:CI_Date> + </gmd:date> + <gmd:date> + <gmd:CI_Date> + <gmd:date> + <gco:Date>2022-09-01</gco:Date> + </gmd:date> + <gmd:dateType> + <gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" + codeListValue="publication">publication</gmd:CI_DateTypeCode> + </gmd:dateType> + </gmd:CI_Date> + </gmd:date> + <gmd:date> + <gmd:CI_Date> + <gmd:date> + <gco:Date>2023-10-09</gco:Date> + </gmd:date> + <gmd:dateType> + <gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" + codeListValue="revision">revision</gmd:CI_DateTypeCode> + </gmd:dateType> + </gmd:CI_Date> + </gmd:date> + <gmd:identifier> + <gmd:MD_Identifier> + <gmd:code> + <gco:CharacterString>https://registry.gdi-de.org/id/de.sh/bb585473-0987-436a-bc7a-132880a4df0d</gco:CharacterString> + </gmd:code> + </gmd:MD_Identifier> + </gmd:identifier> + </gmd:CI_Citation> + </gmd:citation> + <gmd:abstract> + <gco:CharacterString>Stadtreinigung - Abfallbehälter
 +
 +Herausgeber: Stadt Norderstedt
 + 70 Betriebsamt
 + FB Abfall und Verwaltung</gco:CharacterString> + </gmd:abstract> + <gmd:pointOfContact> + <gmd:CI_ResponsibleParty> + <gmd:organisationName> + <gco:CharacterString>Stadtverwaltung Norderstedt</gco:CharacterString> + </gmd:organisationName> + <gmd:contactInfo> + <gmd:CI_Contact> + <gmd:address> + <gmd:CI_Address> + <gmd:deliveryPoint> + <gco:CharacterString>Rathausallee 50</gco:CharacterString> + </gmd:deliveryPoint> + <gmd:city> + <gco:CharacterString>Norderstedt</gco:CharacterString> + </gmd:city> + <gmd:administrativeArea> + <gco:CharacterString>Schleswig-Holstein</gco:CharacterString> + </gmd:administrativeArea> + <gmd:postalCode> + <gco:CharacterString>D-22846</gco:CharacterString> + </gmd:postalCode> + <gmd:country> + <gco:CharacterString>DEU</gco:CharacterString> + </gmd:country> + <gmd:electronicMailAddress> + <gco:CharacterString>gis@norderstedt.de</gco:CharacterString> + </gmd:electronicMailAddress> + </gmd:CI_Address> + </gmd:address> + </gmd:CI_Contact> + </gmd:contactInfo> + <gmd:role> + <gmd:CI_RoleCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_RoleCode" + codeListValue="pointOfContact">pointOfContact</gmd:CI_RoleCode> + </gmd:role> + </gmd:CI_ResponsibleParty> + </gmd:pointOfContact> + <gmd:resourceMaintenance> + <gmd:MD_MaintenanceInformation> + <gmd:maintenanceAndUpdateFrequency> + <gmd:MD_MaintenanceFrequencyCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_ProgressCode" + codeListValue="continual">continual</gmd:MD_MaintenanceFrequencyCode> + </gmd:maintenanceAndUpdateFrequency> + </gmd:MD_MaintenanceInformation> + </gmd:resourceMaintenance> + <gmd:graphicOverview> + <gmd:MD_BrowseGraphic> + <gmd:fileName> + <gco:CharacterString>https://geoservice.norderstedt.de/geoserver/eso/wms?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&LAYERS=eso:papierkorb&format=image/png&srs=EPSG:25832&bbox=561740.25,5944812.0,570817.8125,5957235.0&width=561&height=768</gco:CharacterString> + </gmd:fileName> + <gmd:fileType> + <gco:CharacterString>png</gco:CharacterString> + </gmd:fileType> + </gmd:MD_BrowseGraphic> + </gmd:graphicOverview> + <gmd:descriptiveKeywords> + <gmd:MD_Keywords> + <gmd:keyword> + <gco:CharacterString>Abfall</gco:CharacterString> + </gmd:keyword> + <gmd:keyword> + <gco:CharacterString>Abfallbehälter</gco:CharacterString> + </gmd:keyword> + <gmd:type> + <gmd:MD_KeywordTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_KeywordTypeCode" + codeListValue="theme"/> + </gmd:type> + <gmd:thesaurusName> + <gmd:CI_Citation> + <gmd:title> + <gco:CharacterString>GEMET - INSPIRE themes, version 1.0</gco:CharacterString> + </gmd:title> + <gmd:date> + <gmd:CI_Date> + <gmd:date> + <gco:Date>2008-06-01</gco:Date> + </gmd:date> + <gmd:dateType> + <gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" + codeListValue="publication"/> + </gmd:dateType> + </gmd:CI_Date> + </gmd:date> + </gmd:CI_Citation> + </gmd:thesaurusName> + </gmd:MD_Keywords> + </gmd:descriptiveKeywords> + <gmd:descriptiveKeywords> + <gmd:MD_Keywords> + <gmd:keyword> + <gco:CharacterString>opendata</gco:CharacterString> + </gmd:keyword> + </gmd:MD_Keywords> + </gmd:descriptiveKeywords> + <gmd:descriptiveKeywords> + <gmd:MD_Keywords> + <gmd:keyword> + <gco:CharacterString>infoFeatureAccessService</gco:CharacterString> + </gmd:keyword> + <gmd:keyword> + <gco:CharacterString>infoMapAccessService</gco:CharacterString> + </gmd:keyword> + <gmd:keyword> + <gco:CharacterString>infoCatalogueService</gco:CharacterString> + </gmd:keyword> + </gmd:MD_Keywords> + </gmd:descriptiveKeywords> + <gmd:resourceConstraints> + <gmd:MD_LegalConstraints> + <gmd:accessConstraints> + <gmd:MD_RestrictionCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_RestrictionCode" + codeListValue="otherRestrictions">otherRestrictions</gmd:MD_RestrictionCode> + </gmd:accessConstraints> + <gmd:otherConstraints> + <gmx:Anchor xlink:href="http://inspire.ec.europa.eu/metadata-codelist/LimitationsOnPublicAccess/noLimitations"/> + </gmd:otherConstraints> + </gmd:MD_LegalConstraints> + </gmd:resourceConstraints> + <gmd:resourceConstraints> + <gmd:MD_LegalConstraints> + <gmd:useConstraints> + <gmd:MD_RestrictionCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_RestrictionCode" + codeListValue="otherRestrictions"/> + </gmd:useConstraints> + <gmd:otherConstraints> + <gco:CharacterString>Für die Nutzung der Daten ist die Datenlizenz Deutschland - Namensnennung - Version 2.0 anzuwenden. Die Lizenz ist über https://www.govdata.de/dl-de/by-2-0 abrufbar. Der Quellenvermerk gemäß (2) der Lizenz lautet "Stadtverwaltung Norderstedt"</gco:CharacterString> + </gmd:otherConstraints> + <gmd:otherConstraints> + <gco:CharacterString>{"id":"dl-by-de/2.0","name":"Datenlizenz Deutschland - Namensnennung - Version 2.0","url":"https://www.govdata.de/dl-de/by-2-0","quelle":"Stadtverwaltung Norderstedt"}</gco:CharacterString> + </gmd:otherConstraints> + </gmd:MD_LegalConstraints> + </gmd:resourceConstraints> + <gmd:spatialRepresentationType> + <gmd:MD_SpatialRepresentationTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_SpatialRepresentationTypeCode" + codeListValue="vector">vector</gmd:MD_SpatialRepresentationTypeCode> + </gmd:spatialRepresentationType> + <gmd:language> + <gmd:LanguageCode codeList="http://www.loc.gov/standards/iso639-2/" codeListValue="ger">German</gmd:LanguageCode> + </gmd:language> + <gmd:characterSet> + <gmd:MD_CharacterSetCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_CharacterSetCode" + codeListValue="utf8"/> + </gmd:characterSet> + <gmd:topicCategory> + <gmd:MD_TopicCategoryCode>unknown</gmd:MD_TopicCategoryCode> + </gmd:topicCategory> + </gmd:MD_DataIdentification> + <srv:SV_ServiceIdentification> + <srv:extent> + <gmd:EX_Extent> + <gmd:geographicElement> + <gmd:EX_GeographicBoundingBox> + <gmd:westBoundLongitude> + <gco:Decimal>9.948365332060035</gco:Decimal> + </gmd:westBoundLongitude> + <gmd:eastBoundLongitude> + <gco:Decimal>10.0613036179589</gco:Decimal> + </gmd:eastBoundLongitude> + <gmd:southBoundLatitude> + <gco:Decimal>53.65276328589952</gco:Decimal> + </gmd:southBoundLatitude> + <gmd:northBoundLatitude> + <gco:Decimal>53.748176321969126</gco:Decimal> + </gmd:northBoundLatitude> + </gmd:EX_GeographicBoundingBox> + </gmd:geographicElement> + </gmd:EX_Extent> + </srv:extent> + </srv:SV_ServiceIdentification> + </gmd:identificationInfo> + <gmd:distributionInfo> + <gmd:MD_Distribution> + <gmd:distributionFormat> + <gmd:MD_Format> + <gmd:name> + <gco:CharacterString>Shape</gco:CharacterString> + </gmd:name> + <gmd:version> + <gco:CharacterString>-</gco:CharacterString> + </gmd:version> + </gmd:MD_Format> + </gmd:distributionFormat> + <gmd:distributor> + <gmd:MD_Distributor> + <gmd:distributorContact> + <gmd:CI_ResponsibleParty> + <gmd:role> + <gmd:CI_RoleCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_RoleCode" + codeListValue="pointOfContact">pointOfContact</gmd:CI_RoleCode> + </gmd:role> + </gmd:CI_ResponsibleParty> + </gmd:distributorContact> + <gmd:distributionOrderProcess> + <gmd:MD_StandardOrderProcess> + <gmd:orderingInstructions> + <gco:CharacterString>Gebuehren: keine</gco:CharacterString> + </gmd:orderingInstructions> + </gmd:MD_StandardOrderProcess> + </gmd:distributionOrderProcess> + </gmd:MD_Distributor> + </gmd:distributor> + <gmd:transferOptions> + <gmd:MD_DigitalTransferOptions> + <gmd:onLine> + <gmd:CI_OnlineResource> + <gmd:linkage> + <gmd:URL>https://geoservice.norderstedt.de/geoportal/</gmd:URL> + </gmd:linkage> + </gmd:CI_OnlineResource> + </gmd:onLine> + </gmd:MD_DigitalTransferOptions> + </gmd:transferOptions> + </gmd:MD_Distribution> + </gmd:distributionInfo> + <gmd:dataQualityInfo> + <gmd:DQ_DataQuality> + <gmd:scope> + <gmd:DQ_Scope> + <gmd:level> + <gmd:MD_ScopeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_ScopeCode" + codeListValue="dataset"/> + </gmd:level> + <gmd:levelDescription> + <gmd:MD_ScopeDescription> + <gmd:other> + <gco:CharacterString>dataset</gco:CharacterString> + </gmd:other> + </gmd:MD_ScopeDescription> + </gmd:levelDescription> + </gmd:DQ_Scope> + </gmd:scope> + <gmd:report> + <gmd:DQ_DomainConsistency> + <gmd:result> + <gmd:DQ_ConformanceResult> + <gmd:specification> + <gmd:CI_Citation> + <gmd:title> + <gco:CharacterString>Verordnung (EG) Nr. 1089/2010 der Kommission vom 23. November 2010 zur Durchführung der Richtlinie 2007/2/EG des Europäischen Parlaments und des Rates hinsichtlich der Interoperabilität von Geodatensätzen und -diensten</gco:CharacterString> + </gmd:title> + <gmd:date> + <gmd:CI_Date> + <gmd:date> + <gco:Date>2010-12-08</gco:Date> + </gmd:date> + <gmd:dateType> + <gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" + codeListValue="publication"/> + </gmd:dateType> + </gmd:CI_Date> + </gmd:date> + </gmd:CI_Citation> + </gmd:specification> + <gmd:explanation> + <gco:CharacterString>Die Daten wurden mit dem EU-Validator überprüft.</gco:CharacterString> + </gmd:explanation> + <gmd:pass> + <gco:Boolean>true</gco:Boolean> + </gmd:pass> + </gmd:DQ_ConformanceResult> + </gmd:result> + </gmd:DQ_DomainConsistency> + </gmd:report> + <gmd:lineage> + <gmd:LI_Lineage> + <gmd:statement> + <gco:CharacterString>Die Abfallbehälter sind Bestandteil des Geoportals Norderstedt.</gco:CharacterString> + </gmd:statement> + </gmd:LI_Lineage> + </gmd:lineage> + </gmd:DQ_DataQuality> + </gmd:dataQualityInfo> + </gmd:MD_Metadata> diff --git a/src/test/resources/hvd1.xml b/src/test/resources/hvd1.xml new file mode 100644 index 0000000000000000000000000000000000000000..8464cfc70812635b7bb7c317c0987faf191e305c --- /dev/null +++ b/src/test/resources/hvd1.xml @@ -0,0 +1,466 @@ +<?xml version="1.0" encoding="utf-8"?> +<gmd:MD_Metadata xmlns:gmd="http://www.isotc211.org/2005/gmd" xmlns:gco="http://www.isotc211.org/2005/gco" xmlns:gmx="http://www.isotc211.org/2005/gmx" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/gml/3.2 http://schemas.opengis.net/gml/3.2.1/gml.xsd http://www.isotc211.org/2005/gmd http://schemas.opengis.net/iso/19139/20070417/gmd/gmd.xsd http://www.isotc211.org/2005/gco http://schemas.opengis.net/iso/19139/20070417/gco/gco.xsd http://www.isotc211.org/2005/srv http://schemas.opengis.net/iso/19139/20070417/srv/1.0/srv.xsd http://www.isotc211.org/2005/gmx http://schemas.opengis.net/iso/19139/20070417/gmx/gmx.xsd"> + <gmd:fileIdentifier> + <gco:CharacterString>01e24e0a-fda2-4a0f-ac71-bd8011749b11</gco:CharacterString> + </gmd:fileIdentifier> + <gmd:language> + <gmd:LanguageCode codeList="http://www.loc.gov/standards/iso639-2/" codeListValue="ger" /> + </gmd:language> + <gmd:characterSet> + <gmd:MD_CharacterSetCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_CharacterSetCode" codeListValue="utf8" /> + </gmd:characterSet> + <gmd:hierarchyLevel> + <gmd:MD_ScopeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_ScopeCode" codeListValue="dataset" /> + </gmd:hierarchyLevel> + <gmd:hierarchyLevelName> + <gco:CharacterString>structure</gco:CharacterString> + </gmd:hierarchyLevelName> + <gmd:hierarchyLevelName> + <gco:CharacterString>lvermgeosh</gco:CharacterString> + </gmd:hierarchyLevelName> + <gmd:contact> + <gmd:CI_ResponsibleParty> + <gmd:individualName> + <gco:CharacterString>Servicestelle SH-MIS</gco:CharacterString> + </gmd:individualName> + <gmd:organisationName> + <gco:CharacterString>Landesamt für Vermessung und Geoinformation Schleswig-Holstein</gco:CharacterString> + </gmd:organisationName> + <gmd:positionName> + <gco:CharacterString>Ansprechpartner für Metadaten</gco:CharacterString> + </gmd:positionName> + <gmd:contactInfo> + <gmd:CI_Contact> + <gmd:address> + <gmd:CI_Address> + <gmd:deliveryPoint> + <gco:CharacterString>Mercatorstraße 1</gco:CharacterString> + </gmd:deliveryPoint> + <gmd:city> + <gco:CharacterString>Kiel</gco:CharacterString> + </gmd:city> + <gmd:administrativeArea> + <gco:CharacterString>Schleswig-Holstein</gco:CharacterString> + </gmd:administrativeArea> + <gmd:postalCode> + <gco:CharacterString>24106</gco:CharacterString> + </gmd:postalCode> + <gmd:country> + <gco:CharacterString>Deutschland</gco:CharacterString> + </gmd:country> + <gmd:electronicMailAddress> + <gco:CharacterString>SH-MIS@LVermGeo.landsh.de</gco:CharacterString> + </gmd:electronicMailAddress> + </gmd:CI_Address> + </gmd:address> + <gmd:onlineResource> + <gmd:CI_OnlineResource> + <gmd:linkage> + <gmd:URL>https://www.gdi-sh.de/gdish/DE/AufgabenZiele/_documents/SHMIS.html</gmd:URL> + </gmd:linkage> + </gmd:CI_OnlineResource> + </gmd:onlineResource> + </gmd:CI_Contact> + </gmd:contactInfo> + <gmd:role> + <gmd:CI_RoleCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_RoleCode" codeListValue="pointOfContact">pointOfContact</gmd:CI_RoleCode> + </gmd:role> + </gmd:CI_ResponsibleParty> + </gmd:contact> + <gmd:dateStamp> + <gco:Date>2024-03-27</gco:Date> + </gmd:dateStamp> + <gmd:metadataStandardName> + <gco:CharacterString>ISO19115</gco:CharacterString> + </gmd:metadataStandardName> + <gmd:metadataStandardVersion> + <gco:CharacterString>2003/Cor.1:2006</gco:CharacterString> + </gmd:metadataStandardVersion> + <gmd:referenceSystemInfo> + <gmd:MD_ReferenceSystem> + <gmd:referenceSystemIdentifier> + <gmd:RS_Identifier> + <gmd:code> + <gmx:Anchor xlink:href="http://www.opengis.net/def/crs/EPSG/0/25832">EPSG:25832</gmx:Anchor> + </gmd:code> + </gmd:RS_Identifier> + </gmd:referenceSystemIdentifier> + </gmd:MD_ReferenceSystem> + </gmd:referenceSystemInfo> + <gmd:identificationInfo> + <gmd:MD_DataIdentification> + <gmd:citation> + <gmd:CI_Citation> + <gmd:title> + <gco:CharacterString>ALKIS Schleswig-Holstein (ohne Eigentümerangaben)</gco:CharacterString> + </gmd:title> + <gmd:alternateTitle> + <gco:CharacterString>ALKIS</gco:CharacterString> + </gmd:alternateTitle> + <gmd:date> + <gmd:CI_Date> + <gmd:date> + <gco:Date>2016-02-01</gco:Date> + </gmd:date> + <gmd:dateType> + <gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" codeListValue="creation" /> + </gmd:dateType> + </gmd:CI_Date> + </gmd:date> + <gmd:date> + <gmd:CI_Date> + <gmd:date> + <gco:Date>2024-03-27</gco:Date> + </gmd:date> + <gmd:dateType> + <gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" codeListValue="revision" /> + </gmd:dateType> + </gmd:CI_Date> + </gmd:date> + <gmd:date> + <gmd:CI_Date> + <gmd:date> + <gco:Date>2016-02-01</gco:Date> + </gmd:date> + <gmd:dateType> + <gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" codeListValue="publication" /> + </gmd:dateType> + </gmd:CI_Date> + </gmd:date> + <gmd:identifier> + <gmd:MD_Identifier> + <gmd:code> + <gco:CharacterString>https://registry.gdi-de.org/id/de.sh/01e24e0a-fda2-4a0f-ac71-bd8011749b11</gco:CharacterString> + </gmd:code> + </gmd:MD_Identifier> + </gmd:identifier> + </gmd:CI_Citation> + </gmd:citation> + <gmd:abstract> + <gco:CharacterString>Flächendeckende Beschreibung der Angaben zu den Layern "Flurstücke" , "Gebäude" sowie zu den Gruppierungen "Tatsächliche Nutzung" und "Gesetzliche Festlegungen" gemäß der entsprechenden Objektbereiche im ALKIS-Objektartenkatalog. Die Gruppierung "Weiteres" ist enthält die Objektbereiche "Bauwerke und Einrichtungen" sowie "Relief". Die Präsentation der ALKIS-Daten erfolgt grundsätzlich nach dem ALKIS-Signaturenkatalog der AdV-Standardausgaben. Soweit im Signaturenkatalog festgelegt, stehen für alle Layer Darstellungen in Farbe zur Verfügung. Für "Flurstücke" und "Gebäude" werden zusätzlich Darstellungen in Grausstufen (entsprechend Signaturenkatalog) und in Gelb (keine Flächendarstellung, nur Konturen) angeboten.</gco:CharacterString> + </gmd:abstract> + <gmd:pointOfContact> + <gmd:CI_ResponsibleParty> + <gmd:individualName> + <gco:CharacterString>Vertrieb Geobasisdaten, Kundencenter</gco:CharacterString> + </gmd:individualName> + <gmd:organisationName> + <gco:CharacterString>Landesamt für Vermessung und Geoinformation Schleswig-Holstein</gco:CharacterString> + </gmd:organisationName> + <gmd:contactInfo> + <gmd:CI_Contact> + <gmd:phone> + <gmd:CI_Telephone> + <gmd:voice> + <gco:CharacterString>0431 383-2110</gco:CharacterString> + </gmd:voice> + <gmd:facsimile> + <gco:CharacterString>0431 383-2099</gco:CharacterString> + </gmd:facsimile> + </gmd:CI_Telephone> + </gmd:phone> + <gmd:address> + <gmd:CI_Address> + <gmd:deliveryPoint> + <gco:CharacterString>Mercatorstraße 1</gco:CharacterString> + </gmd:deliveryPoint> + <gmd:city> + <gco:CharacterString>Kiel</gco:CharacterString> + </gmd:city> + <gmd:administrativeArea> + <gco:CharacterString>Schleswig-Holstein</gco:CharacterString> + </gmd:administrativeArea> + <gmd:postalCode> + <gco:CharacterString>24106</gco:CharacterString> + </gmd:postalCode> + <gmd:country> + <gco:CharacterString>Deutschland</gco:CharacterString> + </gmd:country> + <gmd:electronicMailAddress> + <gco:CharacterString>Vertrieb.Geobasisdaten@LVermGeo.landsh.de</gco:CharacterString> + </gmd:electronicMailAddress> + </gmd:CI_Address> + </gmd:address> + <gmd:onlineResource> + <gmd:CI_OnlineResource> + <gmd:linkage> + <gmd:URL>https://www.schleswig-holstein.de/DE/landesregierung/ministerien-behoerden/LVERMGEOSH/Service/serviceGeobasisdaten/geodatenService_Geobasisdaten_mehrLesen.html</gmd:URL> + </gmd:linkage> + </gmd:CI_OnlineResource> + </gmd:onlineResource> + </gmd:CI_Contact> + </gmd:contactInfo> + <gmd:role> + <gmd:CI_RoleCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_RoleCode" codeListValue="pointOfContact">pointOfContact</gmd:CI_RoleCode> + </gmd:role> + </gmd:CI_ResponsibleParty> + </gmd:pointOfContact> + <gmd:resourceMaintenance> + <gmd:MD_MaintenanceInformation> + <gmd:maintenanceAndUpdateFrequency> + <gmd:MD_MaintenanceFrequencyCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_MaintenanceFrequencyCode" codeListValue="continual" /> + </gmd:maintenanceAndUpdateFrequency> + </gmd:MD_MaintenanceInformation> + </gmd:resourceMaintenance> + <gmd:descriptiveKeywords> + <gmd:MD_Keywords> + <gmd:keyword> + <gco:CharacterString>opendata</gco:CharacterString> + </gmd:keyword> + </gmd:MD_Keywords> + </gmd:descriptiveKeywords> + <gmd:descriptiveKeywords> + <gmd:MD_Keywords> + <gmd:keyword> + <gco:CharacterString>ALKIS</gco:CharacterString> + </gmd:keyword> + <gmd:keyword> + <gco:CharacterString>AdVMIS</gco:CharacterString> + </gmd:keyword> + </gmd:MD_Keywords> + </gmd:descriptiveKeywords> + <gmd:descriptiveKeywords> + <gmd:MD_Keywords> + <gmd:keyword> + <gco:CharacterString>Flurstücke</gco:CharacterString> + </gmd:keyword> + <gmd:keyword> + <gco:CharacterString>Gebäude</gco:CharacterString> + </gmd:keyword> + <gmd:keyword> + <gco:CharacterString>Tatsächliche Nutzung</gco:CharacterString> + </gmd:keyword> + <gmd:keyword> + <gco:CharacterString>Bodenschätzung</gco:CharacterString> + </gmd:keyword> + <gmd:type> + <gmd:MD_KeywordTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_KeywordTypeCode" codeListValue="theme" /> + </gmd:type> + </gmd:MD_Keywords> + </gmd:descriptiveKeywords> + <gmd:descriptiveKeywords> + <gmd:MD_Keywords> + <gmd:keyword> + <gco:CharacterString>Georaum</gco:CharacterString> + </gmd:keyword> + <gmd:thesaurusName> + <gmd:CI_Citation> + <gmd:title> + <gco:CharacterString>High-value dataset categories</gco:CharacterString> + </gmd:title> + <gmd:date> + <gmd:CI_Date> + <gmd:date> + <gco:Date>2023-09-27</gco:Date> + </gmd:date> + <gmd:dateType> + <gmd:CI_DateTypeCode codeList="https://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" codeListValue="publication" /> + </gmd:dateType> + </gmd:CI_Date> + </gmd:date> + </gmd:CI_Citation> + </gmd:thesaurusName> + </gmd:MD_Keywords> + </gmd:descriptiveKeywords> + <gmd:resourceConstraints> + <gmd:MD_LegalConstraints> + <gmd:accessConstraints> + <gmd:MD_RestrictionCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_RestrictionCode" codeListValue="otherRestrictions" /> + </gmd:accessConstraints> + <gmd:otherConstraints> + <gmx:Anchor xlink:href="http://inspire.ec.europa.eu/metadata-codelist/LimitationsOnPublicAccess/noLimitations">Es gelten keine Zugriffsbeschränkungen</gmx:Anchor> + </gmd:otherConstraints> + </gmd:MD_LegalConstraints> + </gmd:resourceConstraints> + <gmd:resourceConstraints> + <gmd:MD_LegalConstraints> + <gmd:useConstraints> + <gmd:MD_RestrictionCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_RestrictionCode" codeListValue="otherRestrictions" /> + </gmd:useConstraints> + <gmd:otherConstraints> + <gco:CharacterString>Für die Nutzung der Daten ist die Creative Commons (CC BY 4.0) – Namensnennung 4.0 International anzuwenden. Die Lizenz ist über http://creativecommons.org/licenses/by/4.0 abrufbar. Der Quellenvermerk lautet "© GeoBasis-DE/LVermGeo SH/CC BY 4.0"</gco:CharacterString> + </gmd:otherConstraints> + <gmd:otherConstraints> + <gco:CharacterString>{"id":"cc-by/4.0","name":"Creative Commons Namensnennung – 4.0 International (CC BY 4.0)","url":"http://creativecommons.org/licenses/by/4.0/","quelle":"© GeoBasis-DE/LVermGeo SH/CC BY 4.0"}</gco:CharacterString> + </gmd:otherConstraints> + </gmd:MD_LegalConstraints> + </gmd:resourceConstraints> + <gmd:spatialRepresentationType> + <gmd:MD_SpatialRepresentationTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_SpatialRepresentationTypeCode" codeListValue="vector" /> + </gmd:spatialRepresentationType> + <gmd:language> + <gmd:LanguageCode codeList="http://www.loc.gov/standards/iso639-2/" codeListValue="ger" /> + </gmd:language> + <gmd:characterSet> + <gmd:MD_CharacterSetCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_CharacterSetCode" codeListValue="utf8" /> + </gmd:characterSet> + <gmd:topicCategory> + <gmd:MD_TopicCategoryCode>structure</gmd:MD_TopicCategoryCode> + </gmd:topicCategory> + <gmd:extent> + <gmd:EX_Extent> + <gmd:geographicElement> + <gmd:EX_GeographicBoundingBox> + <gmd:extentTypeCode> + <gco:Boolean>true</gco:Boolean> + </gmd:extentTypeCode> + <gmd:westBoundLongitude> + <gco:Decimal>7.87</gco:Decimal> + </gmd:westBoundLongitude> + <gmd:eastBoundLongitude> + <gco:Decimal>11.32</gco:Decimal> + </gmd:eastBoundLongitude> + <gmd:southBoundLatitude> + <gco:Decimal>53.37</gco:Decimal> + </gmd:southBoundLatitude> + <gmd:northBoundLatitude> + <gco:Decimal>55.06</gco:Decimal> + </gmd:northBoundLatitude> + </gmd:EX_GeographicBoundingBox> + </gmd:geographicElement> + </gmd:EX_Extent> + </gmd:extent> + <gmd:extent> + <gmd:EX_Extent> + <gmd:geographicElement> + <gmd:EX_GeographicDescription> + <gmd:geographicIdentifier> + <gmd:MD_Identifier> + <gmd:code> + <gco:CharacterString>Schleswig-Holstein</gco:CharacterString> + </gmd:code> + </gmd:MD_Identifier> + </gmd:geographicIdentifier> + </gmd:EX_GeographicDescription> + </gmd:geographicElement> + </gmd:EX_Extent> + </gmd:extent> + </gmd:MD_DataIdentification> + </gmd:identificationInfo> + <gmd:distributionInfo> + <gmd:MD_Distribution> + <gmd:distributionFormat> + <gmd:MD_Format> + <gmd:name> + <gco:CharacterString>GML</gco:CharacterString> + </gmd:name> + <gmd:version> + <gco:CharacterString>3.2</gco:CharacterString> + </gmd:version> + </gmd:MD_Format> + </gmd:distributionFormat> + <gmd:distributor> + <gmd:MD_Distributor> + <gmd:distributorContact> + <gmd:CI_ResponsibleParty> + <gmd:individualName> + <gco:CharacterString>Vertrieb Geobasisdaten, Kundencenter</gco:CharacterString> + </gmd:individualName> + <gmd:organisationName> + <gco:CharacterString>Landesamt für Vermessung und Geoinformation Schleswig-Holstein</gco:CharacterString> + </gmd:organisationName> + <gmd:contactInfo> + <gmd:CI_Contact> + <gmd:phone> + <gmd:CI_Telephone> + <gmd:voice> + <gco:CharacterString>0431 383-2110</gco:CharacterString> + </gmd:voice> + <gmd:facsimile> + <gco:CharacterString>0431 383-2099</gco:CharacterString> + </gmd:facsimile> + </gmd:CI_Telephone> + </gmd:phone> + <gmd:address> + <gmd:CI_Address> + <gmd:deliveryPoint> + <gco:CharacterString>Mercatorstraße 1</gco:CharacterString> + </gmd:deliveryPoint> + <gmd:city> + <gco:CharacterString>Kiel</gco:CharacterString> + </gmd:city> + <gmd:administrativeArea> + <gco:CharacterString>Schleswig-Holstein</gco:CharacterString> + </gmd:administrativeArea> + <gmd:postalCode> + <gco:CharacterString>24106</gco:CharacterString> + </gmd:postalCode> + <gmd:country> + <gco:CharacterString>Deutschland</gco:CharacterString> + </gmd:country> + <gmd:electronicMailAddress> + <gco:CharacterString>Vertrieb.Geobasisdaten@LVermGeo.landsh.de</gco:CharacterString> + </gmd:electronicMailAddress> + </gmd:CI_Address> + </gmd:address> + </gmd:CI_Contact> + </gmd:contactInfo> + <gmd:role> + <gmd:CI_RoleCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_RoleCode" codeListValue="distributor">distributor</gmd:CI_RoleCode> + </gmd:role> + </gmd:CI_ResponsibleParty> + </gmd:distributorContact> + </gmd:MD_Distributor> + </gmd:distributor> + <gmd:transferOptions> + <gmd:MD_DigitalTransferOptions> + <gmd:onLine> + <gmd:CI_OnlineResource> + <gmd:linkage> + <gmd:URL>https://geodaten.schleswig-holstein.de/gaialight-sh/_apps/dladownload/dl-alkis.html</gmd:URL> + </gmd:linkage> + <gmd:applicationProfile> + <gco:CharacterString>http://publications.europa.eu/resource/authority/file-type/GML</gco:CharacterString> + </gmd:applicationProfile> + <gmd:name> + <gco:CharacterString>Download</gco:CharacterString> + </gmd:name> + <gmd:function> + <gmd:CI_OnLineFunctionCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_OnLineFunctionCode" codeListValue="download" /> + </gmd:function> + </gmd:CI_OnlineResource> + </gmd:onLine> + </gmd:MD_DigitalTransferOptions> + </gmd:transferOptions> + <gmd:transferOptions> + <gmd:MD_DigitalTransferOptions> + <gmd:onLine> + <gmd:CI_OnlineResource> + <gmd:linkage> + <gmd:URL>https://www.schleswig-holstein.de/DE/landesregierung/ministerien-behoerden/LVERMGEOSH/lvermgeosh_node.html</gmd:URL> + </gmd:linkage> + <gmd:function> + <gmd:CI_OnLineFunctionCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_OnLineFunctionCode" codeListValue="information" /> + </gmd:function> + </gmd:CI_OnlineResource> + </gmd:onLine> + </gmd:MD_DigitalTransferOptions> + </gmd:transferOptions> + </gmd:MD_Distribution> + </gmd:distributionInfo> + <gmd:dataQualityInfo> + <gmd:DQ_DataQuality> + <gmd:scope> + <gmd:DQ_Scope> + <gmd:level> + <gmd:MD_ScopeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_ScopeCode" codeListValue="dataset" /> + </gmd:level> + <gmd:levelDescription> + <gmd:MD_ScopeDescription> + <gmd:other> + <gco:CharacterString>Offene Geobasisdaten Schleswig-Holstein (OpenGBD)</gco:CharacterString> + </gmd:other> + </gmd:MD_ScopeDescription> + </gmd:levelDescription> + </gmd:DQ_Scope> + </gmd:scope> + <gmd:lineage> + <gmd:LI_Lineage> + <gmd:statement> + <gco:CharacterString>Datenbestand aus dem ALKIS Schleswig-Holstein</gco:CharacterString> + </gmd:statement> + </gmd:LI_Lineage> + </gmd:lineage> + </gmd:DQ_DataQuality> + </gmd:dataQualityInfo> +</gmd:MD_Metadata> diff --git a/src/test/resources/hvd2.xml b/src/test/resources/hvd2.xml new file mode 100644 index 0000000000000000000000000000000000000000..f850eead352e7442a95b443dc801d82e5a44e27a --- /dev/null +++ b/src/test/resources/hvd2.xml @@ -0,0 +1,466 @@ +<?xml version="1.0" encoding="utf-8"?> +<gmd:MD_Metadata xmlns:gmd="http://www.isotc211.org/2005/gmd" xmlns:gco="http://www.isotc211.org/2005/gco" xmlns:gmx="http://www.isotc211.org/2005/gmx" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/gml/3.2 http://schemas.opengis.net/gml/3.2.1/gml.xsd http://www.isotc211.org/2005/gmd http://schemas.opengis.net/iso/19139/20070417/gmd/gmd.xsd http://www.isotc211.org/2005/gco http://schemas.opengis.net/iso/19139/20070417/gco/gco.xsd http://www.isotc211.org/2005/srv http://schemas.opengis.net/iso/19139/20070417/srv/1.0/srv.xsd http://www.isotc211.org/2005/gmx http://schemas.opengis.net/iso/19139/20070417/gmx/gmx.xsd"> + <gmd:fileIdentifier> + <gco:CharacterString>01e24e0a-fda2-4a0f-ac71-bd8011749b11</gco:CharacterString> + </gmd:fileIdentifier> + <gmd:language> + <gmd:LanguageCode codeList="http://www.loc.gov/standards/iso639-2/" codeListValue="ger" /> + </gmd:language> + <gmd:characterSet> + <gmd:MD_CharacterSetCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_CharacterSetCode" codeListValue="utf8" /> + </gmd:characterSet> + <gmd:hierarchyLevel> + <gmd:MD_ScopeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_ScopeCode" codeListValue="dataset" /> + </gmd:hierarchyLevel> + <gmd:hierarchyLevelName> + <gco:CharacterString>structure</gco:CharacterString> + </gmd:hierarchyLevelName> + <gmd:hierarchyLevelName> + <gco:CharacterString>lvermgeosh</gco:CharacterString> + </gmd:hierarchyLevelName> + <gmd:contact> + <gmd:CI_ResponsibleParty> + <gmd:individualName> + <gco:CharacterString>Servicestelle SH-MIS</gco:CharacterString> + </gmd:individualName> + <gmd:organisationName> + <gco:CharacterString>Landesamt für Vermessung und Geoinformation Schleswig-Holstein</gco:CharacterString> + </gmd:organisationName> + <gmd:positionName> + <gco:CharacterString>Ansprechpartner für Metadaten</gco:CharacterString> + </gmd:positionName> + <gmd:contactInfo> + <gmd:CI_Contact> + <gmd:address> + <gmd:CI_Address> + <gmd:deliveryPoint> + <gco:CharacterString>Mercatorstraße 1</gco:CharacterString> + </gmd:deliveryPoint> + <gmd:city> + <gco:CharacterString>Kiel</gco:CharacterString> + </gmd:city> + <gmd:administrativeArea> + <gco:CharacterString>Schleswig-Holstein</gco:CharacterString> + </gmd:administrativeArea> + <gmd:postalCode> + <gco:CharacterString>24106</gco:CharacterString> + </gmd:postalCode> + <gmd:country> + <gco:CharacterString>Deutschland</gco:CharacterString> + </gmd:country> + <gmd:electronicMailAddress> + <gco:CharacterString>SH-MIS@LVermGeo.landsh.de</gco:CharacterString> + </gmd:electronicMailAddress> + </gmd:CI_Address> + </gmd:address> + <gmd:onlineResource> + <gmd:CI_OnlineResource> + <gmd:linkage> + <gmd:URL>https://www.gdi-sh.de/gdish/DE/AufgabenZiele/_documents/SHMIS.html</gmd:URL> + </gmd:linkage> + </gmd:CI_OnlineResource> + </gmd:onlineResource> + </gmd:CI_Contact> + </gmd:contactInfo> + <gmd:role> + <gmd:CI_RoleCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_RoleCode" codeListValue="pointOfContact">pointOfContact</gmd:CI_RoleCode> + </gmd:role> + </gmd:CI_ResponsibleParty> + </gmd:contact> + <gmd:dateStamp> + <gco:Date>2024-03-27</gco:Date> + </gmd:dateStamp> + <gmd:metadataStandardName> + <gco:CharacterString>ISO19115</gco:CharacterString> + </gmd:metadataStandardName> + <gmd:metadataStandardVersion> + <gco:CharacterString>2003/Cor.1:2006</gco:CharacterString> + </gmd:metadataStandardVersion> + <gmd:referenceSystemInfo> + <gmd:MD_ReferenceSystem> + <gmd:referenceSystemIdentifier> + <gmd:RS_Identifier> + <gmd:code> + <gmx:Anchor xlink:href="http://www.opengis.net/def/crs/EPSG/0/25832">EPSG:25832</gmx:Anchor> + </gmd:code> + </gmd:RS_Identifier> + </gmd:referenceSystemIdentifier> + </gmd:MD_ReferenceSystem> + </gmd:referenceSystemInfo> + <gmd:identificationInfo> + <gmd:MD_DataIdentification> + <gmd:citation> + <gmd:CI_Citation> + <gmd:title> + <gco:CharacterString>ALKIS Schleswig-Holstein (ohne Eigentümerangaben)</gco:CharacterString> + </gmd:title> + <gmd:alternateTitle> + <gco:CharacterString>ALKIS</gco:CharacterString> + </gmd:alternateTitle> + <gmd:date> + <gmd:CI_Date> + <gmd:date> + <gco:Date>2016-02-01</gco:Date> + </gmd:date> + <gmd:dateType> + <gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" codeListValue="creation" /> + </gmd:dateType> + </gmd:CI_Date> + </gmd:date> + <gmd:date> + <gmd:CI_Date> + <gmd:date> + <gco:Date>2024-03-27</gco:Date> + </gmd:date> + <gmd:dateType> + <gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" codeListValue="revision" /> + </gmd:dateType> + </gmd:CI_Date> + </gmd:date> + <gmd:date> + <gmd:CI_Date> + <gmd:date> + <gco:Date>2016-02-01</gco:Date> + </gmd:date> + <gmd:dateType> + <gmd:CI_DateTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" codeListValue="publication" /> + </gmd:dateType> + </gmd:CI_Date> + </gmd:date> + <gmd:identifier> + <gmd:MD_Identifier> + <gmd:code> + <gco:CharacterString>https://registry.gdi-de.org/id/de.sh/01e24e0a-fda2-4a0f-ac71-bd8011749b11</gco:CharacterString> + </gmd:code> + </gmd:MD_Identifier> + </gmd:identifier> + </gmd:CI_Citation> + </gmd:citation> + <gmd:abstract> + <gco:CharacterString>Flächendeckende Beschreibung der Angaben zu den Layern "Flurstücke" , "Gebäude" sowie zu den Gruppierungen "Tatsächliche Nutzung" und "Gesetzliche Festlegungen" gemäß der entsprechenden Objektbereiche im ALKIS-Objektartenkatalog. Die Gruppierung "Weiteres" ist enthält die Objektbereiche "Bauwerke und Einrichtungen" sowie "Relief". Die Präsentation der ALKIS-Daten erfolgt grundsätzlich nach dem ALKIS-Signaturenkatalog der AdV-Standardausgaben. Soweit im Signaturenkatalog festgelegt, stehen für alle Layer Darstellungen in Farbe zur Verfügung. Für "Flurstücke" und "Gebäude" werden zusätzlich Darstellungen in Grausstufen (entsprechend Signaturenkatalog) und in Gelb (keine Flächendarstellung, nur Konturen) angeboten.</gco:CharacterString> + </gmd:abstract> + <gmd:pointOfContact> + <gmd:CI_ResponsibleParty> + <gmd:individualName> + <gco:CharacterString>Vertrieb Geobasisdaten, Kundencenter</gco:CharacterString> + </gmd:individualName> + <gmd:organisationName> + <gco:CharacterString>Landesamt für Vermessung und Geoinformation Schleswig-Holstein</gco:CharacterString> + </gmd:organisationName> + <gmd:contactInfo> + <gmd:CI_Contact> + <gmd:phone> + <gmd:CI_Telephone> + <gmd:voice> + <gco:CharacterString>0431 383-2110</gco:CharacterString> + </gmd:voice> + <gmd:facsimile> + <gco:CharacterString>0431 383-2099</gco:CharacterString> + </gmd:facsimile> + </gmd:CI_Telephone> + </gmd:phone> + <gmd:address> + <gmd:CI_Address> + <gmd:deliveryPoint> + <gco:CharacterString>Mercatorstraße 1</gco:CharacterString> + </gmd:deliveryPoint> + <gmd:city> + <gco:CharacterString>Kiel</gco:CharacterString> + </gmd:city> + <gmd:administrativeArea> + <gco:CharacterString>Schleswig-Holstein</gco:CharacterString> + </gmd:administrativeArea> + <gmd:postalCode> + <gco:CharacterString>24106</gco:CharacterString> + </gmd:postalCode> + <gmd:country> + <gco:CharacterString>Deutschland</gco:CharacterString> + </gmd:country> + <gmd:electronicMailAddress> + <gco:CharacterString>Vertrieb.Geobasisdaten@LVermGeo.landsh.de</gco:CharacterString> + </gmd:electronicMailAddress> + </gmd:CI_Address> + </gmd:address> + <gmd:onlineResource> + <gmd:CI_OnlineResource> + <gmd:linkage> + <gmd:URL>https://www.schleswig-holstein.de/DE/landesregierung/ministerien-behoerden/LVERMGEOSH/Service/serviceGeobasisdaten/geodatenService_Geobasisdaten_mehrLesen.html</gmd:URL> + </gmd:linkage> + </gmd:CI_OnlineResource> + </gmd:onlineResource> + </gmd:CI_Contact> + </gmd:contactInfo> + <gmd:role> + <gmd:CI_RoleCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_RoleCode" codeListValue="pointOfContact">pointOfContact</gmd:CI_RoleCode> + </gmd:role> + </gmd:CI_ResponsibleParty> + </gmd:pointOfContact> + <gmd:resourceMaintenance> + <gmd:MD_MaintenanceInformation> + <gmd:maintenanceAndUpdateFrequency> + <gmd:MD_MaintenanceFrequencyCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_MaintenanceFrequencyCode" codeListValue="continual" /> + </gmd:maintenanceAndUpdateFrequency> + </gmd:MD_MaintenanceInformation> + </gmd:resourceMaintenance> + <gmd:descriptiveKeywords> + <gmd:MD_Keywords> + <gmd:keyword> + <gco:CharacterString>opendata</gco:CharacterString> + </gmd:keyword> + </gmd:MD_Keywords> + </gmd:descriptiveKeywords> + <gmd:descriptiveKeywords> + <gmd:MD_Keywords> + <gmd:keyword> + <gco:CharacterString>ALKIS</gco:CharacterString> + </gmd:keyword> + <gmd:keyword> + <gco:CharacterString>AdVMIS</gco:CharacterString> + </gmd:keyword> + </gmd:MD_Keywords> + </gmd:descriptiveKeywords> + <gmd:descriptiveKeywords> + <gmd:MD_Keywords> + <gmd:keyword> + <gco:CharacterString>Flurstücke</gco:CharacterString> + </gmd:keyword> + <gmd:keyword> + <gco:CharacterString>Gebäude</gco:CharacterString> + </gmd:keyword> + <gmd:keyword> + <gco:CharacterString>Tatsächliche Nutzung</gco:CharacterString> + </gmd:keyword> + <gmd:keyword> + <gco:CharacterString>Bodenschätzung</gco:CharacterString> + </gmd:keyword> + <gmd:type> + <gmd:MD_KeywordTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_KeywordTypeCode" codeListValue="theme" /> + </gmd:type> + </gmd:MD_Keywords> + </gmd:descriptiveKeywords> + <gmd:descriptiveKeywords> + <gmd:MD_Keywords> + <gmd:keyword> + <gmx:Anchor xlink:href="http://data.europa.eu/bna/c_ac64a52d">Georaum</gmx:Anchor> + </gmd:keyword> + <gmd:thesaurusName> + <gmd:CI_Citation> + <gmd:title> + <gmx:Anchor xlink:href="http://data.europa.eu/bna/asd487ae75">High-value dataset categories</gmx:Anchor> + </gmd:title> + <gmd:date> + <gmd:CI_Date> + <gmd:date> + <gco:Date>2023-09-27</gco:Date> + </gmd:date> + <gmd:dateType> + <gmd:CI_DateTypeCode codeList="https://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_DateTypeCode" codeListValue="publication" /> + </gmd:dateType> + </gmd:CI_Date> + </gmd:date> + </gmd:CI_Citation> + </gmd:thesaurusName> + </gmd:MD_Keywords> + </gmd:descriptiveKeywords> + <gmd:resourceConstraints> + <gmd:MD_LegalConstraints> + <gmd:accessConstraints> + <gmd:MD_RestrictionCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_RestrictionCode" codeListValue="otherRestrictions" /> + </gmd:accessConstraints> + <gmd:otherConstraints> + <gmx:Anchor xlink:href="http://inspire.ec.europa.eu/metadata-codelist/LimitationsOnPublicAccess/noLimitations">Es gelten keine Zugriffsbeschränkungen</gmx:Anchor> + </gmd:otherConstraints> + </gmd:MD_LegalConstraints> + </gmd:resourceConstraints> + <gmd:resourceConstraints> + <gmd:MD_LegalConstraints> + <gmd:useConstraints> + <gmd:MD_RestrictionCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_RestrictionCode" codeListValue="otherRestrictions" /> + </gmd:useConstraints> + <gmd:otherConstraints> + <gco:CharacterString>Für die Nutzung der Daten ist die Creative Commons (CC BY 4.0) – Namensnennung 4.0 International anzuwenden. Die Lizenz ist über http://creativecommons.org/licenses/by/4.0 abrufbar. Der Quellenvermerk lautet "© GeoBasis-DE/LVermGeo SH/CC BY 4.0"</gco:CharacterString> + </gmd:otherConstraints> + <gmd:otherConstraints> + <gco:CharacterString>{"id":"cc-by/4.0","name":"Creative Commons Namensnennung – 4.0 International (CC BY 4.0)","url":"http://creativecommons.org/licenses/by/4.0/","quelle":"© GeoBasis-DE/LVermGeo SH/CC BY 4.0"}</gco:CharacterString> + </gmd:otherConstraints> + </gmd:MD_LegalConstraints> + </gmd:resourceConstraints> + <gmd:spatialRepresentationType> + <gmd:MD_SpatialRepresentationTypeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_SpatialRepresentationTypeCode" codeListValue="vector" /> + </gmd:spatialRepresentationType> + <gmd:language> + <gmd:LanguageCode codeList="http://www.loc.gov/standards/iso639-2/" codeListValue="ger" /> + </gmd:language> + <gmd:characterSet> + <gmd:MD_CharacterSetCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_CharacterSetCode" codeListValue="utf8" /> + </gmd:characterSet> + <gmd:topicCategory> + <gmd:MD_TopicCategoryCode>structure</gmd:MD_TopicCategoryCode> + </gmd:topicCategory> + <gmd:extent> + <gmd:EX_Extent> + <gmd:geographicElement> + <gmd:EX_GeographicBoundingBox> + <gmd:extentTypeCode> + <gco:Boolean>true</gco:Boolean> + </gmd:extentTypeCode> + <gmd:westBoundLongitude> + <gco:Decimal>7.87</gco:Decimal> + </gmd:westBoundLongitude> + <gmd:eastBoundLongitude> + <gco:Decimal>11.32</gco:Decimal> + </gmd:eastBoundLongitude> + <gmd:southBoundLatitude> + <gco:Decimal>53.37</gco:Decimal> + </gmd:southBoundLatitude> + <gmd:northBoundLatitude> + <gco:Decimal>55.06</gco:Decimal> + </gmd:northBoundLatitude> + </gmd:EX_GeographicBoundingBox> + </gmd:geographicElement> + </gmd:EX_Extent> + </gmd:extent> + <gmd:extent> + <gmd:EX_Extent> + <gmd:geographicElement> + <gmd:EX_GeographicDescription> + <gmd:geographicIdentifier> + <gmd:MD_Identifier> + <gmd:code> + <gco:CharacterString>Schleswig-Holstein</gco:CharacterString> + </gmd:code> + </gmd:MD_Identifier> + </gmd:geographicIdentifier> + </gmd:EX_GeographicDescription> + </gmd:geographicElement> + </gmd:EX_Extent> + </gmd:extent> + </gmd:MD_DataIdentification> + </gmd:identificationInfo> + <gmd:distributionInfo> + <gmd:MD_Distribution> + <gmd:distributionFormat> + <gmd:MD_Format> + <gmd:name> + <gco:CharacterString>GML</gco:CharacterString> + </gmd:name> + <gmd:version> + <gco:CharacterString>3.2</gco:CharacterString> + </gmd:version> + </gmd:MD_Format> + </gmd:distributionFormat> + <gmd:distributor> + <gmd:MD_Distributor> + <gmd:distributorContact> + <gmd:CI_ResponsibleParty> + <gmd:individualName> + <gco:CharacterString>Vertrieb Geobasisdaten, Kundencenter</gco:CharacterString> + </gmd:individualName> + <gmd:organisationName> + <gco:CharacterString>Landesamt für Vermessung und Geoinformation Schleswig-Holstein</gco:CharacterString> + </gmd:organisationName> + <gmd:contactInfo> + <gmd:CI_Contact> + <gmd:phone> + <gmd:CI_Telephone> + <gmd:voice> + <gco:CharacterString>0431 383-2110</gco:CharacterString> + </gmd:voice> + <gmd:facsimile> + <gco:CharacterString>0431 383-2099</gco:CharacterString> + </gmd:facsimile> + </gmd:CI_Telephone> + </gmd:phone> + <gmd:address> + <gmd:CI_Address> + <gmd:deliveryPoint> + <gco:CharacterString>Mercatorstraße 1</gco:CharacterString> + </gmd:deliveryPoint> + <gmd:city> + <gco:CharacterString>Kiel</gco:CharacterString> + </gmd:city> + <gmd:administrativeArea> + <gco:CharacterString>Schleswig-Holstein</gco:CharacterString> + </gmd:administrativeArea> + <gmd:postalCode> + <gco:CharacterString>24106</gco:CharacterString> + </gmd:postalCode> + <gmd:country> + <gco:CharacterString>Deutschland</gco:CharacterString> + </gmd:country> + <gmd:electronicMailAddress> + <gco:CharacterString>Vertrieb.Geobasisdaten@LVermGeo.landsh.de</gco:CharacterString> + </gmd:electronicMailAddress> + </gmd:CI_Address> + </gmd:address> + </gmd:CI_Contact> + </gmd:contactInfo> + <gmd:role> + <gmd:CI_RoleCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_RoleCode" codeListValue="distributor">distributor</gmd:CI_RoleCode> + </gmd:role> + </gmd:CI_ResponsibleParty> + </gmd:distributorContact> + </gmd:MD_Distributor> + </gmd:distributor> + <gmd:transferOptions> + <gmd:MD_DigitalTransferOptions> + <gmd:onLine> + <gmd:CI_OnlineResource> + <gmd:linkage> + <gmd:URL>https://geodaten.schleswig-holstein.de/gaialight-sh/_apps/dladownload/dl-alkis.html</gmd:URL> + </gmd:linkage> + <gmd:applicationProfile> + <gco:CharacterString>http://publications.europa.eu/resource/authority/file-type/GML</gco:CharacterString> + </gmd:applicationProfile> + <gmd:name> + <gco:CharacterString>Download</gco:CharacterString> + </gmd:name> + <gmd:function> + <gmd:CI_OnLineFunctionCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_OnLineFunctionCode" codeListValue="download" /> + </gmd:function> + </gmd:CI_OnlineResource> + </gmd:onLine> + </gmd:MD_DigitalTransferOptions> + </gmd:transferOptions> + <gmd:transferOptions> + <gmd:MD_DigitalTransferOptions> + <gmd:onLine> + <gmd:CI_OnlineResource> + <gmd:linkage> + <gmd:URL>https://www.schleswig-holstein.de/DE/landesregierung/ministerien-behoerden/LVERMGEOSH/lvermgeosh_node.html</gmd:URL> + </gmd:linkage> + <gmd:function> + <gmd:CI_OnLineFunctionCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#CI_OnLineFunctionCode" codeListValue="information" /> + </gmd:function> + </gmd:CI_OnlineResource> + </gmd:onLine> + </gmd:MD_DigitalTransferOptions> + </gmd:transferOptions> + </gmd:MD_Distribution> + </gmd:distributionInfo> + <gmd:dataQualityInfo> + <gmd:DQ_DataQuality> + <gmd:scope> + <gmd:DQ_Scope> + <gmd:level> + <gmd:MD_ScopeCode codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#MD_ScopeCode" codeListValue="dataset" /> + </gmd:level> + <gmd:levelDescription> + <gmd:MD_ScopeDescription> + <gmd:other> + <gco:CharacterString>Offene Geobasisdaten Schleswig-Holstein (OpenGBD)</gco:CharacterString> + </gmd:other> + </gmd:MD_ScopeDescription> + </gmd:levelDescription> + </gmd:DQ_Scope> + </gmd:scope> + <gmd:lineage> + <gmd:LI_Lineage> + <gmd:statement> + <gco:CharacterString>Datenbestand aus dem ALKIS Schleswig-Holstein</gco:CharacterString> + </gmd:statement> + </gmd:LI_Lineage> + </gmd:lineage> + </gmd:DQ_DataQuality> + </gmd:dataQualityInfo> +</gmd:MD_Metadata>