@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix edu: <https://knobit.org/def/> .
@prefix knobit: <https://knobit.org/id/knobit/> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix register: <https://knobit.org/id/register/> .
@prefix schema: <https://schema.org/> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .

knobit:K-827 a edu:Knobit ;
    rdfs:label "Recognises a time zone dropped from a timestamp"@en,
        "Recognises an event timestamp stored without a time zone"@en ;
    dcterms:identifier "K-827",
        "N-204" ;
    dcterms:license <https://creativecommons.org/licenses/by/4.0/> ;
    dcterms:source "Review checklist 02-source-to-target-mapping, row 4 (8601)"@en,
        "Review checklist 05-ddl, row 18; ISO 8601; ISO 9075"@en ;
    skos:altLabel "Point in time without a zone, business date with a clock (generated DDL)"@en,
        "Time zone dropped"@en ;
    skos:definition "A timestamp loaded without its offset or zone."@en,
        "Two mirror-image defects. An event timestamp with no offset is ambiguous twice a year and incomparable across a bank that books in more than one zone. A business date — value date, booking date, maturity date, due date — stored as a timestamp invites a time component nobody means and makes date equality quietly fail."@en ;
    skos:prefLabel "Recognises a time zone dropped from a timestamp"@en,
        "Recognises an event timestamp stored without a time zone"@en ;
    edu:actionVerb "Recognises"@en ;
    edu:appliesKnowledge knobit:K-854,
        knobit:N-253 ;
    edu:assessmentCriterion "Flags the deficient case and passes the acceptable one. Deficient: MP-006 `card_txn.auth_ts <- CAST(event_time AS TIMESTAMP)`; source in UTC with offset Acceptable: TIMESTAMP WITH TIME ZONE, or converted with the zone recorded"@en,
        "Flags the deficient case and passes the acceptable one. Deficient: `created_at TIMESTAMP` with no zone on `dim_account`, written by jobs in two regions. And `payment_value_date` as a `TIMESTAMP`, so `= DATE '2026-03-31'` matches none of the rows loaded at 23:30 Acceptable: `TIMESTAMP WITH TIME ZONE` for event times, or UTC with the convention stated in the column `comment` and nowhere else; `DATE` for `payment_value_date`, `loan_maturity_date` and `valid_from_date`/`valid_to_date`, as the sample model has them"@en ;
    edu:assessmentMethod "Review of the stage 2 eval project (reffa/skills, data-integration/evals)"@en,
        "skill-tests task: Generated DDL review, Postgres and Snowflake (DDL review skills)"@en ;
    edu:contextFunction <https://knobit.org/def/contextFunction/resultEvaluation> ;
    edu:creationMethod <https://knobit.org/def/creationMethod/aiGenerated>,
        <https://knobit.org/def/creationMethod/aiGeneratedAiEdited> ;
    edu:dependsOnKnobit knobit:K-617 ;
    edu:expectedResult "The column and the zone-aware type it needs"@en,
        "The mapping and the zone handling"@en ;
    edu:graphRelevance <https://knobit.org/def/graphRelevance/learnerState>,
        <https://knobit.org/def/graphRelevance/taskSelection> ;
    edu:knobitType <https://knobit.org/def/knobitType/skill> ;
    edu:targetObject "event timestamp"@en,
        "timestamp loaded without its offset"@en ;
    schema:creativeWorkStatus "accepted" ;
    schema:isPartOf register:data-integration,
        register:data-modelling .

edu:Knobit rdfs:label "Knobit"@en,
        "Knobit"@et .

knobit:K-617 rdfs:label "Recognises a physical domain differing from the logical domain"@en .

knobit:K-854 rdfs:label "Explains time zones in timestamps and business dates"@en .

knobit:N-253 rdfs:label "Explains booking date, value date and time zones"@en .

