From 7f50b3360f54012edd752bfa1ad6bf9c1494d409 Mon Sep 17 00:00:00 2001 From: "Documenter.jl" Date: Wed, 22 May 2024 15:58:36 +0000 Subject: [PATCH] build based on c846d22 --- dev/.documenter-siteinfo.json | 2 +- dev/api/InsuranceContracts/index.html | 2 +- dev/api/InsurancePartners/index.html | 2 +- dev/api/InsuranceProducts/index.html | 2 +- dev/api/InsuranceTariffs/index.html | 2 +- dev/api/LifeInsuranceDataModel/index.html | 2 +- dev/index.html | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) diff --git a/dev/.documenter-siteinfo.json b/dev/.documenter-siteinfo.json index d1f6585..ab656c1 100644 --- a/dev/.documenter-siteinfo.json +++ b/dev/.documenter-siteinfo.json @@ -1 +1 @@ -{"documenter":{"julia_version":"1.10.3","generation_timestamp":"2024-05-22T15:55:00","documenter_version":"1.4.1"}} \ No newline at end of file +{"documenter":{"julia_version":"1.10.3","generation_timestamp":"2024-05-22T15:58:32","documenter_version":"1.4.1"}} \ No newline at end of file diff --git a/dev/api/InsuranceContracts/index.html b/dev/api/InsuranceContracts/index.html index 9126141..67b10da 100644 --- a/dev/api/InsuranceContracts/index.html +++ b/dev/api/InsuranceContracts/index.html @@ -1,2 +1,2 @@ -Contract · LifeInsuranceDataModel

InsuranceContracts.jl

+Contract · LifeInsuranceDataModel

InsuranceContracts.jl

diff --git a/dev/api/InsurancePartners/index.html b/dev/api/InsurancePartners/index.html index 031dda5..77fd5ad 100644 --- a/dev/api/InsurancePartners/index.html +++ b/dev/api/InsurancePartners/index.html @@ -1,2 +1,2 @@ -Partner · LifeInsuranceDataModel
+Partner · LifeInsuranceDataModel
diff --git a/dev/api/InsuranceProducts/index.html b/dev/api/InsuranceProducts/index.html index 40a95b9..dc87f52 100644 --- a/dev/api/InsuranceProducts/index.html +++ b/dev/api/InsuranceProducts/index.html @@ -1,2 +1,2 @@ -Product · LifeInsuranceDataModel

InsuranceProducts.jl

+Product · LifeInsuranceDataModel

InsuranceProducts.jl

diff --git a/dev/api/InsuranceTariffs/index.html b/dev/api/InsuranceTariffs/index.html index f469fe9..e24c545 100644 --- a/dev/api/InsuranceTariffs/index.html +++ b/dev/api/InsuranceTariffs/index.html @@ -1,2 +1,2 @@ -Tariff · LifeInsuranceDataModel

InsuranceTariffs.jl

+Tariff · LifeInsuranceDataModel

InsuranceTariffs.jl

diff --git a/dev/api/LifeInsuranceDataModel/index.html b/dev/api/LifeInsuranceDataModel/index.html index 0321cd4..7852447 100644 --- a/dev/api/LifeInsuranceDataModel/index.html +++ b/dev/api/LifeInsuranceDataModel/index.html @@ -1,2 +1,2 @@ -LifeInsuranceDataModel · LifeInsuranceDataModel

LifeInsuranceDataModel.jl

The notion of section is used here to describe object revisions as of a certain pair of points in - 2 dimensional - transaction and reference time. So it is a geometrical metaphor of two crossing cuts = i.e. sections - reducing 2D-transaction and reference time to 1D-reference time using a point in transaction time and reducing 1D-reference time using a point in reference time to yield a point in the version space.

Customizing

Adding bitemporal entities and components

Current entities are Contract, Partner,Product,Tariff.

  • Create packages like InsuranceContracts.jl and include

it in LifeInsuranceDataModel.jl. Export Your new Symbols.

  • Create or update the enumeration function to contain all subcomponents' revision types you assign or add to the root entity of type T:

$BitemporalPostgres.revisionTypes(entity::Val{T})::Vector{T} where {T<:Symbol}$ Example:

  • $BitemporalPostgres.revisionTypes(entity::Val{:Contract})$
  • add functions $get_typeof_revision$ and $get_typeof_component$ for the new revision and component.

Examples:

  • $BitemporalPostgres.get_typeof_revision(component::Contract) :: Type{ContractRevision}$ and
  • $BitemporalPostgres.get_typeof_component(revision::ContractRevision) :: Type{Contract}$
  • Add DDL for your entity or component in functions up and down of package DDL.jl
  • create tables for your structs and
  • and create constraints and triggers using the function $createRevisionsTriggerAndConstraint(trigger::Symbol,constraint::Symbol,table::Symbol,)$
  • Add your tables to sqlsnippets/droptables.sql preserving the reverse order of dependencies (no dependencies first)

end

UML Model

LifeInsuranceDataModel.compareRevisionsMethod

compareRevisions(t, previous::Dict{String,Any}, current::Dict{String,Any}) where {T<:BitemporalPostgres.ComponentRevision} compare corresponding revision elements and return nothing if equal a pair of both else

