{
    "informationService": {
        "descriptionInformation": {
            "descriptionIdentification": {
                "title": "Aeronautical Data Set Request Service",
                "edition": "1.0.0",
                "referenceDate": "2023-06-20"
            },
            "abbreviations": [
                {
                    "name": "AIP",
                    "description": "Aeronautical Information Publication"
                },
                {
                    "name": "AIRAC",
                    "description": "Aeronautical Information Regulation And Control"
                },
                {
                    "name": "AIS",
                    "description": "Aeronautical Information Services"
                },
                {
                    "name": "AIM",
                    "description": "Aeronautical Information Management"
                },
                {
                    "name": "DPS",
                    "description": "Data Product Specification"
                },
                {
                    "name": "ICAO",
                    "description": "International Civil Aviation Organisation"
                },
                {
                    "name": "IER",
                    "description": "Information Exchange Requirement"
                },
                {
                    "name": "PANS",
                    "description": "Procedures For Air Navigation Services"
                },
                {
                    "name": "SWIM",
                    "description": "System Wide Information Managemen"
                },
                {
                    "name": "TI",
                    "description": "Technical Infrastructure"
                },
                {
                    "name": "WS",
                    "description": "Web Service"
                },
                {
                    "name": "YP",
                    "description": "Yellow Profile"
                }
            ]
        },
        "serviceIdentification": {
            "name": "Aeronautical Data Set Request Service",
            "version": "1.0.0"
        },
        "serviceAbstract": "<p>The Aeronautical Data Set Request Service allows the service consumer to request a data set, based on a set of filters, from a data set store. The service is part of a series of services that supports the provision of digital data sets as defined by ICAO Annex 15.</p>",
        "serviceDefinitionProvider": {
            "providerType": [
                "AERONAUTICAL_INFORMATION_SERVICE_PROVIDER"
            ],
            "pointOfContact": [
                null
            ],
            "provider": "EUROCONTROL",
            "providerDescription": "<p>EUROCONTROL is an intergovernmental organisation with 42 Member and 2 Comprehensive Agreement States.</p>"
        },
        "serviceCategorisation": {
            "serviceType": "SWIM_DEFINITION",
            "businessActivityType": [
                "INFORMATION_MANAGEMENT"
            ],
            "intendedConsumer": [
                "AERONAUTICAL_INFORMATION_SERVICE_PROVIDER",
                "AIR_TRAFFIC_SERVICE_PROVIDER",
                "CIVIL_AIR_NAVIGATION_SERVICE_PROVIDER",
                "CIVIL_AIRSPACE_USER",
                "MILITARY_AIR_NAVIGATION_SERVICE_PROVIDER",
                "MILITARY_AIRSPACE_USER",
                "NETWORK_MANAGER",
                "PROVIDER_OF_DATA_SERVICES",
                "REGULATED_METEOROLOGICAL_SERVICE_PROVIDER"
            ],
            "informationCategory": [
                "AERONAUTICAL_INFORMATION_EXCHANGE"
            ],
            "applicationMessageExchangePattern": [
                {
                    "name": "SYNCHRONOUS_REQUEST_REPLY"
                }
            ],
            "other": [
                {
                    "name": "Service Type",
                    "value": "AERONAUTICAL_DATA_PRODUCT_ACCESS_SERVICE",
                    "categorisationScheme": {
                        "url": "https://reference.swim.aero/information-services/service-categories/CodeServiceType.html"
                    }
                }
            ],
            "geospatialCategorisation": {
                "description": "The geographical extent of the information in the data set shall be:\r\n- stated in the data product specification;\r\n- stated in the metadata concerning the data set series and data set; and\r\n- expressed in terms of airspace, aerodrome and state."
            }
        },
        "generalDescription": {
            "operationalEnvironment": {
                "operationalNeeds": [
                    {
                        "name": "Operational Needs",
                        "description": "ICAO Annex 15 details the aeronautical information products to be made available by Aeronautical Information Services. These include digital data sets. These are primarily to satisfy international requirements for the exchange of aeronautical information. The data sets can be used to populate a local database for use in applications."
                    },
                    {
                        "name": "Information Exchange Requirements",
                        "description": "IER1 - The content of the ICAO digital data sets as defined in PANS-AIM - Appendix 1 - Tables.IER2 - Metadata as outlined in the Minimal Metadata Requirements.IER3 - Customised digital data sets that are designed for specific purposes."
                    }
                ],
                "capabilities": [
                    {
                        "name": "Capabilities",
                        "description": "The service supports the discovery and retrieval of the aeronautical digital data sets as defined by ICAO Annex 15:- AIP data set;- Obstacle data set;- Terrain data set;- Aerodrome mapping data set;- Instrument flight procedure data setThe service supports the discovery and retrieval of customised digital data sets that are designed for specific purposes."
                    }
                ]
            },
            "functionality": [
                {
                    "name": "Request data set series list",
                    "description": "The service consumer shall be able to request a list of data set series that match the required criteria including type, geographical scope and title.",
                    "realWorldEffect": "The service consumer receives the list of matching data set series."
                },
                {
                    "name": "Request data set list",
                    "description": "The service consumer shall be able to request a list of data sets that match the required criteria including data set series, period of validity, geographical scope, limitations on use and title.",
                    "realWorldEffect": "The service consumer receives the list of matching data sets."
                },
                {
                    "name": "Request data set",
                    "description": "The service consumer shall be able to request a data set.",
                    "realWorldEffect": "The service consumer receives the data set."
                },
                {
                    "name": "Request data product specification",
                    "description": "The service consumer shall be able to request a data product specification.",
                    "realWorldEffect": "The service consumer receives the data product specification."
                }
            ],
            "qualitiesOfService": {
                "performance": [
                    {
                        "name": "Capacity",
                        "description": "The service shall achieve a quality that is sufficient to ensure the service is fit for purpose."
                    },
                    {
                        "name": "Response Time",
                        "description": "The service shall achieve a quality that is sufficient to ensure the service is fit for purpose."
                    }
                ],
                "reliability": [
                    {
                        "name": "Availability",
                        "description": "The service shall achieve a quality that is sufficient to ensure the service is fit for purpose."
                    },
                    {
                        "name": "Recoverability",
                        "description": "The service shall achieve a quality that is sufficient to ensure the service is fit for purpose."
                    }
                ],
                "security": [
                    {
                        "name": "Confidentiality",
                        "description": "The service shall ensure confidentiality by using SWIM Technical Infrastructure (TI) Yellow Profile bindings."
                    },
                    {
                        "name": "Integrity",
                        "description": "The service shall ensure integrity by using SWIM Technical Infrastructure (TI) Yellow Profile bindings."
                    }
                ]
            },
            "qualityOfData": [
                {
                    "name": "Quality of Data",
                    "description": "The data contained in the digital data set shall meet the data quality requirements outlined in ICAO Annex 15.The data contained in the digital data set shall meet the data quality requirements outlined in the PANS-AIM Data Catalogue.If the data quality requirements are not met, the data product specification shall record which requirements are not met."
                }
            ],
            "accessAndUseConditions": [
                {
                    "name": "Business Policy",
                    "type": "SERVICE_POLICY",
                    "description": "Billing functions should be handled by another service. It is not the intention of the service to support billing functions."
                },
                {
                    "name": "Authentication",
                    "type": "SECURITY_CONSTRAINT",
                    "description": "The service may offer unauthenticated/public use.If the use is authenticated, the service shall ensure consumer authentication in accordance with the EUROCONTROL Specification for SWIM Technical Infrastructure (TI) Yellow Profile through the use of a X.509 certificate or the use of a username/password (SASL).The service shall ensure provider authentication in accordance with EUROCONTROL Specification for SWIM Technical Infrastructure (TI) Yellow Profile through the use of a X.509 certificate."
                },
                {
                    "name": "Authorisation",
                    "type": "SECURITY_CONSTRAINT",
                    "description": "The service shall ensure 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 shall ensure point-to-point confidentiality in accordance with EUROCONTROL Specification for SWIM Technical Infrastructure (TI) Yellow Profile through the use of Transport Layer Security (TLS) 1.2 or above."
                },
                {
                    "name": "Integrity",
                    "type": "SECURITY_CONSTRAINT",
                    "description": "The service shall ensure 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.2 or above."
                }
            ],
            "validation": [
                {
                    "type": "USER_VALIDATION",
                    "description": {
                        "validationSteps": "The service was prototyped in 2021.",
                        "validationResults": "The service operations and information definition were tested. However, the quality of service was not tested.",
                        "evidence": "https://ext.eurocontrol.int/aixm_confluence/display/ADS/EUROCONTROL+prototype"
                    }
                }
            ]
        },
        "informationDescription": {
            "filtering": {
                "capability": [
                    {
                        "name": "Filter Encoding",
                        "description": "The service shall support filtering based on logical, geographical and temporal operators including data set series, period of validity, geographical scope, limitations on use and title."
                    }
                ]
            },
            "sourceOfInformation": "The aeronautical data offered by the service shall be received from the appropriate authorised originating sources, e.g.,- AIRPORT_OPERATOR- CIVIL_AIR_NAVIGATION_SERVICE_PROVIDER- MILITARY_AIR_NAVIGATION_SERVICE_PROVIDER- COMMUNICATION_NAVIGATION_AND_SURVEILLANCE_SERVICE_PROVIDER- Government Agencies- Owners of ObstaclesThe data received from the originating sources shall only be modified according to the regular AIS processes.",
            "informationDefinition": [
                {
                    "name": "Aeronautical Data Set Information Definition",
                    "definition": "https://ext.eurocontrol.int/swim_confluence/display/ASW/Aeronautical+Data+Set+Information+Definition",
                    "airmCorrespondence": "airm:"
                }
            ]
        },
        "technicalDescription": {
            "behaviour": [
                {
                    "name": "Typical Behaviour",
                    "description": "The service behaviour shall be in accordance with the patterns detailed in the Message Exchange Patterns: Identification Guidelines.A typical sequence is:- The service consumer requests data set series based on a number of selection criteria, and receives back a list containing zero, one or more data set series.- The service consumer analyses that list to identify the data set series of interest.- The service consumer requests data sets from the selected data set series, possibly supplying additional selection criteria, and receives back a list containing zero, one or more data sets.- The service consumer analyses that list to identify the data set(s) of interest.- For each data set of interest-- The service consumer requests the file information of the selected data set, and receives back a list of one or more files.-- For each file, the service consumer retrieves the file, and receives back the file content."
                },
                {
                    "name": "Exception Handling",
                    "description": "The service shall make use of the standard HTTP status codes."
                }
            ]
        },
        "serviceInterface": [
            {
                "name": "SearchAndRetrieve",
                "description": "The interface groups the operations that allows querying metadata and retrieving files.",
                "provisionSide": "PROVIDER_SIDE",
                "serviceInterfaceBinding": {
                    "name": "WS_LIGHT 1.1",
                    "description": "EUROCONTROL Specification for SWIM Technical Infrastructure (TI) Yellow Profile"
                },
                "networkInterfaceBinding": {
                    "name": "Network Interface Binding",
                    "description": "The service shall use the network bindings of the SWIM TIYP."
                },
                "operations": [
                    {
                        "name": "queryDataSets",
                        "description": "The operation accepts criteria about data sets and returns a list with the metadata about the corresponding data sets.",
                        "idempotency": "IDEMPOTENT",
                        "messages": [
                            {
                                "name": "QueryDataSetsRequest",
                                "direction": "IN"
                            },
                            {
                                "name": "QueryDataSetsReply",
                                "direction": "OUT"
                            }
                        ]
                    },
                    {
                        "name": "queryDataSetSeries",
                        "description": "The operation accepts criteria about data set series and returns a list with the metadata about the corresponding data set series.",
                        "idempotency": "IDEMPOTENT",
                        "messages": [
                            {
                                "name": "QueryDataSetSeriesRequest",
                                "direction": "IN"
                            },
                            {
                                "name": "QueryDataSetSeriesReply",
                                "direction": "OUT"
                            }
                        ]
                    },
                    {
                        "name": "queryDataSetFiles",
                        "description": "The operation accepts the identifier of a data set and returns the list of file objects for that data set.",
                        "idempotency": "IDEMPOTENT",
                        "messages": [
                            {
                                "name": "QueryDataSetFilesRequest ",
                                "direction": "IN"
                            },
                            {
                                "name": "QueryDataSetFilesReply",
                                "direction": "OUT"
                            }
                        ]
                    },
                    {
                        "name": "queryDataSetSeriesDpsFiles",
                        "description": "The operation accepts the identifier of a data set series and returns the data product specification for that data set.",
                        "idempotency": "IDEMPOTENT",
                        "messages": [
                            {
                                "name": "QueryDataSetSeriesDpsFilesRequest ",
                                "direction": "IN"
                            },
                            {
                                "name": "QueryDataSetSeriesDpsFilesReply",
                                "direction": "OUT"
                            }
                        ]
                    },
                    {
                        "name": "retrieveDataSetFile",
                        "description": "The operation accepts a request for a data set file and returns the corresponding content of the file",
                        "idempotency": "IDEMPOTENT",
                        "messages": [
                            {
                                "name": "RetrieveDataSetFileRequest",
                                "direction": "IN"
                            },
                            {
                                "name": "RetrieveDataSetFileReply",
                                "direction": "OUT"
                            }
                        ]
                    },
                    {
                        "name": "retrieveDPSFile",
                        "description": "The operation accepts a request for a data product specification file and returns the corresponding content of the file",
                        "idempotency": "IDEMPOTENT",
                        "messages": [
                            {
                                "name": "RetrieveDPSFileRequest",
                                "direction": "IN"
                            },
                            {
                                "name": "RetrieveDPSFileReply",
                                "direction": "OUT"
                            }
                        ]
                    }
                ],
                "messages": [
                    {
                        "name": "Service Messages",
                        "description": "Please check the Service Messages section at: https://ext.eurocontrol.int/swim_confluence/display/ASW/Aeronautical+Data+Set+Request+Service+-+Service+Definition#AeronauticalDataSetRequestServiceServiceDefinition-ServiceMessages",
                        "isError": false
                    }
                ]
            }
        ],
        "references": {
            "serviceDocument": [
                {
                    "documentType": "",
                    "title": "Publish/Subscribe Push MEP: Implementation Guidance",
                    "version": "JULY 2nd, 2019",
                    "description": "Guidelines on implementing the publish subscribe message exchange patterns",
                    "reference": {
                        "description": "Publish/Subscribe Push MEP: Implementation Guidance",
                        "url": "http://reference.swim.aero/technical-infrastructure/guidance-for-pub-sub-push-implementation.htm"
                    }
                }
            ],
            "implementedStandard": [
                {
                    "title": "Implemented Standards",
                    "standardType": "EUROCONTROL_SPECIFICATION_FOR_SWIM_INFORMATION_DEFINITION",
                    "conformanceStatement": "This field is left empty.",
                    "version": "1.0",
                    "description": "This field is left empty."
                }
            ]
        }
    }
}