old_contents: import json
  from enum import IntEnum
  from pydantic import BaseModel, Schema
  
  class FooBar(BaseModel):
      count: int
      size: float = None
  
  class Gender(IntEnum):
      male = 1
      female = 2
      other = 3
      not_given = 4
  
  class MainModel(BaseModel):
      """
      This is the description of the main model
      """
      foo_bar: FooBar = Schema(...)
      gender: Gender = Schema(
          None,
          alias='Gender',
          choice_names={3: 'Other Gender', 4: "I'd rather not say"}
      )
      snap: int = Schema(
          42,
          title='The Snap',
          description='this is the value of snap'
      )
  
      class Config:
          title = 'Main'
  
  debug(MainModel.schema())
  # > {
  #       'type': 'object',
  #       'title': 'Main',
  #       'properties': {
  #           'foo_bar': {
  #           ...
  print(MainModel.schema_json(indent=2))
  
new_contents: from enum import IntEnum
  from pydantic import BaseModel, Schema
  
  class FooBar(BaseModel):
      count: int
      size: float = None
  
  class Gender(IntEnum):
      male = 1
      female = 2
      other = 3
      not_given = 4
  
  class MainModel(BaseModel):
      """
      This is the description of the main model
      """
      foo_bar: FooBar = Schema(...)
      gender: Gender = Schema(
          None,
          alias='Gender',
          choice_names={3: 'Other Gender', 4: "I'd rather not say"}
      )
      snap: int = Schema(
          42,
          title='The Snap',
          description='this is the value of snap'
      )
  
      class Config:
          title = 'Main'
  
  print(MainModel.schema())
  # > {
  #       'type': 'object',
  #       'title': 'Main',
  #       'properties': {
  #           'foo_bar': {
  #           ...
  print(MainModel.schema_json(indent=2))
  
subject: fix schema creation docs (#212)