پایگاه داده های رابطه ای داده ها را به صورت مدل رابطه ای (Relational Database) ذخیره و مدیریت می کنند.در پایگاه داده های رابطه ای داده ها در غالب جدول ذخیره و مدیریت می شوند. هر جدول به صورت یک ماتریس دو بعدی در نظر گرفته می شوند. در مفاهیم پایگاه داده های رابطه ای، ستون را فیلد (Fields) و سطر را رکورد (Record) می نامند. زبان SQL زبان استانداردی است که از آن برای پرس و جو کردن داده های جدول استفاده می کنیم

چارچوب توصیف منبع (Resource Description Framework یا RDF) در وب معنایی به عنوان مدل داده ای (Data Model) است که مورد قبول قرار گرفته است و به صورت یک استاندارد برای توصیف منابع استفاده می شود. اما چرا باید یک استاندارد را برای توصیف منابع روی وب داشته باشیم؟ پاسخ سوال، این است که نیاز داریم تا داده ها را با دیگران با اشتراک بگذاریم. به عبارت دیگر زمانی که نیاز به تبادل اطلاعات باشد، نیاز به یک استاندارد برای مدل کردن داده ها لازم و ضروری است.

انگیزه های RDF

چارچوب توصیف منبع (RDF)، چارچوبی (Framework) برای نمایش و ارائه اطلاعات در وب است. انگیزه نخست برای توسعه RDF، فراهم کردن اطلاعاتی درباره منابع وب (Web Resource) و سیستم هایی که آنها را به کار می برند. همچنین نیاز است تا داده های وب که با اچ تی ام ال برای خواندن و فهمیده شدن انسان ارائه می شوند، به گونه ای فراهم شوند که بدست ماشین ها نیز قابل پردازش باشند.

یکی دیگر از کاربردهای مهم در داده های پیوندی و چارچوب توصیف منبع، تبادل داده ها و اطلاعات میان سیستم های نرم افزاری و برنامه هایی هستند که مستقل از یکدیگر توسعه داده شده اند. این سیستم ها با زبان برنامه نویسی ناهم سان (متفاوت) نوشته شده اند و بر روی پلتفرمی ناهم سان اجرا می شوند. از دید دیگر، همچنین نیاز است تا داده و اطلاعات از سیستم های گوناگون گردآوری و یکپارچه (Integrated) شوند و سپس به عنوان اطلاعات تازه، بر روی وب در دسترس قرار داده شوند. پس تبادل اطلاعات و یکپارچه سازی آن ها دو انگیزه دیگر در کنار پردازش شدن بدست ماشین هستند.

سه تایی RDF

چارجوب توصیف منبع همانگونه که از نامش پیدا است برای توصیف داده ها استفاده می شود و چون قرار است این داده های توصیف شده بر روی وب قرار گیرند تا بتوان آنها را با دیگران به اشتراک گذاشت، باید دارای یک شناسه (Identifier) باشند. پس هر چیزی دارای یک شناسه است. در وب معنایی و داده های پیوندی مفاهیمی مانند چارچوب توصیف منبع، اسکیما چارچوب توصیف منبع، آنتولوژی و دیگر مفاهیم هستند که آنها را آموزش می دهیم. ولی از دید RDF سه مفهوم زیر و یک مفهوم به نام سه تایی هست که در این نوشته آنها را خواهیم گفت.

  • URI ها
  • لیترال ها (Literals)
  • گره های خالی (Blank Nodes)

مدل داده RDF مفهوم ساده ای دارد و آن نشان دادن و نمایش رابطه میان دو منبع است که به گونه یک سه تایی (Triple) نشان داده می شود. این سه تایی شامل سه مولفه Predict و Subject و Object است. Predict همان رابطه میان دو منبع است و Subject و Object همان دو منبع هستند. بنابراین این سه مولفه یک سه تایی را می سازند که هر کدام با یک URI شناسایی می شوند.

