@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix edu: <https://knobit.org/def/> .
@prefix knobit: <https://knobit.org/id/knobit/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@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-517 a edu:Knobit ;
    rdfs:label "Recognises an unstable or meaningful primary key"@en ;
    dcterms:identifier "K-517" ;
    dcterms:license <https://creativecommons.org/licenses/by/4.0/> ;
    dcterms:source "Review checklist 03-logical, row 17; Codd 1970; Codd 1979; S&W ch. 6"@en ;
    owl:sameAs <https://bitbucket.org/reffa/ontology/id/knobit/data-modelling/05-logical/17> ;
    skos:altLabel "Unstable or meaningful key (logical model)"@en ;
    skos:definition "The key can change, be reused or be unknown when the row is created, or it carries meaning that can change. Every reference to the row breaks when it does."@en ;
    skos:prefLabel "Recognises an unstable or meaningful primary key"@en ;
    edu:actionVerb "Recognises"@en ;
    edu:appliesKnowledge knobit:K-568,
        knobit:K12-69062 ;
    edu:assessmentCriterion "Flags the deficient case and passes the acceptable one. Deficient: Account keyed on branch code plus sequence: a branch merger renumbers the branches and with them every key; Party keyed on name Acceptable: Account keyed on its IBAN, assigned once and never reused; Branch Identifier as a plain attribute; where no stable natural key exists, say so and record the matching rule (`LOG-005`, `LOG-020`, `LOG-021`, `LOG-027`)"@en ;
    edu:assessmentMethod "skill-tests task: Loan application logical model (normalisation anomaly skills)"@en ;
    edu:conformsToProfile <https://oppekava.edu.ee/a/Knobitite_kirjeldamise_ja_seostamise_reeglid#LCG-KNOBIT-0.1> ;
    edu:contextFunction <https://knobit.org/def/contextFunction/resultEvaluation> ;
    edu:creationMethod <https://knobit.org/def/creationMethod/aiGeneratedHumanEdited> ;
    edu:expectedResult "The key and how it can change, be reused, be unknown or carry meaning"@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 "unstable or meaningful primary key"@en ;
    schema:creativeWorkStatus "accepted" ;
    schema:isPartOf register:data-modelling .

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

knobit:K-568 rdfs:label "Explains natural keys, surrogate keys and key stability"@en .

knobit:K12-69062 rdfs:label "Explains how database tables and relationships are structured"@en,
        "Selgitab andmebaasi tabelite ja seoste ülesehitust"@et .

