knobit.org

I2 (2 points)

edu:Question

https://knobit.org/id/task/dq-rule-derivation/I2

Also as Turtle · JSON-LD · RDF/XML

dcterms:licensehttps://creativecommons.org/licenses/by/4.0/
owl:sameAshttps://bitbucket.org/reffa/ontology/id/task/dq-rule-derivation/I2
rdfs:labelI2 (2 points) en
schema:hasPartdq-rule-derivation I2a: null second holder decided in the joint-holder predicate
schema:hasPartdq-rule-derivation I2b: product family stored per account found transitive and checked across rows
schema:identifierI2
schema:position5
schema:text1 each: (a) BR-205: on a single account second_holder_customer_id is null, so second_holder_customer_id <> first_holder_customer_id is UNKNOWN and fails a row predicate - every single account would fail; the null case is decided explicitly (population account_type = 'JOINT', IS NULL OR ..., or IS DISTINCT FROM); (b) BR-211: product_name and product_family on DIM_DEPOSIT_ACCOUNT depend on product_code, not on the account (a transitive dependency; the table is not in third normal form), so moving a product to another family must be repeated on every account row, and the merge rewrites only the rows that changed that night - the update anomaly is reported, BR-211 gets a set check returning product codes with more than one family, and a product table (or a declared copy refreshed from the catalogue) is proposed. en

Used by

has questionDeposit mart data quality rules derived from the data rules and the Snowflake model (DQ rule derivation)
schema:isPartOfdq-rule-derivation I2a: null second holder decided in the joint-holder predicate
schema:isPartOfdq-rule-derivation I2b: product family stored per account found transitive and checked across rows