diff --git a/src/main/java/de/landsh/opendata/csw2dcat/MDMetadata2Dataset.java b/src/main/java/de/landsh/opendata/csw2dcat/MDMetadata2Dataset.java index 03fc7f961737ead99efbf749d3c9382e74d80edb..fe8fed73a809f9a657ec0d0eebd4cad1e23318f3 100644 --- a/src/main/java/de/landsh/opendata/csw2dcat/MDMetadata2Dataset.java +++ b/src/main/java/de/landsh/opendata/csw2dcat/MDMetadata2Dataset.java @@ -42,7 +42,7 @@ public class MDMetadata2Dataset { 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 String XPATH_OPERATION_GET_CAPABILITIES = "gmd:identificationInfo/*/srv:containsOperations/srv:SV_OperationMetadata[srv:operationName/gco:CharacterString ='GetCapabilities']"; static IRIFactory factory = IRIFactory.iriImplementation(); private final Model model; private final Map<String, String> keywordMapping = new HashMap<>(); @@ -361,6 +361,19 @@ public class MDMetadata2Dataset { metadata.addNamespace("srv", "http://www.isotc211.org/2005/srv"); } + static String getServiceEndpoint(Element metadata) { + String url; + // Is it a service with a comprehensive description of operations? + if (metadata.selectSingleNode(XPATH_OPERATION_GET_CAPABILITIES) != null) { + final Element operationMetadata = (Element) metadata.selectSingleNode(XPATH_OPERATION_GET_CAPABILITIES); + url = repairURL(StringUtils.trim(operationMetadata.selectSingleNode("srv:connectPoint/gmd:CI_OnlineResource/gmd:linkage/gmd:URL").getStringValue())); + } else { + url = repairURL(getTextOrNull(metadata.selectSingleNode("gmd:identificationInfo[1]/*/gmd:citation/gmd:CI_Citation/gmd:identifier/gmd:MD_Identifier/gmd:code"))); + log.warn("Using identifier as service endpoint: {}", url); + } + return url; + } + public BridgeSettings getSettings() { return settings; } @@ -411,16 +424,7 @@ public class MDMetadata2Dataset { return convertMultiFormatDataset(metadata, true); } - final String url; - - // Is it a service with a comprehensive description of operations? - if (metadata.selectSingleNode(XPATH_OPERATION_GET_CAPABILITIES) != null) { - final Element operationMetadata = (Element) metadata.selectSingleNode(XPATH_OPERATION_GET_CAPABILITIES); - url = repairURL(StringUtils.trim(operationMetadata.selectSingleNode("srv:connectPoint/gmd:CI_OnlineResource/gmd:linkage/gmd:URL").getStringValue())); - } else { - url = repairURL(getTextOrNull(metadata.selectSingleNode("gmd:identificationInfo[1]/*/gmd:citation/gmd:CI_Citation/gmd:identifier/gmd:MD_Identifier/gmd:code"))); - } - + final String url = getServiceEndpoint(metadata); if (!isValidURLandIRI(url)) { log.warn("Distribution has an invalid URI {} - ignoring it.", url); return Collections.emptySet(); @@ -995,14 +999,7 @@ public class MDMetadata2Dataset { convertDataResource(metadata, dataService); - String url; - // Is it a service with a comprehensive description of operations? - if (metadata.selectSingleNode(XPATH_OPERATION_GET_CAPABILITIES) != null) { - final Element operationMetadata = (Element) metadata.selectSingleNode(XPATH_OPERATION_GET_CAPABILITIES); - url = repairURL(StringUtils.trim(operationMetadata.selectSingleNode("srv:connectPoint/gmd:CI_OnlineResource/gmd:linkage/gmd:URL").getStringValue())); - } else { - url = repairURL(getTextOrNull(metadata.selectSingleNode("gmd:identificationInfo[1]/*/gmd:citation/gmd:CI_Citation/gmd:identifier/gmd:MD_Identifier/gmd:code"))); - } + String url = getServiceEndpoint(metadata); if (StringUtils.contains(StringUtils.lowerCase(url), "request=getcapabilities")) { // the GetCapabilites request is linked diff --git a/src/test/java/de/landsh/opendata/csw2dcat/MDMetadata2DatasetTests.java b/src/test/java/de/landsh/opendata/csw2dcat/MDMetadata2DatasetTests.java index 4efad2c3b217181e5118b4325d631e14b1b1fe72..be227fb0609db2b5ab9d383791d774f0e1e17464 100644 --- a/src/test/java/de/landsh/opendata/csw2dcat/MDMetadata2DatasetTests.java +++ b/src/test/java/de/landsh/opendata/csw2dcat/MDMetadata2DatasetTests.java @@ -34,6 +34,7 @@ public class MDMetadata2DatasetTests { 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"); + final Model model = ModelFactory.createDefaultModel(); private final SAXReader saxReader = new SAXReader(); private MDMetadata2Dataset service; private CswInterface cswInterface; @@ -85,7 +86,6 @@ public class MDMetadata2DatasetTests { @Test public void testConvert() throws DocumentException, IOException { - final Model model = ModelFactory.createDefaultModel(); model.read(getClass().getResourceAsStream("/f7f90143-c2ad-46b2-934d-93dfd5e0f031.rdf"), null); final Resource referenceDataset = model.listResourcesWithProperty(RDF.type, DCAT.Dataset).next(); @@ -550,7 +550,6 @@ public class MDMetadata2DatasetTests { Element element = new SAXReader().read(new StringReader(xml)).getRootElement(); - Model model = ModelFactory.createDefaultModel(); Resource resource = model.createResource(); MDMetadata2Dataset.addTemporalExtend(resource, element); @@ -576,7 +575,6 @@ public class MDMetadata2DatasetTests { Element element = new SAXReader().read(new StringReader(xml)).getRootElement(); - Model model = ModelFactory.createDefaultModel(); Resource resource = model.createResource(); MDMetadata2Dataset.addTemporalExtend(resource, element); @@ -725,8 +723,6 @@ public class MDMetadata2DatasetTests { @Test public void createFoafOrg_invalidEmail() throws DocumentException { final Element ciResponsibleParty = saxReader.read(getClass().getResourceAsStream("/CI_ResponsibleParty1.xml")).getRootElement(); - final Model model = ModelFactory.createDefaultModel(); - MDMetadata2Dataset.createFoafOrg(ciResponsibleParty, model); model.write(Writer.nullWriter(), "RDF/XML-ABBREV"); } @@ -848,7 +844,6 @@ public class MDMetadata2DatasetTests { @Test void addBoundingBox_null() throws DocumentException { - Model model = ModelFactory.createDefaultModel(); Resource resource = model.createResource(); MDMetadata2Dataset.addBoundingBox(resource, null); assertFalse(model.listStatements().hasNext()); @@ -865,7 +860,6 @@ public class MDMetadata2DatasetTests { "</gmd:EX_GeographicBoundingBox>"; Element element = new SAXReader().read(new StringReader(xml)).getRootElement(); - Model model = ModelFactory.createDefaultModel(); Resource resource = model.createResource(); MDMetadata2Dataset.addBoundingBox(resource, element); @@ -905,7 +899,6 @@ public class MDMetadata2DatasetTests { "</gmd:EX_GeographicBoundingBox>"; Element element = new SAXReader().read(new StringReader(xml)).getRootElement(); - Model model = ModelFactory.createDefaultModel(); Resource resource = model.createResource(); MDMetadata2Dataset.addBoundingBox(resource, element); @@ -943,7 +936,6 @@ public class MDMetadata2DatasetTests { "</gmd:EX_GeographicBoundingBox>"; Element element = new SAXReader().read(new StringReader(xml)).getRootElement(); - Model model = ModelFactory.createDefaultModel(); Resource resource = model.createResource(); MDMetadata2Dataset.addBoundingBox(resource, element); @@ -981,7 +973,6 @@ public class MDMetadata2DatasetTests { "</gmd:EX_GeographicBoundingBox>"; Element element = new SAXReader().read(new StringReader(xml)).getRootElement(); - Model model = ModelFactory.createDefaultModel(); Resource resource = model.createResource(); MDMetadata2Dataset.addBoundingBox(resource, element); @@ -1179,7 +1170,7 @@ public class MDMetadata2DatasetTests { assertTrue(collectApplicableLegislation(result).contains("http://data.europa.eu/eli/dir/2007/2/2019-06-26")); } - private Set<String> collectApplicableLegislation( Resource result) { + private Set<String> collectApplicableLegislation(Resource result) { Set<String> conformsTo = new HashSet<>(); StmtIterator it = result.listProperties(DCATAP.applicableLegislation); while (it.hasNext()) { @@ -1452,9 +1443,69 @@ public class MDMetadata2DatasetTests { result.getProperty(DCAT.endpointURL).getResource().getURI()); assertTrue(result.hasProperty(DCAT.servesDataset, ResourceFactory.createResource("https://registry.gdi-de.org/id/de.sh/f5626e31-7674-446b-be64-af93d494cd0b"))); - assertTrue(collectApplicableLegislation(result) .contains( "http://data.europa.eu/eli/reg_impl/2023/138/oj")); + assertTrue(collectApplicableLegislation(result).contains("http://data.europa.eu/eli/reg_impl/2023/138/oj")); assertEquals("http://data.europa.eu/bna/c_ac64a52d", result.getPropertyResourceValue(DCATAP.hvdCategory).getURI()); } + @Test + public void getServiceEndpoint_norderstedtWFS() throws DocumentException { + final Element inputDocument = saxReader.read(getClass().getResourceAsStream("/norderstedt_wfs.xml")).getRootElement(); + String result = MDMetadata2Dataset.getServiceEndpoint(inputDocument); + assertEquals("https://geoservice.norderstedt.de/geoserver/pub/wfs?SERVICE=WFS&version=2.0.0&request=GetCapabilities", result); + } + + @Test + public void createDataService_norderstedtWMS() throws DocumentException { + final Element input = saxReader.read(getClass().getResourceAsStream("/norderstedt_wms.xml")).getRootElement(); + Resource dataService = service.createDataService(input, model); + assertEquals("https://geoservice.norderstedt.de/geoserver/pub/soz_Wohlfahrt/wms", dataService.getPropertyResourceValue(DCAT.endpointURL).getURI()); + } + + @Test + public void convertServiceToDistributions_norderstedtWMS() throws DocumentException { + final Element input = saxReader.read(getClass().getResourceAsStream("/norderstedt_wms.xml")).getRootElement(); + Collection<Resource> distributions = service.convertServiceToDistributions(input); + assertEquals(1, distributions.size()); + Resource distribution = distributions.iterator().next(); + + assertEquals("https://geoservice.norderstedt.de/geoserver/pub/soz_Wohlfahrt/wms?SERVICE=WMS&version=1.3.0&request=GetCapabilities", distribution.getPropertyResourceValue(DCAT.accessURL).getURI()); + } + + @Test + public void getServiceEndpoint_norderstedtWMS() throws DocumentException { + final Element inputDocument = saxReader.read(getClass().getResourceAsStream("/norderstedt_wms.xml")).getRootElement(); + String result = MDMetadata2Dataset.getServiceEndpoint(inputDocument); + assertEquals("https://geoservice.norderstedt.de/geoserver/pub/soz_Wohlfahrt/wms?SERVICE=WMS&version=1.3.0&request=GetCapabilities", result); + } + + @Test + public void convert_norderstedtDataset() throws DocumentException, IOException { + final Element wmsElement = saxReader.read(getClass().getResourceAsStream("/norderstedt_wms.xml")).getRootElement(); + final Element wfsElement = saxReader.read(getClass().getResourceAsStream("/norderstedt_wfs.xml")).getRootElement(); + final Element input = saxReader.read(getClass().getResourceAsStream("/norderstedt_dataset.xml")).getRootElement(); + + Mockito.when(cswInterface.findOperatesOn("https://registry.gdi-de.org/id/de.sh/ea7599f9-0134-4a3f-ab46-5116addc1bb3")).thenReturn(Arrays.asList(wfsElement, wmsElement)); + + Resource dataset = service.convert(input); + + final Map<String, Resource> distributionMap = collectDistributions(dataset); + assertEquals(4, distributionMap.size()); + + Resource distributionWMS = distributionMap.get("https://geoservice.norderstedt.de/geoserver/pub/soz_Wohlfahrt/wms?SERVICE=WMS&version=1.3.0&request=GetCapabilities"); + Resource distributionWFS = distributionMap.get("https://geoservice.norderstedt.de/geoserver/pub/wfs?SERVICE=WFS&version=2.0.0&request=GetCapabilities"); + Resource distributionCSV = distributionMap.get("https://geoservice.norderstedt.de/geoserver/pub/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=pub:soz_Wohlfahrt&outputFormat=CSV"); + Resource distributionSHP = distributionMap.get("https://geoservice.norderstedt.de/geoserver/pub/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=pub:soz_Wohlfahrt&outputFormat=SHAPE-ZIP"); + + assertNotNull(distributionCSV); + assertNotNull(distributionSHP); + assertNotNull(distributionWFS); + assertNotNull(distributionWMS); + + assertEquals("http://publications.europa.eu/resource/authority/file-type/WFS_SRVC", + distributionWFS.getPropertyResourceValue(DCTerms.format).getURI()); + assertEquals("http://publications.europa.eu/resource/authority/file-type/WMS_SRVC", + distributionWMS.getPropertyResourceValue(DCTerms.format).getURI()); + } + } diff --git a/src/test/resources/norderstedt_dataset.xml b/src/test/resources/norderstedt_dataset.xml new file mode 100644 index 0000000000000000000000000000000000000000..c61b5c32fd9bbf7f3c30f1e03bc304ff4fd407fa --- /dev/null +++ b/src/test/resources/norderstedt_dataset.xml @@ -0,0 +1,485 @@ +<?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>ea7599f9-0134-4a3f-ab46-5116addc1bb3</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: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: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-10-30</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="https://www.opengis.net/def/crs/EPSG/0/25832">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>Wohlfahrts- und Sozialverbände</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="publication">publication</gmd:CI_DateTypeCode> + </gmd:dateType> + </gmd:CI_Date> + </gmd:date> + <gmd:date> + <gmd:CI_Date> + <gmd:date> + <gco:Date>2021-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-10-01</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/ea7599f9-0134-4a3f-ab46-5116addc1bb3</gco:CharacterString> + </gmd:code> + </gmd:MD_Identifier> + </gmd:identifier> + </gmd:CI_Citation> + </gmd:citation> + <gmd:abstract> + <gco:CharacterString>Soziale Angebote und Beratung
 +Wohlfahrts- und Sozialverbände
 +
 +Herausgeber: Stadt Norderstedt, Sozialamt
 +
 +Fortschreibung: laufend / Stand: 01.10.2022</gco:CharacterString> + </gmd:abstract> + <gmd:pointOfContact> + <gmd:CI_ResponsibleParty> + <gmd:individualName> + <gco:CharacterString>Servicestelle Geodaten</gco:CharacterString> + </gmd:individualName> + <gmd:organisationName> + <gco:CharacterString>Stadtverwaltung Norderstedt</gco:CharacterString> + </gmd:organisationName> + <gmd:positionName> + <gco:CharacterString>Ansprechpartner*in Geodaten</gco:CharacterString> + </gmd:positionName> + <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_MaintenanceFrequencyCode" + 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/pub/wms?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&LAYERS=pub:soz_Wohlfahrt&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>Versorgungswirtschaft und staatliche Dienste</gco:CharacterString> + </gmd:keyword> + <gmd:keyword> + <gco:CharacterString>Sozialdienst</gco:CharacterString> + </gmd:keyword> + <gmd:keyword> + <gco:CharacterString>Beratung</gco:CharacterString> + </gmd:keyword> + <gmd:keyword> + <gco:CharacterString>Beratungsdienst</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>inspireidentifiziert</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>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">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 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>society</gmd:MD_TopicCategoryCode> + </gmd:topicCategory> + <gmd:extent> + <gmd:EX_Extent> + <gmd:geographicElement> + <gmd:EX_GeographicBoundingBox> + <gmd:westBoundLongitude> + <gco:Decimal>9.97671134891196</gco:Decimal> + </gmd:westBoundLongitude> + <gmd:eastBoundLongitude> + <gco:Decimal>10.0091974775376</gco:Decimal> + </gmd:eastBoundLongitude> + <gmd:southBoundLatitude> + <gco:Decimal>53.68042814759143</gco:Decimal> + </gmd:southBoundLatitude> + <gmd:northBoundLatitude> + <gco:Decimal>53.72122994444117</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>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:individualName> + <gco:CharacterString>Servicestelle Metadaten</gco:CharacterString> + </gmd:individualName> + <gmd:organisationName> + <gco:CharacterString>Stadtverwaltung Norderstedt</gco:CharacterString> + </gmd:organisationName> + <gmd:positionName> + <gco:CharacterString>Ansprechpartner*in Metadaten</gco:CharacterString> + </gmd:positionName> + <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:MD_Distributor> + </gmd:distributor> + <gmd:transferOptions> + <gmd:MD_DigitalTransferOptions> + <gmd:onLine> + <gmd:CI_OnlineResource> + <gmd:linkage> + <gmd:URL>https://geoservice.norderstedt.de/geoserver/pub/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=pub:soz_Wohlfahrt&outputFormat=CSV</gmd:URL> + </gmd:linkage> + <gmd:description> + <gco:CharacterString>Download als CSV</gco:CharacterString> + </gmd:description> + <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://geoservice.norderstedt.de/geoserver/pub/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=pub:soz_Wohlfahrt&outputFormat=SHAPE-ZIP</gmd:URL> + </gmd:linkage> + <gmd:description> + <gco:CharacterString>Download als Shape</gco:CharacterString> + </gmd:description> + <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://geoservice.norderstedt.de/geoportal/</gmd:URL> + </gmd:linkage> + <gmd:name> + <gco:CharacterString>https://geoservice.norderstedt.de/geoportal/</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: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 Sozialverbandsstellen sind Teil 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/norderstedt_wfs.xml b/src/test/resources/norderstedt_wfs.xml new file mode 100644 index 0000000000000000000000000000000000000000..1c959951f78945ed0a22e0ebba6558283fff7eed --- /dev/null +++ b/src/test/resources/norderstedt_wfs.xml @@ -0,0 +1,517 @@ +<?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>6cbecece-4d45-455b-96d1-159d5f77a8f9</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="service"/> + </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*in Metadaten</gco:CharacterString> + </gmd:positionName> + <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>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: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-10-30</gco:Date> + </gmd:dateStamp> + <gmd:metadataStandardName> + <gco:CharacterString>ISO19115</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="https://www.opengis.net/def/crs/EPSG/0/25832">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> + <srv:SV_ServiceIdentification> + <gmd:citation> + <gmd:CI_Citation> + <gmd:title> + <gco:CharacterString>WFS Wohlfahrts- und Sozialverbände Stadt Norderstedt (Downloaddienst)</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="publication">publication</gmd:CI_DateTypeCode> + </gmd:dateType> + </gmd:CI_Date> + </gmd:date> + <gmd:date> + <gmd:CI_Date> + <gmd:date> + <gco:Date>2021-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-10-01</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/6cbecece-4d45-455b-96d1-159d5f77a8f9</gco:CharacterString> + </gmd:code> + </gmd:MD_Identifier> + </gmd:identifier> + </gmd:CI_Citation> + </gmd:citation> + <gmd:abstract> + <gco:CharacterString>Soziale Angebote und Beratung
 +Wohlfahrts- und Sozialverbände
 +
 +Herausgeber: Stadt Norderstedt, Sozialamt
 +
 +Fortschreibung: laufend / Stand: 01.10.2022</gco:CharacterString> + </gmd:abstract> + <gmd:pointOfContact> + <gmd:CI_ResponsibleParty> + <gmd:individualName> + <gco:CharacterString>Servicestelle Geodaten</gco:CharacterString> + </gmd:individualName> + <gmd:organisationName> + <gco:CharacterString>Stadtverwaltung Norderstedt</gco:CharacterString> + </gmd:organisationName> + <gmd:positionName> + <gco:CharacterString>Ansprechpartner*in Geodaten</gco:CharacterString> + </gmd:positionName> + <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_MaintenanceFrequencyCode" + 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/pub/wms?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&LAYERS=pub:soz_Wohlfahrt&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>Versorgungswirtschaft und staatliche Dienste</gco:CharacterString> + </gmd:keyword> + <gmd:keyword> + <gco:CharacterString>Sozialdienst</gco:CharacterString> + </gmd:keyword> + <gmd:keyword> + <gco:CharacterString>Beratung</gco:CharacterString> + </gmd:keyword> + <gmd:keyword> + <gco:CharacterString>Beratungsdienst</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>inspireidentifiziert</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>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">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 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> + <srv:serviceType> + <gco:LocalName>download</gco:LocalName> + </srv:serviceType> + <srv:serviceTypeVersion> + <gco:CharacterString>OGC:WFS 1.1.0</gco:CharacterString> + </srv:serviceTypeVersion> + <srv:serviceTypeVersion> + <gco:CharacterString>OGC:WFS 2.0</gco:CharacterString> + </srv:serviceTypeVersion> + <srv:extent> + <gmd:EX_Extent> + <gmd:geographicElement> + <gmd:EX_GeographicBoundingBox> + <gmd:westBoundLongitude> + <gco:Decimal>9.97671134891196</gco:Decimal> + </gmd:westBoundLongitude> + <gmd:eastBoundLongitude> + <gco:Decimal>10.0091974775376</gco:Decimal> + </gmd:eastBoundLongitude> + <gmd:southBoundLatitude> + <gco:Decimal>53.68042814759143</gco:Decimal> + </gmd:southBoundLatitude> + <gmd:northBoundLatitude> + <gco:Decimal>53.72122994444117</gco:Decimal> + </gmd:northBoundLatitude> + </gmd:EX_GeographicBoundingBox> + </gmd:geographicElement> + </gmd:EX_Extent> + </srv:extent> + <srv:extent> + <gmd:EX_Extent> + <gmd:geographicElement> + <gmd:EX_GeographicDescription> + <gmd:geographicIdentifier> + <gmd:MD_Identifier> + <gmd:code> + <gco:CharacterString>010600063063</gco:CharacterString> + </gmd:code> + </gmd:MD_Identifier> + </gmd:geographicIdentifier> + </gmd:EX_GeographicDescription> + </gmd:geographicElement> + </gmd:EX_Extent> + </srv:extent> + <srv:couplingType> + <srv:SV_CouplingType codeList="tight" codeListValue="tight"/> + </srv:couplingType> + <srv:containsOperations> + <srv:SV_OperationMetadata> + <srv:operationName> + <gco:CharacterString>GetCapabilities</gco:CharacterString> + </srv:operationName> + <srv:DCP> + <srv:DCPList codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#DCPList" + codeListValue="HTTPGet"/> + </srv:DCP> + <srv:connectPoint> + <gmd:CI_OnlineResource> + <gmd:linkage> + <gmd:URL>https://geoservice.norderstedt.de/geoserver/pub/wfs?SERVICE=WFS&version=2.0.0&request=GetCapabilities</gmd:URL> + </gmd:linkage> + </gmd:CI_OnlineResource> + </srv:connectPoint> + </srv:SV_OperationMetadata> + </srv:containsOperations> + <srv:containsOperations> + <srv:SV_OperationMetadata> + <srv:operationName> + <gco:CharacterString>GetFeature</gco:CharacterString> + </srv:operationName> + <srv:DCP> + <srv:DCPList codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#DCPList" + codeListValue="HTTPGet"/> + </srv:DCP> + <srv:connectPoint> + <gmd:CI_OnlineResource> + <gmd:linkage> + <gmd:URL>https://geoservice.norderstedt.de/geoserver/pub/wfs?</gmd:URL> + </gmd:linkage> + </gmd:CI_OnlineResource> + </srv:connectPoint> + </srv:SV_OperationMetadata> + </srv:containsOperations> + <srv:operatesOn xlink:href="https://registry.gdi-de.org/id/de.sh/ea7599f9-0134-4a3f-ab46-5116addc1bb3"/> + </srv:SV_ServiceIdentification> + </gmd:identificationInfo> + <gmd:distributionInfo> + <gmd:MD_Distribution> + <gmd:distributionFormat> + <gmd:MD_Format> + <gmd:name> + <gco:CharacterString>WFS</gco:CharacterString> + </gmd:name> + <gmd:version> + <gco:CharacterString>1.1.0, 2.0</gco:CharacterString> + </gmd:version> + </gmd:MD_Format> + </gmd:distributionFormat> + <gmd:distributor> + <gmd:MD_Distributor> + <gmd:distributorContact> + <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*in Metadaten</gco:CharacterString> + </gmd:positionName> + <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: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:name> + <gco:CharacterString>https://geoservice.norderstedt.de/geoportal/</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://geoservice.norderstedt.de/geoserver/pub/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=pub:soz_Wohlfahrt&outputFormat=SHAPE-ZIP</gmd:URL> + </gmd:linkage> + <gmd:description> + <gco:CharacterString>Download als Shape</gco:CharacterString> + </gmd:description> + <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="service"/> + </gmd:level> + <gmd:levelDescription> + <gmd:MD_ScopeDescription> + <gmd:other> + <gco:CharacterString>Dienst</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. 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 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 Sozialverbandsstellen sind Teil 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/norderstedt_wms.xml b/src/test/resources/norderstedt_wms.xml new file mode 100644 index 0000000000000000000000000000000000000000..45fd8b8792ba7231d60afb462bd5bfea6f46aa47 --- /dev/null +++ b/src/test/resources/norderstedt_wms.xml @@ -0,0 +1,480 @@ +<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:gfc="http://www.isotc211.org/2005/gfc" +xmlns:gml="http://www.opengis.net/gml/3.2" +xmlns:gmx="http://www.isotc211.org/2005/gmx" +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"> + <gmd:fileIdentifier> + <gco:CharacterString>3cabdc69-a52b-4876-a146-c7ddf535b8a5</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="service"/> + </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*in Metadaten</gco:CharacterString> + </gmd:positionName> + <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>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: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-10-30</gco:Date> + </gmd:dateStamp> + <gmd:metadataStandardName> + <gco:CharacterString>ISO19115</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="https://www.opengis.net/def/crs/EPSG/0/25832">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> + <srv:SV_ServiceIdentification> + <gmd:citation> + <gmd:CI_Citation> + <gmd:title> + <gco:CharacterString>WMS Wohlfahrts- und Sozialverbände Stadt Norderstedt (Darstellungsdienst)</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="publication">publication</gmd:CI_DateTypeCode> + </gmd:dateType> + </gmd:CI_Date> + </gmd:date> + <gmd:date> + <gmd:CI_Date> + <gmd:date> + <gco:Date>2021-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-10-01</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/3cabdc69-a52b-4876-a146-c7ddf535b8a5</gco:CharacterString> + </gmd:code> + </gmd:MD_Identifier> + </gmd:identifier> + </gmd:CI_Citation> + </gmd:citation> + <gmd:abstract> + <gco:CharacterString>Soziale Angebote und Beratung +Wohlfahrts- und Sozialverbände + +Herausgeber: Stadt Norderstedt, Sozialamt + +Fortschreibung: laufend / Stand: 01.10.2022</gco:CharacterString> + </gmd:abstract> + <gmd:pointOfContact> + <gmd:CI_ResponsibleParty> + <gmd:individualName> + <gco:CharacterString>Servicestelle Geodaten</gco:CharacterString> + </gmd:individualName> + <gmd:organisationName> + <gco:CharacterString>Stadtverwaltung Norderstedt</gco:CharacterString> + </gmd:organisationName> + <gmd:positionName> + <gco:CharacterString>Ansprechpartner*in Geodaten</gco:CharacterString> + </gmd:positionName> + <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_MaintenanceFrequencyCode" 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/pub/wms?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&LAYERS=pub:soz_Wohlfahrt&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>Versorgungswirtschaft und staatliche Dienste</gco:CharacterString> + </gmd:keyword> + <gmd:keyword> + <gco:CharacterString>Sozialdienst</gco:CharacterString> + </gmd:keyword> + <gmd:keyword> + <gco:CharacterString>Beratung</gco:CharacterString> + </gmd:keyword> + <gmd:keyword> + <gco:CharacterString>Beratungsdienst</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>inspireidentifiziert</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>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">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 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> + <srv:serviceType> + <gco:LocalName>view</gco:LocalName> + </srv:serviceType> + <srv:serviceTypeVersion> + <gco:CharacterString>OGC:WMS 1.1.1</gco:CharacterString> + </srv:serviceTypeVersion> + <srv:serviceTypeVersion> + <gco:CharacterString>OGC:WMS 1.3.0</gco:CharacterString> + </srv:serviceTypeVersion> + <srv:extent> + <gmd:EX_Extent> + <gmd:geographicElement> + <gmd:EX_GeographicBoundingBox> + <gmd:westBoundLongitude> + <gco:Decimal>9.97671134891196</gco:Decimal> + </gmd:westBoundLongitude> + <gmd:eastBoundLongitude> + <gco:Decimal>10.0091974775376</gco:Decimal> + </gmd:eastBoundLongitude> + <gmd:southBoundLatitude> + <gco:Decimal>53.68042814759143</gco:Decimal> + </gmd:southBoundLatitude> + <gmd:northBoundLatitude> + <gco:Decimal>53.72122994444117</gco:Decimal> + </gmd:northBoundLatitude> + </gmd:EX_GeographicBoundingBox> + </gmd:geographicElement> + </gmd:EX_Extent> + </srv:extent> + <srv:extent> + <gmd:EX_Extent> + <gmd:geographicElement> + <gmd:EX_GeographicDescription> + <gmd:geographicIdentifier> + <gmd:MD_Identifier> + <gmd:code> + <gco:CharacterString>010600063063</gco:CharacterString> + </gmd:code> + </gmd:MD_Identifier> + </gmd:geographicIdentifier> + </gmd:EX_GeographicDescription> + </gmd:geographicElement> + </gmd:EX_Extent> + </srv:extent> + <srv:couplingType> + <srv:SV_CouplingType codeList="tight" codeListValue="tight"/> + </srv:couplingType> + <srv:containsOperations> + <srv:SV_OperationMetadata> + <srv:operationName> + <gco:CharacterString>GetCapabilities</gco:CharacterString> + </srv:operationName> + <srv:DCP> + <srv:DCPList codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#DCPList" codeListValue="HTTPGet"/> + </srv:DCP> + <srv:connectPoint> + <gmd:CI_OnlineResource> + <gmd:linkage> + <gmd:URL>https://geoservice.norderstedt.de/geoserver/pub/soz_Wohlfahrt/wms?SERVICE=WMS&version=1.3.0&request=GetCapabilities</gmd:URL> + </gmd:linkage> + </gmd:CI_OnlineResource> + </srv:connectPoint> + </srv:SV_OperationMetadata> + </srv:containsOperations> + <srv:containsOperations> + <srv:SV_OperationMetadata> + <srv:operationName> + <gco:CharacterString>GetMap</gco:CharacterString> + </srv:operationName> + <srv:DCP> + <srv:DCPList codeList="http://standards.iso.org/iso/19139/resources/gmxCodelists.xml#DCPList" codeListValue="HTTPGet"/> + </srv:DCP> + <srv:connectPoint> + <gmd:CI_OnlineResource> + <gmd:linkage> + <gmd:URL>https://geoservice.norderstedt.de/geoserver/pub/soz_Wohlfahrt/wms?</gmd:URL> + </gmd:linkage> + </gmd:CI_OnlineResource> + </srv:connectPoint> + </srv:SV_OperationMetadata> + </srv:containsOperations> + <srv:operatesOn xlink:href="https://registry.gdi-de.org/id/de.sh/ea7599f9-0134-4a3f-ab46-5116addc1bb3"/> + </srv:SV_ServiceIdentification> + </gmd:identificationInfo> + <gmd:distributionInfo> + <gmd:MD_Distribution> + <gmd:distributionFormat> + <gmd:MD_Format> + <gmd:name> + <gco:CharacterString>WMS</gco:CharacterString> + </gmd:name> + <gmd:version> + <gco:CharacterString>1.1.1, 1.3.0</gco:CharacterString> + </gmd:version> + </gmd:MD_Format> + </gmd:distributionFormat> + <gmd:distributor> + <gmd:MD_Distributor> + <gmd:distributorContact> + <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*in Metadaten</gco:CharacterString> + </gmd:positionName> + <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: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:name> + <gco:CharacterString>https://geoservice.norderstedt.de/geoportal/</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="service"/> + </gmd:level> + <gmd:levelDescription> + <gmd:MD_ScopeDescription> + <gmd:other> + <gco:CharacterString>Dienst</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. 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 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 Sozialverbandsstellen sind Teil des Geoportals Norderstedt.</gco:CharacterString> + </gmd:statement> + </gmd:LI_Lineage> + </gmd:lineage> + </gmd:DQ_DataQuality> + </gmd:dataQualityInfo> + </gmd:MD_Metadata>