286 lines
8.1 KiB
YAML
286 lines
8.1 KiB
YAML
type: config
|
|
name: Configuration
|
|
displayname: Configuration
|
|
namespace: model
|
|
schema:
|
|
# ------------------------------------------------------------------------------------------------
|
|
# Model
|
|
# ------------------------------------------------------------------------------------------------
|
|
|
|
model:
|
|
type: dict
|
|
schema:
|
|
name:
|
|
type: string
|
|
paths:
|
|
type: dict
|
|
schema:
|
|
log:
|
|
type: string
|
|
required: True
|
|
entities:
|
|
type: string
|
|
required: True
|
|
mappings:
|
|
type: string
|
|
required: True
|
|
templates:
|
|
type: string
|
|
required: True
|
|
output:
|
|
type: string
|
|
required: True
|
|
ignore_file_prefix:
|
|
type: string
|
|
|
|
# ------------------------------------------------------------------------------------------------
|
|
# Variables
|
|
# ------------------------------------------------------------------------------------------------
|
|
vars:
|
|
type: dict
|
|
|
|
# ------------------------------------------------------------------------------------------------
|
|
# Hooks
|
|
# ------------------------------------------------------------------------------------------------
|
|
pre_hooks:
|
|
type: dict
|
|
valuesrules:
|
|
type: list
|
|
|
|
post_hooks:
|
|
type: dict
|
|
valuesrules:
|
|
type: list
|
|
# ------------------------------------------------------------------------------------------------
|
|
# Key Definition
|
|
# ------------------------------------------------------------------------------------------------
|
|
|
|
keyattribute:
|
|
type: dict
|
|
required: True
|
|
schema:
|
|
type:
|
|
type: string
|
|
required: True
|
|
role:
|
|
type: string
|
|
required: True
|
|
mandatory:
|
|
type: boolean
|
|
ghost:
|
|
type: string
|
|
|
|
zerokey:
|
|
type: string
|
|
|
|
# ------------------------------------------------------------------------------------------------
|
|
# Modelling Constraints
|
|
# ------------------------------------------------------------------------------------------------
|
|
|
|
constraints:
|
|
type: dict
|
|
schema:
|
|
enforce_bk_type:
|
|
type: [string, list]
|
|
|
|
# ------------------------------------------------------------------------------------------------
|
|
# HASH Definition
|
|
# ------------------------------------------------------------------------------------------------
|
|
|
|
hash_algorithm:
|
|
type: string
|
|
required: true
|
|
hash_separator:
|
|
type: string
|
|
required: true
|
|
hash_case:
|
|
type: string
|
|
required: True
|
|
allowed: ['upper', 'lower', 'keep']
|
|
|
|
# ------------------------------------------------------------------------------------------------
|
|
# Business Key Treatment
|
|
# ------------------------------------------------------------------------------------------------
|
|
|
|
business_key_treatment:
|
|
type: dict
|
|
required: True
|
|
schema:
|
|
trim:
|
|
type: string
|
|
required: True
|
|
allowed: ['left', 'right', 'both']
|
|
case:
|
|
type: string
|
|
required: True
|
|
allowed: ['upper', 'lower', 'keep']
|
|
|
|
# ------------------------------------------------------------------------------------------------
|
|
# Hashdiff Attribute Treatment
|
|
# ------------------------------------------------------------------------------------------------
|
|
|
|
hashdiff_attribute_treatment:
|
|
type: dict
|
|
required: True
|
|
schema:
|
|
trim:
|
|
type: string
|
|
required: True
|
|
allowed: ['left', 'right', 'both']
|
|
case:
|
|
type: string
|
|
required: True
|
|
allowed: ['upper', 'lower', 'keep']
|
|
|
|
# ------------------------------------------------------------------------------------------------
|
|
# Common Attributes
|
|
# ------------------------------------------------------------------------------------------------
|
|
|
|
commonattributes:
|
|
type: dict
|
|
valuesrules:
|
|
type: dict
|
|
schema:
|
|
name:
|
|
type: string
|
|
required: True
|
|
type:
|
|
type: string
|
|
required: True
|
|
mandatory:
|
|
type: boolean
|
|
ghost:
|
|
type: string
|
|
|
|
# ------------------------------------------------------------------------------------------------
|
|
# Ghost-records
|
|
# ------------------------------------------------------------------------------------------------
|
|
|
|
ghostrecord:
|
|
type: dict
|
|
valuesrules:
|
|
type: string
|
|
|
|
# ------------------------------------------------------------------------------------------------
|
|
# Layer
|
|
# ------------------------------------------------------------------------------------------------
|
|
|
|
layer:
|
|
type: dict
|
|
valuesrules:
|
|
type: dict
|
|
schema:
|
|
name:
|
|
type: string
|
|
required: True
|
|
description:
|
|
type: string
|
|
connectionname:
|
|
type: string
|
|
sys_specification:
|
|
type: string
|
|
defaultdatabaseobject:
|
|
type: dict
|
|
schema:
|
|
database:
|
|
type: string
|
|
schema:
|
|
type: string
|
|
filegroup:
|
|
type: string
|
|
properties:
|
|
type: dict
|
|
|
|
# ------------------------------------------------------------------------------------------------
|
|
# Entity Defaults
|
|
# ------------------------------------------------------------------------------------------------
|
|
|
|
entitydefaults:
|
|
type: dict
|
|
valuesrules:
|
|
type: dict
|
|
schema:
|
|
layer:
|
|
type: string
|
|
required: True
|
|
attributes:
|
|
type: list
|
|
schema:
|
|
type: string
|
|
attribute_role:
|
|
type: string
|
|
map_implicit_roles:
|
|
type: list
|
|
schema:
|
|
type: string
|
|
extra:
|
|
type: dict
|
|
|
|
# ------------------------------------------------------------------------------------------------
|
|
# Generator config
|
|
# ------------------------------------------------------------------------------------------------
|
|
|
|
generator:
|
|
type: dict
|
|
valuesrules:
|
|
type: dict
|
|
schema:
|
|
templates:
|
|
type: list
|
|
schema:
|
|
type: dict
|
|
schema:
|
|
subtype:
|
|
type: [string,list]
|
|
template:
|
|
type: string
|
|
required: True
|
|
targetfolder:
|
|
type: string
|
|
required: True
|
|
filename:
|
|
type: string
|
|
required: True
|
|
lang:
|
|
type: string
|
|
required: True
|
|
synchtarget:
|
|
type: string
|
|
|
|
# ------------------------------------------------------------------------------------------------
|
|
# Base templates
|
|
# ------------------------------------------------------------------------------------------------
|
|
|
|
templates:
|
|
type: dict
|
|
schema:
|
|
column_ddl:
|
|
type: string
|
|
required: True
|
|
table_qualifier:
|
|
type: string
|
|
required: True
|
|
attribute_expression:
|
|
type: string
|
|
required: True
|
|
entity_key_name:
|
|
type: string
|
|
required: True
|
|
query_entity_alias:
|
|
type: string
|
|
required: True
|
|
|
|
# ------------------------------------------------------------------------------------------------
|
|
# Template Engine
|
|
# ------------------------------------------------------------------------------------------------
|
|
|
|
jinja:
|
|
type: dict
|
|
|
|
# ------------------------------------------------------------------------------------------------
|
|
# sys_specifications
|
|
# ------------------------------------------------------------------------------------------------
|
|
|
|
sys_specification:
|
|
type: dict
|
|
|