Make PathItem a referenceable object
Path items can be referenced but they are a special case for a couple of reasons.
a) they don't have a home in components
b) the reference doesn't work like a normal JSON reference because peer properties in the target path item are not ignored, they are merged.
Could you remind me where PathItem is referenced? Are we talking about the PathItem in the Callback object?
@PerthCharern It is the first fixed field in a PathItem object https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.1.md#pathItemObject
What do you think about the Operation object? Potentially, it can also be a referenceable object?
https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md#linkObject
The link object can refer to the Operation by its id.
And yes, PathItem should also be handled.
@PerthCharern That's an interesting thought. It certainly would help to prevent breakage when people rename Ids. Although we would need to decide what to do about the OperationRef vs OperationId situation. It also adds to my questions about what does it mean if you edit an instance that is an external reference.