{
    "version":"0.0.1",
    "id":"filter-attribute-by-list",
    "use_case":"hydrography90m",
    "title":"Filter attribute by list",
    "description":"Filter...",
    "jobControlOptions":[
        "sync-execute",
        "async-execute"
    ],
    "keywords":[
        "subcatchment",
        "GeoFRESH",
        "hydrography90m"
    ],
    "links":[
        {
            "type":"text/html",
            "rel":"about",
            "title":"GeoFRESH website",
            "href":"https://geofresh.org/",
            "hreflang":"en-US"
        },
        {
            "type":"text/html",
            "rel":"about",
            "title":"On Subcatchment Ids (Hydrography90m)",
            "href":"https://hydrography.org/hydrography90m/hydrography90m_layers",
            "hreflang":"en-US"
        },
        {
            "type":"application/json",
            "rel":"self",
            "href":"https://aqua.igb-berlin.de/pygeoapi-dev/processes/filter-attribute-by-list?f=json",
            "title":"Process description as JSON",
            "hreflang":"en-US"
        },
        {
            "type":"text/html",
            "rel":"alternate",
            "href":"https://aqua.igb-berlin.de/pygeoapi-dev/processes/filter-attribute-by-list?f=html",
            "title":"Process description as HTML",
            "hreflang":"en-US"
        },
        {
            "type":"text/html",
            "rel":"http://www.opengis.net/def/rel/ogc/1.0/job-list",
            "href":"https://aqua.igb-berlin.de/pygeoapi-dev/jobs?f=html",
            "title":"Jobs list as HTML",
            "hreflang":"en-US"
        },
        {
            "type":"application/json",
            "rel":"http://www.opengis.net/def/rel/ogc/1.0/job-list",
            "href":"https://aqua.igb-berlin.de/pygeoapi-dev/jobs?f=json",
            "title":"Jobs list as JSON",
            "hreflang":"en-US"
        },
        {
            "type":"application/json",
            "rel":"http://www.opengis.net/def/rel/ogc/1.0/execute",
            "href":"https://aqua.igb-berlin.de/pygeoapi-dev/processes/filter-attribute-by-list/execution?f=json",
            "title":"Execution for this process as JSON",
            "hreflang":"en-US"
        }
    ],
    "inputs":{
        "items_json":{
            "title":"Items to be filtered (POST)",
            "description":"A JSON list of items which all have the attributes based on which to filter. Directly pass the JSON in the HTTP POST payload.",
            "schema":{
                "type":"string"
            },
            "minOccurs":1,
            "maxOccurs":1,
            "metadata":null,
            "keywords":[
                "json"
            ]
        },
        "items_json_url":{
            "title":"Items to be filtered (URL)",
            "description":"A JSON list of items which all have the attributes based on which to filter. Please pass a URL to a JSON file.",
            "schema":{
                "type":"string"
            },
            "minOccurs":1,
            "maxOccurs":1,
            "metadata":null,
            "keywords":[
                "json"
            ]
        },
        "csv_url":{
            "title":"Items to be filtered (URL)",
            "description":"Currently, a CSV file cannot be filtered yet. WIP.",
            "schema":{
                "type":"string"
            },
            "minOccurs":1,
            "maxOccurs":1,
            "metadata":null,
            "keywords":[
                "csv"
            ]
        },
        "keep":{
            "title":"Which values of which attributes",
            "description":"JSON dictionary of the form 'attribute-name': [list of attribute values]...",
            "schema":{
                "type":"string"
            },
            "minOccurs":1,
            "maxOccurs":1,
            "metadata":null,
            "keywords":[]
        },
        "comment":{
            "title":"Comment",
            "description":"Arbitrary string that will not be processed but returned, for user\"s convenience.",
            "schema":{
                "type":"string"
            },
            "minOccurs":0,
            "maxOccurs":1,
            "metadata":null,
            "keywords":[
                "comment"
            ]
        }
    },
    "outputs":{
        "filtered_data":{
            "title":"Filtered data",
            "description":"The complete input list, but the values of the given attributes which are not in the list to be kept are removed.",
            "schema":{
                "type":"object",
                "contentMediaType":"application/json"
            }
        }
    },
    "example":{
        "inputs":{
            "items_json_url":"https://example.com/download/some.json",
            "keep":{
                "downstream_segments":[
                    561603988,
                    561707768,
                    559889880
                ]
            },
            "comment":"only keep some downstream segments."
        }
    },
    "outputTransmission":[
        "value"
    ]
}