شکل زیر یک سه تایی RDF را  نشان می دهد. Subject و Object یا همان منبع ها با مستطیل و رابطه ها با یک خط میان آنها نشان داده شده اند. گونه رابطه بالای خط نوشته شده است. می بینید که با ایجاد رابطه میان منبع های متفاوت، یک گراف پدید می آیدکه آن را RDF Graph می گویند. بنابراین هر کدام از دو سوی یک رابطه، یک گره هستند که برخی دارای مقدار و مستطیل شکل (یا در برخی منابع بیضی شکل) و برخی یک دایره خالی هستند که این دایره های خالی را Blank Node می گویند.

گره های خالی (Blank Node) به سادگی نشان دهنده بودن یک چیز (Thing) است، بدون آنکه برای شناسنایی هر چیز ویژه ای بخواهیم IRI را به کار ببریم. البته این مفهوم، آنگونه نیست که گمان کنیم که گره خالی یک IRI ناشناخته را نشان می دهد. در واقع گره های خالی به عنوان شناسه ای برای منابعی به کار می روند که این منابع در حوزه (دامنه) محلی و درون همان فایل RDF شناخته شده هستند.

در جهت چپ یک Predict یک گره Subject و در جهت راست آن همیشه گره Object هست. گره Object همیشه دارای یک URI است ولی گره Object می تواند دارای مقدار داده ای (Litteral) و یا دارای URI باشد. همانگونه که در شکل بالا می بینید، در Object های مشخص شده با رنگ قرمز، مقدار رشته قرار دارد. شکل زیر یک سه تایی تنها و بیرون از گراف را نشان می دهد. بنابراین یک گراف RDF از بهم پیوستن چندین سه تایی بدست Predict ها پدید می آید.

در جهت چپ یک Predict یک گره Subject و در جهت راست آن همیشه گره Object هست. گره Object همیشه دارای یک URI است ولی گره Object می تواند دارای مقدار داده ای (Litteral) و یا دارای URI باشد. همانگونه که در شکل بالا می بینید، در Object های مشخص شده با رنگ قرمز، مقدار رشته قرار دارد. شکل زیر یک سه تایی تنها و بیرون از گراف را نشان می دهد. بنابراین یک گراف RDF از بهم پیوستن چندین سه تایی بدست Predict ها پدید می آید.

در شکل بالا می خواهیم نام و نام خانوادگی یک منبع که در اینجا با شناسه cb:JudeRaisin است را بدانیم، پس باید پیوند یا ربطه (یا Predict) با شناسه cb:named را دنبال کنیم که در پایان به دو پیوند cb:first و cb:family می رسیم که پایان هر دو یک مقدار رشته ای برای نام و نام خانوداگی است.

برای فهم بهتر از سه تایی RDF می توانیم از دید مفهوم موجودیت ها (Entity) به آن نگاه کنیم. در مفاهیم پایگاه داده رابطه ای، هر موجودیت، چیزی درون سیستمی است که می خواهیم آن را سیستم را مدل کنیم. هر موجودیت دارای یک نام و یک رشته از ویژگی ها است. هر جدول پایگاه داده رابطه ای نیز یک موجودیت از سیستم را مدل می کند. این موجودیت می تواند استاد، دانشجو، فروشنده و خریدار، فهرست انبار و هر چیز دیگری باشد.

در سه تایی چارچوب توصیف منبع، Subject شناسه موجودیت و Predict نام ویژگی موجودیت و  Object مقدار ویژگی موجودیت هستند. Subject همواره یک URI است ولی Object می تواند یک مقدار Litteral مانند عدد، رشته یا یک URI باشد. برای نمونه در شکل زیر یک سه تایی RDF ساده و به گونه آشکارتر نشان داده شده است.

در شکل بالا یک سطر از جدول کارمندان (Employee) نشان داده شده است که می خواهیم کارمند emp3 را توصیف کنیم. در این توصیف  title یک ویژگی از کارمندان است که برابر با ستونی از جدول است که عنوان کاری کارمندان را نشان می دهد. در شکل زیر می بنید که از سطرها و ستون های پایگاه داده رابطه ای می توانیم گراف RDF را پدید بیاوریم. در شکل زیر برای نمونه کارمند emp8 باید به کدام کارمند گزارش دهد، با دنبال کردن رابطه reports to به گره ای می رسیم که شناسه ای برای کارمند emp3 است. حال اگر بخواهیم در مورد کارمند emp3 بدانیم، باید Predict های آن را دنبال کنیم.