Duomenų modeliavimas
Rengiant struktūros aprašus svarbu suprasti, kas yra duomenų modelis ir kokie yra duomenų modelio variantai ir bendrai kokie yra duomenų modeliavimo principai.
Koncepcinis modelis
Koncepcinis duomenų modelis apibūdina realaus ar menamo pasaulio sąvokas ir ryšius tarp jų. Koncepciniame modelyje nedetalizuojamos techninės detalės, apibrėžiamos tik pačios sąvokos ir jų semantinė prasmė.
Skirtinguose kontekstuose koncepcinis modelis gali būti suprantamas skirtingai, šiame dokumente koncepcinis modelis apibrėžiamas taip, kaip jis yra naudojamas struktūros apraše.
Duomenų struktūros aprašo specifikacijos kontekste, koncepcinis modelis turi būti parengtas naudojant OWL, RDFS arba SKOS žodynus, pagal RDF duomenų modelį. Tai reiškia, kad kiekvienai savokai suteikiamas unikalus identifikatorius, IRI formatu.
Tarkime FOAF žodyne yra apibrėžtos tokios sąvokos:
foaf:Person - žmogus.
foaf:member - narys.
foaf:Group - grupė.
Šioms sąvokoms yra priskirtas unikalus identifikatorius, tačiau nurodoma
sutrumpina forma, naudojant prefiksą foaf:. Prefiksas foaf: yra
sutrumpintas IRI vardų erdvės pavadinimas rodantis į
http://xmlns.com/foaf/0.1/.
Pilnas aukščiau nurodytų sąvokų IRI būtų toks:
foaf:Person->http://xmlns.com/foaf/0.1/Personfoaf:member->http://xmlns.com/foaf/0.1/memberfoaf:Group->http://xmlns.com/foaf/0.1/Group
Svarbu suprasti, kad koncepcinis modelis yra tiesiog sąrašas sąvokų, kurioms suteiktas identifikatorius ir nurodoma sąvokos semantinė prasmė.
Koncepcinis modelis yra skirtas plačiam taikymui, todėl sąvokų naudojimas nėra griežtai apribotas.
Rengiant struktūros aprašus, sąsaja su koncepciniame modelyje apibrėžtomis
sąvokomis nurodoma uri stulpelyje.
Taip pat žiūrėkite:
What is a conceptual model, SEMIC Style guide.
Generalizacija ir specializacija
Kalbant apie koncepcinius modelius, svarbu suprasti kas yra generalizacija ir specializacija.
Koncepciniame modelyje pateikiame klases, savybes naudojant RDFS arba OWL žodynus ir kategorijas naudojant SKOS žodyną.
Generalizacija yra objektų klasifikavimo principas, kuris nurodo bendresnę klasę ar kategoriją, kuriai priklauso objektas.
Tarkime imant tą patį FOAF žodyną, ir atliekame konkretaus žmogaus vardu Vardenis Pavardenis generalizaciją:
Vardenį Pavardenį galime priskirti bendrai klasei foaf:Person.
foaf:Person klasę, galima priskirti bendresnei klasei foaf:Agent.
foaf:Agent klasę, galima priskirti dar bendresnei klasei owl:Thing.
Specializacija yra atvirkštinis procesas, kai vietoje bendresnės klasės, parenkame labiau specializuotą.
Pakartotinis naudojimas
Yra labai daug žodynų, kurie apibrėžia įvairias savokas, pavyzdžiui FOAF, OWL, RDFS, SKOS ir pan. Svarbu, kad jei sąvoka jau yra apibrėžta viename iš žodynų, būtina naudoti tokią sąvoką, kuri jau yra apibrėžta ir deklaruoti naujas sąvokas tik tuo atveju, jei tokia sąvoka dar nėra apibrėžta jokiame kitame žodyne.
Taip pat žiūrėkite:
Clarification on "reuse", SEMIC Style guide.
Loginis modelis
Loginio modelio sąvoka gali būti interpretuojama skirtingai, skirtinguose kontekstuose, čia pateikiama interpretacija, kuri yra naudojama rengiant struktūros aprašus.
Loginis modelis naudoja koncepciniame modelyje apibrėžtas sąvokas, pagal jų semantinę prasmę ir sudaro duomenų schemą, konkrečiam taikymo atvejui.
Koncepciniame modelyje nustatoma kiekvienos sąvokos semantinė prasmė ir suteikiamas kiekvienai sąvokai identifikatorius, o loginiame modelyje nurodomos tikslios kiekvienos sąvokos naudojimo taisyklės, konkreti duomenų modelio forma, duomenų tikrinimo taisyklės.
Dažnai loginiame modelyje apjungiamos savokos iš kelių žodynų.
Loginis modelis nėra siejamas su konkrečiais duomenų serializavimo formatais ir duomenys atitinkantys loginį modelį gali būti išreikšti įvairiais formatais.
Struktūros aprašuose loginis modelis nurodomas model, property, type ir
ref stulpeliuose.
Taip pat žiūrėkite:
What is an Application Profile (AP) specification?, SEMIC Style guide.
Fizinis modelis
Fizinis modelis siejamas su konkrečia loginio modelio schema, nurodant duomenų vietą pagal konkretaus formato, kuriuo teikiami duomenys logiką.
Fizinis modelis yra pats žemiausias lygmuo, kalbantis apie fizinę duomenų saugojimo logiką.