是否可以使用RAML为抽象类或接口建模?如果不是,我们如何在子类型必须定义的超类型中施加约束?
答案 0 :(得分:0)
您可以像这样对超级类型和继承建模:
types:
ResponseNoId:
properties:
something1:
something2?:
ResponseId:
type: ResponseNoId
properties:
id:
Response:
ResponseNoId|ResponseId
/test:
get:
responses:
200:
body:
application/json:
type: ResponseId
在此示例中,ResponseId
从something1
继承了something2
和ResponseNoId
,但是添加了一个名为id
的新属性。
还Response
允许您在资源中使用任何一个。
现在,您可以在资源中定义type: Response
,它仅允许其中一种子类型。