Кіріспе

Ресми әдістер терминологиясы

Рефикация – компьютерлік бағдарлама туралы абстракт идеяны бағдарламалау тілінде жасалған нақты деректер моделіне немесе басқа объектіге айналдыру процесі. Есептеуге болатын/адрестеуге болатын объект – ресурс – жүйеде есептелмейтін/адрестеуге болатын объектінің өкілі ретінде құрылады. Рефикация арқылы бұрын жасырын, айтылмаған және мүмкін айтуға келмейтін нәрсе нақты түрде тұжырымдалып, тұжырымдамалық (логикалық немесе есептеу) манипуляцияға қолжетімді болады. Бұлжымайтын түрде, рефикация көбінесе белгілі бір жүйе шеңберінде "бір нәрсені бірінші дәрежелі элемент ету" деп аталады. Жүйенің кейбір аспектілері тілдік жобалау кезінде реификациялануы мүмкін, бұл бағдарламалау тілдеріндегі рефлексиямен байланысты. Оны жүйелік жобалау кезінде кезең-кезеңмен жетілдіру ретінде қолдануға болады. Рефикация – тұжырымдамалық талдау және білімді ұсынудың ең көп қолданылатын әдістерінің бірі.

Деректерді нақтылау мен жетілдіру

Деректерді реефикациялау (кезең-кезеңмен жетілдіру) – формальды сипаттамада қолданылатын абстрактілі дерек типтерінің нақтырақ бейнеленуі. Деректерді реефикациялау – Вена әзірлеу әдісінің (ВДМ) терминологиясы, ал көптеген адамдар оны деректерді жетілдіру деп атайды. Мысал ретінде, жоспарланған іске асыру тілінде баламасы жоқ деректерді (мысалы, жиынтықтар) баламасы бар деректермен алмастыруды қарастыруға болады (мысалы, массивтермен іске асырылатын белгілі домендері бар карталар) немесе кем дегенде баламасы бар болуға жақын нәрсемен алмастыруға болады (мысалы, тізбектер). VDM қауымдастығы «жетілдіру» сөзінен гөрі «реефикация» сөзін артық көреді, себебі бұл процесс идеяны жетілдіруден гөрі нақтылаумен байланысты. Осыған ұқсас қолданыс үшін «Reification (тіл білімі)» бетіне қараңыз.

Тұжырымдамалық модельдеуде

Реефикация тұжырымдамалық модельдеуде кеңінен қолданылады. Қарым-қатынасты реефикациялау дегеніміз, оны бір нысан ретінде қарастыру. Қарым-қатынасты реефикациялаудың мақсаты, қосымша ақпарат қосу қажет болғанда оны айқын ету болып табылады. Мысалы, IsMemberOf (мүше:Адам, Комитет) қарым-қатынасын қарастырайық. IsMemberOf-тың бір мысалы – адамның комитет мүшесі екенін көрсететін қарым-қатынас. Төмендегі суретте IsMemberOf қарым-қатынасының кестелік нысандағы мысалмен толтырылуы көрсетілген. Адам P1, C1 және C2 комитеттерінің мүшесі. Адам P2 тек C1 комитетінің мүшесі. Дегенмен, осы фактіні де нысан ретінде қарастыруға болады. Қарым-қатынасты нысан ретінде қарастыра отырып, бұл нысан қарым-қатынасты реефикациялайды деуге болады. Бұл қарым-қатынастың реефикациялануы деп аталады. Кез келген нысан сияқты, ол да нысан түрінің бір мысалы болуы керек. Осы мысалда нысан түрі "Мүшелік" деп аталды. IsMemberOf-тың әр мысалы үшін, Мүшеліктің бір және бір ғана мысалы бар, және керісінше. Енді бастапқы қарым-қатынасқа қосымша ақпарат қосу мүмкін болады. Мысал ретінде, "адам p1-ді комитет c1-дің мүшесі ретінде адам p2 ұсынды" деген фактіні білдіре аламыз. Реефикацияланған қарым-қатынас Мүшелік, жаңа қарым-қатынас IsNominatedBy (Мүшелік, Адам) үшін бастапқы дерек ретінде пайдаланылуы мүмкін. Қосымша қолданыс үшін Reification (білімді ұсыну) бетіне қараңыз.

Бірыңғай модельдеу тілінде (UML)

UML қайтадан бейнеленген қатынас түрлерін анықтау үшін ассоциациялық кластың құрылымдық элементін ұсынады. Ассоциациялық класс – қатынастың және кластың бір түрі болатын жалғыз модель элементі. Қатынас және қайтадан бейнеленген нысан түрі – бірдей модель элементі болып табылады. Атрибуттарды қайтадан бейнелеуге болмайтынын ескеріңіз.

Санаға салыстыру

Сонымен қатар, бұл жерде сипатталған реификация басқа тілдерде кездесетін "цитатадан" өзгеше екенін атап өту маңызды. Керісінше, реификация нақты үштіктің мысалы мен сол үштік көрсеткен ресурстар арасындағы қатынасты сипаттайды. Реификацияны интуитивті түрде "осы RDF үштігі осы нәрселер туралы айтады" деп түсінуге болады, "осы RDF үштігінің осы формасы бар" деудің орнына (цитатадағыдай). Мысалы, осы бөлімде қолданылған реификация мысалында, бастапқы мәлімдеменің rdf:subject-ісін сипаттайтын үштік: committee:membership12345 rdf:subject person:p1 мәлімдеменің тақырыбы person:p1 URIref арқылы белгіленген ресурс (адам) екенін көрсетеді. Бұл мәлімдеменің тақырыбының өзі URIref (яғни, белгілі бір таңбалармен басталатын жол) екенін білдірмейді, цитата болғандағыдай.