swagger ui - Can a YAML file imported into an API spec reference another include YAML file? -


using swagger-editor , swagger-ui build swagger2.0 specification in yaml.

i have split spec client.yml , several model.yml files.

each model defines parameters or response objects.

when open client.yml in editor, load models client using $ref:

however, there appears problem if object in 1 of model files tries reference object in model file.

i have tried absolute , relative paths no avail. error, like: "reference not resolved: /models/basemodel.yml#/basicobject" path: array [10]

error: "cannot use 'in' operator search 'basicobject' in undefined" level: 900 type:  "swagger error" description: "reference not resolved: /models/basemodel.yml#/basicobject" linenumber: -1 

the simplerobject identical , works fine. references copyofbasicobject in same file. advancedobject tries reference basicobject in different model file.

the goal not copy definition of basicobject refer it.

it necessary clear browser cache , reload page before editor read new version of model file.

the files used test included. have converted single file stackoverflow editor not rendering yaml well.

    swagger: '2.0' info:   title: test indirect reference   description: etc   version: "draft 0.1.1" host: example.com basepath: / produces:   - application/json  paths:   /advancedobjects:       post:       summary: |         post object.       parameters:         - name: advancedobject           in: body           required: true           schema:             type: array             items:               $ref: '/models/model.yml#/advancedobject' # doeesn't work               #$ref: '/models/model.yml#/simplerobject' # works fine               #$ref: '/models/basemodel.yml#/basicobject'  # works fine       responses:         200:           description: ok     definitions:          advancedobject:  #move /models/model.yml           type: object           description: contains reference basic object           properties:             base:               $ref: '/models/basemodel.yml#/basicobject'             advanced:               type: array               items:                 type: number         copyofbasicobject: # move /models/model.yml         type: object         description: simple object         properties:           id:             type: number        simplerobject: # move /models/model.yml         type: object         description: same advanceobject without reference file         properties:           base:             $ref: '#/copyofbasicobject'           advanced:             type: array             items:               type: number        basicobject: # move /models/basemodel.yml         type: object         description: simple object         properties:           id:             type: number 


Comments

Popular posts from this blog

ubuntu - PHP script to find files of certain extensions in a directory, returns populated array when run in browser, but empty array when run from terminal -

php - How can i create a user dashboard -

javascript - How to detect toggling of the fullscreen-toolbar in jQuery Mobile? -