"Comment" 是 Open API 3.0 规范或 Swagger 编辑器中的受保护词吗?

Is "Comment" a protected word in the Open API 3.0 spec or Swagger Editor?

我目前正在使用 Swagger 编辑器 (v3.1.9) 和 Open API 3 规范制定 API 规范。

我得到一些特别针对我命名为 Comment

的架构组件的特殊行为
Comment:
    description: "A comment on an asset or submission"
    allOf:
    - $ref: "#/components/schemas/Message"
    type: object
    properties:
      parent:
        oneOf:
        - $ref: "#/components/schemas/Asset"
        - $ref: "#/components/schemas/Submission"

在UI中呈现为(继承自Message的none)

Comment   {
    description: A comment on an asset or submission
    parent     {
                oneOf ->    {
               }
             v {
             }
        }
}

但是,如果我将其重命名为其他名称,比如 Commentary 它将完全呈现(继承自 Message):

Commentary{
    description:    A comment on an asset or submission
    id  string($uuid)
    example: f1907c82-2c5f-4f60-8cd9-12647d411822
    author  User{...}
    body    string
            example: Lorem ipsum dolor sit amet
    message_type    string
                example: DiscussionPost
    parent  {
            oneOf ->    Asset{...}
                        Submission{...}
            }
}

我唯一能想到的是,在 Open API 规范或 Swagger 编辑器中的一个或两个中有一个用于评论的保留字。我想知道的主要事情是这是否确实是一个错误,或者我是否应该避免使用这个名称(如果是这样,如果还有其他我应该避免的名称)

不,Comment 不是保留字。您的架构是正确的。

模式呈现问题似乎是一个错误,现已修复。您的模式在最新的 Swagger 编辑器中正确呈现。