{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "$version": "0.0.1",
    "title": "sample",
    "description": "link_ext",
    "definitions": {},
    "properties": {
        "test": {
            "links": [
                {
                    "title": "async",
                    "href": "/test",
                    "method": "GET",
                    "rel": "self",
                    "$async": true,
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "no_async",
                    "href": "/test",
                    "method": "GET",
                    "rel": "self",
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "no_async2",
                    "href": "/test",
                    "method": "GET",
                    "rel": "self",
                    "$async": false,
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "no_result_api",
                    "href": "/test",
                    "method": "GET",
                    "rel": "self",
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "result_api",
                    "href": "/test",
                    "method": "GET",
                    "rel": "self",
                    "$result": {
                        "title": "hoge"
                    },
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "undefined_result_api",
                    "href": "/test",
                    "method": "GET",
                    "rel": "self",
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "result_api_no_param",
                    "href": "/test",
                    "method": "GET",
                    "rel": "self",
                    "$result": {
                        "title": "hoge"
                    },
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "result_api_no_param2",
                    "href": "/test",
                    "method": "GET",
                    "rel": "self",
                    "$result": {
                        "title": "hoge",
                        "params": []
                    },
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "result_api_1_str_params",
                    "href": "/test",
                    "method": "GET",
                    "rel": "self",
                    "$result": {
                        "title": "hoge",
                        "params": [
                            "aaa"
                        ]
                    },
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "result_api_2_str_params",
                    "href": "/test",
                    "method": "GET",
                    "rel": "self",
                    "$result": {
                        "title": "hoge",
                        "params": [
                            "aaa",
                            "bbb"
                        ]
                    },
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "result_api_numeric_params",
                    "href": "/test",
                    "method": "GET",
                    "rel": "self",
                    "$result": {
                        "title": "hoge",
                        "params": [
                            1
                        ]
                    },
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "result_api_str_and_numeric_params",
                    "href": "/test",
                    "method": "GET",
                    "rel": "self",
                    "$result": {
                        "title": "hoge",
                        "params": [
                            "aaa",
                            1
                        ]
                    },
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "result_api_array_params",
                    "href": "/test",
                    "method": "GET",
                    "rel": "self",
                    "$result": {
                        "title": "hoge",
                        "params": [
                            [
                                "aaa",
                                1
                            ]
                        ]
                    },
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "result_api_nest_array_params",
                    "href": "/test",
                    "method": "GET",
                    "rel": "self",
                    "$result": {
                        "title": "hoge",
                        "params": [
                            [
                                [
                                    "aaa",
                                    1
                                ]
                            ]
                        ]
                    },
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "result_api_empty_hash_params",
                    "href": "/test",
                    "method": "GET",
                    "rel": "self",
                    "$result": {
                        "title": "hoge",
                        "params": [
                            {}
                        ]
                    },
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "result_api_hash_params",
                    "href": "/test",
                    "method": "GET",
                    "rel": "self",
                    "$result": {
                        "title": "hoge",
                        "params": [
                            {
                                "aaa": "bbb"
                            }
                        ]
                    },
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "result_api_hash_nest_array_params",
                    "href": "/test",
                    "method": "GET",
                    "rel": "self",
                    "$result": {
                        "title": "hoge",
                        "params": [
                            {
                                "aaa": [
                                    "bbb",
                                    "ccc"
                                ]
                            }
                        ]
                    },
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "result_api_nest_hash_params",
                    "href": "/test",
                    "method": "GET",
                    "rel": "self",
                    "$result": {
                        "title": "hoge",
                        "params": [
                            {
                                "aaa": {
                                    "bbb": "ccc"
                                }
                            }
                        ]
                    },
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "result_api_input_param",
                    "href": "/test/{hoge}",
                    "method": "GET",
                    "rel": "self",
                    "$result": {
                        "title": "hoge",
                        "params": [
                            "#{hoge}"
                        ]
                    },
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "result_api_result_param",
                    "href": "/test/{hoge}",
                    "method": "GET",
                    "rel": "self",
                    "$result": {
                        "title": "hoge",
                        "params": [
                            "result[configures.0.id]"
                        ]
                    },
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "result_api_result_param2",
                    "href": "/test/{hoge}",
                    "method": "GET",
                    "rel": "self",
                    "$result": {
                        "title": "hoge",
                        "params": [
                            "result[configures.1.name]"
                        ]
                    },
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "result_api_input_and_result_param",
                    "href": "/test/{hoge}",
                    "method": "GET",
                    "rel": "self",
                    "$result": {
                        "title": "hoge",
                        "params": [
                            "#{hoge}",
                            "result[configures.0.id]"
                        ]
                    },
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "result_api_not_async_resource_id_param",
                    "href": "/test/{hoge}",
                    "method": "GET",
                    "rel": "self",
                    "$result": {
                        "title": "hoge",
                        "params": [
                            "#{resource_id}"
                        ]
                    },
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "result_api_async_resource_id_param",
                    "href": "/test/{hoge}",
                    "method": "GET",
                    "rel": "self",
                    "$async": true,
                    "$result": {
                        "title": "hoge",
                        "params": [
                            "#{resource_id}"
                        ]
                    },
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "result_api_all_param",
                    "href": "/test/{hoge}",
                    "method": "GET",
                    "rel": "self",
                    "$async": true,
                    "$result": {
                        "title": "hoge",
                        "params": [
                            "#{hoge}",
                            "result[configures.0.id]",
                            "#{resource_id}"
                        ]
                    },
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "result_api_hash_param",
                    "href": "/test/{hoge}/{piyo}",
                    "method": "GET",
                    "rel": "self",
                    "$async": true,
                    "$result": {
                        "title": "hoge",
                        "params": [
                            "#{hoge}",
                            {
                                "input": "#{piyo}",
                                "param": {
                                    "conf0_id": "result[configures.0.id]",
                                    "conf1_name": "result[configures.1.name]"
                                }
                            }
                        ]
                    },
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "result_api_not_found_input_param",
                    "href": "/test",
                    "method": "GET",
                    "rel": "self",
                    "$async": true,
                    "$result": {
                        "title": "hoge",
                        "params": [
                            "#{hoge}"
                        ]
                    },
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                },
                {
                    "title": "result_api_not_found_result_param",
                    "href": "/test",
                    "method": "GET",
                    "rel": "self",
                    "$async": true,
                    "$result": {
                        "title": "hoge",
                        "params": [
                            "result[none]"
                        ]
                    },
                    "schema": {
                        "properties": {}
                    },
                    "targetSchema": {
                        "properties": {}
                    }
                }
            ]
        }
    }
}