source
LifeInsuranceDataModel.csectionFunction

csection(contractid::Integer, tsdbvalidfrom, tsworld_validfrom,activeTransaction::Integer=0)::ContractSectio

csection retrieves the section of a contract or throws NoVersionFound
source
LifeInsuranceDataModel.pisectionMethod

function pisection(historyid::Integer, versionid::Integer, tsdbvalidfrom, tsworldvalidfrom)::Vector{ProductItemSection}

pisection retrieves the vector of a contract's productitem sections
source
LifeInsuranceDataModel.prsectionFunction

prsection(productid::Integer, tsdbvalidfrom, tsworld_validfrom, activeTransaction::Integer=0)::ProductSection

prsection retrieves a section of a product or throws NoVersionFound
source
LifeInsuranceDataModel.psectionFunction

psection(partnerid::Integer, tsdbvalidfrom, tsworld_validfrom, activeTransaction::Integer=0)::PartnerSection

psection retrieves a section of a partner  or throws NoVersionFound
source
LifeInsuranceDataModel.tsectionFunction

tsection(tariffid::Integer, tsdbvalidfrom, tsworld_validfrom, activeTransaction::Integer=0)::TariffSection

tsection retrieves a section of a tariff or throws NoVersionFound
source
+LifeInsuranceDataModel · LifeInsuranceDataModel

LifeInsuranceDataModel.jl

The notion of section is used here to describe object revisions as of a certain pair of points in - 2 dimensional - transaction and reference time. So it is a geometrical metaphor of two crossing cuts = i.e. sections - reducing 2D-transaction and reference time to 1D-reference time using a point in transaction time and reducing 1D-reference time using a point in reference time to yield a point in the version space.

Customizing

Adding bitemporal entities and components

Current entities are Contract, Partner,Product,Tariff.

  • Create packages like InsuranceContracts.jl and include

it in LifeInsuranceDataModel.jl. Export Your new Symbols.

  • Create or update the enumeration function to contain all subcomponents' revision types you assign or add to the root entity of type T:

$BitemporalPostgres.revisionTypes(entity::Val{T})::Vector{T} where {T<:Symbol}$ Example:

  • $BitemporalPostgres.revisionTypes(entity::Val{:Contract})$
  • add functions $get_typeof_revision$ and $get_typeof_component$ for the new revision and component.

Examples:

  • $BitemporalPostgres.get_typeof_revision(component::Contract) :: Type{ContractRevision}$ and
  • $BitemporalPostgres.get_typeof_component(revision::ContractRevision) :: Type{Contract}$
  • Add DDL for your entity or component in functions up and down of package DDL.jl
  • create tables for your structs and
  • and create constraints and triggers using the function $createRevisionsTriggerAndConstraint(trigger::Symbol,constraint::Symbol,table::Symbol,)$
  • Add your tables to sqlsnippets/droptables.sql preserving the reverse order of dependencies (no dependencies first)

end

UML Model

LifeInsuranceDataModel.compareRevisionsMethod

compareRevisions(t, previous::Dict{String,Any}, current::Dict{String,Any}) where {T<:BitemporalPostgres.ComponentRevision} compare corresponding revision elements and return nothing if equal a pair of both else

source
LifeInsuranceDataModel.csectionFunction

csection(contractid::Integer, tsdbvalidfrom, tsworld_validfrom,activeTransaction::Integer=0)::ContractSectio

csection retrieves the section of a contract or throws NoVersionFound
source
LifeInsuranceDataModel.pisectionMethod

function pisection(historyid::Integer, versionid::Integer, tsdbvalidfrom, tsworldvalidfrom)::Vector{ProductItemSection}

pisection retrieves the vector of a contract's productitem sections
source
LifeInsuranceDataModel.prsectionFunction

prsection(productid::Integer, tsdbvalidfrom, tsworld_validfrom, activeTransaction::Integer=0)::ProductSection

prsection retrieves a section of a product or throws NoVersionFound
source
LifeInsuranceDataModel.psectionFunction

psection(partnerid::Integer, tsdbvalidfrom, tsworld_validfrom, activeTransaction::Integer=0)::PartnerSection

psection retrieves a section of a partner  or throws NoVersionFound
source
LifeInsuranceDataModel.tsectionFunction

tsection(tariffid::Integer, tsdbvalidfrom, tsworld_validfrom, activeTransaction::Integer=0)::TariffSection

tsection retrieves a section of a tariff or throws NoVersionFound
source
diff --git a/dev/index.html b/dev/index.html index ed9ca3d..a0047d8 100644 --- a/dev/index.html +++ b/dev/index.html @@ -1,2 +1,2 @@ -Home · LifeInsuranceDataModel

LifeInsuranceDataModel.jl

Beware, Work In Progress

LifeInsuranceDataModel provides an API for a prototype bitemporal data model for life insurance contracts, partners, products and tariffs. UML Model

Index

+Home · LifeInsuranceDataModel

LifeInsuranceDataModel.jl

Beware, Work In Progress

LifeInsuranceDataModel provides an API for a prototype bitemporal data model for life insurance contracts, partners, products and tariffs. UML Model

Index