在 OpenAPI 中,如何定义具有属性和内容的 XML 元素?

Phi*_*ier 8 xml swagger openapi

我想用 OpenAPI 2.0 (Swagger 2.0) 描述 RESTful 接口的 XML 响应负载。但是,我很难在 OpenAPI 数据模型中描述特定的 XML 标记。

我无法让 Swagger UI 以这种形式创建适当的示例 XML 标签,在开始和结束 XML 标签之间有一个属性内容:

<Person id="bar">foo</Person>
Run Code Online (Sandbox Code Playgroud)

文档(此处)仅描述了如何为带有子标签 ( type: object) 的标签或带有内容 ( type: string)的标签建模,但不能同时为两者建模。

我试过这个,Swagger 编辑器接受它,没有任何错误或警告:

<Person id="bar">foo</Person>
Run Code Online (Sandbox Code Playgroud)

但它将由 Swagger UI 呈现为以下示例:

<Person id="bar"></Person>
Run Code Online (Sandbox Code Playgroud)

如您所见,其中没有“foo”内容。

cas*_*lin 6

不幸的是,没有办法使用OpenAPI 规范 2.0来表示。

此处正在跟踪此问题,可能会在规范的未来版本中解决。