The spec doesn’t support multiple types under items, so you can’t really do that.
From: <[email protected]> on behalf of Deryk Sinotte <[email protected]> Reply-To: "[email protected]" <[email protected]> Date: Monday, 11 July 2016 at 12:07 To: Swagger <[email protected]> Subject: How do I define an array of geospatial coordinates? I feel like I'm missing something fundamental. I have a Swagger file that contains the following body parameter to describe a geospatial position [longitude,latitude]: "parameters": [ { "name": "body", "in": "body", "description": "Interesting description", "required": true, "schema": { "$ref": "#/definitions/Position" } } ] I describe the Position as: "Position": { "description": "A single position", "type": "array", "minItems": 2, "maxItems": 2, "items": [ { "type": "number" } ] Which works and doesn't cause a problem for the Swagger UI but I want to provide a bit more detail: "Position": { "description": "A single position", "type": "array", "minItems": 2, "items": [ { "type": "number" }, { "type": "number" } ] As soon as that second item to the array, the Swagger UI will not display it. Ideally, I'd like to describe it something more like this: "Longitude": { "title": "Longitudinal Value", "description": "A valid longitude (-180 to 180).", "type": "number", "minimum": -180, "maximum": 180, "default": 0 }, "Latitude": { "title": "Latitudinal Value", "description": "A valid latitude (-90 to 90).", "type": "number", "minimum": -90, "maximum": 90, "default": 0 }, "Position": { "description": "A single position", "type": "array", "minItems": 2, "maxItems": 2, "items": [ { "$ref": "#/definitions/Longitude" }, { "$ref": "#/definitions/Latitude" } ], "additionalItems": false } It just seems that once I add a second entry into the Position items array, the Swagger UI can't handle it. Am I describing it incorrectly or is it some kind of Swagger UI limitation/bug? -- You received this message because you are subscribed to the Google Groups "Swagger" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "Swagger" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
