{
    "informationService": {
        "descriptionInformation": {
            "descriptionIdentification": {
                "title": "DK Danish METAR/SPECI, TAF and SIGMET (IWXXM) Subscription and Request Service",
                "edition": "1.1",
                "referenceDate": "2026-04-14"
            },
            "abbreviations": [
                {
                    "name": "AIRM",
                    "description": "ATM Information Reference Model"
                },
                {
                    "name": "ATM",
                    "description": "Air Traffic Management"
                },
                {
                    "name": "AMQP",
                    "description": "Advanced Message Queuing Protocol"
                },
                {
                    "name": "EACP",
                    "description": "European Aviation Common Public Key Infrastructure"
                },
                {
                    "name": "EDR",
                    "description": "Environmental Data Retrieval (Standard)"
                },
                {
                    "name": "FIR",
                    "description": "Flight Information Region"
                },
                {
                    "name": "HTTP",
                    "description": "HyperText Transfer Protocol"
                },
                {
                    "name": "ICAO",
                    "description": "International Civil Aviation Organization"
                },
                {
                    "name": "IWXXM",
                    "description": "ICAO Meteorological Information Exchange Model"
                },
                {
                    "name": "METAR",
                    "description": "Meteorological Aerodrome Report"
                },
                {
                    "name": "mTLS",
                    "description": "Mutual Transport Layer Security"
                },
                {
                    "name": "OGC",
                    "description": "Open Geospatial Consortium"
                },
                {
                    "name": "PANS-MET",
                    "description": "ICAO Procedures for Air Navigation Services - Meteorology"
                },
                {
                    "name": "SASL",
                    "description": "Simple Authentication and Security Layer"
                },
                {
                    "name": "SIGMET",
                    "description": "Significant Meteorological Information"
                },
                {
                    "name": "SPECI",
                    "description": "Special Aerodrome Weather Report"
                },
                {
                    "name": "TAF",
                    "description": "Terminal Aerodrome Forecast"
                }
            ]
        },
        "serviceIdentification": {
            "name": "DK Danish METAR/SPECI, TAF and SIGMET (IWXXM) Subscription and Request Service",
            "version": "1.1"
        },
        "serviceAbstract": "<p>The service provides latest METAR/SPECI, TAF and currently valid SIGMET reports in IWXXM format, in compliance with ICAO Annex 3, Regulation (EU) 2017/373 and PANS-MET, for Danish aerodromes.The reports are delivered continuously via AMQP 1.0 subscriptions, or on demand via an OpenAPI interface.</p>",
        "serviceProvider": {
            "providerType": [
                "AERONAUTICAL_INFORMATION_SERVICE_PROVIDER",
                "AIR_TRAFFIC_SERVICE_PROVIDER",
                "AIRPORT_OPERATOR",
                "CIVIL_AIR_NAVIGATION_SERVICE_PROVIDER",
                "COMMUNICATION_NAVIGATION_AND_SURVEILLANCE_SERVICE_PROVIDER",
                "MILITARY_AIR_NAVIGATION_SERVICE_PROVIDER",
                "NETWORK_MANAGER",
                "PROVIDER_OF_DATA_SERVICES",
                "REGULATED_METEOROLOGICAL_SERVICE_PROVIDER"
            ],
            "pointOfContact": [
                {
                    "name": "Naviair",
                    "contactInformation": [
                        {
                            "type": "EMAIL",
                            "address": "naviswim@naviair.dk"
                        }
                    ],
                    "role": "General inquiries about the services and for requesting access to the services"
                }
            ],
            "provider": "Naviair",
            "providerDescription": "<p>Naviair is the Danish ANSP.</p><p><a><strong>Naviair\u2019s core activities</strong></a></p><p>Air Traffic Management (ATM) in Danish airspace</p><p>\u2022 From the ATCC in Copenhagen, we provide area control services (En route) and approach control service to Copenhagen Airport.</p><p>\u2022 From the tower in Copenhagen, we provide aerodrome control service.</p><p>\u2022 From the towers in Roskilde, Billund, Aarhus, Aalborg and on Bornholm, we provide local aerodrome and approach control services.</p><p>&nbsp;</p><p>Aeronautical Information Service (AIS)</p><p>\u2022 We provide Aeronautical Information Publications (AIPs) in Denmark, Greenland and the Faroe Islands.</p><p>Flight Information Services (FIS) in Denmark and the North Atlantic area</p><p>\u2022 From the ATCC in Copenhagen, we provide Flight Information Services and briefing service.</p><p>\u2022 From the ATCC in Nuuk/Greenland, we provide Flight Information Services and briefing service.</p><p>\u2022 From the tower on V\u00e1gar in the Faroe Islands, we provide Aerodrome Flight Information Service.</p><p>&nbsp;</p><p>Technical support and maintenance</p><p>\u2022 We are responsible for technical support and maintenance of our own navigation systems, communications systems, surveillance systems and other ATM equipment in Denmark, Greenland and the Faroe Islands.</p><p>\u2022 From our technical bases in Copenhagen, Billund and Aalborg, we sell technical support and maintenance to aviation customers.</p>"
        },
        "serviceCategorisation": {
            "serviceType": "SWIM_COMPLIANT",
            "businessActivityType": [
                "AERODROME_OPERATION",
                "AIRSPACE_ORGANISATION_AND_MANAGEMENT",
                "AIRSPACE_USER_OPERATIONS",
                "CONFLICT_MANAGEMENT",
                "INFORMATION_MANAGEMENT",
                "SERVICE_DELIVERY_MANAGEMENT"
            ],
            "intendedConsumer": [
                "AIR_TRAFFIC_SERVICE_PROVIDER",
                "AIRPORT_OPERATOR",
                "AIRSIDE_GROUND_HANDLER",
                "CIVIL_AIR_NAVIGATION_SERVICE_PROVIDER",
                "CIVIL_AIRSPACE_USER",
                "COMMUNICATION_NAVIGATION_AND_SURVEILLANCE_SERVICE_PROVIDER",
                "MILITARY_AIR_NAVIGATION_SERVICE_PROVIDER",
                "MILITARY_AIRSPACE_USER",
                "NETWORK_MANAGER",
                "PROVIDER_OF_DATA_SERVICES",
                "REGULATED_METEOROLOGICAL_SERVICE_PROVIDER"
            ],
            "informationCategory": [
                "METEOROLOGICAL_INFORMATION_EXCHANGE"
            ],
            "applicationMessageExchangePattern": [
                {
                    "name": "SYNCHRONOUS_REQUEST_REPLY"
                },
                {
                    "name": "PUBLISH_SUBSCRIBE_WITH_PUSH_MECHANISM"
                }
            ],
            "geospatialCategorisation": {
                "aerodrome": [
                    "EKAH",
                    "EKBI",
                    "EKCH",
                    "EKEB",
                    "EKKA",
                    "EKOD",
                    "EKRK",
                    "EKRN",
                    "EKSB",
                    "EKSP",
                    "EKVD",
                    "EKVJ",
                    "EKYT"
                ],
                "fir": [
                    "EKDK"
                ],
                "countryCode": [
                    "EK"
                ],
                "region": [
                    "EUR"
                ],
                "description": "Data valid for Europe,Denmark - locations within Kobenhavn FIR (EKDK) and EKRN."
            },
            "lifeCycle": [
                {
                    "lifeCycleStage": "PROSPECTIVE",
                    "from": "2025-07-01",
                    "to": "2025-12-30"
                },
                {
                    "lifeCycleStage": "OPERATIONAL",
                    "from": "2025-12-31"
                }
            ]
        },
        "generalDescription": {
            "operationalEnvironment": {
                "operationalNeeds": [
                    {
                        "name": "Weather impacts on operation",
                        "description": "Ensure safe operations by responding to changes in weather conditions."
                    },
                    {
                        "name": "Situational awareness",
                        "description": "Support situational awareness of flight crew members, operators, and other aviation entities based on up-to-date weather conditions (As required by ICAO Annex 3 chapter 9.1 and Regulation 373/2017), including information about radioactive clouds."
                    },
                    {
                        "name": "Flight briefing",
                        "description": "Provide briefings based on latest weather conditions."
                    },
                    {
                        "name": "Graphical weather representations",
                        "description": "Supply data for graphical representation of weather conditions"
                    },
                    {
                        "name": "MET reports in IWXXM GML form",
                        "description": "Providing MET reports in IWXXM GML form, as required by ICAO Annex 3 chapter 2.1"
                    },
                    {
                        "name": "Meteorological information exchange",
                        "description": "Exchange of meteorological information in aviation context, satisfying the EU Implementing Regulation 2021/116 - Common Project One, Regulation 373/2017, ICAO Annex 3 and PANS-MET."
                    }
                ]
            },
            "functionality": [
                {
                    "name": "Request observed aerodrome/airspace meteorological information",
                    "description": "The service consumer can request latest METAR/SPECI and TAF reports for an aerodrome, and currently valid SIGMETs for an airspace.",
                    "realWorldEffect": "On-demand meteorological data acquisition"
                },
                {
                    "name": "Subscribe to observed aerodrome/airspace meteorological information",
                    "description": "The service consumer can subscribe/unsubscribe to latest METAR/SPECI, TAF and SIGMET reports for an aerodrome/airspace.",
                    "realWorldEffect": "Subscribing to meteorological data"
                },
                {
                    "name": "Distribute observed aerodrome/airspace meteorological information",
                    "description": "The service consumer can receive METAR/SPECI, TAF and SIGMET reports for an aerodrome/airspace continuously as they become available.",
                    "realWorldEffect": "Continuous meteorological data acquisition"
                }
            ],
            "qualitiesOfService": {
                "performance": [
                    {
                        "name": "CAPACITY",
                        "description": "2000 service requests per hour"
                    },
                    {
                        "name": "TIME BEHAVIOUR",
                        "description": "2s delay for 95% of messages"
                    }
                ],
                "reliability": [
                    {
                        "name": "AVAILABILITY",
                        "description": "99.95 % outside the planned outages Schedule of planned outages"
                    },
                    {
                        "name": "RECOVERABILITY",
                        "description": "Best effort"
                    }
                ],
                "security": [
                    {
                        "name": "CONFIDENTIALITY",
                        "description": "Confidentiality mechanisms have been implemented."
                    },
                    {
                        "name": "INTEGRITY",
                        "description": "Integrity mechanisms have been implemented."
                    }
                ]
            },
            "accessAndUseConditions": [
                {
                    "name": "General Terms and Conditions",
                    "type": "LEGAL_CONSTRAINT",
                    "description": "TBD"
                },
                {
                    "name": "Usage policy",
                    "type": "SERVICE_POLICY",
                    "description": "Any service consumer must operate within the aviation domain. Sharing obtained information with users outside the aviation domain, without explicit authorization from the service provider is not allowed."
                },
                {
                    "name": "Real-time information",
                    "type": "SERVICE_CONSUMPTION_CONSTRAINT",
                    "description": "Only the latest/currently valid MET reports are available using the WS_LIGHT interface. For the AMQP interface, new reports are continuously published when available. Historical data is not retrievable."
                },
                {
                    "name": "Load restrictions",
                    "type": "SERVICE_CONSUMPTION_CONSTRAINT",
                    "description": "Service consumers are not allowed to impose undue loads on computer and network resources, for example, by polling at a higher frequency than the data is normally provided."
                },
                {
                    "name": "Access requirement",
                    "type": "SERVICE_CONSUMPTION_CONSTRAINT",
                    "description": "Users must contact Naviair to obtain access to the service."
                },
                {
                    "name": "Consumer authentication and authorization",
                    "type": "SECURITY_CONSTRAINT",
                    "description": "Service consumers must be authenticated (See technical constraints)"
                },
                {
                    "name": "Provider authentication",
                    "type": "SECURITY_CONSTRAINT",
                    "description": "Provider is authenticated through an X.509 certificate"
                },
                {
                    "name": "Confidentiality and integrity",
                    "type": "SECURITY_CONSTRAINT",
                    "description": "Confidentiality and integrity is ensured by use of TLS 1.2 or above"
                }
            ],
            "serviceSupport": [
                {
                    "name": "Service Desk",
                    "role": "For reporting issues related to the service",
                    "contactInformation": [
                        {
                            "type": "EMAIL",
                            "address": "naviswim@naviair.dk"
                        }
                    ]
                }
            ],
            "validation": [
                {
                    "type": "SELF_VALIDATION",
                    "description": {
                        "validationSteps": "Self-validation by Naviair, including conformance tests against relevant standards and specifications, as well as internal test cases."
                    }
                }
            ],
            "concepts": [
                {
                    "name": "SWIM",
                    "description": "Service-oriented architecture for sharing aeronautical information"
                },
                {
                    "name": "MET",
                    "description": "Meteorological information"
                },
                {
                    "name": "Filtering Capabilities",
                    "description": "It is possible to add filters for AMQP subscriptions and/or the OGC API EDR compliant WS_LIGHT service"
                }
            ],
            "dateInOperation": "2025-12-31"
        },
        "informationDescription": {
            "filtering": {
                "capability": [
                    {
                        "name": "ICAO location",
                        "description": "Data is filtered by ICAO location (aerodrome/FIR). In WS_LIGHT as a query parameter, in AMQP by queue name."
                    }
                ]
            },
            "sourceOfInformation": "MET data retrieved from existing compliant MET systems provided by the Danish Authorities.",
            "informationDefinition": {
                "reference": [
                    {
                        "url": "https://airm.aero/developers/semantic-correspondences"
                    },
                    {
                        "url": "https://ext.eurocontrol.int/swim_confluence/display/SWIM/Example+service+description+-+information+elements",
                        "description": "Service Information Definition"
                    },
                    {
                        "url": "https://schemas.wmo.int/iwxxm/2023-1/",
                        "description": "ICAO Meteorological Information Exchange Model"
                    }
                ]
            }
        },
        "technicalDescription": {
            "serviceMonitoring": {
                "monitoringDescription": "Not available. Service is monitored by Naviair."
            },
            "technicalConstraint": [
                {
                    "name": "Client authentication and authorization",
                    "description": "For both AMQP and WS_LIGHT, clients must authenticate using an EACP client certificate to establish a secure mTLS connection"
                },
                {
                    "name": "Encryption",
                    "description": "All communication is encrypted using TLS 1.2 or above"
                },
                {
                    "name": "Message processing",
                    "description": "Client must process the retrieved IWXXM data"
                }
            ],
            "behaviour": [
                {
                    "name": "Normal Conditions",
                    "description": "The service provides an AMQP 1.0 and a WS_LIGHT based Service. The service message exchange patterns are (for REST Based WS_LIGHT Services) - SYNCHRONOUS_REQUEST_REPLY, and PUBLISH_SUBSCRIBE_WITH_PUSH_MECHANISM for AMQP services."
                },
                {
                    "name": "Problem Details for HTTP APIs",
                    "description": "Describes the ProblemDetails format for describing errors in HTTP API responses",
                    "reference": {
                        "url": "https://datatracker.ietf.org/doc/html/rfc7807"
                    }
                },
                {
                    "name": "AMQP interface",
                    "description": "Will publish and provide MET reports to relevant message queues as they become available.",
                    "reference": {
                        "url": "amqps://ekdkswim.dk:5673"
                    }
                },
                {
                    "name": "WS_LIGHT interface",
                    "description": "Will respond to MET report requests (provider). Errors will be returned with appropriate HTTP Status Codes and XML-formatted ProblemDetails message body.",
                    "reference": {
                        "url": "https://ekdkswim.dk/swim/met/v1"
                    }
                }
            ]
        },
        "serviceInterface": [
            {
                "name": "MET Data Subscription",
                "description": "Describes how to subscribe and unsubscribe to information for the AMQP Service Distribution interface"
            },
            {
                "name": "MET Data Distribution",
                "description": "AMQP Interface to continuously retrieve MET reports based on subscriptions",
                "endpoints": [
                    {
                        "name": "AMQP Broker",
                        "description": "AMQP 1.0 connection for attaching to message queues based on subscriptions",
                        "url": "amqps://ekdkswim.dk:5673"
                    }
                ],
                "serviceInterfaceBinding": {
                    "name": "SWIM_TI_YP_1_1_AMQP_MESSAGING",
                    "description": "The Service Interface Binding is SWIM Yellow Profile Compliant, using AMQP(S) 1.0 as the messaging protocol and IWXXM 2023-1 as the data format."
                },
                "networkInterfaceBinding": {
                    "name": "IPV4_SECURE_UNICAST",
                    "description": "The Service implementation conforms with IPV4_SECURE_UNICAST as part of SWIM Yellow Profile requirements."
                }
            },
            {
                "name": "MET Data Request",
                "description": "WS_LIGHT interface for requesting latest/currently valid MET reports",
                "serviceInterfaceBinding": {
                    "name": "SWIM_TI_YP_1_1_WS_LIGHT",
                    "description": "The Service Interface Binding is SWIM Yellow Profile Compliant, using WS_LIGHT enabling HTTP GET requests and associated responses in IWXXM 2023-1 format."
                },
                "networkInterfaceBinding": {
                    "name": "IPV4_UNICAST",
                    "description": "The Service implementation conforms with IPV4_UNICAST as part of SWIM Yellow Profile requirements."
                }
            }
        ],
        "references": {
            "serviceDocument": [
                {
                    "documentType": "MACHINE_READABLE_SERVICE_DESCRIPTION",
                    "title": "OpenAPI Specification",
                    "version": "1.0.0",
                    "description": "OpenAPI specification for the WS_LIGHT interface",
                    "reference": {
                        "url": "https://ekdkswim.dk/swim/met/v1/api"
                    }
                },
                {
                    "documentType": "AIRM_TRACE",
                    "title": "ICAO WXXM 3.0.0 Semantic Correspondance Report (Latest release, not released for IWXXM 2023-1)",
                    "version": "1.0.0",
                    "description": "Report detailing the semantic correspondance between IWXXM 3.0.0 and AIRM 1.0.0",
                    "reference": {
                        "url": "https://airm.aero/developers/semantic-correspondences/ICAO_WXXM_3.0.0_Semantic_Correspondence_Report.xlsx"
                    }
                },
                {
                    "documentType": "POLICY_DOCUMENT",
                    "title": "Regulation (EU) 2017/373",
                    "version": "1 March 2017",
                    "description": "Commission Implementing Regulation (EU) 2017/373 of 1 March 2017 laying down common requirements for providers of air traffic management/air navigation services and other air traffic management network functions and their oversight [...]",
                    "reference": {
                        "url": "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A02017R0373-20230126"
                    }
                },
                {
                    "documentType": "POLICY_DOCUMENT",
                    "title": "EU Implementing Regulation 2021/116 - Common Project One",
                    "version": "1 February 2021",
                    "description": "Commission Implementing Regulation (EU) 2021/116 of 1 February 2021 on the establishment of the Common Project One supporting the implementation of the European Air Traffic Management Master Plan provided for in Regulation (EC) No 550/2004 of the European Parliament and of the Council, [...]",
                    "reference": {
                        "url": "https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX%3A32021R0116"
                    }
                },
                {
                    "documentType": "POLICY_DOCUMENT",
                    "title": "ICAO Annex 3",
                    "version": "20th Edition",
                    "description": "ICAO Annex 3",
                    "reference": {
                        "url": "https://icao.int"
                    }
                },
                {
                    "documentType": "",
                    "title": "European Aviation Common Public Key Infrastructure (EACP)",
                    "version": "-",
                    "description": "Description of the Public Key Infrastructure used for certificates",
                    "reference": {
                        "url": "https://www.eurocontrol.int/project/european-aviation-common-public-key-infrastructure-eacp"
                    }
                },
                {
                    "documentType": "CODE_EXAMPLE",
                    "title": "Services & APIs - User Guide",
                    "version": "02.00.01",
                    "description": "Naviair Services & APIs User Guide to be used by service consumers when implementing the service, including code examples. Available upon request."
                }
            ],
            "implementedStandard": [
                {
                    "title": "Problem Details for HTTP APIs",
                    "standardType": "SERVICE_STANDARD",
                    "conformanceStatement": "Fully conformant",
                    "version": "RFC7807",
                    "description": "Describes the ProblemDetails format for describing errors in HTTP API responses",
                    "reference": {
                        "url": "https://datatracker.ietf.org/doc/html/rfc7807"
                    }
                },
                {
                    "title": "AMQP",
                    "standardType": "EUROCONTROL_SPECIFICATION_FOR_SWIM_TECHNICAL_INFRASTRUCTURE",
                    "conformanceStatement": "Fully conformant",
                    "version": "1.0",
                    "description": "Advanced Message Queuing Protocol",
                    "reference": {
                        "url": "https://docs.oasis-open.org/amqp/core/v1.0/os/amqp-core-overview-v1.0-os.html"
                    }
                },
                {
                    "title": "OpenAPI",
                    "standardType": "SERVICE_STANDARD",
                    "conformanceStatement": "Fully conformant",
                    "version": "3",
                    "description": "OpenAPI Specification",
                    "reference": {
                        "url": "https://swagger.io/specification/v3/"
                    }
                },
                {
                    "title": "OGC API EDR",
                    "standardType": "SERVICE_STANDARD",
                    "conformanceStatement": "Fully conformant, except filtering is limited to locationIds, and there is no 'instances' endpoint.",
                    "version": "1.1",
                    "description": "OGC API - Environmental Data Retrieval Standard",
                    "reference": {
                        "url": "http://www.opengis.net/doc/IS/ogcapi-edr-1/1.1"
                    }
                },
                {
                    "title": "IWXXM METAR-SPECI Subscription and Request Service - Service Definition",
                    "standardType": "EUROCONTROL_SPECIFICATION_FOR_SWIM_SERVICE_DESCRIPTION",
                    "conformanceStatement": "Fully conformant",
                    "version": "00.00.05",
                    "description": "Service definition for the IWXXM METAR-SPECI Subscription and Request Service",
                    "reference": {
                        "url": "https://swim-eurocontrol.atlassian.net/wiki/spaces/MSS/pages/60162182/IWXXM+METAR-SPECI+Subscription+and+Request+Service+-+Service+Definition"
                    }
                },
                {
                    "title": "IWXXM TAF Subscription and Request Service - Service Definition",
                    "standardType": "EUROCONTROL_SPECIFICATION_FOR_SWIM_SERVICE_DESCRIPTION",
                    "conformanceStatement": "Fully conformant",
                    "version": "00.00.04",
                    "description": "Service definition for the IWXXM TAF Subscription and Request Service",
                    "reference": {
                        "url": "https://swim-eurocontrol.atlassian.net/wiki/spaces/MSS/pages/60162191/IWXXM+TAF+Subscription+and+Request+Service+-+Service+Definition"
                    }
                },
                {
                    "title": "IWXXM SIGMET Subscription and Request Service - Service Definition",
                    "standardType": "EUROCONTROL_SPECIFICATION_FOR_SWIM_SERVICE_DESCRIPTION",
                    "conformanceStatement": "Fully conformant",
                    "version": "00.00.06",
                    "description": "Service definition for the IWXXM SIGMET Subscription and Request Service",
                    "reference": {
                        "url": "https://swim-eurocontrol.atlassian.net/wiki/spaces/MSS/pages/60162086/IWXXM+SIGMET+Subscription+and+Request+Service+-+Service+Definition"
                    }
                }
            ]
        }
    }
}