{
  "informationServiceDescription": {
    "title": "DK Danish METAR/SPECI, TAF and SIGMET (IWXXM) Subscription and Request Service",
    "referenceDate": "2026-04-14",
    "edition": "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>",
    "serviceIdentification": {
      "name": "DK Danish METAR/SPECI, TAF and SIGMET (IWXXM) Subscription and Request Service",
      "version": "1.1"
    },
    "serviceProvider": {
      "name": "Naviair",
      "description": "<p>Naviair is the Danish ANSP.</p><p><a><strong>Naviair’s core activities</strong></a></p><p>Air Traffic Management (ATM) in Danish airspace</p><p>• From the ATCC in Copenhagen, we provide area control services (En route) and approach control service to Copenhagen Airport.</p><p>• From the tower in Copenhagen, we provide aerodrome control service.</p><p>• 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>• 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>• From the ATCC in Copenhagen, we provide Flight Information Services and briefing service.</p><p>• From the ATCC in Nuuk/Greenland, we provide Flight Information Services and briefing service.</p><p>• From the tower on Vágar in the Faroe Islands, we provide Aerodrome Flight Information Service.</p><p>&nbsp;</p><p>Technical support and maintenance</p><p>• 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>• From our technical bases in Copenhagen, Billund and Aalborg, we sell technical support and maintenance to aviation customers.</p>",
      "type": [
        "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",
          "role": "General inquiries about the services and for requesting access to the services",
          "contactInformation": [
            {
              "type": "EMAIL",
              "address": "naviswim@naviair.dk"
            }
          ]
        }
      ]
    },
    "serviceCategorisation": {
      "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"
        ],
        "description": "Data valid for Europe,Denmark - locations within Kobenhavn FIR (EKDK) and EKRN.",
        "region": [
          "EUR"
        ]
      },
      "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"
        }
      ],
      "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"
        }
      ],
      "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."
          }
        ]
      },
      "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",
      "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."
          }
        }
      ],
      "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"
        }
      ]
    },
    "informationDescription": {
      "informationDefinition": {
        "reference": [
          {
            "url": "https://airm.aero/developers/semantic-correspondences"
          },
          {
            "description": "Service Information Definition",
            "url": "https://ext.eurocontrol.int/swim_confluence/display/SWIM/Example+service+description+-+information+elements"
          },
          {
            "description": "ICAO Meteorological Information Exchange Model",
            "url": "https://schemas.wmo.int/iwxxm/2023-1/"
          }
        ]
      },
      "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."
    },
    "technicalDescription": {
      "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"
        }
      ],
      "serviceMonitoring": {
        "monitoringDescription": "Not available. Service is monitored by Naviair."
      },
      "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"
          }
        }
      ]
    },
    "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",
          "version": "RFC7807",
          "description": "Describes the ProblemDetails format for describing errors in HTTP API responses",
          "standardType": "SERVICE_STANDARD",
          "conformanceStatement": "Fully conformant",
          "reference": {
            "url": "https://datatracker.ietf.org/doc/html/rfc7807"
          }
        },
        {
          "title": "AMQP",
          "version": "1.0",
          "description": "Advanced Message Queuing Protocol",
          "standardType": "EUROCONTROL_SPECIFICATION_FOR_SWIM_TECHNICAL_INFRASTRUCTURE",
          "conformanceStatement": "Fully conformant",
          "reference": {
            "url": "https://docs.oasis-open.org/amqp/core/v1.0/os/amqp-core-overview-v1.0-os.html"
          }
        },
        {
          "title": "OpenAPI",
          "version": "3",
          "description": "OpenAPI Specification",
          "standardType": "SERVICE_STANDARD",
          "conformanceStatement": "Fully conformant",
          "reference": {
            "url": "https://swagger.io/specification/v3/"
          }
        },
        {
          "title": "OGC API EDR",
          "version": "1.1",
          "description": "OGC API - Environmental Data Retrieval Standard",
          "standardType": "SERVICE_STANDARD",
          "conformanceStatement": "Fully conformant, except filtering is limited to locationIds, and there is no 'instances' endpoint.",
          "reference": {
            "url": "http://www.opengis.net/doc/IS/ogcapi-edr-1/1.1"
          }
        },
        {
          "title": "IWXXM METAR-SPECI Subscription and Request Service - Service Definition",
          "version": "00.00.05",
          "description": "Service definition for the IWXXM METAR-SPECI Subscription and Request Service",
          "standardType": "EUROCONTROL_SPECIFICATION_FOR_SWIM_SERVICE_DESCRIPTION",
          "conformanceStatement": "Fully conformant",
          "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",
          "version": "00.00.04",
          "description": "Service definition for the IWXXM TAF Subscription and Request Service",
          "standardType": "EUROCONTROL_SPECIFICATION_FOR_SWIM_SERVICE_DESCRIPTION",
          "conformanceStatement": "Fully conformant",
          "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",
          "version": "00.00.06",
          "description": "Service definition for the IWXXM SIGMET Subscription and Request Service",
          "standardType": "EUROCONTROL_SPECIFICATION_FOR_SWIM_SERVICE_DESCRIPTION",
          "conformanceStatement": "Fully conformant",
          "reference": {
            "url": "https://swim-eurocontrol.atlassian.net/wiki/spaces/MSS/pages/60162086/IWXXM+SIGMET+Subscription+and+Request+Service+-+Service+Definition"
          }
        }
      ]
    },
    "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."
        }
      }
    ]
  }
}
