raml-org/raml-java-parser

'uses' not recognised when type treated as inline type on property

tapina opened this issue · 0 comments

Parsing validation fails if your RAML has the following structure:

Top level

%RAML 1.0
..
types:
  mytype:
    type: !include types/mytype.raml

Data type

%RAML 1.0 DataType
uses:
  mylib: ../../lib.raml

type: object
properties:
  myproperty: !include myproperty.raml
...

Property type

%RAML 1.0 DataType
uses:
  mylib: ../../lib.raml

...

Validation failed saying that uses is unexpected.

This is because the property type is treated as purely inline rather than an external type declaration and so 'uses' is not an expected field.

See the attached patch for a fix.
fix_uses.patch.txt

Aha! Link: https://mulesoft-roadmap.aha.io/features/APIRAML-44