"""empty message

Revision ID: 1bb063a1b1e5
Revises: None
Create Date: 2016-03-23 14:22:28.398054

"""

# revision identifiers, used by Alembic.
revision = '1bb063a1b1e5'
down_revision = None

from alembic import op
import sqlalchemy as sa
import sil_fhir_server


def upgrade():
    ### commands auto generated by Alembic - please adjust! ###
    op.create_table('Age',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('system', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('unit', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('value', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('comparator', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Annotation',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('authorString', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('time', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Attachment',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('contentType', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('creation', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('data', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('hash', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('size', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('title', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('url', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Coding',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('display', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('system', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('userSelected', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('version', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Count',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('system', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('unit', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('value', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('comparator', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Distance',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('system', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('unit', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('value', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('comparator', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Duration',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('system', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('unit', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('value', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('comparator', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ElementDefinitionBase',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('max', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('min', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('path', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ElementDefinitionBinding',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('strength', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueSetReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueSetUri', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ElementDefinitionConstraint',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('human', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('key', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('requirements', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('severity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('xpath', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ElementDefinitionMapping',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('identity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('map', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ElementDefinitionSlicing',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('discriminator', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('ordered', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('rules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ElementDefinitionType',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('aggregation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('profile', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Money',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('system', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('unit', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('value', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('comparator', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Narrative',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('div', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Period',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('end', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('start', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Quantity',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('system', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('unit', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('value', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('comparator', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Reference',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('display', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('SimpleQuantity',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('system', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('unit', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('value', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Address',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('city', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('country', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('district', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('line', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('period', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('postalCode', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('state', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('use', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['period'], ['Period.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('CodeableConcept',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('coding', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['coding'], ['Coding.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ContactPoint',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('period', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('rank', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('system', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('use', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('value', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['period'], ['Period.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('HumanName',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('family', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('given', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('period', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('prefix', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('suffix', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('use', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['period'], ['Period.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Meta',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('lastUpdated', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('profile', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('security', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('tag', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('versionId', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['security'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['tag'], ['Coding.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Range',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('high', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('low', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['high'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['low'], ['Quantity.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Ratio',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('denominator', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('numerator', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['denominator'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['numerator'], ['Quantity.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('SampledData',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('data', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('dimensions', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('factor', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('lowerLimit', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('origin', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('period', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('upperLimit', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.ForeignKeyConstraint(['origin'], ['Quantity.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Signature',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('blob', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('contentType', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('when', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('whoUri', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['type'], ['Coding.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Binary',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('content', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('contentType', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Identifier',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('period', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('system', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('use', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('value', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['period'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('TimingRepeat',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('boundsPeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('boundsQuantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('boundsRange', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('count', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('duration', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('durationMax', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('durationUnits', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('frequency', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('frequencyMax', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('period', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('periodMax', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('periodUnits', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('when', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['boundsPeriod'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['boundsQuantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['boundsRange'], ['Range.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Timing',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('event', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('repeat', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['code'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['repeat'], ['TimingRepeat.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ElementDefinition',
    *[sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('alias', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('base', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('binding', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('comments', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('condition', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('constraint', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('defaultValueAddress', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('defaultValueAnnotation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('defaultValueAttachment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('defaultValueBase64Binary', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('defaultValueBoolean', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('defaultValueCode', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('defaultValueCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('defaultValueCoding', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('defaultValueContactPoint', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('defaultValueDate', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('defaultValueDateTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('defaultValueDecimal', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('defaultValueHumanName', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('defaultValueId', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('defaultValueIdentifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('defaultValueInstant', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('defaultValueInteger', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('defaultValueMarkdown', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('defaultValueMeta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('defaultValueOid', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('defaultValuePeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('defaultValuePositiveInt', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('defaultValueQuantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('defaultValueRange', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('defaultValueRatio', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('defaultValueReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('defaultValueSampledData', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('defaultValueSignature', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('defaultValueString', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('defaultValueTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('defaultValueTiming', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('defaultValueUnsignedInt', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('defaultValueUri', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('definition', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('exampleAddress', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('exampleAnnotation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('exampleAttachment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('exampleBase64Binary', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('exampleBoolean', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('exampleCode', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('exampleCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('exampleCoding', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('exampleContactPoint', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('exampleDate', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('exampleDateTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('exampleDecimal', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('exampleHumanName', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('exampleId', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('exampleIdentifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('exampleInstant', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('exampleInteger', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('exampleMarkdown', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('exampleMeta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('exampleOid', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('examplePeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('examplePositiveInt', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('exampleQuantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('exampleRange', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('exampleRatio', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('exampleReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('exampleSampledData', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('exampleSignature', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('exampleString', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('exampleTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('exampleTiming', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('exampleUnsignedInt', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('exampleUri', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fixedAddress', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fixedAnnotation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fixedAttachment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fixedBase64Binary', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fixedBoolean', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('fixedCode', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fixedCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fixedCoding', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fixedContactPoint', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fixedDate', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('fixedDateTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('fixedDecimal', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('fixedHumanName', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fixedId', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fixedIdentifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fixedInstant', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('fixedInteger', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('fixedMarkdown', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fixedMeta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fixedOid', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fixedPeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fixedPositiveInt', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('fixedQuantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fixedRange', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fixedRatio', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fixedReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fixedSampledData', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fixedSignature', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fixedString', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fixedTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('fixedTiming', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fixedUnsignedInt', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('fixedUri', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('isModifier', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('isSummary', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('label', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('mapping', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('max', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maxLength', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('maxValueAddress', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maxValueAnnotation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maxValueAttachment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maxValueBase64Binary', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maxValueBoolean', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('maxValueCode', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maxValueCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maxValueCoding', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maxValueContactPoint', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maxValueDate', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('maxValueDateTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('maxValueDecimal', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('maxValueHumanName', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maxValueId', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maxValueIdentifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maxValueInstant', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('maxValueInteger', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('maxValueMarkdown', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maxValueMeta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maxValueOid', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maxValuePeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maxValuePositiveInt', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('maxValueQuantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maxValueRange', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maxValueRatio', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maxValueReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maxValueSampledData', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maxValueSignature', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maxValueString', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maxValueTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('maxValueTiming', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maxValueUnsignedInt', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('maxValueUri', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meaningWhenMissing', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('min', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('minValueAddress', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('minValueAnnotation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('minValueAttachment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('minValueBase64Binary', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('minValueBoolean', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('minValueCode', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('minValueCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('minValueCoding', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('minValueContactPoint', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('minValueDate', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('minValueDateTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('minValueDecimal', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('minValueHumanName', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('minValueId', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('minValueIdentifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('minValueInstant', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('minValueInteger', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('minValueMarkdown', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('minValueMeta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('minValueOid', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('minValuePeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('minValuePositiveInt', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('minValueQuantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('minValueRange', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('minValueRatio', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('minValueReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('minValueSampledData', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('minValueSignature', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('minValueString', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('minValueTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('minValueTiming', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('minValueUnsignedInt', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('minValueUri', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('mustSupport', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('nameReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('path', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patternAddress', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patternAnnotation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patternAttachment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patternBase64Binary', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patternBoolean', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('patternCode', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patternCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patternCoding', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patternContactPoint', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patternDate', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('patternDateTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('patternDecimal', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('patternHumanName', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patternId', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patternIdentifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patternInstant', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('patternInteger', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('patternMarkdown', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patternMeta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patternOid', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patternPeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patternPositiveInt', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('patternQuantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patternRange', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patternRatio', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patternReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patternSampledData', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patternSignature', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patternString', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patternTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('patternTiming', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patternUnsignedInt', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('patternUri', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('representation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('requirements', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('short', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('slicing', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['base'], ['ElementDefinitionBase.id'], ),
    sa.ForeignKeyConstraint(['binding'], ['ElementDefinitionBinding.id'], ),
    sa.ForeignKeyConstraint(['code'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['constraint'], ['ElementDefinitionConstraint.id'], ),
    sa.ForeignKeyConstraint(['defaultValueAddress'], ['Address.id'], ),
    sa.ForeignKeyConstraint(['defaultValueAnnotation'], ['Annotation.id'], ),
    sa.ForeignKeyConstraint(['defaultValueAttachment'], ['Attachment.id'], ),
    sa.ForeignKeyConstraint(['defaultValueCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['defaultValueCoding'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['defaultValueContactPoint'], ['ContactPoint.id'], ),
    sa.ForeignKeyConstraint(['defaultValueHumanName'], ['HumanName.id'], ),
    sa.ForeignKeyConstraint(['defaultValueIdentifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['defaultValueMeta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['defaultValuePeriod'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['defaultValueQuantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['defaultValueRange'], ['Range.id'], ),
    sa.ForeignKeyConstraint(['defaultValueRatio'], ['Ratio.id'], ),
    sa.ForeignKeyConstraint(['defaultValueSampledData'], ['SampledData.id'], ),
    sa.ForeignKeyConstraint(['defaultValueSignature'], ['Signature.id'], ),
    sa.ForeignKeyConstraint(['defaultValueTiming'], ['Timing.id'], ),
    sa.ForeignKeyConstraint(['exampleAddress'], ['Address.id'], ),
    sa.ForeignKeyConstraint(['exampleAnnotation'], ['Annotation.id'], ),
    sa.ForeignKeyConstraint(['exampleAttachment'], ['Attachment.id'], ),
    sa.ForeignKeyConstraint(['exampleCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['exampleCoding'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['exampleContactPoint'], ['ContactPoint.id'], ),
    sa.ForeignKeyConstraint(['exampleHumanName'], ['HumanName.id'], ),
    sa.ForeignKeyConstraint(['exampleIdentifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['exampleMeta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['examplePeriod'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['exampleQuantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['exampleRange'], ['Range.id'], ),
    sa.ForeignKeyConstraint(['exampleRatio'], ['Ratio.id'], ),
    sa.ForeignKeyConstraint(['exampleSampledData'], ['SampledData.id'], ),
    sa.ForeignKeyConstraint(['exampleSignature'], ['Signature.id'], ),
    sa.ForeignKeyConstraint(['exampleTiming'], ['Timing.id'], ),
    sa.ForeignKeyConstraint(['fixedAddress'], ['Address.id'], ),
    sa.ForeignKeyConstraint(['fixedAnnotation'], ['Annotation.id'], ),
    sa.ForeignKeyConstraint(['fixedAttachment'], ['Attachment.id'], ),
    sa.ForeignKeyConstraint(['fixedCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['fixedCoding'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['fixedContactPoint'], ['ContactPoint.id'], ),
    sa.ForeignKeyConstraint(['fixedHumanName'], ['HumanName.id'], ),
    sa.ForeignKeyConstraint(['fixedIdentifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['fixedMeta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['fixedPeriod'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['fixedQuantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['fixedRange'], ['Range.id'], ),
    sa.ForeignKeyConstraint(['fixedRatio'], ['Ratio.id'], ),
    sa.ForeignKeyConstraint(['fixedSampledData'], ['SampledData.id'], ),
    sa.ForeignKeyConstraint(['fixedSignature'], ['Signature.id'], ),
    sa.ForeignKeyConstraint(['fixedTiming'], ['Timing.id'], ),
    sa.ForeignKeyConstraint(['mapping'], ['ElementDefinitionMapping.id'], ),
    sa.ForeignKeyConstraint(['maxValueAddress'], ['Address.id'], ),
    sa.ForeignKeyConstraint(['maxValueAnnotation'], ['Annotation.id'], ),
    sa.ForeignKeyConstraint(['maxValueAttachment'], ['Attachment.id'], ),
    sa.ForeignKeyConstraint(['maxValueCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['maxValueCoding'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['maxValueContactPoint'], ['ContactPoint.id'], ),
    sa.ForeignKeyConstraint(['maxValueHumanName'], ['HumanName.id'], ),
    sa.ForeignKeyConstraint(['maxValueIdentifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['maxValueMeta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['maxValuePeriod'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['maxValueQuantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['maxValueRange'], ['Range.id'], ),
    sa.ForeignKeyConstraint(['maxValueRatio'], ['Ratio.id'], ),
    sa.ForeignKeyConstraint(['maxValueSampledData'], ['SampledData.id'], ),
    sa.ForeignKeyConstraint(['maxValueSignature'], ['Signature.id'], ),
    sa.ForeignKeyConstraint(['maxValueTiming'], ['Timing.id'], ),
    sa.ForeignKeyConstraint(['minValueAddress'], ['Address.id'], ),
    sa.ForeignKeyConstraint(['minValueAnnotation'], ['Annotation.id'], ),
    sa.ForeignKeyConstraint(['minValueAttachment'], ['Attachment.id'], ),
    sa.ForeignKeyConstraint(['minValueCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['minValueCoding'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['minValueContactPoint'], ['ContactPoint.id'], ),
    sa.ForeignKeyConstraint(['minValueHumanName'], ['HumanName.id'], ),
    sa.ForeignKeyConstraint(['minValueIdentifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['minValueMeta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['minValuePeriod'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['minValueQuantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['minValueRange'], ['Range.id'], ),
    sa.ForeignKeyConstraint(['minValueRatio'], ['Ratio.id'], ),
    sa.ForeignKeyConstraint(['minValueSampledData'], ['SampledData.id'], ),
    sa.ForeignKeyConstraint(['minValueSignature'], ['Signature.id'], ),
    sa.ForeignKeyConstraint(['minValueTiming'], ['Timing.id'], ),
    sa.ForeignKeyConstraint(['patternAddress'], ['Address.id'], ),
    sa.ForeignKeyConstraint(['patternAnnotation'], ['Annotation.id'], ),
    sa.ForeignKeyConstraint(['patternAttachment'], ['Attachment.id'], ),
    sa.ForeignKeyConstraint(['patternCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['patternCoding'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['patternContactPoint'], ['ContactPoint.id'], ),
    sa.ForeignKeyConstraint(['patternHumanName'], ['HumanName.id'], ),
    sa.ForeignKeyConstraint(['patternIdentifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['patternMeta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['patternPeriod'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['patternQuantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['patternRange'], ['Range.id'], ),
    sa.ForeignKeyConstraint(['patternRatio'], ['Ratio.id'], ),
    sa.ForeignKeyConstraint(['patternSampledData'], ['SampledData.id'], ),
    sa.ForeignKeyConstraint(['patternSignature'], ['Signature.id'], ),
    sa.ForeignKeyConstraint(['patternTiming'], ['Timing.id'], ),
    sa.ForeignKeyConstraint(['slicing'], ['ElementDefinitionSlicing.id'], ),
    sa.ForeignKeyConstraint(['type'], ['ElementDefinitionType.id'], ),
    sa.PrimaryKeyConstraint('id')]
    )
    op.create_table('Extension',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('url', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueAddress', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueAnnotation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueAttachment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueBase64Binary', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueBoolean', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('valueCode', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueCoding', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueContactPoint', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueDate', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('valueDateTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('valueDecimal', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('valueHumanName', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueId', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueIdentifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueInstant', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('valueInteger', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('valueMarkdown', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueMeta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueOid', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valuePeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valuePositiveInt', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('valueQuantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueRange', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueRatio', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueSampledData', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueSignature', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueString', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('valueTiming', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueUnsignedInt', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('valueUri', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['valueAddress'], ['Address.id'], ),
    sa.ForeignKeyConstraint(['valueAnnotation'], ['Annotation.id'], ),
    sa.ForeignKeyConstraint(['valueAttachment'], ['Attachment.id'], ),
    sa.ForeignKeyConstraint(['valueCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['valueCoding'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['valueContactPoint'], ['ContactPoint.id'], ),
    sa.ForeignKeyConstraint(['valueHumanName'], ['HumanName.id'], ),
    sa.ForeignKeyConstraint(['valueIdentifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['valueMeta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['valuePeriod'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['valueQuantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['valueRange'], ['Range.id'], ),
    sa.ForeignKeyConstraint(['valueRatio'], ['Ratio.id'], ),
    sa.ForeignKeyConstraint(['valueSampledData'], ['SampledData.id'], ),
    sa.ForeignKeyConstraint(['valueSignature'], ['Signature.id'], ),
    sa.ForeignKeyConstraint(['valueTiming'], ['Timing.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Account',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('activePeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('balance', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('coveragePeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('currency', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['activePeriod'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['balance'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['coveragePeriod'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['currency'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('AppointmentParticipant',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('required', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('AppointmentResponse',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('comment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('end', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('participantStatus', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('participantType', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('start', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['participantType'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('AuditEventEvent',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('action', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('dateTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('outcome', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('outcomeDesc', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('purposeOfEvent', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subtype', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['purposeOfEvent'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['subtype'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['type'], ['Coding.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('AuditEventObjectDetail',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('value', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('AuditEventParticipantNetwork',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('address', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('AuditEventSource',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('site', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['type'], ['Coding.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Basic',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('created', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['code'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('BodySite',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('image', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['code'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['image'], ['Attachment.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifier'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('BundleEntryRequest',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('ifMatch', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('ifModifiedSince', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('ifNoneExist', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('ifNoneMatch', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('method', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('url', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('BundleEntryResponse',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('etag', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('lastModified', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('location', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('BundleEntrySearch',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('mode', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('score', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('BundleLink',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('relation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('url', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('CarePlanActivityDetail',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('category', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('dailyAmount', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('goal', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('location', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('performer', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('productCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('productReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('prohibited', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('quantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reasonCode', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reasonReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('scheduledPeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('scheduledString', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('scheduledTiming', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('statusReason', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['category'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['code'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['dailyAmount'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['productCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['quantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['reasonCode'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['scheduledPeriod'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['scheduledTiming'], ['Timing.id'], ),
    sa.ForeignKeyConstraint(['statusReason'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('CarePlanParticipant',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('member', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('role', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['role'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('CarePlanRelatedPlan',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('plan', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ClaimCoverage',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('businessArrangement', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('claimResponse', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('coverage', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('focal', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('originalRuleset', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('preAuthRef', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('relationship', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('sequence', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['originalRuleset'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['relationship'], ['Coding.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ClaimDiagnosis',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('diagnosis', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('sequence', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['diagnosis'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ClaimItemDetailSubDetail',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('factor', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('net', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('points', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('quantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('sequence', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('service', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('udi', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('unitPrice', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['net'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['quantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['service'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['type'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['udi'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['unitPrice'], ['Quantity.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ClaimItemProsthesis',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('initial', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('priorDate', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('priorMaterial', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['priorMaterial'], ['Coding.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ClaimMissingTeeth',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('extractionDate', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('reason', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('tooth', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['reason'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['tooth'], ['Coding.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ClaimPayee',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('organization', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('person', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('provider', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['type'], ['Coding.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ClaimResponseAddItemAdjudication',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('amount', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('value', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['amount'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['code'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ClaimResponseAddItemDetailAdjudication',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('amount', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('value', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['amount'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['code'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ClaimResponseCoverage',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('businessArrangement', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('claimResponse', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('coverage', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('focal', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('originalRuleset', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('preAuthRef', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('relationship', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('sequence', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['originalRuleset'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['relationship'], ['Coding.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ClaimResponseError',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('detailSequenceLinkId', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('sequenceLinkId', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('subdetailSequenceLinkId', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['code'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ClaimResponseItemAdjudication',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('amount', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('value', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['amount'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['code'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ClaimResponseItemDetailAdjudication',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('amount', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('value', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['amount'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['code'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ClaimResponseItemDetailSubDetailAdjudication',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('amount', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('value', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['amount'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['code'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ClaimResponseNote',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('number', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['type'], ['Coding.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ClinicalImpressionFinding',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('cause', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('item', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['item'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ClinicalImpressionInvestigations',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('item', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['code'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ClinicalImpressionRuledOut',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('item', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reason', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['item'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('CommunicationPayload',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('contentAttachment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('contentReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('contentString', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['contentAttachment'], ['Attachment.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('CommunicationRequestPayload',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('contentAttachment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('contentReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('contentString', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['contentAttachment'], ['Attachment.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('CompositionAttester',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('mode', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('party', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('time', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('CompositionEvent',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('detail', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('period', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['code'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['period'], ['Period.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('CompositionSection',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('emptyReason', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('entry', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('mode', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('orderedBy', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('section', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('title', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['code'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['emptyReason'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['orderedBy'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['section'], ['CompositionSection.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ConceptMapContact',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('telecom', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['telecom'], ['ContactPoint.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ConceptMapElementTargetDependsOn',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('codeSystem', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('element', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ConditionEvidence',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('detail', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['code'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ConditionStage',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('assessment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('summary', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['summary'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ConformanceContact',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('telecom', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['telecom'], ['ContactPoint.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ConformanceDocument',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('documentation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('mode', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('profile', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ConformanceImplementation',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('url', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ConformanceMessagingEndpoint',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('address', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('protocol', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['protocol'], ['Coding.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ConformanceMessagingEvent',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('category', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('documentation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('focus', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('mode', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('request', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('response', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['code'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ConformanceRestInteraction',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('documentation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ConformanceRestOperation',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('definition', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ConformanceRestResourceInteraction',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('documentation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ConformanceRestResourceSearchParam',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('chain', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('definition', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('documentation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('target', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ConformanceRestSecurityCertificate',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('blob', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ConformanceSoftware',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('releaseDate', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('version', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ContractActor',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('entity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('role', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['role'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ContractFriendly',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('contentAttachment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('contentReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['contentAttachment'], ['Attachment.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ContractLegal',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('contentAttachment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('contentReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['contentAttachment'], ['Attachment.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ContractRule',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('contentAttachment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('contentReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['contentAttachment'], ['Attachment.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ContractSigner',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('party', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('signature', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['type'], ['Coding.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ContractTermActor',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('entity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('role', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['role'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ContractTermValuedItem',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('effectiveTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('entityCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('entityReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('factor', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('net', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('points', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('quantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('unitPrice', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['entityCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['net'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['quantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['unitPrice'], ['Quantity.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ContractValuedItem',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('effectiveTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('entityCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('entityReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('factor', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('net', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('points', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('quantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('unitPrice', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['entityCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['net'], ['Money.id'], ),
    sa.ForeignKeyConstraint(['quantity'], ['SimpleQuantity.id'], ),
    sa.ForeignKeyConstraint(['unitPrice'], ['Money.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Coverage',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('bin', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('contract', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('dependent', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('group', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('issuer', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('network', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('period', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('plan', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('sequence', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('subPlan', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subscriber', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subscriberId', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['bin'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['network'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['period'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['subscriberId'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['type'], ['Coding.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('DataElementContact',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('telecom', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['telecom'], ['ContactPoint.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('DataElementMapping',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('comments', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('uri', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('DetectedIssueMitigation',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('action', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('author', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('date', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['action'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Device',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('contact', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('expiry', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('location', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('lotNumber', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('manufactureDate', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('manufacturer', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('model', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('note', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('owner', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patient', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('udi', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('url', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('version', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['contact'], ['ContactPoint.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['note'], ['Annotation.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('DeviceComponentProductionSpecification',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('componentId', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('productionSpec', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('specType', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['componentId'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['specType'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('DeviceMetricCalibration',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('state', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('time', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('DeviceUseRequest',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('bodySiteCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('bodySiteReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('device', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('encounter', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('indication', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('notes', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('orderedOn', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('priority', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('prnReason', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('recordedOn', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subject', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('timingDateTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('timingPeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('timingTiming', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['bodySiteCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['indication'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['prnReason'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['timingPeriod'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['timingTiming'], ['Timing.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('DeviceUseStatement',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('bodySiteCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('bodySiteReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('device', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('indication', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('notes', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('recordedOn', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('subject', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('timingDateTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('timingPeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('timingTiming', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('whenUsed', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['bodySiteCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['indication'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['timingPeriod'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['timingTiming'], ['Timing.id'], ),
    sa.ForeignKeyConstraint(['whenUsed'], ['Period.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('DiagnosticOrderEvent',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('actor', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('dateTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['description'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('DiagnosticReportImage',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('comment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('link', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('DocumentManifestContent',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('pAttachment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('pReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['pAttachment'], ['Attachment.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('DocumentManifestRelated',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('ref', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('DocumentReferenceContent',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('attachment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('format', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['attachment'], ['Attachment.id'], ),
    sa.ForeignKeyConstraint(['format'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('DocumentReferenceContextRelated',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('ref', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('DocumentReferenceRelatesTo',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('target', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('EligibilityRequest',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('created', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('organization', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('originalRuleset', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('provider', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('ruleset', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('target', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['originalRuleset'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['ruleset'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('EligibilityResponse',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('created', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('disposition', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('organization', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('originalRuleset', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('outcome', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('request', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('requestOrganization', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('requestProvider', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('ruleset', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['originalRuleset'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['ruleset'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('EncounterHospitalization',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('admitSource', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('admittingDiagnosis', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('destination', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('dietPreference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('dischargeDiagnosis', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('dischargeDisposition', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('origin', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('preAdmissionIdentifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reAdmission', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('specialArrangement', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('specialCourtesy', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['admitSource'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['dietPreference'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['dischargeDisposition'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['preAdmissionIdentifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['reAdmission'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['specialArrangement'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['specialCourtesy'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('EncounterLocation',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('location', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('period', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['period'], ['Period.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('EncounterParticipant',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('individual', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('period', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['period'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('EncounterStatusHistory',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('period', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['period'], ['Period.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('EnrollmentRequest',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('coverage', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('created', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('organization', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('originalRuleset', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('provider', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('relationship', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('ruleset', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subject', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('target', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['originalRuleset'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['relationship'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['ruleset'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('EnrollmentResponse',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('created', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('disposition', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('organization', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('originalRuleset', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('outcome', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('request', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('requestOrganization', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('requestProvider', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('ruleset', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['originalRuleset'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['ruleset'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('EpisodeOfCareCareTeam',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('member', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('period', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('role', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['period'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['role'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('EpisodeOfCareStatusHistory',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('period', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['period'], ['Period.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ExplanationOfBenefit',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('created', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('disposition', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('organization', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('originalRuleset', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('outcome', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('request', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('requestOrganization', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('requestProvider', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('ruleset', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['originalRuleset'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['ruleset'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Flag',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('author', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('category', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('encounter', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('period', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subject', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['category'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['code'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['period'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('GoalOutcome',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('resultCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('resultReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['resultCodeableConcept'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('GroupCharacteristic',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('exclude', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('period', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueBoolean', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('valueCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueQuantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueRange', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['code'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['period'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['valueCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['valueQuantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['valueRange'], ['Range.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('GroupMember',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('entity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('inactive', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('period', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['period'], ['Period.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('HealthcareServiceAvailableTime',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('allDay', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('availableEndTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('availableStartTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('daysOfWeek', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('HealthcareServiceNotAvailable',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('during', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['during'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('HealthcareServiceServiceType',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('specialty', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['specialty'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ImagingObjectSelectionStudySeriesInstanceFrames',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('frameNumbers', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('url', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ImagingStudySeriesInstance',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('content', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('number', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('sopClass', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('title', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('uid', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['content'], ['Attachment.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ImmunizationExplanation',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('reason', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reasonNotGiven', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['reason'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['reasonNotGiven'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ImmunizationReaction',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('date', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('detail', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reported', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ImmunizationRecommendationRecommendationDateCriterion',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('value', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['code'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ImmunizationRecommendationRecommendationProtocol',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('authority', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('doseSequence', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('series', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ImmunizationVaccinationProtocol',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('authority', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('doseSequence', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('doseStatus', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('doseStatusReason', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('series', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('seriesDoses', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('targetDisease', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['doseStatus'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['doseStatusReason'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['targetDisease'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ListEntry',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('date', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('deleted', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('flag', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('item', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['flag'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('LocationPosition',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('altitude', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('latitude', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('longitude', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Media',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('content', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('deviceName', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('duration', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('frames', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('height', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('operator', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subject', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subtype', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('view', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('width', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['content'], ['Attachment.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['subtype'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['view'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('MedicationAdministrationDosage',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('method', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('quantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('rateRange', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('rateRatio', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('route', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('siteCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('siteReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['method'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['quantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['rateRange'], ['Range.id'], ),
    sa.ForeignKeyConstraint(['rateRatio'], ['Ratio.id'], ),
    sa.ForeignKeyConstraint(['route'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['siteCodeableConcept'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('MedicationDispenseDosageInstruction',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('additionalInstructions', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('asNeededBoolean', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('asNeededCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('doseQuantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('doseRange', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maxDosePerPeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('method', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('rateRange', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('rateRatio', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('route', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('siteCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('siteReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('timing', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['additionalInstructions'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['asNeededCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['doseQuantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['doseRange'], ['Range.id'], ),
    sa.ForeignKeyConstraint(['maxDosePerPeriod'], ['Ratio.id'], ),
    sa.ForeignKeyConstraint(['method'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['rateRange'], ['Range.id'], ),
    sa.ForeignKeyConstraint(['rateRatio'], ['Ratio.id'], ),
    sa.ForeignKeyConstraint(['route'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['siteCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['timing'], ['Timing.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('MedicationDispenseSubstitution',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('reason', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('responsibleParty', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['reason'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('MedicationPackageContent',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('amount', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('item', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['amount'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('MedicationProductBatch',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('expirationDate', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('lotNumber', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('MedicationProductIngredient',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('amount', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('item', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['amount'], ['Ratio.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('NamingSystemContact',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('telecom', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['telecom'], ['ContactPoint.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('NamingSystemUniqueId',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('period', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('preferred', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('value', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['period'], ['Period.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('NutritionOrderEnteralFormulaAdministration',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('quantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('rateQuantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('rateRatio', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('schedule', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['quantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['rateQuantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['rateRatio'], ['Ratio.id'], ),
    sa.ForeignKeyConstraint(['schedule'], ['Timing.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('NutritionOrderOralDietNutrient',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('amount', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['amount'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['modifier'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('NutritionOrderOralDietTexture',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('foodType', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['foodType'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifier'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('NutritionOrderSupplement',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('instruction', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('productName', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('quantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('schedule', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['quantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['schedule'], ['Timing.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ObservationReferenceRange',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('age', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('high', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('low', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meaning', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['age'], ['Range.id'], ),
    sa.ForeignKeyConstraint(['high'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['low'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['meaning'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ObservationRelated',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('target', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('OperationDefinitionContact',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('telecom', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['telecom'], ['ContactPoint.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('OperationDefinitionParameterBinding',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('strength', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueSetReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueSetUri', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('OperationOutcomeIssue',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('details', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('diagnostics', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('location', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('severity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['details'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('OrderResponse',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('date', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fulfillment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('orderStatus', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('request', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('who', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('OrderWhen',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('schedule', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['code'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['schedule'], ['Timing.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('OrganizationContact',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('address', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('purpose', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('telecom', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['address'], ['Address.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['name'], ['HumanName.id'], ),
    sa.ForeignKeyConstraint(['purpose'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['telecom'], ['ContactPoint.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('PatientAnimal',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('breed', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('genderStatus', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('species', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['breed'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['genderStatus'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['species'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('PatientCommunication',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('preferred', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['language'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('PatientContact',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('address', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('gender', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('organization', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('period', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('relationship', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('telecom', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['address'], ['Address.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['name'], ['HumanName.id'], ),
    sa.ForeignKeyConstraint(['period'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['relationship'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['telecom'], ['ContactPoint.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('PatientLink',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('other', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('PaymentNotice',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('created', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('organization', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('originalRuleset', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('paymentStatus', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('provider', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('request', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('response', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('ruleset', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('target', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['originalRuleset'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['paymentStatus'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['ruleset'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('PersonLink',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('assurance', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('target', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('PractitionerPractitionerRole',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('healthcareService', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('location', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('managingOrganization', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('period', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('role', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('specialty', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['period'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['role'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['specialty'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('PractitionerQualification',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('issuer', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('period', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['code'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['period'], ['Period.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ProcedureFocalDevice',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('action', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('manipulated', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['action'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ProcedurePerformer',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('actor', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('role', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['role'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ProcedureRequest',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('asNeededBoolean', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('asNeededCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('bodySite', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('encounter', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('notes', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('orderedOn', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('orderer', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('performer', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('priority', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reasonCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reasonReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('scheduledDateTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('scheduledPeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('scheduledTiming', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subject', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['asNeededCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['bodySite'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['code'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['notes'], ['Annotation.id'], ),
    sa.ForeignKeyConstraint(['reasonCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['scheduledPeriod'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['scheduledTiming'], ['Timing.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ProcessRequestItem',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('sequenceLinkId', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ProcessResponseNotes',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['type'], ['Coding.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ProvenanceAgentRelatedAgent',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('target', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ReferralRequest',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('date', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('dateSent', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('encounter', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fulfillmentTime', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patient', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('priority', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reason', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('recipient', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('requester', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('serviceRequested', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('specialty', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('supportingInformation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['fulfillmentTime'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['priority'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['reason'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['serviceRequested'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['specialty'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('RelatedPerson',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('address', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('birthDate', sil_fhir_server.data_types.primitives.DateField(), nullable=True),
    sa.Column('gender', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patient', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('period', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('photo', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('relationship', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('telecom', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['address'], ['Address.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['name'], ['HumanName.id'], ),
    sa.ForeignKeyConstraint(['period'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['photo'], ['Attachment.id'], ),
    sa.ForeignKeyConstraint(['relationship'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['telecom'], ['ContactPoint.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('RiskAssessmentPrediction',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('outcome', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('probabilityCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('probabilityDecimal', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('probabilityRange', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('rationale', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('relativeRisk', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('whenPeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('whenRange', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['outcome'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['probabilityCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['probabilityRange'], ['Range.id'], ),
    sa.ForeignKeyConstraint(['whenPeriod'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['whenRange'], ['Range.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Schedule',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('actor', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('comment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('planningHorizon', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['planningHorizon'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Slot',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('comment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('end', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('freeBusyType', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('overbooked', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('schedule', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('start', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('SpecimenCollection',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('bodySite', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('collectedDateTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('collectedPeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('collector', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('comment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('method', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('quantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['bodySite'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['collectedPeriod'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['method'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['quantity'], ['Quantity.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('SpecimenContainer',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('additiveCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('additiveReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('capacity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('specimenQuantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['additiveCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['capacity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['specimenQuantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('SpecimenTreatment',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('additive', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('procedure', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['procedure'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('StructureDefinitionContact',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('telecom', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['telecom'], ['ContactPoint.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('StructureDefinitionDifferential',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('element', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['element'], ['ElementDefinition.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('StructureDefinitionMapping',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('comments', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('uri', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('StructureDefinitionSnapshot',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('element', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['element'], ['ElementDefinition.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('SubscriptionChannel',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('endpoint', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('header', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('payload', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('SubstanceIngredient',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('quantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('substance', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['quantity'], ['Ratio.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('SubstanceInstance',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('expiry', sil_fhir_server.data_types.primitives.DateField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('quantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['quantity'], ['Quantity.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('SupplyDelivery',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('destination', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patient', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('quantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('receiver', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('suppliedItem', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('supplier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('time', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('whenPrepared', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['quantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['whenPrepared'], ['Period.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('SupplyRequestWhen',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('schedule', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['code'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['schedule'], ['Timing.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ValueSetCodeSystemConceptDesignation',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('use', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('value', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['use'], ['Coding.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ValueSetComposeIncludeFilter',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('op', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('property', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('value', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ValueSetContact',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('telecom', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['telecom'], ['ContactPoint.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ValueSetExpansionContains',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('abstract', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('contains', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('display', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('system', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('version', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['contains'], ['ValueSetExpansionContains.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ValueSetExpansionParameter',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueBoolean', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('valueCode', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueDecimal', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('valueInteger', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('valueString', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueUri', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('VisionPrescriptionDispense',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('add', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('axis', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('backCurve', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('base', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('brand', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('color', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('cylinder', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('diameter', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('duration', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('eye', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('notes', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('power', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('prism', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('product', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('sphere', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['duration'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['product'], ['Coding.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Appointment',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('comment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('end', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('minutesDuration', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('participant', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('priority', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('reason', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('start', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['participant'], ['AppointmentParticipant.id'], ),
    sa.ForeignKeyConstraint(['reason'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('AuditEventObject',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('detail', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('lifecycle', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('query', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('role', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('securityLabel', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['detail'], ['AuditEventObjectDetail.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['lifecycle'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['role'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['securityLabel'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['type'], ['Coding.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('AuditEventParticipant',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('altId', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('media', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('network', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('policy', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('purposeOfUse', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('requestor', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('role', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('userId', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['media'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['network'], ['AuditEventParticipantNetwork.id'], ),
    sa.ForeignKeyConstraint(['purposeOfUse'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['role'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['userId'], ['Identifier.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('BundleEntry',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('fullUrl', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('link', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('request', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('resource', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('response', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('search', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['link'], ['BundleLink.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['request'], ['BundleEntryRequest.id'], ),
    sa.ForeignKeyConstraint(['response'], ['BundleEntryResponse.id'], ),
    sa.ForeignKeyConstraint(['search'], ['BundleEntrySearch.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('CarePlanActivity',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('actionResulting', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('detail', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('progress', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['detail'], ['CarePlanActivityDetail.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['progress'], ['Annotation.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ClaimItemDetail',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('factor', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('net', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('points', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('quantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('sequence', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('service', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subDetail', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('udi', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('unitPrice', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['net'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['quantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['service'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['subDetail'], ['ClaimItemDetailSubDetail.id'], ),
    sa.ForeignKeyConstraint(['type'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['udi'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['unitPrice'], ['Quantity.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ClaimResponseAddItemDetail',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('adjudication', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fee', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('service', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['adjudication'], ['ClaimResponseAddItemDetailAdjudication.id'], ),
    sa.ForeignKeyConstraint(['fee'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['service'], ['Coding.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ClaimResponseItemDetailSubDetail',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('adjudication', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('sequenceLinkId', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['adjudication'], ['ClaimResponseItemDetailSubDetailAdjudication.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ClinicalImpression',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('action', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('assessor', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('date', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('finding', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('investigations', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patient', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('plan', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('previous', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('problem', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('prognosis', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('protocol', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('resolved', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('ruledOut', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('summary', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('triggerCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('triggerReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['finding'], ['ClinicalImpressionFinding.id'], ),
    sa.ForeignKeyConstraint(['investigations'], ['ClinicalImpressionInvestigations.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['resolved'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['ruledOut'], ['ClinicalImpressionRuledOut.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['triggerCodeableConcept'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Communication',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('category', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('encounter', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('medium', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('payload', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reason', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('received', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('recipient', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('requestDetail', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('sender', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('sent', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subject', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['category'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['medium'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['payload'], ['CommunicationPayload.id'], ),
    sa.ForeignKeyConstraint(['reason'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('CommunicationRequest',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('category', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('encounter', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('medium', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('payload', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('priority', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reason', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('recipient', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('requestedOn', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('requester', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('scheduledDateTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('scheduledPeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('sender', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subject', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['category'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['medium'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['payload'], ['CommunicationRequestPayload.id'], ),
    sa.ForeignKeyConstraint(['priority'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['reason'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['scheduledPeriod'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Composition',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('attester', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('author', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('class_fhir', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('confidentiality', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('custodian', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('date', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('encounter', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('event', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('section', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subject', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('title', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['attester'], ['CompositionAttester.id'], ),
    sa.ForeignKeyConstraint(['class_fhir'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['event'], ['CompositionEvent.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['section'], ['CompositionSection.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ConceptMapElementTarget',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('codeSystem', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('comments', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('dependsOn', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('equivalence', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('product', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['dependsOn'], ['ConceptMapElementTargetDependsOn.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['product'], ['ConceptMapElementTargetDependsOn.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Condition',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('abatementBoolean', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('abatementDateTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('abatementPeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('abatementQuantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('abatementRange', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('abatementString', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('asserter', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('bodySite', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('category', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('clinicalStatus', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('dateRecorded', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('evidence', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('notes', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('onsetDateTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('onsetPeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('onsetQuantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('onsetRange', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('onsetString', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('encounter', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('severity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('stage', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('verificationStatus', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['abatementPeriod'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['abatementQuantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['abatementRange'], ['Range.id'], ),
    sa.ForeignKeyConstraint(['bodySite'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['category'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['code'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['evidence'], ['ConditionEvidence.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['onsetPeriod'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['onsetQuantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['onsetRange'], ['Range.id'], ),
    sa.ForeignKeyConstraint(['severity'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['stage'], ['ConditionStage.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ConformanceMessaging',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('documentation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('endpoint', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('event', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reliableCache', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['endpoint'], ['ConformanceMessagingEndpoint.id'], ),
    sa.ForeignKeyConstraint(['event'], ['ConformanceMessagingEvent.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ConformanceRestResource',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('conditionalCreate', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('conditionalDelete', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('conditionalUpdate', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('interaction', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('profile', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('readHistory', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('searchInclude', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('searchParam', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('searchRevInclude', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('updateCreate', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('versioning', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['interaction'], ['ConformanceRestResourceInteraction.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['searchParam'], ['ConformanceRestResourceSearchParam.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ConformanceRestSecurity',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('certificate', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('cors', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('service', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['certificate'], ['ConformanceRestSecurityCertificate.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['service'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ContractTerm',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('action', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('actionReason', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('actor', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('applies', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('group', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('issued', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('subType', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subject', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valuedItem', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['action'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['actionReason'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['actor'], ['ContractTermActor.id'], ),
    sa.ForeignKeyConstraint(['applies'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['group'], ['ContractTerm.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['subType'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['valuedItem'], ['ContractTermValuedItem.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('DataElement',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('contact', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('copyright', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('date', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('element', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('experimental', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('mapping', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('publisher', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('stringency', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('url', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('useContext', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('version', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['contact'], ['DataElementContact.id'], ),
    sa.ForeignKeyConstraint(['element'], ['ElementDefinition.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['mapping'], ['DataElementMapping.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['useContext'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('DetectedIssue',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('author', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('category', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('date', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('detail', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('implicated', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('mitigation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patient', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('severity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['category'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['mitigation'], ['DetectedIssueMitigation.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('DeviceComponent',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('languageCode', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('lastSystemChange', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('measurementPrinciple', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('operationalStatus', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('parameterGroup', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('parent', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('productionSpecification', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('source', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['languageCode'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['operationalStatus'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['parameterGroup'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['productionSpecification'], ['DeviceComponentProductionSpecification.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('DeviceMetric',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('calibration', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('category', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('color', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('measurementPeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('operationalStatus', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('parent', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('source', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('unit', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['calibration'], ['DeviceMetricCalibration.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['measurementPeriod'], ['Timing.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['unit'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('DiagnosticOrderItem',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('bodySite', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('event', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('specimen', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['bodySite'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['code'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['event'], ['DiagnosticOrderEvent.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('DiagnosticReport',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('category', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('codedDiagnosis', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('conclusion', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('effectiveDateTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('effectivePeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('encounter', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('image', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('imagingStudy', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('issued', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('performer', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('presentedForm', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('request', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('result', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('specimen', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subject', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['category'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['code'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['codedDiagnosis'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['effectivePeriod'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['image'], ['DiagnosticReportImage.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['presentedForm'], ['Attachment.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('DocumentManifest',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('author', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('content', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('created', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('masterIdentifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('recipient', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('related', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('source', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subject', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['content'], ['DocumentManifestContent.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['masterIdentifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['related'], ['DocumentManifestRelated.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('DocumentReferenceContext',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('encounter', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('event', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('facilityType', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('period', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('practiceSetting', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('related', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('sourcePatientInfo', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['event'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['facilityType'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['period'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['practiceSetting'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['related'], ['DocumentReferenceContextRelated.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Encounter',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('appointment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('class_fhir', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('episodeOfCare', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('hospitalization', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('incomingReferral', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('indication', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('length', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('location', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('partOf', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('participant', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patient', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('period', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('priority', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reason', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('serviceProvider', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('statusHistory', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['hospitalization'], ['EncounterHospitalization.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['length'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['location'], ['EncounterLocation.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['participant'], ['EncounterParticipant.id'], ),
    sa.ForeignKeyConstraint(['period'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['priority'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['reason'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['statusHistory'], ['EncounterStatusHistory.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('EpisodeOfCare',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('careManager', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('careTeam', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('condition', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('managingOrganization', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patient', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('period', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('referralRequest', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('statusHistory', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['careTeam'], ['EpisodeOfCareCareTeam.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['period'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['statusHistory'], ['EpisodeOfCareStatusHistory.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Goal',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('addresses', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('author', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('category', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('note', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('outcome', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('priority', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('startCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('startDate', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('statusDate', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('statusReason', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subject', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('targetDate', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('targetQuantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['category'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['note'], ['Annotation.id'], ),
    sa.ForeignKeyConstraint(['outcome'], ['GoalOutcome.id'], ),
    sa.ForeignKeyConstraint(['priority'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['startCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['statusReason'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['targetQuantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Group',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('actual', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('characteristic', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('member', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('quantity', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['characteristic'], ['GroupCharacteristic.id'], ),
    sa.ForeignKeyConstraint(['code'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['member'], ['GroupMember.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('HealthcareService',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('appointmentRequired', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('availabilityExceptions', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('availableTime', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('characteristic', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('comment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('coverageArea', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('eligibility', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('eligibilityNote', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extraDetails', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('location', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('notAvailable', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('photo', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('programName', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('providedBy', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('publicKey', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('referralMethod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('serviceCategory', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('serviceName', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('serviceProvisionCode', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('serviceType', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('telecom', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['availableTime'], ['HealthcareServiceAvailableTime.id'], ),
    sa.ForeignKeyConstraint(['characteristic'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['eligibility'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['notAvailable'], ['HealthcareServiceNotAvailable.id'], ),
    sa.ForeignKeyConstraint(['photo'], ['Attachment.id'], ),
    sa.ForeignKeyConstraint(['referralMethod'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['serviceCategory'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['serviceProvisionCode'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['serviceType'], ['HealthcareServiceServiceType.id'], ),
    sa.ForeignKeyConstraint(['telecom'], ['ContactPoint.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ImagingObjectSelectionStudySeriesInstance',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('frames', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('sopClass', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('uid', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('url', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['frames'], ['ImagingObjectSelectionStudySeriesInstanceFrames.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ImagingStudySeries',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('availability', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('bodySite', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('instance', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('laterality', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modality', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('number', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('numberOfInstances', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('started', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('uid', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('url', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['bodySite'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['instance'], ['ImagingStudySeriesInstance.id'], ),
    sa.ForeignKeyConstraint(['laterality'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['modality'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Immunization',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('date', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('doseQuantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('encounter', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('expirationDate', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('explanation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('location', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('lotNumber', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('manufacturer', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('note', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patient', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('performer', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reaction', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reported', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('requester', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('route', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('site', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('vaccinationProtocol', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('vaccineCode', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('wasNotGiven', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['doseQuantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['explanation'], ['ImmunizationExplanation.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['note'], ['Annotation.id'], ),
    sa.ForeignKeyConstraint(['reaction'], ['ImmunizationReaction.id'], ),
    sa.ForeignKeyConstraint(['route'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['site'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['vaccinationProtocol'], ['ImmunizationVaccinationProtocol.id'], ),
    sa.ForeignKeyConstraint(['vaccineCode'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ImmunizationRecommendationRecommendation',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('date', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('dateCriterion', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('doseNumber', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('forecastStatus', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('protocol', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('supportingImmunization', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('supportingPatientInformation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('vaccineCode', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['dateCriterion'], ['ImmunizationRecommendationRecommendationDateCriterion.id'], ),
    sa.ForeignKeyConstraint(['forecastStatus'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['protocol'], ['ImmunizationRecommendationRecommendationProtocol.id'], ),
    sa.ForeignKeyConstraint(['vaccineCode'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('List',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('date', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('emptyReason', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('encounter', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('entry', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('mode', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('note', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('orderedBy', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('source', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subject', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('title', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['code'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['emptyReason'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['entry'], ['ListEntry.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['orderedBy'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Location',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('address', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('managingOrganization', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('mode', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('partOf', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('physicalType', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('position', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('telecom', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['address'], ['Address.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['physicalType'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['position'], ['LocationPosition.id'], ),
    sa.ForeignKeyConstraint(['telecom'], ['ContactPoint.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('MedicationAdministration',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('device', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('dosage', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('effectiveTimeDateTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('effectiveTimePeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('encounter', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('medicationCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('medicationReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('note', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patient', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('practitioner', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('prescription', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reasonGiven', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reasonNotGiven', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('wasNotGiven', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['dosage'], ['MedicationAdministrationDosage.id'], ),
    sa.ForeignKeyConstraint(['effectiveTimePeriod'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['medicationCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['reasonGiven'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['reasonNotGiven'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('MedicationDispense',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('authorizingPrescription', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('daysSupply', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('destination', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('dispenser', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('dosageInstruction', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('medicationCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('medicationReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('note', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patient', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('quantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('receiver', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('substitution', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('whenHandedOver', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('whenPrepared', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['daysSupply'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['dosageInstruction'], ['MedicationDispenseDosageInstruction.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['medicationCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['quantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['substitution'], ['MedicationDispenseSubstitution.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('MedicationPackage',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('container', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('content', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['container'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['content'], ['MedicationPackageContent.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('MedicationProduct',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('batch', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('form', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('ingredient', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['batch'], ['MedicationProductBatch.id'], ),
    sa.ForeignKeyConstraint(['form'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['ingredient'], ['MedicationProductIngredient.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('NamingSystem',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('contact', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('date', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('kind', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('publisher', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('replacedBy', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('responsible', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('uniqueId', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('usage', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('useContext', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['contact'], ['NamingSystemContact.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['uniqueId'], ['NamingSystemUniqueId.id'], ),
    sa.ForeignKeyConstraint(['useContext'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('NutritionOrderEnteralFormula',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('additiveProductName', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('additiveType', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('administration', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('administrationInstruction', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('baseFormulaProductName', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('baseFormulaType', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('caloricDensity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maxVolumeToDeliver', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('routeofAdministration', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['additiveType'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['administration'], ['NutritionOrderEnteralFormulaAdministration.id'], ),
    sa.ForeignKeyConstraint(['baseFormulaType'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['caloricDensity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['maxVolumeToDeliver'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['routeofAdministration'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('NutritionOrderOralDiet',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('fluidConsistencyType', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('instruction', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('nutrient', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('schedule', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('texture', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['fluidConsistencyType'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['nutrient'], ['NutritionOrderOralDietNutrient.id'], ),
    sa.ForeignKeyConstraint(['schedule'], ['Timing.id'], ),
    sa.ForeignKeyConstraint(['texture'], ['NutritionOrderOralDietTexture.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ObservationComponent',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('dataAbsentReason', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('referenceRange', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueAttachment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueDateTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('valuePeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueQuantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueRange', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueRatio', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueSampledData', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueString', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['code'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['dataAbsentReason'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['referenceRange'], ['ObservationReferenceRange.id'], ),
    sa.ForeignKeyConstraint(['valueAttachment'], ['Attachment.id'], ),
    sa.ForeignKeyConstraint(['valueCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['valuePeriod'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['valueQuantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['valueRange'], ['Range.id'], ),
    sa.ForeignKeyConstraint(['valueRatio'], ['Ratio.id'], ),
    sa.ForeignKeyConstraint(['valueSampledData'], ['SampledData.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('OperationDefinitionParameter',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('binding', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('documentation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('max', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('min', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('part', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('profile', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('use', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['binding'], ['OperationDefinitionParameterBinding.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['part'], ['OperationDefinitionParameter.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('OperationOutcome',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('issue', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['issue'], ['OperationOutcomeIssue.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Order',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('date', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('detail', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reasonCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reasonReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('source', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subject', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('target', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('when', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['reasonCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['when'], ['OrderWhen.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Organization',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('active', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('address', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('contact', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('partOf', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('telecom', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['address'], ['Address.id'], ),
    sa.ForeignKeyConstraint(['contact'], ['OrganizationContact.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['telecom'], ['ContactPoint.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Patient',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('active', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('address', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('animal', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('birthDate', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('careProvider', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('communication', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('contact', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('deceasedBoolean', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('deceasedDateTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('gender', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('link', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('managingOrganization', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('maritalStatus', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('multipleBirthBoolean', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('multipleBirthInteger', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('photo', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('telecom', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['address'], ['Address.id'], ),
    sa.ForeignKeyConstraint(['animal'], ['PatientAnimal.id'], ),
    sa.ForeignKeyConstraint(['communication'], ['PatientCommunication.id'], ),
    sa.ForeignKeyConstraint(['contact'], ['PatientContact.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['link'], ['PatientLink.id'], ),
    sa.ForeignKeyConstraint(['maritalStatus'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['name'], ['HumanName.id'], ),
    sa.ForeignKeyConstraint(['photo'], ['Attachment.id'], ),
    sa.ForeignKeyConstraint(['telecom'], ['ContactPoint.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Person',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('active', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('address', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('birthDate', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('gender', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('link', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('managingOrganization', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('photo', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('telecom', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['address'], ['Address.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['link'], ['PersonLink.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['name'], ['HumanName.id'], ),
    sa.ForeignKeyConstraint(['photo'], ['Attachment.id'], ),
    sa.ForeignKeyConstraint(['telecom'], ['ContactPoint.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Practitioner',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('active', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('address', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('birthDate', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('communication', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('gender', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('photo', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('practitionerRole', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('qualification', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('telecom', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['address'], ['Address.id'], ),
    sa.ForeignKeyConstraint(['communication'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['name'], ['HumanName.id'], ),
    sa.ForeignKeyConstraint(['photo'], ['Attachment.id'], ),
    sa.ForeignKeyConstraint(['practitionerRole'], ['PractitionerPractitionerRole.id'], ),
    sa.ForeignKeyConstraint(['qualification'], ['PractitionerQualification.id'], ),
    sa.ForeignKeyConstraint(['telecom'], ['ContactPoint.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Procedure',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('bodySite', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('category', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('complication', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('encounter', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('focalDevice', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('followUp', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('location', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('notPerformed', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('notes', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('outcome', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('performedDateTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('performedPeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('performer', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reasonCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reasonNotPerformed', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reasonReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('report', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('request', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subject', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('used', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['bodySite'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['category'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['code'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['complication'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['focalDevice'], ['ProcedureFocalDevice.id'], ),
    sa.ForeignKeyConstraint(['followUp'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['notes'], ['Annotation.id'], ),
    sa.ForeignKeyConstraint(['outcome'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['performedPeriod'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['performer'], ['ProcedurePerformer.id'], ),
    sa.ForeignKeyConstraint(['reasonCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['reasonNotPerformed'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ProcessRequest',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('action', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('created', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('exclude', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('include', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('item', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('nullify', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('organization', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('originalRuleset', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('period', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('provider', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('request', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('response', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('ruleset', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('target', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['item'], ['ProcessRequestItem.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['originalRuleset'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['period'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['ruleset'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ProcessResponse',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('created', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('disposition', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('error', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('form', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('notes', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('organization', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('originalRuleset', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('outcome', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('request', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('requestOrganization', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('requestProvider', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('ruleset', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['error'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['form'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['notes'], ['ProcessResponseNotes.id'], ),
    sa.ForeignKeyConstraint(['originalRuleset'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['outcome'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['ruleset'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ProvenanceAgent',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('actor', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('relatedAgent', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('role', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('userId', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['relatedAgent'], ['ProvenanceAgentRelatedAgent.id'], ),
    sa.ForeignKeyConstraint(['role'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['userId'], ['Identifier.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('RiskAssessment',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('basis', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('condition', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('date', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('encounter', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('method', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('mitigation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('performer', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('prediction', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subject', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['method'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['prediction'], ['RiskAssessmentPrediction.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Specimen',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('accessionIdentifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('collection', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('container', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('parent', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('receivedTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subject', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('treatment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['accessionIdentifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['collection'], ['SpecimenCollection.id'], ),
    sa.ForeignKeyConstraint(['container'], ['SpecimenContainer.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['treatment'], ['SpecimenTreatment.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('StructureDefinition',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('abstract', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('base', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('constrainedType', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('contact', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('context', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('contextType', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('copyright', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('date', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('differential', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('display', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('experimental', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('fhirVersion', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('kind', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('mapping', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('publisher', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('requirements', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('snapshot', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('url', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('useContext', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('version', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['code'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['contact'], ['StructureDefinitionContact.id'], ),
    sa.ForeignKeyConstraint(['differential'], ['StructureDefinitionDifferential.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['mapping'], ['StructureDefinitionMapping.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['snapshot'], ['StructureDefinitionSnapshot.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['useContext'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Subscription',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('channel', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('contact', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('criteria', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('end', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('error', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reason', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('tag', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['channel'], ['SubscriptionChannel.id'], ),
    sa.ForeignKeyConstraint(['contact'], ['ContactPoint.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['tag'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Substance',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('category', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('ingredient', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('instance', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['category'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['code'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['ingredient'], ['SubstanceIngredient.id'], ),
    sa.ForeignKeyConstraint(['instance'], ['SubstanceInstance.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('SupplyRequest',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('date', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('kind', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('orderedItem', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patient', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reasonCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reasonReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('source', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('supplier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('when', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['kind'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['reasonCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['when'], ['SupplyRequestWhen.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ValueSetCodeSystemConcept',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('abstract', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('concept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('definition', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('designation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('display', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['concept'], ['ValueSetCodeSystemConcept.id'], ),
    sa.ForeignKeyConstraint(['designation'], ['ValueSetCodeSystemConceptDesignation.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ValueSetComposeIncludeConcept',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('designation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('display', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['designation'], ['ValueSetCodeSystemConceptDesignation.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ValueSetExpansion',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('contains', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('offset', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('parameter', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('timestamp', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('total', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['contains'], ['ValueSetExpansionContains.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['parameter'], ['ValueSetExpansionParameter.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('VisionPrescription',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('dateWritten', sil_fhir_server.data_types.primitives.DateField(), nullable=True),
    sa.Column('dispense', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('encounter', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patient', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('prescriber', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reasonCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reasonReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['dispense'], ['VisionPrescriptionDispense.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['reasonCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('AuditEvent',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('event', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('object', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('participant', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('source', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['event'], ['AuditEventEvent.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['object'], ['AuditEventObject.id'], ),
    sa.ForeignKeyConstraint(['participant'], ['AuditEventParticipant.id'], ),
    sa.ForeignKeyConstraint(['source'], ['AuditEventSource.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Bundle',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('entry', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('link', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('signature', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('total', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['entry'], ['BundleEntry.id'], ),
    sa.ForeignKeyConstraint(['link'], ['BundleLink.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['signature'], ['Signature.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('CarePlan',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('activity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('addresses', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('author', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('category', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('context', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('goal', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modified', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('note', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('participant', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('period', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('relatedPlan', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subject', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('support', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['activity'], ['CarePlanActivity.id'], ),
    sa.ForeignKeyConstraint(['category'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['note'], ['Annotation.id'], ),
    sa.ForeignKeyConstraint(['participant'], ['CarePlanParticipant.id'], ),
    sa.ForeignKeyConstraint(['period'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['relatedPlan'], ['CarePlanRelatedPlan.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ClaimItem',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('bodySite', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('detail', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('diagnosisLinkId', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('factor', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('modifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('net', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('points', sil_fhir_server.data_types.primitives.DecimalField(), nullable=True),
    sa.Column('prosthesis', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('provider', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('quantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('sequence', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('service', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('serviceDate', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('subSite', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('udi', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('unitPrice', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['bodySite'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['detail'], ['ClaimItemDetail.id'], ),
    sa.ForeignKeyConstraint(['modifier'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['net'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['prosthesis'], ['ClaimItemProsthesis.id'], ),
    sa.ForeignKeyConstraint(['quantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['service'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['subSite'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['type'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['udi'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['unitPrice'], ['Quantity.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ClaimResponseAddItem',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('adjudication', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('detail', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fee', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('noteNumberLinkId', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('sequenceLinkId', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('service', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['adjudication'], ['ClaimResponseAddItemAdjudication.id'], ),
    sa.ForeignKeyConstraint(['detail'], ['ClaimResponseAddItemDetail.id'], ),
    sa.ForeignKeyConstraint(['fee'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['service'], ['Coding.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ClaimResponseItemDetail',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('adjudication', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('sequenceLinkId', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('subDetail', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['adjudication'], ['ClaimResponseItemDetailAdjudication.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['subDetail'], ['ClaimResponseItemDetailSubDetail.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ConceptMapElement',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('codeSystem', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('target', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['target'], ['ConceptMapElementTarget.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ConformanceRest',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('compartment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('documentation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('interaction', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('mode', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('operation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('resource', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('searchParam', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('security', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('transactionMode', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['interaction'], ['ConformanceRestInteraction.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['operation'], ['ConformanceRestOperation.id'], ),
    sa.ForeignKeyConstraint(['resource'], ['ConformanceRestResource.id'], ),
    sa.ForeignKeyConstraint(['searchParam'], ['ConformanceRestResourceSearchParam.id'], ),
    sa.ForeignKeyConstraint(['security'], ['ConformanceRestSecurity.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Contract',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('action', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('actionReason', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('actor', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('applies', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('authority', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('bindingAttachment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('bindingReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('domain', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('friendly', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('issued', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('legal', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('rule', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('signer', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subType', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subject', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('term', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valuedItem', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['action'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['actionReason'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['actor'], ['ContractActor.id'], ),
    sa.ForeignKeyConstraint(['applies'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['bindingAttachment'], ['Attachment.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['friendly'], ['ContractFriendly.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['legal'], ['ContractLegal.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['rule'], ['ContractRule.id'], ),
    sa.ForeignKeyConstraint(['signer'], ['ContractSigner.id'], ),
    sa.ForeignKeyConstraint(['subType'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['term'], ['ContractTerm.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['valuedItem'], ['ContractValuedItem.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('DiagnosticOrder',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('encounter', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('event', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('item', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('note', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('orderer', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('priority', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reason', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('specimen', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subject', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('supportingInformation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['event'], ['DiagnosticOrderEvent.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['item'], ['DiagnosticOrderItem.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['note'], ['Annotation.id'], ),
    sa.ForeignKeyConstraint(['reason'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('DocumentReference',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('authenticator', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('author', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('class_fhir', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('content', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('context', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('created', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('custodian', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('docStatus', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('indexed', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('masterIdentifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('relatesTo', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('securityLabel', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subject', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['class_fhir'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['content'], ['DocumentReferenceContent.id'], ),
    sa.ForeignKeyConstraint(['context'], ['DocumentReferenceContext.id'], ),
    sa.ForeignKeyConstraint(['docStatus'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['masterIdentifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['relatesTo'], ['DocumentReferenceRelatesTo.id'], ),
    sa.ForeignKeyConstraint(['securityLabel'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['type'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ImagingObjectSelectionStudySeries',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('instance', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('uid', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('url', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['instance'], ['ImagingObjectSelectionStudySeriesInstance.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ImagingStudy',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('accession', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('availability', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('interpreter', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modalityList', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('numberOfInstances', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('numberOfSeries', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('order', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patient', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('procedure', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('referrer', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('series', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('started', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('uid', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('url', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['accession'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modalityList'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['series'], ['ImagingStudySeries.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ImmunizationRecommendation',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patient', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('recommendation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['recommendation'], ['ImmunizationRecommendationRecommendation.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Medication',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('isBrand', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('manufacturer', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('package', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('product', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['code'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['package'], ['MedicationPackage.id'], ),
    sa.ForeignKeyConstraint(['product'], ['MedicationProduct.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('NutritionOrder',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('allergyIntolerance', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('dateTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('encounter', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('enteralFormula', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('excludeFoodModifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('foodPreferenceModifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('oralDiet', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('orderer', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patient', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('supplement', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['enteralFormula'], ['NutritionOrderEnteralFormula.id'], ),
    sa.ForeignKeyConstraint(['excludeFoodModifier'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['foodPreferenceModifier'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['oralDiet'], ['NutritionOrderOralDiet.id'], ),
    sa.ForeignKeyConstraint(['supplement'], ['NutritionOrderSupplement.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Observation',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('bodySite', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('category', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('comments', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('component', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('dataAbsentReason', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('device', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('effectiveDateTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('effectivePeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('encounter', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('interpretation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('issued', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('method', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('performer', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('referenceRange', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('related', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('specimen', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('subject', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueAttachment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueCodeableConcept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueDateTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('valuePeriod', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueQuantity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueRange', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueRatio', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueSampledData', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueString', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('valueTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['bodySite'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['category'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['code'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['component'], ['ObservationComponent.id'], ),
    sa.ForeignKeyConstraint(['dataAbsentReason'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['effectivePeriod'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['interpretation'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['method'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['referenceRange'], ['ObservationReferenceRange.id'], ),
    sa.ForeignKeyConstraint(['related'], ['ObservationRelated.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['valueAttachment'], ['Attachment.id'], ),
    sa.ForeignKeyConstraint(['valueCodeableConcept'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['valuePeriod'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['valueQuantity'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['valueRange'], ['Range.id'], ),
    sa.ForeignKeyConstraint(['valueRatio'], ['Ratio.id'], ),
    sa.ForeignKeyConstraint(['valueSampledData'], ['SampledData.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('OperationDefinition',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('base', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('code', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('contact', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('date', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('experimental', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('idempotent', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('instance', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('kind', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('notes', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('parameter', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('publisher', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('requirements', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('system', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('url', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('version', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['contact'], ['OperationDefinitionContact.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['parameter'], ['OperationDefinitionParameter.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ProvenanceEntity',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('agent', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('display', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('role', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['agent'], ['ProvenanceAgent.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['type'], ['Coding.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ValueSetCodeSystem',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('caseSensitive', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('concept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('system', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('version', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['concept'], ['ValueSetCodeSystemConcept.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ValueSetComposeInclude',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('concept', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('filter', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('system', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('version', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['concept'], ['ValueSetComposeIncludeConcept.id'], ),
    sa.ForeignKeyConstraint(['filter'], ['ValueSetComposeIncludeFilter.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Claim',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('accident', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('accidentType', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('additionalMaterials', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('condition', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('coverage', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('created', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('diagnosis', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('enterer', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('exception', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('facility', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('fundsReserve', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('interventionException', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('item', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('missingTeeth', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('organization', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('originalPrescription', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('originalRuleset', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patient', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('payee', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('prescription', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('priority', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('provider', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('referral', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('ruleset', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('school', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('target', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('type', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('use', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['accidentType'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['additionalMaterials'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['condition'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['coverage'], ['ClaimCoverage.id'], ),
    sa.ForeignKeyConstraint(['diagnosis'], ['ClaimDiagnosis.id'], ),
    sa.ForeignKeyConstraint(['exception'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['fundsReserve'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['interventionException'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['item'], ['ClaimItem.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['missingTeeth'], ['ClaimMissingTeeth.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['originalRuleset'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['payee'], ['ClaimPayee.id'], ),
    sa.ForeignKeyConstraint(['priority'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['ruleset'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ClaimResponseItem',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('adjudication', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('detail', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('noteNumber', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('sequenceLinkId', sil_fhir_server.data_types.primitives.IntegerField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['adjudication'], ['ClaimResponseItemAdjudication.id'], ),
    sa.ForeignKeyConstraint(['detail'], ['ClaimResponseItemDetail.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ConceptMap',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('contact', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('copyright', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('date', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('element', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('experimental', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('publisher', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('requirements', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('sourceReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('sourceUri', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('targetReference', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('targetUri', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('url', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('useContext', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('version', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['contact'], ['ConceptMapContact.id'], ),
    sa.ForeignKeyConstraint(['element'], ['ConceptMapElement.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['useContext'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Conformance',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('acceptUnknown', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('contact', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('copyright', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('date', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('document', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('experimental', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('fhirVersion', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('format', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('implementation', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('kind', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('messaging', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('profile', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('publisher', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('requirements', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('rest', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('software', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('url', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('version', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['contact'], ['ConformanceContact.id'], ),
    sa.ForeignKeyConstraint(['document'], ['ConformanceDocument.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['implementation'], ['ConformanceImplementation.id'], ),
    sa.ForeignKeyConstraint(['messaging'], ['ConformanceMessaging.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['rest'], ['ConformanceRest.id'], ),
    sa.ForeignKeyConstraint(['software'], ['ConformanceSoftware.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ImagingObjectSelectionStudy',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('imagingStudy', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('series', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('uid', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('url', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['series'], ['ImagingObjectSelectionStudySeries.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('Provenance',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('activity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('agent', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('entity', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('location', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('period', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('policy', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reason', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('recorded', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('signature', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('target', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['activity'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['agent'], ['ProvenanceAgent.id'], ),
    sa.ForeignKeyConstraint(['entity'], ['ProvenanceEntity.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['period'], ['Period.id'], ),
    sa.ForeignKeyConstraint(['reason'], ['CodeableConcept.id'], ),
    sa.ForeignKeyConstraint(['signature'], ['Signature.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ValueSetCompose',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('exclude', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('import_fhir', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('include', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['exclude'], ['ValueSetComposeInclude.id'], ),
    sa.ForeignKeyConstraint(['include'], ['ValueSetComposeInclude.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ClaimResponse',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('addItem', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('coverage', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('created', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('disposition', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('error', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('form', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('item', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('note', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('organization', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('originalRuleset', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('outcome', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('payeeType', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('paymentAdjustment', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('paymentAdjustmentReason', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('paymentAmount', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('paymentDate', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('paymentRef', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('request', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('requestOrganization', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('requestProvider', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('reserved', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('ruleset', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('totalBenefit', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('totalCost', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('unallocDeductable', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['addItem'], ['ClaimResponseAddItem.id'], ),
    sa.ForeignKeyConstraint(['coverage'], ['ClaimResponseCoverage.id'], ),
    sa.ForeignKeyConstraint(['error'], ['ClaimResponseError.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['form'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['item'], ['ClaimResponseItem.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['note'], ['ClaimResponseNote.id'], ),
    sa.ForeignKeyConstraint(['originalRuleset'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['payeeType'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['paymentAdjustment'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['paymentAdjustmentReason'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['paymentAmount'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['paymentRef'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['reserved'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['ruleset'], ['Coding.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['totalBenefit'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['totalCost'], ['Quantity.id'], ),
    sa.ForeignKeyConstraint(['unallocDeductable'], ['Quantity.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ImagingObjectSelection',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('author', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('authoringTime', sil_fhir_server.data_types.primitives.DateTimeField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('patient', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('study', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('title', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('uid', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['study'], ['ImagingObjectSelectionStudy.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['title'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    op.create_table('ValueSet',
    sa.Column('id', sil_fhir_server.data_types.primitives.StringField(), nullable=False),
    sa.Column('implicitRules', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('language', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('codeSystem', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('compose', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('contact', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('copyright', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('date', sil_fhir_server.data_types.primitives.DateField(), nullable=True),
    sa.Column('description', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('expansion', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('experimental', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('extensible', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('identifier', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('immutable', sil_fhir_server.data_types.primitives.BooleanField(), nullable=True),
    sa.Column('lockedDate', sil_fhir_server.data_types.primitives.DateField(), nullable=True),
    sa.Column('name', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('publisher', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('requirements', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('status', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('url', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('useContext', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('version', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('modifierExtension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('extension', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('text', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.Column('meta', sil_fhir_server.data_types.primitives.StringField(), nullable=True),
    sa.ForeignKeyConstraint(['codeSystem'], ['ValueSetCodeSystem.id'], ),
    sa.ForeignKeyConstraint(['compose'], ['ValueSetCompose.id'], ),
    sa.ForeignKeyConstraint(['contact'], ['ValueSetContact.id'], ),
    sa.ForeignKeyConstraint(['expansion'], ['ValueSetExpansion.id'], ),
    sa.ForeignKeyConstraint(['extension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['identifier'], ['Identifier.id'], ),
    sa.ForeignKeyConstraint(['meta'], ['Meta.id'], ),
    sa.ForeignKeyConstraint(['modifierExtension'], ['Extension.id'], ),
    sa.ForeignKeyConstraint(['text'], ['Narrative.id'], ),
    sa.ForeignKeyConstraint(['useContext'], ['CodeableConcept.id'], ),
    sa.PrimaryKeyConstraint('id')
    )
    ### end Alembic commands ###


def downgrade():
    ### commands auto generated by Alembic - please adjust! ###
    op.drop_table('ValueSet')
    op.drop_table('ImagingObjectSelection')
    op.drop_table('ClaimResponse')
    op.drop_table('ValueSetCompose')
    op.drop_table('Provenance')
    op.drop_table('ImagingObjectSelectionStudy')
    op.drop_table('Conformance')
    op.drop_table('ConceptMap')
    op.drop_table('ClaimResponseItem')
    op.drop_table('Claim')
    op.drop_table('ValueSetComposeInclude')
    op.drop_table('ValueSetCodeSystem')
    op.drop_table('ProvenanceEntity')
    op.drop_table('OperationDefinition')
    op.drop_table('Observation')
    op.drop_table('NutritionOrder')
    op.drop_table('Medication')
    op.drop_table('ImmunizationRecommendation')
    op.drop_table('ImagingStudy')
    op.drop_table('ImagingObjectSelectionStudySeries')
    op.drop_table('DocumentReference')
    op.drop_table('DiagnosticOrder')
    op.drop_table('Contract')
    op.drop_table('ConformanceRest')
    op.drop_table('ConceptMapElement')
    op.drop_table('ClaimResponseItemDetail')
    op.drop_table('ClaimResponseAddItem')
    op.drop_table('ClaimItem')
    op.drop_table('CarePlan')
    op.drop_table('Bundle')
    op.drop_table('AuditEvent')
    op.drop_table('VisionPrescription')
    op.drop_table('ValueSetExpansion')
    op.drop_table('ValueSetComposeIncludeConcept')
    op.drop_table('ValueSetCodeSystemConcept')
    op.drop_table('SupplyRequest')
    op.drop_table('Substance')
    op.drop_table('Subscription')
    op.drop_table('StructureDefinition')
    op.drop_table('Specimen')
    op.drop_table('RiskAssessment')
    op.drop_table('ProvenanceAgent')
    op.drop_table('ProcessResponse')
    op.drop_table('ProcessRequest')
    op.drop_table('Procedure')
    op.drop_table('Practitioner')
    op.drop_table('Person')
    op.drop_table('Patient')
    op.drop_table('Organization')
    op.drop_table('Order')
    op.drop_table('OperationOutcome')
    op.drop_table('OperationDefinitionParameter')
    op.drop_table('ObservationComponent')
    op.drop_table('NutritionOrderOralDiet')
    op.drop_table('NutritionOrderEnteralFormula')
    op.drop_table('NamingSystem')
    op.drop_table('MedicationProduct')
    op.drop_table('MedicationPackage')
    op.drop_table('MedicationDispense')
    op.drop_table('MedicationAdministration')
    op.drop_table('Location')
    op.drop_table('List')
    op.drop_table('ImmunizationRecommendationRecommendation')
    op.drop_table('Immunization')
    op.drop_table('ImagingStudySeries')
    op.drop_table('ImagingObjectSelectionStudySeriesInstance')
    op.drop_table('HealthcareService')
    op.drop_table('Group')
    op.drop_table('Goal')
    op.drop_table('EpisodeOfCare')
    op.drop_table('Encounter')
    op.drop_table('DocumentReferenceContext')
    op.drop_table('DocumentManifest')
    op.drop_table('DiagnosticReport')
    op.drop_table('DiagnosticOrderItem')
    op.drop_table('DeviceMetric')
    op.drop_table('DeviceComponent')
    op.drop_table('DetectedIssue')
    op.drop_table('DataElement')
    op.drop_table('ContractTerm')
    op.drop_table('ConformanceRestSecurity')
    op.drop_table('ConformanceRestResource')
    op.drop_table('ConformanceMessaging')
    op.drop_table('Condition')
    op.drop_table('ConceptMapElementTarget')
    op.drop_table('Composition')
    op.drop_table('CommunicationRequest')
    op.drop_table('Communication')
    op.drop_table('ClinicalImpression')
    op.drop_table('ClaimResponseItemDetailSubDetail')
    op.drop_table('ClaimResponseAddItemDetail')
    op.drop_table('ClaimItemDetail')
    op.drop_table('CarePlanActivity')
    op.drop_table('BundleEntry')
    op.drop_table('AuditEventParticipant')
    op.drop_table('AuditEventObject')
    op.drop_table('Appointment')
    op.drop_table('VisionPrescriptionDispense')
    op.drop_table('ValueSetExpansionParameter')
    op.drop_table('ValueSetExpansionContains')
    op.drop_table('ValueSetContact')
    op.drop_table('ValueSetComposeIncludeFilter')
    op.drop_table('ValueSetCodeSystemConceptDesignation')
    op.drop_table('SupplyRequestWhen')
    op.drop_table('SupplyDelivery')
    op.drop_table('SubstanceInstance')
    op.drop_table('SubstanceIngredient')
    op.drop_table('SubscriptionChannel')
    op.drop_table('StructureDefinitionSnapshot')
    op.drop_table('StructureDefinitionMapping')
    op.drop_table('StructureDefinitionDifferential')
    op.drop_table('StructureDefinitionContact')
    op.drop_table('SpecimenTreatment')
    op.drop_table('SpecimenContainer')
    op.drop_table('SpecimenCollection')
    op.drop_table('Slot')
    op.drop_table('Schedule')
    op.drop_table('RiskAssessmentPrediction')
    op.drop_table('RelatedPerson')
    op.drop_table('ReferralRequest')
    op.drop_table('ProvenanceAgentRelatedAgent')
    op.drop_table('ProcessResponseNotes')
    op.drop_table('ProcessRequestItem')
    op.drop_table('ProcedureRequest')
    op.drop_table('ProcedurePerformer')
    op.drop_table('ProcedureFocalDevice')
    op.drop_table('PractitionerQualification')
    op.drop_table('PractitionerPractitionerRole')
    op.drop_table('PersonLink')
    op.drop_table('PaymentNotice')
    op.drop_table('PatientLink')
    op.drop_table('PatientContact')
    op.drop_table('PatientCommunication')
    op.drop_table('PatientAnimal')
    op.drop_table('OrganizationContact')
    op.drop_table('OrderWhen')
    op.drop_table('OrderResponse')
    op.drop_table('OperationOutcomeIssue')
    op.drop_table('OperationDefinitionParameterBinding')
    op.drop_table('OperationDefinitionContact')
    op.drop_table('ObservationRelated')
    op.drop_table('ObservationReferenceRange')
    op.drop_table('NutritionOrderSupplement')
    op.drop_table('NutritionOrderOralDietTexture')
    op.drop_table('NutritionOrderOralDietNutrient')
    op.drop_table('NutritionOrderEnteralFormulaAdministration')
    op.drop_table('NamingSystemUniqueId')
    op.drop_table('NamingSystemContact')
    op.drop_table('MedicationProductIngredient')
    op.drop_table('MedicationProductBatch')
    op.drop_table('MedicationPackageContent')
    op.drop_table('MedicationDispenseSubstitution')
    op.drop_table('MedicationDispenseDosageInstruction')
    op.drop_table('MedicationAdministrationDosage')
    op.drop_table('Media')
    op.drop_table('LocationPosition')
    op.drop_table('ListEntry')
    op.drop_table('ImmunizationVaccinationProtocol')
    op.drop_table('ImmunizationRecommendationRecommendationProtocol')
    op.drop_table('ImmunizationRecommendationRecommendationDateCriterion')
    op.drop_table('ImmunizationReaction')
    op.drop_table('ImmunizationExplanation')
    op.drop_table('ImagingStudySeriesInstance')
    op.drop_table('ImagingObjectSelectionStudySeriesInstanceFrames')
    op.drop_table('HealthcareServiceServiceType')
    op.drop_table('HealthcareServiceNotAvailable')
    op.drop_table('HealthcareServiceAvailableTime')
    op.drop_table('GroupMember')
    op.drop_table('GroupCharacteristic')
    op.drop_table('GoalOutcome')
    op.drop_table('Flag')
    op.drop_table('ExplanationOfBenefit')
    op.drop_table('EpisodeOfCareStatusHistory')
    op.drop_table('EpisodeOfCareCareTeam')
    op.drop_table('EnrollmentResponse')
    op.drop_table('EnrollmentRequest')
    op.drop_table('EncounterStatusHistory')
    op.drop_table('EncounterParticipant')
    op.drop_table('EncounterLocation')
    op.drop_table('EncounterHospitalization')
    op.drop_table('EligibilityResponse')
    op.drop_table('EligibilityRequest')
    op.drop_table('DocumentReferenceRelatesTo')
    op.drop_table('DocumentReferenceContextRelated')
    op.drop_table('DocumentReferenceContent')
    op.drop_table('DocumentManifestRelated')
    op.drop_table('DocumentManifestContent')
    op.drop_table('DiagnosticReportImage')
    op.drop_table('DiagnosticOrderEvent')
    op.drop_table('DeviceUseStatement')
    op.drop_table('DeviceUseRequest')
    op.drop_table('DeviceMetricCalibration')
    op.drop_table('DeviceComponentProductionSpecification')
    op.drop_table('Device')
    op.drop_table('DetectedIssueMitigation')
    op.drop_table('DataElementMapping')
    op.drop_table('DataElementContact')
    op.drop_table('Coverage')
    op.drop_table('ContractValuedItem')
    op.drop_table('ContractTermValuedItem')
    op.drop_table('ContractTermActor')
    op.drop_table('ContractSigner')
    op.drop_table('ContractRule')
    op.drop_table('ContractLegal')
    op.drop_table('ContractFriendly')
    op.drop_table('ContractActor')
    op.drop_table('ConformanceSoftware')
    op.drop_table('ConformanceRestSecurityCertificate')
    op.drop_table('ConformanceRestResourceSearchParam')
    op.drop_table('ConformanceRestResourceInteraction')
    op.drop_table('ConformanceRestOperation')
    op.drop_table('ConformanceRestInteraction')
    op.drop_table('ConformanceMessagingEvent')
    op.drop_table('ConformanceMessagingEndpoint')
    op.drop_table('ConformanceImplementation')
    op.drop_table('ConformanceDocument')
    op.drop_table('ConformanceContact')
    op.drop_table('ConditionStage')
    op.drop_table('ConditionEvidence')
    op.drop_table('ConceptMapElementTargetDependsOn')
    op.drop_table('ConceptMapContact')
    op.drop_table('CompositionSection')
    op.drop_table('CompositionEvent')
    op.drop_table('CompositionAttester')
    op.drop_table('CommunicationRequestPayload')
    op.drop_table('CommunicationPayload')
    op.drop_table('ClinicalImpressionRuledOut')
    op.drop_table('ClinicalImpressionInvestigations')
    op.drop_table('ClinicalImpressionFinding')
    op.drop_table('ClaimResponseNote')
    op.drop_table('ClaimResponseItemDetailSubDetailAdjudication')
    op.drop_table('ClaimResponseItemDetailAdjudication')
    op.drop_table('ClaimResponseItemAdjudication')
    op.drop_table('ClaimResponseError')
    op.drop_table('ClaimResponseCoverage')
    op.drop_table('ClaimResponseAddItemDetailAdjudication')
    op.drop_table('ClaimResponseAddItemAdjudication')
    op.drop_table('ClaimPayee')
    op.drop_table('ClaimMissingTeeth')
    op.drop_table('ClaimItemProsthesis')
    op.drop_table('ClaimItemDetailSubDetail')
    op.drop_table('ClaimDiagnosis')
    op.drop_table('ClaimCoverage')
    op.drop_table('CarePlanRelatedPlan')
    op.drop_table('CarePlanParticipant')
    op.drop_table('CarePlanActivityDetail')
    op.drop_table('BundleLink')
    op.drop_table('BundleEntrySearch')
    op.drop_table('BundleEntryResponse')
    op.drop_table('BundleEntryRequest')
    op.drop_table('BodySite')
    op.drop_table('Basic')
    op.drop_table('AuditEventSource')
    op.drop_table('AuditEventParticipantNetwork')
    op.drop_table('AuditEventObjectDetail')
    op.drop_table('AuditEventEvent')
    op.drop_table('AppointmentResponse')
    op.drop_table('AppointmentParticipant')
    op.drop_table('Account')
    op.drop_table('Extension')
    op.drop_table('ElementDefinition')
    op.drop_table('Timing')
    op.drop_table('TimingRepeat')
    op.drop_table('Identifier')
    op.drop_table('Binary')
    op.drop_table('Signature')
    op.drop_table('SampledData')
    op.drop_table('Ratio')
    op.drop_table('Range')
    op.drop_table('Meta')
    op.drop_table('HumanName')
    op.drop_table('ContactPoint')
    op.drop_table('CodeableConcept')
    op.drop_table('Address')
    op.drop_table('SimpleQuantity')
    op.drop_table('Reference')
    op.drop_table('Quantity')
    op.drop_table('Period')
    op.drop_table('Narrative')
    op.drop_table('Money')
    op.drop_table('ElementDefinitionType')
    op.drop_table('ElementDefinitionSlicing')
    op.drop_table('ElementDefinitionMapping')
    op.drop_table('ElementDefinitionConstraint')
    op.drop_table('ElementDefinitionBinding')
    op.drop_table('ElementDefinitionBase')
    op.drop_table('Duration')
    op.drop_table('Distance')
    op.drop_table('Count')
    op.drop_table('Coding')
    op.drop_table('Attachment')
    op.drop_table('Annotation')
    op.drop_table('Age')
    ### end Alembic commands ###
