ORM Flashcards
aritet
antall begreper i en setning
antall begreper i en setning
aritet
faktatype
En faktatype er et rollepar mellom to begreper.
En faktatype kan ha vilkårlig antall roller (aritet).
en forbindelse mellom to begreper
faktatype
bro
En bro er en forbindelse mellom et begrep og en representasjon. Broer alltid binære.
en forbindelse mellom et begrep og en representasjon
bro
setningstyper
bro, faktatype
broer og faktatyper er eksempler på
setningstyper
rollenavn bør inneholde
verb ved faktatype
preposisjon ved bro (med/for, med/på)
alle Biler har en eier
rollen eies av er en total rolle for Bil
den er definert for alle forekomster av Bil
rollen eies av er en total rolle for Bil
alle Biler har en eier
1:1 bro der begrepsrollen er total
perfekt bro
perfekt bro
1:1 bro der begrepsrollen er total
Person (fødselsnummer)
kortform for perfekt bro
kortform for perfekt bro
Person (fødselsnummer)
entydighet på tvers av faktatyper indikeres med…
ekstern entydighetsskranke på de involvert rollene
ekstern entydighetsskranke
indikerer entydighet på tvers av faktatyper
begrepsdannelse
relevant når man får faktatyper med lange entydighetspiler
En faktatype med aritet 3 eller 4 kan gjøres om til binære setninger ved å lage nye begreper
relevant når man får faktatyper med lange entydighetspiler
begrepsdannelse
populasjon
rolle:
pop(r) angir mengden av forekomster i kolonnen for r i forekomsttabellen
begrep:
pop(A) = pop(r1) U pop(r2) U … U pop(rn)
mengdeskranker
mengdeskranker begrenser mengden av forekomster i en eller flere roller i forhold til forekomstene i andre roller
- Mengdelikhetsskranke
- Mengdeulikhetsskranke
- Delmengdeskranke
begrenser mengden av forekomster i en eller flere roller i forhold til forekomstene i andre roller
mengdeskranker
mengdelikhetsskranke
A skal ha rollen r1, hvis og bare hvis, A har rollen r2.
pop(r1) = pop(r2) for alle tilstander
mengdeulikhetsskranke
A skal ikke ha både rollen r1 og r2
pop(r1) ∩ pop(r2) = ∅
delmengdeskranke
Hvis A har rollen r2, så skal A også ha rollen r1.
pop(r2) ⊆ pop(r1) for alle tilstander
underbegrep
B er et underbegrep av A hvis vi alltid har
pop(B) ⊆pop(A)
Underbegreper arver representasjon og roller fra superbegrepet. I tillegg har de sine egne roller.
underbegrepsskranker
brukes til å bestemme hvilket underbegrep hver enkelt forekomst tilhører.
De kan overlappe eller være disjunkte
kombinere totale rolle
A skal ha enten rollen r1 eller rollen r2
A skal ha enten rollen r1 eller rollen r2
kombinert totale rolle
skranke
Forretningsregler => Skranker => Integritetsregler
Skranker er beskrivelser av forretningsregler. I det begrepsmessige skjemaet (realiseringen) kaller vi skrankene for integritetsregler.
- Statiske skranker beskriver begresninger på mulige tilstander i interesseområdet (=> hva som er lovlig å lagre/lovlige tilstander i databasen)
- Dynamiske skranker beskriver begresninger på mulige forandringer i interesseområdet.
En ORM-modell beskriver de statiske skrankene i hvert UoD
UoD
Universe of Discourse
interesseområdet
begrep
navn på grupper av tilsvarende ting
representasjon
informasjon som identifiserer et begrep
ontologi
Vitenskapen om sammenhengen mellom virkelige fenomener (UoD), begrep og representasjon (Ogdens trekant)
elementær setning
En setning som ikke kan deles opp uten å miste meningsinnhold, kalles elementær.
Hvis entydighetsskranken er minst (aritet - 1) lang, er setningen (nesten) alltid elementær. Alle unære og binære setninger er dermed unære.
unære setninger i orm
binær setning hvor ett av begrepene har boolsk representasjon
rolleterminologi v/ biler og deres eiere
Begrepet “Person” spiller rollen “eier” overfor begrepet “Bil”.
verdiskranker
Verdiskranker angir hvilke verdier som er lovlige representasjoner.
angir hvilke verdier som er lovlige representasjoner
verdiskranker
mengdeulikhetsskranke over to roller
Det skal ikke være forekomster av A og B som er relatert gjennom begge faktatypene
mangel på __ kan indikere et underbegrep
totale roller
forutsetninger for realisering
- Alle lange piler må gjøres til gjenstand for begrepsdannelse og gis et navn
- ORM-diagrammet må være refererbart
- Ingen synonyme broer
en lang pil er en ___ i forkledning
ekstern entydighet
synonym bro
én til mange bro fra begrep til representasjon
realiseringsalgoritmen
- Begrep -> Relasjon/Tabell med samme navn
- Finn referansemåte for alle begreper (primærnøkkel)
- Grupper resterende broer til sine respektive begreper -> attributter
- Grupper resterende faktatyper -> fremmednøkler
- Overfør skranker -> integritetsregler
- Fjern overflødige referanserelasjoner
referansemåten til et begrep er enten…
- Navnet på en representasjon knyttet til begrepet med en perfekt bro
- Referansemåten til en 1:1-faktatype hvor begrepet har en total rolle
- (for begrepsdannelser:) Samlingen av referansemåtene til begrepene som utgjør grunnlaget for en begrepsdannelse