From f9bfb59eb7e84f2adb4c912abd000540713ef15c Mon Sep 17 00:00:00 2001 From: gracekarina Date: Sat, 29 Sep 2018 10:12:08 -0500 Subject: [PATCH 1/2] fix issue relative refs items and properies --- .../processors/ExternalRefProcessor.java | 7 ++ .../io/swagger/parser/SwaggerParserTest.java | 14 ++++ .../specs/common/confirmMessageType_v01.json | 51 ++++++++++++ .../specs/common/confirmMessageType_v02.json | 51 ++++++++++++ .../specs/common/dateType_v01.json | 7 ++ .../specs/common/linkType_v01.json | 65 ++++++++++++++++ .../specs/common/simpleIDType_v01.json | 7 ++ .../v1/schemas/test-api-schema_v01.json | 29 +++++++ .../v1/schemas/test-api-schema_v02.json | 29 +++++++ .../test-api/v1/test-api-swagger_v1.json | 78 +++++++++++++++++++ 10 files changed, 338 insertions(+) create mode 100755 modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/confirmMessageType_v01.json create mode 100755 modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/confirmMessageType_v02.json create mode 100755 modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/dateType_v01.json create mode 100755 modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/linkType_v01.json create mode 100755 modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/simpleIDType_v01.json create mode 100755 modules/swagger-parser/src/test/resources/exampleSpecs/specs/my-domain/test-api/v1/schemas/test-api-schema_v01.json create mode 100755 modules/swagger-parser/src/test/resources/exampleSpecs/specs/my-domain/test-api/v1/schemas/test-api-schema_v02.json create mode 100755 modules/swagger-parser/src/test/resources/exampleSpecs/specs/my-domain/test-api/v1/test-api-swagger_v1.json diff --git a/modules/swagger-parser/src/main/java/io/swagger/parser/processors/ExternalRefProcessor.java b/modules/swagger-parser/src/main/java/io/swagger/parser/processors/ExternalRefProcessor.java index 8d91d8972e..180a769258 100644 --- a/modules/swagger-parser/src/main/java/io/swagger/parser/processors/ExternalRefProcessor.java +++ b/modules/swagger-parser/src/main/java/io/swagger/parser/processors/ExternalRefProcessor.java @@ -3,6 +3,7 @@ import io.swagger.models.*; import io.swagger.models.properties.ArrayProperty; import io.swagger.models.properties.MapProperty; +import io.swagger.models.properties.ObjectProperty; import io.swagger.models.properties.Property; import io.swagger.models.properties.RefProperty; import io.swagger.models.refs.RefFormat; @@ -218,6 +219,12 @@ private void processProperties(final Map subProps, final Strin if (arrayProp.getItems() instanceof RefProperty) { processRefProperty((RefProperty) arrayProp.getItems(), file); } + if (arrayProp.getItems() != null){ + if (arrayProp.getItems() instanceof ObjectProperty) { + ObjectProperty objectProperty = (ObjectProperty) arrayProp.getItems(); + processProperties(objectProperty.getProperties(), file); + } + } } else if (prop.getValue() instanceof MapProperty) { MapProperty mapProp = (MapProperty) prop.getValue(); if (mapProp.getAdditionalProperties() instanceof RefProperty) { diff --git a/modules/swagger-parser/src/test/java/io/swagger/parser/SwaggerParserTest.java b/modules/swagger-parser/src/test/java/io/swagger/parser/SwaggerParserTest.java index 40fb752d0e..f4ce3f3777 100644 --- a/modules/swagger-parser/src/test/java/io/swagger/parser/SwaggerParserTest.java +++ b/modules/swagger-parser/src/test/java/io/swagger/parser/SwaggerParserTest.java @@ -25,6 +25,7 @@ import io.swagger.models.properties.ByteArrayProperty; import io.swagger.models.properties.IntegerProperty; import io.swagger.models.properties.MapProperty; +import io.swagger.models.properties.ObjectProperty; import io.swagger.models.properties.Property; import io.swagger.models.properties.RefProperty; import io.swagger.models.properties.StringProperty; @@ -54,6 +55,19 @@ public class SwaggerParserTest { + @Test + public void testIssueRelativeRefs2(){ + String location = "exampleSpecs/specs/my-domain/test-api/v1/test-api-swagger_v1.json"; + Swagger swagger = new SwaggerParser().read(location, null, true); + assertNotNull(swagger); + Map definitions = swagger.getDefinitions(); + Assert.assertTrue(definitions.get("confirmMessageType_v01").getProperties().get("resources") instanceof ArrayProperty); + ArrayProperty arraySchema = (ArrayProperty) definitions.get("confirmMessageType_v01").getProperties().get("resources"); + ObjectProperty prop = (ObjectProperty) arraySchema.getItems(); + RefProperty refProperty = (RefProperty) prop.getProperties().get("resourceID"); + assertEquals(refProperty.get$ref(),"#/definitions/simpleIDType_v01"); + } + @Test public void testIssue845() { SwaggerDeserializationResult swaggerDeserializationResult = new SwaggerParser().readWithInfo(""); diff --git a/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/confirmMessageType_v01.json b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/confirmMessageType_v01.json new file mode 100755 index 0000000000..4196e39227 --- /dev/null +++ b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/confirmMessageType_v01.json @@ -0,0 +1,51 @@ +{ + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "The confirm message contains the processing results for the corresponding request. A request may have its processing reported as: succeeded, partially failed, or failed.", + "type": "object", + "properties": { + "confirmMessageID": { + "description": "An identifier for the instance of the confirm message", + "$ref": "./simpleIDType_v01.json" + }, + "processID": { + "description": "A process identifier if one is available, like a batch ID", + "$ref": "./simpleIDType_v01.json" + }, + "processStatus": { + "description": "The process results status code for the request", + "type": "string", + "enum": [ + "success", "partial-failure", "failure" + ] + }, + "resources": { + "type": "array", + "items": { + "type": "object", + "properties": { + "resourceID": { + "description": "A resource identifier if one is available", + "$ref": "./simpleIDType_v01.json" + }, + "resourceReference": { + "description": "An optional additiona reference to the resource", + "type": "string" + }, + "resourceStatus": { + "description": "The process results status code for the request", + "type": "string", + "enum": [ + "success", "partial-failure", "failure" + ] + } + } + } + }, + "links": { + "type": "array", + "items": { + "$ref": "./linkType_v01.json" + } + } + } +} \ No newline at end of file diff --git a/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/confirmMessageType_v02.json b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/confirmMessageType_v02.json new file mode 100755 index 0000000000..4196e39227 --- /dev/null +++ b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/confirmMessageType_v02.json @@ -0,0 +1,51 @@ +{ + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "The confirm message contains the processing results for the corresponding request. A request may have its processing reported as: succeeded, partially failed, or failed.", + "type": "object", + "properties": { + "confirmMessageID": { + "description": "An identifier for the instance of the confirm message", + "$ref": "./simpleIDType_v01.json" + }, + "processID": { + "description": "A process identifier if one is available, like a batch ID", + "$ref": "./simpleIDType_v01.json" + }, + "processStatus": { + "description": "The process results status code for the request", + "type": "string", + "enum": [ + "success", "partial-failure", "failure" + ] + }, + "resources": { + "type": "array", + "items": { + "type": "object", + "properties": { + "resourceID": { + "description": "A resource identifier if one is available", + "$ref": "./simpleIDType_v01.json" + }, + "resourceReference": { + "description": "An optional additiona reference to the resource", + "type": "string" + }, + "resourceStatus": { + "description": "The process results status code for the request", + "type": "string", + "enum": [ + "success", "partial-failure", "failure" + ] + } + } + } + }, + "links": { + "type": "array", + "items": { + "$ref": "./linkType_v01.json" + } + } + } +} \ No newline at end of file diff --git a/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/dateType_v01.json b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/dateType_v01.json new file mode 100755 index 0000000000..cb8da82652 --- /dev/null +++ b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/dateType_v01.json @@ -0,0 +1,7 @@ +{ + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "date", + "description": "The string representation of the date value using the ISO-8601:2000 format", + "type": "string", + "format": "date" +} \ No newline at end of file diff --git a/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/linkType_v01.json b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/linkType_v01.json new file mode 100755 index 0000000000..c66c398df3 --- /dev/null +++ b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/linkType_v01.json @@ -0,0 +1,65 @@ +{ + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "link", + "description": "A link description object is used to describe link relations. In the context of a schema, it defines the link relations of the instances of the schema, and can be parameterized by the instance values. The link description format can be used on its own in regular (non-schema) documents, and use of this format can be declared by referencing the normative link description schema as the schema for the data structure that uses the links.", + "type": "object", + "properties": { + "href": { + "$ref": "./simpleIDType_v01.json" + }, + "mediaType": { + "description": "The media type that the linked resource will return (Response) in", + "type": "string", + "enum": [ + "application/gzip", + "application/json", + "application/msword", + "application/pdf", + "application/postscript", + "application/vnd.ms-excel", + "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "application/vnd.openxmlformats-officedocument.wordprocessingml.document", + "application/xml", + "application/x-www-form-urlencoded", + "image/gif", + "image/jpeg", + "image/png", + "image/tiff", + "multipart/mixed", + "text/html", + "text/plain", + "application/vnd.visio", + "image/bmp", + "application/vnd.openxmlformats-officedocument.presentationml.presentation", + "application/vnd.ms-powerpoint", + "video/mp4", + "audio/mpeg", + "video/x-msvideo", + "video/x-ms-wmv", + "application/rtf", + "application/vnd.ms-outlook", + "text/csv", + "video/quicktime", + "application/zip", + "application/illustrator", + "text/xml" + ] + }, + "payloadArguments": { + "type": "array", + "items": { + "type": "object", + "properties": { + "argumentPath": { + "description": "Argument path (typically a key field) of the payload item", + "type": "string" + }, + "argumentValue": { + "description": "Argument value (typically a key field) of the payload item", + "type": "string" + } + } + } + } + } +} \ No newline at end of file diff --git a/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/simpleIDType_v01.json b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/simpleIDType_v01.json new file mode 100755 index 0000000000..81a02b5f15 --- /dev/null +++ b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/simpleIDType_v01.json @@ -0,0 +1,7 @@ +{ + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "simpleID", + "description": "Simple (string) identifier of an object to be used when there is no appropriate specific named ID Type", + "type": "string", + "pattern": "^[a-zA-Z0-9.$-_\/]+$" +} \ No newline at end of file diff --git a/modules/swagger-parser/src/test/resources/exampleSpecs/specs/my-domain/test-api/v1/schemas/test-api-schema_v01.json b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/my-domain/test-api/v1/schemas/test-api-schema_v01.json new file mode 100755 index 0000000000..d76ab6ae58 --- /dev/null +++ b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/my-domain/test-api/v1/schemas/test-api-schema_v01.json @@ -0,0 +1,29 @@ +{ + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "Collection of pay schedules for a given organization", + "type": "object", + "properties": { + "testingApi": { + "type": "array", + "items": { + "title": "testingApi", + "type": "object", + "properties": { + "itemID": { + "$ref": "../../../../common/simpleIDType_v01.json" + }, + "testLink": { + "type": "array", + "items": { + "$ref": "../../../../common/linkType_v01.json" + } + } + }, + "additionalProperties": false + } + }, + "_confirmMessage": { + "$ref": "../../../../common/confirmMessageType_v01.json" + } + } +} \ No newline at end of file diff --git a/modules/swagger-parser/src/test/resources/exampleSpecs/specs/my-domain/test-api/v1/schemas/test-api-schema_v02.json b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/my-domain/test-api/v1/schemas/test-api-schema_v02.json new file mode 100755 index 0000000000..d3c9b7c1c5 --- /dev/null +++ b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/my-domain/test-api/v1/schemas/test-api-schema_v02.json @@ -0,0 +1,29 @@ +{ + "$schema": "http://json-schema.org/draft-04/schema#", + "description": "Collection of pay schedules for a given organization", + "type": "object", + "properties": { + "testingApi": { + "type": "array", + "items": { + "title": "testingApi", + "type": "object", + "properties": { + "itemID": { + "$ref": "../../../../common/simpleIDType_v01.json" + }, + "testLink": { + "type": "array", + "items": { + "$ref": "../../../../common/linkType_v01.json" + } + } + }, + "additionalProperties": false + } + }, + "_confirmMessage": { + "$ref": "../../../../common/confirmMessageType_v02.json" + } + } +} \ No newline at end of file diff --git a/modules/swagger-parser/src/test/resources/exampleSpecs/specs/my-domain/test-api/v1/test-api-swagger_v1.json b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/my-domain/test-api/v1/test-api-swagger_v1.json new file mode 100755 index 0000000000..66153f54ac --- /dev/null +++ b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/my-domain/test-api/v1/test-api-swagger_v1.json @@ -0,0 +1,78 @@ +{ + "swagger": "2.0", + "info": { + "description": "APIs to retrieve some data", + "version": "1.0", + "title": "TEST A NEW API", + "contact": { + "name": "mine", + "email": "mine@me.com" + } + }, + "tags": [ + { + "name": "Test", + "description": "APIs to retrieve some data" + } + ], + "paths": { + "/my-domain/v1/test-system": { + "get": { + "description": "Retrieve relevant data", + "tags": [ + "Test" + ], + "summary": "Retrieve relevant data", + "responses": { + "200": { + "description": "Request was successful", + "headers": { + }, + "schema": { + "$ref": "./schemas/test-api-schema_v02.json" + } + }, + "400": { + "$ref": "#/responses/400" + } + } + } + } + }, + "definitions": { + }, + "responses": { + "200": { + "description": "OK", + "headers": { + } + }, + "400": { + "description": "Bad Request", + "headers": { + }, + "schema": { + "$ref": "../../../common/confirmMessageType_v01.json" + } + } + }, + "parameters": { + "asOfDate": { + "name": "asOfDate", + "in": "query", + "description": "Filter on the records that is effective, or overlap, on the asOfDate", + "required": false, + "example": "2017-01-01" + }, + "header_Accept-Language": { + "name": "Accept-Language", + "in": "header", + "description": "Accept-Language : ( language | * ) [; q =qvalue]. Specifies the language(s) that are acceptable for the response. The optional qvalue represents a quality level for acceptable languages.", + "required": false, + "schema": { + "type": "string" + } + } + } + +} \ No newline at end of file From ecf6800e669187fa2e744cc4e0309f72cb9f4ac1 Mon Sep 17 00:00:00 2001 From: gracekarina Date: Sat, 29 Sep 2018 13:29:45 -0500 Subject: [PATCH 2/2] removing descriptions --- .../specs/common/confirmMessageType_v01.json | 15 +++++++-------- .../specs/common/confirmMessageType_v02.json | 15 +++++++-------- .../exampleSpecs/specs/common/dateType_v01.json | 3 +-- .../exampleSpecs/specs/common/linkType_v01.json | 9 ++++----- .../test-api/v1/schemas/test-api-schema_v01.json | 3 +-- .../test-api/v1/schemas/test-api-schema_v02.json | 3 +-- .../test-api/v1/test-api-swagger_v1.json | 4 ++-- 7 files changed, 23 insertions(+), 29 deletions(-) diff --git a/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/confirmMessageType_v01.json b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/confirmMessageType_v01.json index 4196e39227..763be74cdb 100755 --- a/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/confirmMessageType_v01.json +++ b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/confirmMessageType_v01.json @@ -1,18 +1,17 @@ { - "$schema": "http://json-schema.org/draft-04/schema#", - "description": "The confirm message contains the processing results for the corresponding request. A request may have its processing reported as: succeeded, partially failed, or failed.", + "description": "", "type": "object", "properties": { "confirmMessageID": { - "description": "An identifier for the instance of the confirm message", + "description": "", "$ref": "./simpleIDType_v01.json" }, "processID": { - "description": "A process identifier if one is available, like a batch ID", + "description": "", "$ref": "./simpleIDType_v01.json" }, "processStatus": { - "description": "The process results status code for the request", + "description": "", "type": "string", "enum": [ "success", "partial-failure", "failure" @@ -24,15 +23,15 @@ "type": "object", "properties": { "resourceID": { - "description": "A resource identifier if one is available", + "description": "", "$ref": "./simpleIDType_v01.json" }, "resourceReference": { - "description": "An optional additiona reference to the resource", + "description": "", "type": "string" }, "resourceStatus": { - "description": "The process results status code for the request", + "description": "", "type": "string", "enum": [ "success", "partial-failure", "failure" diff --git a/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/confirmMessageType_v02.json b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/confirmMessageType_v02.json index 4196e39227..763be74cdb 100755 --- a/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/confirmMessageType_v02.json +++ b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/confirmMessageType_v02.json @@ -1,18 +1,17 @@ { - "$schema": "http://json-schema.org/draft-04/schema#", - "description": "The confirm message contains the processing results for the corresponding request. A request may have its processing reported as: succeeded, partially failed, or failed.", + "description": "", "type": "object", "properties": { "confirmMessageID": { - "description": "An identifier for the instance of the confirm message", + "description": "", "$ref": "./simpleIDType_v01.json" }, "processID": { - "description": "A process identifier if one is available, like a batch ID", + "description": "", "$ref": "./simpleIDType_v01.json" }, "processStatus": { - "description": "The process results status code for the request", + "description": "", "type": "string", "enum": [ "success", "partial-failure", "failure" @@ -24,15 +23,15 @@ "type": "object", "properties": { "resourceID": { - "description": "A resource identifier if one is available", + "description": "", "$ref": "./simpleIDType_v01.json" }, "resourceReference": { - "description": "An optional additiona reference to the resource", + "description": "", "type": "string" }, "resourceStatus": { - "description": "The process results status code for the request", + "description": "", "type": "string", "enum": [ "success", "partial-failure", "failure" diff --git a/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/dateType_v01.json b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/dateType_v01.json index cb8da82652..d2fc1d9be5 100755 --- a/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/dateType_v01.json +++ b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/dateType_v01.json @@ -1,7 +1,6 @@ { - "$schema": "http://json-schema.org/draft-04/schema#", "title": "date", - "description": "The string representation of the date value using the ISO-8601:2000 format", + "description": "The string representation", "type": "string", "format": "date" } \ No newline at end of file diff --git a/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/linkType_v01.json b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/linkType_v01.json index c66c398df3..fba85bbb4e 100755 --- a/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/linkType_v01.json +++ b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/common/linkType_v01.json @@ -1,14 +1,13 @@ { - "$schema": "http://json-schema.org/draft-04/schema#", "title": "link", - "description": "A link description object is used to describe link relations. In the context of a schema, it defines the link relations of the instances of the schema, and can be parameterized by the instance values. The link description format can be used on its own in regular (non-schema) documents, and use of this format can be declared by referencing the normative link description schema as the schema for the data structure that uses the links.", + "description": "A link description object", "type": "object", "properties": { "href": { "$ref": "./simpleIDType_v01.json" }, "mediaType": { - "description": "The media type that the linked resource will return (Response) in", + "description": "media type description", "type": "string", "enum": [ "application/gzip", @@ -51,11 +50,11 @@ "type": "object", "properties": { "argumentPath": { - "description": "Argument path (typically a key field) of the payload item", + "description": "payloadArguments", "type": "string" }, "argumentValue": { - "description": "Argument value (typically a key field) of the payload item", + "description": "payloadArguments", "type": "string" } } diff --git a/modules/swagger-parser/src/test/resources/exampleSpecs/specs/my-domain/test-api/v1/schemas/test-api-schema_v01.json b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/my-domain/test-api/v1/schemas/test-api-schema_v01.json index d76ab6ae58..c470b62f02 100755 --- a/modules/swagger-parser/src/test/resources/exampleSpecs/specs/my-domain/test-api/v1/schemas/test-api-schema_v01.json +++ b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/my-domain/test-api/v1/schemas/test-api-schema_v01.json @@ -1,6 +1,5 @@ { - "$schema": "http://json-schema.org/draft-04/schema#", - "description": "Collection of pay schedules for a given organization", + "description": "Description", "type": "object", "properties": { "testingApi": { diff --git a/modules/swagger-parser/src/test/resources/exampleSpecs/specs/my-domain/test-api/v1/schemas/test-api-schema_v02.json b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/my-domain/test-api/v1/schemas/test-api-schema_v02.json index d3c9b7c1c5..5e02ac8c45 100755 --- a/modules/swagger-parser/src/test/resources/exampleSpecs/specs/my-domain/test-api/v1/schemas/test-api-schema_v02.json +++ b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/my-domain/test-api/v1/schemas/test-api-schema_v02.json @@ -1,6 +1,5 @@ { - "$schema": "http://json-schema.org/draft-04/schema#", - "description": "Collection of pay schedules for a given organization", + "description": "Test Description", "type": "object", "properties": { "testingApi": { diff --git a/modules/swagger-parser/src/test/resources/exampleSpecs/specs/my-domain/test-api/v1/test-api-swagger_v1.json b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/my-domain/test-api/v1/test-api-swagger_v1.json index 66153f54ac..90bd50b266 100755 --- a/modules/swagger-parser/src/test/resources/exampleSpecs/specs/my-domain/test-api/v1/test-api-swagger_v1.json +++ b/modules/swagger-parser/src/test/resources/exampleSpecs/specs/my-domain/test-api/v1/test-api-swagger_v1.json @@ -60,14 +60,14 @@ "asOfDate": { "name": "asOfDate", "in": "query", - "description": "Filter on the records that is effective, or overlap, on the asOfDate", + "description": "date", "required": false, "example": "2017-01-01" }, "header_Accept-Language": { "name": "Accept-Language", "in": "header", - "description": "Accept-Language : ( language | * ) [; q =qvalue]. Specifies the language(s) that are acceptable for the response. The optional qvalue represents a quality level for acceptable languages.", + "description": "Accept-Language", "required": false, "schema": { "type": "string"