موضوع مقاله: اسپارکل | مخاطب: عمومی | لحن: دانشنامه‌ای | ساختار: عنوان، مقدمه، 3 بخش، جمع‌بندی | مقاله: | # اسپارکل | مقدمه: اسپارکل ، یک زبان پرسمان RDF (یک نوع زبان پرسمان معنایی) برای پایگاه‌های داده است. | ## بخش 1: اسپارکل | اسپارکل می‌تواند داده‌های ذخیره شده در فرمت چارچوب توصیف منبع (RDF) را بازیابی و دستکاری کند. این زبان به وسیلهٔ «کارگروه دسترسی دادهٔ آردی‌اف» کوته نوشت (DAWG) از ائتلاف وب جهان‌گستر استانداردسازی شد، و به عنوان یکی از فن آوری‌های کلیدی در وب معنایی شناخته می‌شود. اسپارکل به یک پرسمان اجازه می‌دهد تا شامل الگوهای سه تایی باشند: پیوستگی ، تفکیک و الگوهای اختیاری. و ابزارهایی موجود است که به افراد اجازهٔ اتصال و ساخت نیمه-خودکار یک پرسمان اسپارکل را برای یک پایانه اسپارکل می‌دهد، که یک مثال آن ViziQuer است. مزایا اسپارکل به کاربران اجازه نوشتن پرسمان در برابر آنچه که دادهٔ «کلید-مقدار» نامیده می‌شود را می‌دهد، به صورت اختصاصی تر، داده‌ای که از ویژگی‌های RDF از W3C پیروی می‌کنند پرسمان می‌شوند. رابطه با SQL به زبان پایگاه داده‌های رابطه ای SQL، دادهٔ RDF می‌تواند یک جدول با سه ستون در نظر گرفته شود- ستون موضوع، ستون گزاره یا خبر، و ستون هدف. موضوع در RDF مشابه یک موجودیت در یک پایگاه داده SQL است، در SQL: عناصر داده (یا فیلدها) در چندین ستون قرار می‌گیرد، گاهی نیز در بیش از یک جدول توزیع می‌شود، که توسط یک کلید یکتا مشخص می‌گردد. در عوض، در RDF: این فیلدها به صورت ردیف‌های خبر/هدف مجزا نمایش می‌یابند، که دارای یک «موضوع» مشابه اند، معمولاً «کلید یکتای» مشابه دارند، و «خبر» آنها همان نام ستون است و «هدف» مشابه «دادهٔ واقعی» است. بر خلاف پایگاه‌های دادهٔ رابطه ای، ستون «هدف»، ناهمگون است: در این روش، نوع داده ضمنی توسط مقدار «خبر» تعیین می‌شود (یا در آنتالوژی مشخص شده‌است). | ## بخش 2: اسپارکل | برای مثال می‌توان چندین ورودی «فرزند» برای یک «انسان» بخصوص، و می‌تواند مجموعه ای از این نوع اشیا، مثل «فرزندان» را برگرداند. قابلیت‌ها اسپارکل یک مجموعهٔ کامل از عملیات پرسمان تحلیلی مثل JOIN, SORT, AGGREGATE را برای داده‌ای که که طرح‌واره ی آن به صورت ذاتی بخشی از داده‌است فراهم می‌کند، و نه آنکه نیاز به یک تعریف طرح‌واره جداگانه باشد. با این حال اطلاعات طرح‌واره (آنتالوژی) معمولاً به صورت بیرونی تهیه می‌شود، زیرا اجازه اتصال دیتاست‌های مختلف را به صورت غیر مبهم را می‌دهد. بعلاوه، اسپارکل یک نحو پیمایش گراف بخصوص برای داده‌ای که می‌تواند به صورت گراف تصور شود، تهیه می‌بیند. حالت‌های پرسمان در پرسمان‌هایی که داده را از پایگاه داده می‌خوانند، زبان اسپارکل چهار نوع مختلف پرسمان، برای چهار هدف مختلف تعیین کرده‌است. پرسمان SELECT برای استخراج داده‌های خام، از پایانه اسپارکل استفاده می‌شود، نتایج به صورت قالب جدولی بازگردانده می‌شوند. پرسمان ASK برای تهیه یک نتیجه درست/غلط ساده برای یک پرسمان در یک پایانه اسپارکل استفاده می‌شود. پرسمان DESCRIBE برای استخراج گراف RDF از پایانهٔ اسپارکل استفاده می‌شود، محتوای آن بر عهدهٔ پایانه است، تا بر اساس آنچه که نگهدارنده اطلاعات مفید می‌پندارد تصمیم‌گیری کند. اسپارکل ۱٫۱ یک زبان برای به روزرسانی پایگاه داده به کمک چندین فرم پرسمان جدید تعیین نموده‌است. | ## بخش 3: اسپارکل | این پرسمان‌ها می‌توانند به چندین پایانه اسپارکل (سرویس‌های که پرسمان اسپارکل را می‌پذیرند، و نتایج را برمی‌گردانند) توزیع شوند، محاسبه شوند، و نتایج جمع‌آوری گردد، این فرایند به عنوان پرسمان متحد شناخته می‌شود. چه در حالت پرسمان متحد یا پرسمان محلی، تعاریف سه تایی‌های اضافه در پرسمان باید اجازهٔ اتصال به انواع موضوع مختلف را بدهد، مثلاً خودرو، تا به پرسمان‌های ساده، اجازه بازگرداندن لیستی از نام‌ها و ایمیل‌ها را برای هر انسانی که «خودروهایی با راندمان سوخت بالا» را بدهد. نویسندهٔ این پرسمان برای ارجاع به موضوع از نام متغیر «?person» استفاده کرده‌است، تا وضوح خواندن افزایش یابد. به دلیل آنکه عنصر اول برای سه تایی همیشه موضوع است، نویسنده می‌تواند به سادگی هر نام متغیری را به استفاده کند، مثل "؟subj" یا "?x". هر نامی که انتخاب شود، باید در همهٔ خطوط پرسمان مشابه باشد، تا نشان بدهد که موتور پرسمان باید سه تایی‌های با موضوع مشابه را متصل کند. توجه کنید که هر؟person می‌تواند چندین ایمیل داشته باشد، بنابراین در مجموعه بازگشت شده، یک ردیف؟name می‌تواند چندین بار ظاهر شود، برای هر ایمیل یک بار. پردازشگر پرسمان اسپارکل به دنبال مجموعه‌های سه تایی می‌گردد که با این چهار الگوی سه تایی منطبق می‌باشند، و متغیرهای موجود در پرسمان را با قسمت‌های متناظر هر سه تایی متصل می‌کند. | ## جمع‌بندی | آنچه که در اینجا باید توجه کرد، «جهت‌گیری ویژگی» است، (یک کلاس فقط از طریق هدایت‌های ویژگی‌های کلاس، منطبق می‌شود، تایپ‌دهی اردکی را ببینید).