Zorba (XQuery processor)
زوربا ایک اوپن سورس استفسار پروسیسر ہے جو سی + + میں لکھا گیا ہے، جو جے ایس او این ڈیٹا کی پروسیسنگ کے لیے کئی ڈبلیو 3 سی ایکس کوری اور ایکس ایم ایل وضاحتیں اور جے ایس او این زبان کو لاگو کرتا ہے۔ زوربا کو اپاچی لائسنس، ورژن 2 کے تحت تقسیم کیا گیا ہے۔ اس پروجیکٹ کو بنیادی طور پر فلور فاؤنڈیشن، اوریکل اور 28 ایم ایس سی کی حمایت حاصل ہے۔ وضاحتیں زوربا مندرجہ ذیل ڈبلیو 3 سی وضاحتیں کا نفاذ فراہم کرتا ہے: XQuery 1. XQuery 3. XQuery اپ ڈیٹ سہولت 1. XQuery اور XPath مکمل متن 1. XML نحو XQuery 1. XML اسکیما ایکس ایس ایل ٹرانسفارمیشنز (ایکس ایس ایل ٹی) ایکس ایس ایل فارمیٹنگ آبجیکٹس زوربا ان کا نفاذ بھی فراہم کرتا ہے: JSoniq اسکرپٹنگ ایکسٹینشن ڈیٹا ڈیفینیشن فیسیلٹی اسکرپٹنگ ایکسٹینشن ایک کھلی وضاحت ہے جو XQuery یا JSoniq پروگراموں میں مضر اثرات کے لیے معنی فراہم کرتی ہے۔ یہ ایسے پروگراموں کے اندر لازمی پروگرامنگ کے لیے صارف دوست نحو بھی فراہم کرتا ہے۔ درج ذیل کوڈ کا ٹکڑا اسکرپٹنگ نحو کی ایک مثال ہے۔ یہ 100 سے کم تمام فبونیکی نمبروں پر مشتمل ایک ترتیب کا حساب لگاتا ہے۔ (: یہ ایک متغیر اعلامیہ بیان ہے:) متغیر $a بطور xs: عدد: = 0 ؛ متغیر $b بطور xs: عدد: = 1 ؛ متغیر $c بطور xs: عدد: = $a + $b ؛ متغیر $fibseq بطور xs: عدد *: = ($a, $b) ؛ جبکہ ($clt 100) {(: یہ ایک متغیر تفویض بیان ہے:) $fibseq: = ($fibseq, $c); $a: = $b ؛ $b: = $c ؛ $c: = $a + $b ؛} $fibseq درج ذیل اسکرپٹنگ کا استعمال کرتے ہوئے CRUD کارروائیوں کی ایک مثال ہے۔ متغیر $اسٹورز: = doc ("stores.xml")/اسٹورز ؛ (: بنائیں:) نوڈ <اسٹور> <اسٹور-نمبر> 4 </اسٹور-نمبر> <ریاست> NY </ریاست> </اسٹور> کو $اسٹورز میں داخل کریں ؛ (: اپ ڈیٹ:) نوڈ $اسٹورز/اسٹور کی قیمت کو [ریاست = "NY"]/اسٹور نمبر کو "5" سے تبدیل کریں ؛ (: حذف کریں:) نوڈ $اسٹورز/اسٹور کو حذف کریں [ریاست! = "NY"] ؛ (: پڑھیں:) $اسٹورز ڈیٹا ڈیفینیشن فیسیلٹی ڈیٹا ڈیفینیشن فیسیلٹی مستقل نمونوں جیسے کہ ایکسکوری یا JSONiq پروگراموں میں کلیکشنز اور انڈیکس کے لیے ایک سیمنٹک فراہم کرتی ہے۔ مثال کے طور پر، درج ذیل کوڈ کے ٹکڑے اندراجات کے نام سے ایک مجموعہ اور اندراج کے نام سے اس مجموعہ پر ایک اشاریہ کا اعلان کرتے ہیں۔ ماڈیول نیم اسپیس g = "http://www.zorba-xquery.com/guestbook" ؛ امپورٹ ماڈیول نیم اسپیس db = "http://www.zorba-xquery.com/modules/store/static/collections/dml" ؛ ڈیکلیئر نیم اسپیس an = "http://www.zorba-xquery.com/annotations" ؛ (: اندراجات کے نام سے ایک مجموعہ کا اعلان کرتا ہے:) مجموعہ g: اندراجات کو عنصر (اندراج) کے طور پر اعلان کرتا ہے ؛ (: ایک متغیر کا اعلان کرتا ہے جو g: اندراجات مجموعہ کی طرف اشارہ کرتا ہے:) متغیر $g کا اعلان کرتا ہے: اندراجات: = xs: QName ('g: اندراجات') ؛ (: اندراجات مجموعہ کے اوپر ایک انڈیکس نامی اندراج کا اعلان کرتا ہے:)% an کا اعلان کرتا ہے: خودکار ٪ ویلیو-ایکویلیٹی انڈیکس g: نوڈس پر اندراج db: مجموعہ (xs: QName ('g: اندراجات') xs: سٹرنگ ( پہلے سے طے شدہ طور پر، زوربا ایک مرکزی میموری اسٹور کے ساتھ بنایا گیا ہے۔ 28 ایم ایس سی مونگو ڈی بی کے اوپر ایک اسٹور لاگو کرتا ہے۔ براؤزر پروجیکٹ میں ایکس کوری نے زوربا کے لیے ایک براؤزر پلگ ان بنایا ہے اور ڈی او ایم کو اپنے اسٹور کے طور پر استعمال کرتا ہے۔ API Zorba مختلف میزبان زبانوں کے ذریعے قابل استعمال ہے: C + +، C، XQJ/جاوا، PHP، ازگر، C #، روبی، اور یہاں تک کہ XQuery/JSoniq۔ زوربا کمانڈ لائن ٹول کے طور پر بھی دستیاب ہے۔ XQDT ایکلپس (IDE) کے لیے ایک XQuery پلگ ان ہے۔ یہ مکمل طور پر زوربا اے پی آئی اور نحو کی حمایت کرتا ہے۔ ماڈیولز زوربا ایپلی کیشنز کی تعمیر کے لیے 70 سے زیادہ XQuery ماڈیولز فراہم کرتے ہیں۔ ان ماڈیولز میں سے کچھ یہ ہیں: فائل سسٹم، ای میل، ایچ ٹی ٹی پی کلائنٹ، اوآتھ کلائنٹ ایکسکوری اور جے ایس او این آئی کیو ڈیٹا ماڈل پروسیسنگ: ٹائپنگ، ایٹم آئٹمز، اور نوڈس۔ مکمل متن: ٹوکنائزر، اسٹیمر، تھیسورس لک اپ۔ ڈیٹا کی صفائی: صوتی مماثلت، سیٹ مماثلت، تبادلوں۔ ڈیٹا کنورژن: بیس 64، سی ایس وی، ایچ ٹی ایم ایل، جے ایس او این، ایکس ایم ایل ڈیٹا فارمیٹنگ: ایکس ایس ایل-ایف او انٹروسپیکشن اور ریفلیکشن کرپٹوگرافی امیج پروسیسنگ بیرونی لنکس زوربا ویب سائٹ زوربا لائیو ڈیمو زوربا ماڈیولز ایکس کوری پروسیسرز ایکس ایم ایل