{
    "informationService": {
        "descriptionInformation": {
            "descriptionIdentification": {
                "title": "Austrian TAF in IWXXM",
                "edition": "1.0",
                "referenceDate": "2025-12-19"
            },
            "abbreviations": [
                {
                    "name": "ACG",
                    "description": "<p>Austro Control GesmbH</p>\r\n"
                },
                {
                    "name": "AIRM",
                    "description": "ATM Information Reference Model"
                },
                {
                    "name": "AMQP",
                    "description": "Advanced Message Queuing Protocol"
                },
                {
                    "name": "AMS",
                    "description": "Aeronautical Meteorological Station\r\n"
                },
                {
                    "name": "ATC",
                    "description": "Air Traffic Control"
                },
                {
                    "name": "ATM",
                    "description": "Air Traffic Management"
                },
                {
                    "name": "EACP",
                    "description": "European Aviation Common PKI"
                },
                {
                    "name": "HTTP",
                    "description": "Hypertext Transfer Protocol"
                },
                {
                    "name": "EDR",
                    "description": "Environmental Data Retrieval\r\n"
                },
                {
                    "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": "MEP",
                    "description": "Message Exchange Pattern\r\n"
                },
                {
                    "name": "METAR",
                    "description": "<p>Meteorological Aerodrome Report</p>\r\n"
                },
                {
                    "name": "NWS",
                    "description": "National Weather Service"
                },
                {
                    "name": "OGC",
                    "description": "Open Geospatial Consortium"
                },
                {
                    "name": "PCP",
                    "description": "Pilot Common Project"
                },
                {
                    "name": "PANS-MET",
                    "description": "ICAO Procedures for Air Navigation Services - Meteorology\r\n"
                },
                {
                    "name": "REQ",
                    "description": "Requirement"
                },
                {
                    "name": "SIGMET",
                    "description": "significant meteorological phenomena"
                },
                {
                    "name": "TAF",
                    "description": "Terminal Aerodrome Forecast"
                },
                {
                    "name": "AMO",
                    "description": "Aerodrome Meteorological Office\r\n"
                },
                {
                    "name": "WMO",
                    "description": "World Meteorological Organization"
                },
                {
                    "name": "TI",
                    "description": "Technical Infrastructure\r\n"
                },
                {
                    "name": "TIYP",
                    "description": "Technical Infrastructure Yellow Profile\r\n"
                }
            ]
        },
        "serviceIdentification": {
            "name": "Austrian TAF in IWXXM",
            "version": "1.0"
        },
        "serviceAbstract": "<p>The service provides the latest TAF in IWXXM for Austrian aerodromes, listed in the EUR Air Navigation Plan Volume II, MET Table II-2, in compliance with ICAO Annex 3.</p><p>The data can be retrieved either by</p><ul><li>Subscription (Publish/Subscribe Service) via AMQP 1.0 to receive the whole dataset and/or</li><li>Using the Request/Reply Service via the OGC EDR API (IWXXM data will be provided in a compressed ZIP-file).</li></ul>",
        "serviceProvider": {
            "abbreviation": "ACG",
            "providerType": [
                "REGULATED_METEOROLOGICAL_SERVICE_PROVIDER"
            ],
            "pointOfContact": [
                {
                    "name": "ACG SWIM MET Service",
                    "contactInformation": [
                        {
                            "type": "EMAIL",
                            "address": "met.swim@austrocontrol.at"
                        },
                        {
                            "type": "PHONE",
                            "address": "TBD"
                        },
                        {
                            "type": "URL",
                            "address": "https://www.austrocontrol.at/"
                        }
                    ],
                    "role": "Data Provider"
                }
            ],
            "provider": "Austro Control",
            "providerDescription": "<p>The Austrian air navigation service provider</p>"
        },
        "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": [
                    "LO"
                ],
                "region": [
                    "EUR"
                ],
                "description": "The dataset is valid for Austria"
            },
            "other": [
                {
                    "name": "Service Type: METEOROLOGICAL_FEATURE_ACCESS_SERVICE",
                    "value": "METEOROLOGICAL_FEATURE_ACCESS_SERVICE",
                    "categorisationScheme": {
                        "description": "<p>Service Type</p>\r\n",
                        "url": "http://reference.swim.aero/information-services/service-categories/CodeServiceType.html"
                    }
                },
                {
                    "name": "Service Type: METEOROLOGICAL_INFORMATION_SUBSCRIPTION_SERVICE",
                    "value": "METEOROLOGICAL_INFORMATION_SUBSCRIPTION_SERVICE",
                    "categorisationScheme": {
                        "description": "<p>Service Type</p>\r\n",
                        "url": "http://reference.swim.aero/information-services/service-categories/CodeServiceType.html"
                    }
                }
            ],
            "lifeCycle": [
                {
                    "lifeCycleStage": "PROSPECTIVE",
                    "from": "2025-12-31"
                }
            ]
        },
        "generalDescription": {
            "operationalEnvironment": {
                "operationalNeeds": [
                    {
                        "name": "Operational Needs",
                        "description": "<p>A list of operational needs that this service contributes to satisfying is available in IWXXM TAF Service Definition, Appendix B (to be found on the <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\">SWIM WIKI</a>). This service satisfies these by offering meteorological information as regulated by the Commission Implementing Regulation (EU) 2017/373 of 1 March 2017 and ICAO Annex 3 and ICAO PANS MET (Doc 10157). 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 TAF reports as defined in Commission Implementing Regulation (EU) 2017/373, ICAO Annex 3 Amdt 82 and PANS-MET (ICAO Doc 10157).</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 data from the service by using an OGC EDR - API endpoint.</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 1.0 messages 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>TAF: 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": "<p>The technical infrastructure is highly available and maintained - The system has intended downtimes for seurity patches of OS and software of approximately 5 minutes/month</p>"
                    },
                    {
                        "name": "Recoverability",
                        "description": "<p>There exists a fallback system which ensures recovery after incidents.</p>"
                    }
                ],
                "security": [
                    {
                        "name": "Integrity",
                        "description": "<p>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). However the Message Security based on S/MIME 4.0 proposed in SWIM TI Yellow Profile 2.0 is not yet implemented.</p>"
                    },
                    {
                        "name": "Confidentiality",
                        "description": "<p>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.</p>"
                    }
                ]
            },
            "accessAndUseConditions": [
                {
                    "name": "General Terms and Conditions of Business",
                    "type": "LEGAL_CONSTRAINT",
                    "description": "<p>Terms and Conditions will be defined and made available.</p>"
                },
                {
                    "name": "Information Retainment",
                    "type": "SERVICE_CONSUMPTION_CONSTRAINT",
                    "description": "<p>In accordance with ICAO ANNEX 3, 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 time at which it was requested by the customer.</p>"
                },
                {
                    "name": "Subscription",
                    "type": "SERVICE_CONSUMPTION_CONSTRAINT",
                    "description": "<p>To subscribe, customers need to contact met.swim@austrocontrol.at and request access to the service.</p>"
                },
                {
                    "name": "Authentication and authorization",
                    "type": "SECURITY_CONSTRAINT",
                    "description": "<p>Access is limited by policy to users within the Aviation domain. 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.</p><p>The service ensures provider authentication in accordance with SWIM-TIYP-0042.</p><p>&nbsp;</p><p>&nbsp;</p>"
                },
                {
                    "name": "Confidentiality",
                    "type": "SECURITY_CONSTRAINT",
                    "description": "<p>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.</p>"
                },
                {
                    "name": "Integrity",
                    "type": "SECURITY_CONSTRAINT",
                    "description": "<p>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).&nbsp;However the Message Security based on S/MIME 4.0 proposed in SWIM TI Yellow Profile 2.0 is not yet implemented.</p>"
                }
            ],
            "validation": [
                {
                    "type": "SELF_VALIDATION",
                    "description": {
                        "evidence": "Service tested by the provider."
                    }
                }
            ],
            "dateInOperation": "2025-12-31"
        },
        "informationDescription": {
            "filtering": {
                "capability": [
                    {
                        "name": "Filtering Capabilities OGC EDR",
                        "description": "<p>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.</p>",
                        "reference": {
                            "description": "<p>Information to be found here:</p>\r\n",
                            "url": "https://swim-eurocontrol.atlassian.net/wiki/spaces/MSS/pages/630194181/MET+SWIM+OGC+EDR+Guidance"
                        }
                    },
                    {
                        "name": "Filtering Capabilities AMQP",
                        "description": "<p>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.</p>",
                        "reference": {
                            "description": "<p>Information to be found here:</p>\r\n",
                            "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 Austro Control, a REGULATED_METEOROLOGICAL_SERVICE_PROVIDER.",
            "informationDefinition": {
                "reference": [
                    {
                        "url": "https://airm.aero/developers/icao-wxxm-3.0.0-to-airm-1.0.0-index",
                        "description": "<p>AIRM</p>\r\n"
                    }
                ]
            }
        },
        "technicalDescription": {
            "serviceMonitoring": {
                "monitoringDescription": "<p>For AMQP subscriptions, regular heartbeat messages are sent to weather.aviation.TAF topic at approximately 60-second intervals. Arrival of the heartbeat message indicates that the main subsystems of the service are running.</p>\r\n\r\n<p>The ACG IT components are montitored by 24/7 maintanance</p>\r\n"
            },
            "behaviour": [
                {
                    "name": "Typical Request/Reply Behaviour",
                    "description": "<p>The typical behavior is following:</p><ul><li>The client sends a 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": "<p>More information on OGC EDR to be found here:</p>\r\n\r\n<p>&nbsp;</p>\r\n",
                        "url": "https://ogcapi.ogc.org/edr/"
                    }
                },
                {
                    "name": "Typical Data Distribution Behaviour",
                    "description": "<p>The service sends the data to subscribers when they are available and match their subscription using the AMQP protocol.</p>",
                    "reference": {
                        "description": "<p>More information on AMQP Version 1.0 to be found here:</p>\r\n\r\n<p>&nbsp;</p>\r\n",
                        "url": "https://docs.oasis-open.org/amqp/core/v1.0/amqp-core-complete-v1.0.pdf"
                    }
                },
                {
                    "name": "Typical Data Subscription Behaviour",
                    "description": "<p>For subscribing to data the consumer needs to contact the Service Provider and needs to request the credentials. After registration, the consumer is provided the endpoints both EDR and AMQP interfaces.</p>"
                }
            ]
        },
        "serviceInterface": [
            {
                "name": "OGC EDR Request Interface",
                "description": "<p>Allows the service consumer to request the latest available TAFs via OGC API - EDR.</p>",
                "provisionSide": "PROVIDER_SIDE",
                "endpoints": [
                    {
                        "name": "EDR base endpoint",
                        "description": "<p>This is the connection between the service provider and the customer via EDR. You need to contact&nbsp;<a href=\"mailto:met.swim@austrocontrol.at\">met.swim@austrocontrol.at</a> for getting the credentials and details on how to use the interface.</p>",
                        "url": "https://met.swim.austrocontrol.at"
                    }
                ],
                "serviceInterfaceBinding": {
                    "reference": {
                        "description": "<p>EUROCONTROL-SPEC-170 - EUROCONTROL Specification for SWIM Technical Infrastructure (TI) Yellow</p>\r\n\r\n<p>&nbsp;</p>\r\n",
                        "url": "https://www.eurocontrol.int/sites/default/files/2025-07/eurocontrol-spec-swim-tiyp-ed-2-0.pdf"
                    },
                    "name": "SWIM_TI_YP_2_0_WS_LIGHT",
                    "description": "<p>The WS Light Interface Binding as detailed in the EUROCONTROL Specification for SWIM Technical Infrastructure Yellow Profile, edition 2.0.</p>\r\n"
                },
                "networkInterfaceBinding": {
                    "reference": {
                        "description": "<p>EUROCONTROL-SPEC-170 - EUROCONTROL Specification for SWIM Technical Infrastructure (TI) Yellow</p>\r\n\r\n<p>&nbsp;</p>\r\n",
                        "url": "https://www.eurocontrol.int/sites/default/files/2025-07/eurocontrol-spec-swim-tiyp-ed-2-0.pdf"
                    },
                    "name": "SWIM_TI_YP_2_0_IPV4_UNICAST",
                    "description": "<p>Service supports IPv4 unicast.</p>\r\n"
                },
                "operations": [
                    {
                        "name": "EDR operations",
                        "description": "<p>OGC API - Environmental Data Retrieval Standard is used to implement the service operations.</p>",
                        "idempotency": "IDEMPOTENT",
                        "messages": [
                            {
                                "name": "EDR Request",
                                "direction": "IN"
                            },
                            {
                                "name": "EDR Reply",
                                "direction": "OUT"
                            }
                        ]
                    }
                ],
                "messages": [
                    {
                        "name": "EDR Request",
                        "description": "<p>Request message submitted to the EDR service containing query expressions for the EDR HTTP GET operation.</p>",
                        "schema": {
                            "description": "<p>The EDR requests for the TAF data are based on the OGC EDR&nbsp;<a href=\"https://ogcapi.ogc.org/edr/\">https://ogcapi.ogc.org/edr/</a>&nbsp;specifications and Eurocontrol MET SWIM OGC EDR Guidance.</p>\r\n\r\n<p>&nbsp;</p>\r\n",
                            "url": "https://swim-eurocontrol.atlassian.net/wiki/spaces/MSS/pages/630194181/MET+SWIM+OGC+EDR+Guidance"
                        },
                        "isError": false
                    },
                    {
                        "name": "EDR Reply",
                        "description": "<p>The message that is an output of the EDR service.</p>",
                        "schema": {
                            "description": "<p>The EDR replies for the TAF data requests are based on the OGC EDR&nbsp;<a href=\"https://ogcapi.ogc.org/edr/\">https://ogcapi.ogc.org/edr/</a>&nbsp;specifications and Eurocontrol MET SWIM OGC EDR Guidance.</p>\r\n\r\n<p>&nbsp;</p>\r\n",
                            "url": "https://swim-eurocontrol.atlassian.net/wiki/spaces/MSS/pages/630194181/MET+SWIM+OGC+EDR+Guidance"
                        },
                        "isError": false
                    }
                ],
                "messageExchangePattern": "SYNCHRONOUS_REQUEST_RESPONSE"
            },
            {
                "name": "AMQP Distribution Interface",
                "description": "<p>Allows the service provider to distribute the latest available TAFs, meeting the need of the service consumer that has subscribed for updates.</p>",
                "provisionSide": "PROVIDER_SIDE",
                "endpoints": [
                    {
                        "name": "AMQP base endpoint",
                        "description": "<p>The base endpoint for AMQP subscriptions, from which AMQP messages may be retrieved</p>",
                        "url": "amqps://met.swim.austrocontrol.at:5671"
                    }
                ],
                "serviceInterfaceBinding": {
                    "name": "SWIM_TI_YP_2_0_AMQP_MESSAGING",
                    "description": "<p>The AMQP_MESSAGING Interface Binding as detailed in the EUROCONTROL Specification for SWIM Technical Infrastructure Yellow Profile, edition 2.0</p>\r\n"
                },
                "networkInterfaceBinding": {
                    "reference": {
                        "description": "<p>EUROCONTROL-SPEC-170 - EUROCONTROL Specification for SWIM Technical Infrastructure (TI) Yellow</p>\r\n",
                        "url": "https://www.eurocontrol.int/sites/default/files/2025-07/eurocontrol-spec-swim-tiyp-ed-2-0.pdf"
                    },
                    "name": "SWIM_TI_YP_2_0_IPV4_UNICAST",
                    "description": "<p>Service supports IPv4 unicast</p>\r\n"
                },
                "operations": [
                    {
                        "name": "Publish",
                        "description": "<p>The requested information is contained directly in the AMQP message</p>",
                        "idempotency": "IDEMPOTENT",
                        "messages": [
                            {
                                "name": "AMQP Message",
                                "direction": "OUT"
                            }
                        ]
                    }
                ],
                "messages": [
                    {
                        "name": "AMQP Message",
                        "description": "<p>The message that is an output of the service, containing the TAF information</p>",
                        "schema": {
                            "description": "<p>The format of the AMQP Messages provided by the service is based on the Eurocontrol Guidance materials for AMQP Message Structure in MET-SWIM.</p>\r\n\r\n<p>&nbsp;</p>\r\n",
                            "url": "https://swim-eurocontrol.atlassian.net/wiki/spaces/MSS/pages/638156804/AMQP+Message+Structure+in+MET-SWIM"
                        },
                        "isError": false
                    }
                ],
                "messageExchangePattern": "FIRE_AND_FORGET"
            }
        ],
        "references": {
            "implementedStandard": [
                {
                    "title": "EUROCONTROL SWIM-TI Yellow Profile",
                    "standardType": "EUROCONTROL_SPECIFICATION_FOR_SWIM_TECHNICAL_INFRASTRUCTURE",
                    "conformanceStatement": "is compliant",
                    "version": "2.0",
                    "description": "<p>EUROCONTROL SWIM-TI Yellow Profile</p>"
                },
                {
                    "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": "Please see references to EDR website and specifications:&nbsp; https://ogcapi.ogc.org/edr/"
                },
                {
                    "title": "AMQP",
                    "standardType": "EUROCONTROL_SPECIFICATION_FOR_SWIM_TECHNICAL_INFRASTRUCTURE",
                    "conformanceStatement": "is conformant",
                    "version": "true",
                    "description": "Advanced Message Queuing Protocol"
                }
            ]
        }
    }
}