Sweble
سویبل ویکی ٹیکسٹ پارسر ویکیپیڈیا کے پیچھے سافٹ ویئر میڈیا ویکی کے ذریعہ استعمال ہونے والی ویکی ٹیکسٹ مارک اپ زبان کو تجزیہ کرنے کے لیے ایک اوپن سورس ٹول ہے۔ ابتدائی ترقی ہینز ڈورن نے 2009 سے 2011 تک ایرلینجن-نیورمبرگ یونیورسٹی میں پروفیسر ڈرک ریہل کے اوپن سورس ریسرچ گروپ میں پی ایچ ڈی تھیسس پروجیکٹ کے طور پر کی تھی۔ نتائج پہلی بار 2011 میں وکی سم کانفرنس میں عوام کے سامنے پیش کیے گئے تھے۔ اس سے پہلے، اس مقالے کا معائنہ اور منظوری ایک آزاد سائنسی ہم مرتبہ جائزہ کے ذریعے کی گئی تھی اور اسے اے سی ایم پریس میں شائع کیا گیا تھا۔ اوہلوہ کے اعداد و شمار کی بنیاد پر تجزیہ کار بنیادی طور پر جاوا پروگرامنگ زبان میں لکھا جاتا ہے۔ اسے مئی 2011 میں اوپن سورس کیا گیا تھا۔ تجزیہ کار خود چوہوں کا استعمال کرتے ہوئے تجزیہ اظہار گرائمر (پی ای جی) سے تیار کیا جاتا ہے! پارسر جنریٹر۔ انکوڈنگ کی توثیق جے فلیکس میں لکھے گئے فلیکس لیکسیکل تجزیہ کار کا استعمال کرتے ہوئے کی جاتی ہے۔ سویبل ویکی ٹیکسٹ پارسر کے ڈیزائن پر کاغذ کا پری پرنٹ ورژن پروجیکٹ کے ہوم پیج پر پایا جا سکتا ہے۔ اس کے علاوہ، میڈیا ویکی کے مستقبل میں ایک خلاصہ صفحہ موجود ہے۔ تجزیہ کی موجودہ حالت میڈیا ویکی میں استعمال ہونے والا تجزیہ کار مواد کو براہ راست ویکی ٹیکسٹ سے ایچ ٹی ایم ایل میں تبدیل کرتا ہے۔ یہ عمل دو مراحل میں کیا جاتا ہے: ٹیمپلیٹس کی تلاش اور توسیع (جیسے انفو باکسز)، متغیرات، اور میٹا انفارمیشن (جیسے. {{lc: ABC}} لوور کیس اے بی سی میں تبدیل ہو جاتا ہے)۔ ٹیمپلیٹ کے صفحات میں دوبارہ اس طرح کی میٹا معلومات ہو سکتی ہیں تاکہ ان کا بھی جائزہ لیا جائے (ریکرشن)۔ یہ نقطہ نظر استعمال شدہ میکرو توسیع سے ملتا جلتا ہے۔ سی + + جیسی پروگرامنگ زبانوں میں۔ اب مکمل طور پر توسیع شدہ متن کا تجزیہ اور پیش کرنا۔ اس طرح، متن کو میڈیا ویکی کے بلٹ ان افعال کی ایک ترتیب کے ذریعے پروسیس کیا جاتا ہے جس میں سے ہر ایک ایک ساخت کو پہچانتا ہے۔ وہ لوگ باقاعدہ تاثرات کا استعمال کرتے ہوئے مواد کا تجزیہ کرتے ہیں اور مثال کے طور پر اس کی جگہ لے لیتے ہیں۔ = HEAD = اس کے ایچ ٹی ایم ایل کے مساوی <h1> HEAD </h1> کے ساتھ۔ زیادہ تر معاملات میں، یہ اقدامات لائن بہ لائن کیے جاتے ہیں، مستثنیات ٹیبل یا فہرستیں ہوتی ہیں۔ جیسا کہ سویبل کے مصنفین اپنے مقالے میں لکھتے ہیں، میڈیا ویکی کے پارسر کے سورس کوڈ کے تجزیے سے پتہ چلتا ہے کہ علیحدہ تبدیلی کے مراحل استعمال کرنے کی حکمت عملی نئے مسائل کا باعث بنتی ہے: زیادہ تر استعمال شدہ افعال آس پاس کے عناصر کے دائرہ کار کو مدنظر نہیں رکھتے ہیں۔ اس کے نتیجے میں ایچ ٹی ایم ایل آؤٹ پٹ میں غلط نیسٹنگ کا باعث بنتا ہے۔ نتیجے کے طور پر، مؤخر الذکر کی تشخیص اور انجام مبہم ہو سکتا ہے اور اس کا انحصار استعمال شدہ ویب براؤزر کے انجام دینے والے انجن پر ہوتا ہے۔ وہ کہتے ہیں: "انفرادی پروسیسنگ کے اقدامات اکثر تجزیہ کار کے غیر متوقع اور متضاد رویے کا باعث بنتے ہیں۔ مثال کے طور پر، فہرستوں کو ٹیبل سیل کے اندر پہچانا جاتا ہے۔ تاہم، اگر ٹیبل خود کسی فریم شدہ تصویر کے اندر ظاہر ہوتا ہے، تو فہرستیں پہچانی نہیں جاتی ہیں۔ جیسا کہ 2008 میں ویکی سم کانفرنس میں دلیل دی گئی تھی، زبان کی درستگی کی کمی اور اجزاء کو الگ کرنا ویکی سافٹ ویئر کے ارتقا میں رکاوٹ ہے۔ اگر ویکی کے مواد میں ایک اچھی طرح سے متعین نمائندگی ہوتی ہے جو مکمل طور پر مشین پر کارروائی کے قابل ہوتی ہے، تو یہ نہ صرف اس کے مواد کی بہتر رسائی کا باعث بنے گا بلکہ اس پر کارروائی کرنے کے طریقوں کو بھی بہتر اور وسعت دے گا۔ اس کے علاوہ، ویکی مواد کے لیے ایک اچھی طرح سے متعین آبجیکٹ ماڈل مزید ٹولز کو اس پر کام کرنے کی اجازت دے گا۔ اب تک میڈیا ویکی کے لیے ایک نئے تجزیہ کار کو نافذ کرنے کی متعدد کوششیں کی گئی ہیں (دیکھیں)۔ ابھی تک ان میں سے کوئی بھی کامیاب نہیں ہوا ہے۔ سویبل کے مصنفین کا کہنا ہے کہ یہ "ان کے گرائمر کے انتخاب کی وجہ سے ہو سکتا ہے، یعنی معروف ایل اے ایل آر (1) اور ایل ایل (کے) گرائمر۔ اگرچہ یہ گرائمرز صرف سیاق و سباق سے پاک گرائمرز کا ایک ذیلی مجموعہ ہیں، لیکن ویکی ٹیکسٹ کو گلوبل پارسر اسٹیٹ کی ضرورت ہے اور اس لیے اسے سیاق و سباق سے حساس زبان سمجھا جا سکتا ہے۔ نتیجے کے طور پر، وہ اپنے تجزیہ کار کو تجزیہ اظہار گرائمر (پی ای جی) پر مبنی کرتے ہیں۔ سویبل کیسے کام کرتا ہے سویبل ویکی ٹیکسٹ کو تجزیہ کرتا ہے اور آؤٹ پٹ کے طور پر ایک تجریدی نحو ٹری تیار کرتا ہے۔ اس سے غلط مارک اپ کوڈ کی غلطیوں سے بچنے میں مدد ملتی ہے (مثال کے طور پر۔ ایک میز کے متعدد خلیوں پر پھیلی ہوئی لنک کا ہونا)۔ خلاصہ نحو درخت ماڈل کی تفصیلی تفصیل ویکی ٹیکسٹ آبجیکٹ ماڈل (ڈبلیو او ایم) کے بارے میں تکنیکی رپورٹ میں مل سکتی ہے۔ تجزیہ کرنے کے مراحل تجزیہ کار ویکی ٹیکسٹ کو پانچ مراحل میں پروسیس کرتا ہے: 1. انکوڈنگ توثیق چونکہ ویکی ٹیکسٹ میں تمام ممکنہ حروف کی اجازت نہیں ہے (مثال کے طور پر۔ یونیکوڈ میں کنٹرول حروف)، اصل تجزیہ شروع کرنے سے پہلے صفائی کے مرحلے کی ضرورت ہوتی ہے۔ اس کے علاوہ، اداروں کے نتیجے میں آنے والے ناموں کو منفرد بنا کر بعد کے مراحل کو آسان بنانے کے لیے کچھ اندرونی نام رکھے جاتے ہیں۔ اس عمل میں اس بات کو یقینی بنایا جانا چاہیے کہ پارسر کے لیے سابقہ کے طور پر استعمال ہونے والے حروف سے بچا یا تبدیل نہ کیا جائے۔ تاہم، اس مرحلے کو ان پٹ سے حروف کو ہٹانے کی وجہ سے معلومات کے نقصان کا باعث نہیں بننا چاہیے۔ 2. متن کو غیر قانونی حروف سے صاف کرنے کے بعد، اس کے نتیجے میں وکی ٹیکسٹ توسیع کے لیے تیار کیا جاتا ہے۔ اس مقصد کے لیے اسے ایکس ایم ایل جیسے تبصروں، میٹا معلومات جیسے ری ڈائریکشنز اور سیٹیرا، مشروط ٹیگز، اور ٹیگ ایکسٹینشنز کے لیے اسکین کیا جاتا ہے۔ مؤخر الذکر XML عناصر ہیں جن کا علاج بالترتیب پارسر افعال یا متغیرات سے ملتا جلتا ہے۔ نامعلوم ناموں والے ایکس ایم ایل عناصر کے ساتھ ایسا سلوک کیا جاتا ہے جیسے وہ عام text.The ہیں اس مرحلے کا نتیجہ ایک اے ایس ٹی ہے جو زیادہ تر ٹیکسٹ نوڈس پر مشتمل ہوتا ہے بلکہ لنکس، ٹرانسکلیوژن نوڈس اور ٹیگ ایکسٹینشنز کے نوڈس کو بھی ری ڈائریکٹ کرتا ہے۔ 3. میڈیا ویکی میں توسیعی صفحات اکثر ٹیمپلیٹس، جادوئی الفاظ، پارسر افعال اور ٹیگ ایکسٹینشنز کا استعمال کرتے ہوئے بنائے جاتے ہیں۔ ڈبلیو وائی ایس آئی ڈبلیو وائی جی ایڈیٹر میں اے ایس ٹی کا استعمال کرنے کے لیے، اصل صفحہ میں غیر توسیع شدہ ٹرانسکلیوژن بیانات اور پارسر فنکشن کالز کو دیکھنے کے لیے توسیع کو چھوڑ دیا جائے گا۔ تاہم، مواد پیش کرنے کے لیے مثال کے طور پر۔ ایچ ٹی ایم ایل پیج کے طور پر مکمل آؤٹ پٹ حاصل کرنے کے لیے ان پر کارروائی کی جانی چاہیے۔ مزید برآں، ٹیمپلیٹس کے طور پر استعمال ہونے والے صفحات خود دوسرے صفحات کو منتقل کر سکتے ہیں جو توسیع کو ایک تکراری عمل بناتا ہے۔ 4. تجزیہ شروع ہونے سے پہلے، اے ایس ٹی کو دوبارہ ویکی ٹیکسٹ میں تبدیل کرنا ہوگا۔ ایک بار یہ مرحلہ مکمل ہونے کے بعد، ایک پی ای جی تجزیہ کار متن کا تجزیہ کرتا ہے اور ویکی پیج کے نحو اور الفاظ پر قبضہ کرنے والا اے ایس ٹی تیار کرتا ہے۔ 5. پوسٹ پروسیسنگ اس مرحلے میں ٹیگز کو پورے آؤٹ پٹ عناصر بنانے کے لیے ملایا جاتا ہے۔ مزید برآں، apostrophes کا تجزیہ یہ فیصلہ کرنے کے لیے کیا جاتا ہے کہ ان میں سے کون سی حقیقی نصوص apostrophes ہیں اور جن کی تشریح ویکی ٹیکسٹ میں بولڈ یا اٹالک فونٹ کے لیے مارک اپ کے طور پر کی جانی چاہیے۔ اس مرحلے میں پیراگراف کی اسمبلی کو بھی سنبھالا جاتا ہے۔ اس طرح، اے ایس ٹی کو درخت کے ڈھانچے پر ڈیپتھ-فرسٹ ٹریورسل کا استعمال کرتے ہوئے پروسیس کیا جاتا ہے۔ مختلف قسم کے آؤٹ پٹ کی پیش کش کے ساتھ ساتھ تجزیہ کرنے والے افعال کو زائرین کے طور پر محسوس کیا جاتا ہے۔ اس سے اے ایس ٹی ڈیٹا ڈھانچے کو ڈیٹا پر کام کرنے والے الگورتھم سے الگ کرنے میں مدد ملتی ہے۔ حوالہ جات پارسنگ میڈیا ویکی تالیف ٹولز یونکس پروگرامنگ ٹولز