Как определить массив типа во внешнем файле в Raml?

Если у меня есть файл, определяющий тип данных SimpleDuple, а в другом файле, определяющий другой тип данных с именем DiscreetFilter, я хочу, чтобы свойство values было массивом SimpleDuple, как бы я мог использовать там include?

Рассмотрим файлы для SimpleDuple:

#%RAML 1.0 DataType
type: object
properties:
  id: string
  name: string

И другое определение, в котором я хочу сделать свойство массивом SimpleDuples в свойстве values (но мне пришлось использовать встроенное определение).

#%RAML 1.0 DataType
type: object
properties:
  field: string
  name: string
  type: { enum: [ discreet ] }

  # Ideally this property would use an include
  # in some way to express the equivalent of SimpleDuple[]
  values: 
    type: array
    properties:
      id: string
      name: string

Если эти два типа находятся в одном файле, я бы установил для свойства values значение SimpleDuple[]. Если бы это был не массив, я бы поставил include как значение свойства values.

Но как мне использовать включение и массив одновременно вместо того, чтобы использовать встроенное определение, которое я использовал в скопированном коде?


person David Pelaez    schedule 19.01.2016    source источник


Ответы (1)


Вы должны уметь делать следующее:

chapter.raml

#%RAML 1.0 DataType

type: object
properties:
  name: string

storyboard.raml

#%RAML 1.0 DataType

type: object
properties:
  name: string
  chapters:
    type: array
    items: !include chapter.raml

Надеюсь, это поможет?!

person christian.vogel    schedule 19.01.2016