{
    "informationService": {
        "descriptionInformation": {
            "descriptionIdentification": {
                "title": "MET Eireann METAR in IWXXM",
                "edition": "1.0",
                "referenceDate": "2025-12-22"
            },
            "abbreviations": [
                {
                    "name": "AIRM",
                    "description": "ATM Information Reference Model"
                },
                {
                    "name": "AMQP",
                    "description": "Advanced Message Queuing Protocol"
                },
                {
                    "name": "ATC",
                    "description": "Air Traffic Control"
                },
                {
                    "name": "ATM",
                    "description": "Air Traffic Management"
                },
                {
                    "name": "EACP",
                    "description": "European Aviation Common PKI"
                },
                {
                    "name": "MET Eireann",
                    "description": "MET Eireann"
                },
                {
                    "name": "HTTP",
                    "description": "Hypertext Transfer Protocol"
                },
                {
                    "name": "ICAO",
                    "description": "International Civil Aviation Organization"
                },
                {
                    "name": "IER",
                    "description": "Information Exchange Requirement"
                },
                {
                    "name": "IR",
                    "description": "Implementation Rules"
                },
                {
                    "name": "ISRM",
                    "description": "Information Service Reference Model"
                },
                {
                    "name": "IWXXM",
                    "description": "ICAO Meteorological Information Exchange Model"
                },
                {
                    "name": "METAR",
                    "description": "Meteorological Aerodrome Report"
                },
                {
                    "name": "NWS",
                    "description": "National Weather Service"
                },
                {
                    "name": "OGC",
                    "description": "Open Geospatial Consortium"
                },
                {
                    "name": "PCP",
                    "description": "Pilot Common Project"
                },
                {
                    "name": "REQ",
                    "description": "Requirement"
                },
                {
                    "name": "WMO",
                    "description": "World Meteorological Organization"
                },
                {
                    "name": "SIGMET",
                    "description": "significant meteorological phenomena"
                },
                {
                    "name": "TAF",
                    "description": "Terminal Aerodrome Forecast"
                },
                {
                    "name": "AMO",
                    "description": "Aerodrome Meteorological Office\r\n"
                },
                {
                    "name": "AMS",
                    "description": "Aeronautical Meteorological Station\r\n"
                },
                {
                    "name": "EDR",
                    "description": "Environmental Data Retrieval\r\n"
                },
                {
                    "name": "MEP",
                    "description": "Message Exchange Pattern\r\n"
                },
                {
                    "name": "PANS-MET",
                    "description": "ICAO Procedures for Air Navigation Services - Meteorology\r\n"
                },
                {
                    "name": "TIYP",
                    "description": "Technical Infrastructure Yellow Profile\r\n"
                },
                {
                    "name": "TI",
                    "description": "Technical Infrastructure\r\n"
                }
            ]
        },
        "serviceIdentification": {
            "name": "MET Eireann METAR in IWXXM",
            "version": "1.0"
        },
        "serviceAbstract": "<p>The service provides the latest METAR and SPECI reports in IWXXM for Irish aerodromes in compliance with ICAO Annex 3. The retrieval of information will be done on a regular basis (subscription) via AMQP 1.0 whereby the message contains the whole IWXXM dataset. The other option to collect the data is via Request/Reply using OGC EDR API, where the IWXXM data is provided in replies, in a ZIP archive.</p>",
        "serviceProvider": {
            "providerType": [
                "REGULATED_METEOROLOGICAL_SERVICE_PROVIDER"
            ],
            "pointOfContact": [
                {
                    "name": "MET Eireann Aviation Services",
                    "contactInformation": [
                        {
                            "type": "EMAIL",
                            "address": "avops@met.ie"
                        },
                        {
                            "type": "PHONE",
                            "address": "+353 61 712950"
                        },
                        {
                            "type": "URL",
                            "address": "https://www.met.ie"
                        }
                    ],
                    "role": "Data Provider"
                }
            ],
            "provider": "MET Eireann",
            "providerDescription": "The Irish Meteorological Service"
        },
        "serviceCategorisation": {
            "serviceType": "SWIM_COMPLIANT",
            "businessActivityType": [
                "AERODROME_OPERATION",
                "AIRSPACE_ORGANISATION_AND_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",
                "PROVIDER_OF_DATA_SERVICES",
                "REGULATED_METEOROLOGICAL_SERVICE_PROVIDER"
            ],
            "informationCategory": [
                "METEOROLOGICAL_INFORMATION_EXCHANGE"
            ],
            "applicationMessageExchangePattern": [
                {
                    "name": "Request/Reply"
                },
                {
                    "name": "Publish/Subscribe with Push Mechanism"
                }
            ],
            "geospatialCategorisation": {
                "countryCode": [
                    "EI"
                ],
                "description": "The dataset is valid for Ireland"
            },
            "other": [
                {
                    "name": "Service Type: METEOROLOGICAL_FEATURE_ACCESS_SERVICE",
                    "value": "METEOROLOGICAL_FEATURE_ACCESS_SERVICE",
                    "categorisationScheme": {
                        "url": "http://reference.swim.aero/information-services/service-categories/CodeServiceType.html"
                    }
                },
                {
                    "name": "Service Type: METEOROLOGICAL_INFORMATION_SUBSCRIPTION_SERVICE",
                    "value": "METEOROLOGICAL_INFORMATION_SUBSCRIPTION_SERVICE",
                    "categorisationScheme": {
                        "url": "http://reference.swim.aero/information-services/service-categories/CodeServiceType.html"
                    }
                }
            ],
            "lifeCycle": [
                {
                    "lifeCycleStage": "PROSPECTIVE",
                    "from": "2025-12-22"
                }
            ]
        },
        "generalDescription": {
            "operationalEnvironment": {
                "operationalNeeds": [
                    {
                        "name": "Operational Needs",
                        "description": "<p>A <a href=\"https://swim-eurocontrol.atlassian.net/wiki/spaces/MSS/pages/60162182/IWXXM+METAR-SPECI+Subscription+and+Request+Service+-+Service+Definition#IWXXMMETAR-SPECISubscriptionandRequestService-ServiceDefinition-AppendixB:OperationalNeeds\">list of operational needs</a> that this service contributes to satisfying is available in Appendix B. This service satisfies these by offering meteorological information as regulated by Commission Implementing Regulation (EU) 2017/373 of 1 March 2017 and ICAO Annex 3. The scope of the meteorological information satisfies the EU Implementing Regulation 2021/116 - Common Project One.</p>"
                    },
                    {
                        "name": "Information Exchange Requirements",
                        "description": "<p>IER 1 - The information currently included in the METAR/SPECI reports as defined in Commission Implementing Regulation (EU) 2017/373, ICAO Annex 3 Amdt 82 and PANS-MET.</p>"
                    }
                ],
                "capabilities": [
                    {
                        "name": "Capabilities",
                        "description": "<p>The service provides high quality, up-to-date, trusted, regulated meteorological information in digital form for use by service consumers within the aviation domain.</p>"
                    }
                ]
            },
            "functionality": [
                {
                    "name": "Distribute Data",
                    "description": "<p>The service distributes the data according to the stored subscriptions and topics.</p>",
                    "realWorldEffect": "Information has been shared; the service consumer gets the requested data."
                },
                {
                    "name": "Request Data",
                    "description": "<p>The consumer is able to request the data using OGC EDR.</p>",
                    "realWorldEffect": "Information has been shared; the service consumer gets the requested data."
                },
                {
                    "name": "Subscribe to Data",
                    "description": "<p>The user is able to subscribe to data via AMQP by connecting to the predefined topics.</p>",
                    "realWorldEffect": "Subscription has been established, consumer will receive data matching the subscription."
                }
            ],
            "qualitiesOfService": {
                "performance": [
                    {
                        "name": "Time Behaviour",
                        "description": "<p>METAR/SPECI and SIGMET: Under normal operations 90% of messages will be delivered within 10 minutes after the issuing time.</p>"
                    },
                    {
                        "name": "Capacity",
                        "description": "<p>Subscriptions are managed with consideration of the capacity of the technical infrastructure. Each connection is rate and connection limited to avoid overload of the system.</p>"
                    }
                ],
                "reliability": [
                    {
                        "name": "Availability",
                        "description": "98% System Uptime"
                    },
                    {
                        "name": "Recoverability",
                        "description": "On switchover of the hot-standby HA cluster the status of the database and queues is preserved"
                    }
                ],
                "security": [
                    {
                        "name": "Integrity",
                        "description": "Integrity is protected by using TLS layer for all the service interface bindings. However the Message Security based on S/MIME 4.0 proposed in SWIM TI Yellow Profile 2.0 is not yet implemented."
                    },
                    {
                        "name": "Confidentiality",
                        "description": "Data delivery is only available for registered users, who need to present their username and password for access to the services using HTTP Authorization header with Basic scheme for HTTP based connections, and using SASL plain for AMQP connections. Users connecting to the public interfaces must present a valid EACP client certificate, which must be further whitelisted in the service based on the details of the Distinuished Name portions of the client certificate such as Common Name, Organisation, Email."
                    }
                ]
            },
            "accessAndUseConditions": [
                {
                    "name": "General Terms and Conditions of Business",
                    "type": "LEGAL_CONSTRAINT",
                    "description": "TBD"
                },
                {
                    "name": "Information Retainment",
                    "type": "SERVICE_CONSUMPTION_CONSTRAINT",
                    "description": "Meteorological information is retained for a period of at least 30 days from the date of issue. This relates to the information itself and not the request time of the user."
                },
                {
                    "name": "Subscription",
                    "type": "SERVICE_CONSUMPTION_CONSTRAINT",
                    "description": "To subscribe, customers need to contact avops@met.ie and request access to the service."
                },
                {
                    "name": "Authentication",
                    "type": "SECURITY_CONSTRAINT",
                    "description": "The service ensures client authentication in accordance with SWIM Technical Infrastructure (TI) Yellow Profile 2.0 requirement SWIM-TIYP-0042 by implementing username and password authentication using HTTP Authorization headers with Basic scheme for HTTPS based interfaces, and using SASL PLAIN for AMQP. Users connecting to the public interfaces must present a valid EACP client certificate, which must be further whitelisted in the service based on the details of the Distinuished Name portions of the client certificate such as Common Name, Organisation, Email. The service ensures server authentication in accordance with SWIM-TIYP-0042.</p>"
                },
                {
                    "name": "Authorisation",
                    "type": "SECURITY_CONSTRAINT",
                    "description": "The service ensures that satisfactory authorisation is put in place according to EUROCONTROL Specification for SWIM Technical Infrastructure (TI) Yellow Profile requirement SWIM-TIYP-0070."
                },
                {
                    "name": "Confidentiality",
                    "type": "SECURITY_CONSTRAINT",
                    "description": "The service ensures point-to-point confidentiality in accordance with EUROCONTROL Specification for SWIM Technical Infrastructure (TI) Yellow Profile 2.0 through the use of Transport Layer Security (TLS) 1.3. The communication is encrypted by TLS with a certificate issued by the EACP."
                },
                {
                    "name": "Integrity",
                    "type": "SECURITY_CONSTRAINT",
                    "description": "The service ensures point-to-point integrity in accordance with EUROCONTROL Specification for SWIM Technical Infrastructure (TI) Yellow Profile through the use of Transport Layer Security (TLS) 1.3."
                }
            ],
            "validation": [
                {
                    "type": "SELF_VALIDATION",
                    "description": {
                        "evidence": "Service tested by the provider."
                    }
                }
            ],
            "dateInOperation": "2025-12-31"
        },
        "informationDescription": {
            "filtering": {
                "capability": [
                    {
                        "name": "Filtering Capabilities OGC EDR",
                        "description": "The EDR implementation builds on MET3SG community MET SWIM OGC EDR GUIDANCE. Additionally it supports OGC EDR filtering machanisms: cube query using a bbox parameter, area query with a polygon specified in coords parameter, radius query." ,
                        "reference": {
                            "url": "https://swim-eurocontrol.atlassian.net/wiki/spaces/MSS/pages/630194181/MET+SWIM+OGC+EDR+Guidance"
                        }
                    },
                    {
                        "name": "Filtering Capabilities AMQP",
                        "description": "Simple filtering is achieved using the topic structure of the broker, which determines the type of data recieved. AMQP SQL-like syntax for filters applied to AMQP application properties can be also used by the service consumer to further filter the data received.",
                        "reference": {
                            "url": "https://swim-eurocontrol.atlassian.net/wiki/spaces/MSS/pages/638156804/AMQP+Message+Structure+in+MET-SWIM"
                        }
                    }
                ]
            },
            "sourceOfInformation": "The service provider ensures that the data offered within this service is created by MET Eireann, a REGULATED_METEOROLOGICAL_SERVICE_PROVIDER.",
            "informationDefinition": {
                "reference": [
                    {
                        "url": "https://airm.aero/developers/icao-wxxm-3.0.0-to-airm-1.0.0-index"
                    }
                ]
            }
        },
        "technicalDescription": {
            "serviceMonitoring": {
                "monitoringDescription": "For AMQP subscriptions, regular heartbeat messages are sent to weather.aviation.metar topic at approximately 60-second intervals. Arrival of the heartbeat message indicates that the main subsystems of the service are running."
            },
            "behaviour": [
                {
                    "name": "Typical Request/Reply Behaviour",
                    "description": "<p>The typical behavior is following:</p><ul><li>Client sends request to the OGC EDR interface</li><li>The service replies with the appropriate HTTP response</li><li>If the request for specific IWXXM data is made, the service returns a zip archive with one or more files containing IWXXM messages.</li></ul>",
                    "reference": {
                        "description": "OGC EDR",
                        "url": "https://ogcapi.ogc.org/edr/"
                    }
                },
                {
                    "name": "Typical Data Distribution Behaviour",
                    "description": "The service sends the data to subscribers when they are available and match their subscription using the AMQP protocol.",
                    "reference": {
                        "description": "AMQP Version 1.0",
                        "url": "https://docs.oasis-open.org/amqp/core/v1.0/amqp-core-complete-v1.0.pdf"
                    }
                },
                {
                    "name": "Typical Data Subscription Behaviour",
                    "description": "To subscribe to data, the consumer needs to contact the Service Provider and request the credentials. After registration, the consumer is provided the endpoints of both EDR and AMQP interfaces"
                }
            ]
        },
        "serviceInterface": [
            {
                "name": "OGC EDR Request Interface",
                "description": "Allows the service consumer to request the latest available METAR/SPECIs via OGC API - EDR.",
                "provisionSide": "PROVIDER_SIDE",
                "endpoints": [
                    {
                        "name": "EDR base endpoint",
                        "description": "This is the connection between the service provider and the customer via EDR. You need to contact the Met Eireann aviation customer service to get the credentials for the interface.",
                        "url": "https://swim.met.ie"
                    }
                ],
                "serviceInterfaceBinding": {
                    "name": "SWIM_TI_YP_2_0_WS_LIGHT",
                    "description": "The WS Light Interface Binding as detailed in the EUROCONTROL Specification for SWIM Technical Infrastructure Yellow Profile, edition 2.0.\r\n",
                    "reference": {
                        "description": "EUROCONTROL-SPEC-170 - EUROCONTROL Specification for SWIM Technical Infrastructure (TI) Yellow\r\n",
                        "url": "https://www.eurocontrol.int/sites/default/files/2025-07/eurocontrol-spec-swim-tiyp-ed-2-0.pdf"
                    }
                
                },
                "networkInterfaceBinding": {
                    "name": "SWIM_TI_YP_2_0_IPV4_UNICAST",
                    "description": "Service supports IPv4 unicast.",
                    "reference": {
                        "description": "EUROCONTROL-SPEC-170 - EUROCONTROL Specification for SWIM Technical Infrastructure (TI) Yellow",
                        "url": "https://www.eurocontrol.int/sites/default/files/2025-07/eurocontrol-spec-swim-tiyp-ed-2-0.pdf"
                    }
                },
                "operations": [
                    {
                        "name": "EDR operations",
                        "description": "OGC API - Environmental Data Retrieval Standard is used to implement the service operations.",
                        "idempotency": "IDEMPOTENT",
                        "messages": [
                            {
                                "name": "EDR Request",
                                "direction": "IN"
                            },
                            {
                                "name": "EDR Reply",
                                "direction": "OUT"
                            }
                        ]
                    }
                ],
                "messages": [
                    {
                        "name": "EDR Request",
                        "description": "Request message submitted to the EDR service containing query expressions for the EDR HTTP GET operation.",
                        "schema": {
                            "description": "The EDR requests for the METAR/SPECI data are based on the OGC EDR https://ogcapi.ogc.org/edr/ specifications and Eurocontrol MET SWIM OGC EDR Guidance.",
                            "url": "https://swim-eurocontrol.atlassian.net/wiki/spaces/MSS/pages/630194181/MET+SWIM+OGC+EDR+Guidance"
                        },
                        "isError": false
                    },
                    {
                        "name": "EDR Reply",
                        "description": "The message that is an output of the EDR service.",
                        "schema": {
                            "description": "The EDR replies for the METAR/SPECI data requests are based on the OGC EDR https://ogcapi.ogc.org/edr/ specifications and Eurocontrol MET SWIM OGC EDR Guidance.",
                            "url": "https://swim-eurocontrol.atlassian.net/wiki/spaces/MSS/pages/630194181/MET+SWIM+OGC+EDR+Guidance"
                        },
                        "isError": false
                    }
                ]
            },
            {
                "name": "AMQP Distribution Interface",
                "description": "Allows the service provider to distribute the latest available METAR/SPECIs, meeting the need of the service consumer that has subscribed for updates.",
                "provisionSide": "PROVIDER_SIDE",
                "endpoints": [
                    {
                        "name": "AMQP base endpoint",
                        "description": "The base endpoint for AMQP subscriptions, from which AMQP messages may be retrieved",
                        "url": "https://amqps.swim.met.ie"
                    }
                ],
                "serviceInterfaceBinding": {
                    "name": "SWIM_TI_YP_2_0_AMQP_MESSAGING",
                    "description": "The AMQP_MESSAGING Interface Binding as detailed in the EUROCONTROL Specification for SWIM Technical Infrastructure Yellow Profile, edition 2.0"
                },
                "networkInterfaceBinding": {
                    "name": "SWIM_TI_YP_2_0_IPV4_UNICAST",
                    "description": "Service supports IPv4 unicast",
                    "reference": {
                        "description": "EUROCONTROL-SPEC-170 - EUROCONTROL Specification for SWIM Technical Infrastructure (TI) Yellow",
                        "url": "https://www.eurocontrol.int/sites/default/files/2025-07/eurocontrol-spec-swim-tiyp-ed-2-0.pdf"
                    }
                },
                "operations": [
                    {
                        "name": "Publish",
                        "description": "The requested information is contained directly in the AMQP message",
                        "idempotency": "IDEMPOTENT",
                        "messages": [
                            {
                                "name": "AMQP Message",
                                "direction": "OUT"
                            }
                        ]
                    }
                ],
                "messages": [
                    {
                        "name": "AMQP Message",
                        "description": "The message that is an output of the service, containing the METAR/SPECI information",
                        "schema": {
                            "description": "The format of the AMQP Messages provided by the service is based on the Eurocontrol Guidance materials for AMQP Message Structure in MET-SWIM",
                            "url": "https://swim-eurocontrol.atlassian.net/wiki/spaces/MSS/pages/638156804/AMQP+Message+Structure+in+MET-SWIM"
                        },
                        "isError": false
                    }
                ]
            }
        ],
        "references": {
            "implementedStandard": [
                {
                    "title": "EUROCONTROL SWIM-TI Yellow Profile",
                    "standardType": "EUROCONTROL_SPECIFICATION_FOR_SWIM_TECHNICAL_INFRASTRUCTURE",
                    "conformanceStatement": "is compliant",
                    "version": "2.0"
                },
                {
                    "title": "EUROCONTROL SWIM Service Description",
                    "standardType": "EUROCONTROL_SPECIFICATION_FOR_SWIM_SERVICE_DESCRIPTION",
                    "conformanceStatement": "is compliant",
                    "version": "2.0",
                    "description": "Description of Service according to EUROCONTROL specifications"
                },
                {
                    "title": "Environmental Data Retrieval (EDR)",
                    "standardType": "EUROCONTROL_SPECIFICATION_FOR_SWIM_TECHNICAL_INFRASTRUCTURE",
                    "conformanceStatement": "is conformant",
                    "version": "1.0",
                    "description": "<p>Please see references to EDR website and specifications:&nbsp;<a href='https://ogcapi.ogc.org/edr/'>https://ogcapi.ogc.org/edr/</a></p>"
                },
                {
                    "title": "AMQP",
                    "standardType": "EUROCONTROL_SPECIFICATION_FOR_SWIM_TECHNICAL_INFRASTRUCTURE",
                    "conformanceStatement": "is conformant",
                    "version": "true",
                    "description": "Advanced Message Queuing Protocol"
                }
            ]
        }
    }
}
