Add new Plantuml generator for creating a schema diagram#6255
Merged
wing328 merged 25 commits intoOpenAPITools:masterfrom May 14, 2020
Merged
Add new Plantuml generator for creating a schema diagram#6255wing328 merged 25 commits intoOpenAPITools:masterfrom
wing328 merged 25 commits intoOpenAPITools:masterfrom
Conversation
added 2 commits
May 13, 2020 15:21
…unique but apparently they can be shared if they have identical properties!
Member
|
@pburls thanks for the PR, which looks good to start with. I may file another PR with very minor improvements. |
Member
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Resolves #6236
In the issue above, I recently requested a way to generate a "Class Diagram" for the schemas in an OpenAPI spec.
This PR attempts to resolve this by adding a new "plantuml" documentation generator that generates a
schemas.plantumlfile that contains a Class plantuml diagram code (with some Entity diagram syntax).The following diagram features are provided by this generator:
entityis created for each schema modelallOfsyntax ("inheritance relationship").The petstore.yaml sample spec results in the following rendered plantuml diagram:

The allOf.yaml sample spec results in the following rendered plantuml diagram:

PR checklist
./bin/(or Windows batch scripts under.\bin\windows) to update Petstore samples related to your fix. This is important, as CI jobs will verify all generator outputs of your HEAD commit, and these must match the expectations made by your contribution. You only need to run./bin/{LANG}-petstore.sh,./bin/openapi3/{LANG}-petstore.shif updating the code or mustache templates for a language ({LANG}) (e.g. php, ruby, python, etc).master,4.3.x,5.0.x. Default:master.