Zorba (XQuery processor)
জোরবা হল সি + +-এ লেখা একটি ওপেন সোর্স কোয়েরি প্রসেসর, যা জে. এস. ও. এন ডেটা প্রক্রিয়াকরণের জন্য বেশ কয়েকটি ডব্লিউ3সি এক্সকুয়েরি এবং এক্স. এম. এল নির্দিষ্টকরণ এবং জে. এস. ও. এন. আই. সি ভাষা প্রয়োগ করে। জোরবা অ্যাপাচি লাইসেন্স, সংস্করণ 2-এর অধীনে বিতরণ করা হয়। প্রকল্পটি মূলত FLWOR ফাউন্ডেশন, ওরাকল এবং 28 এম. এস. সি দ্বারা সমর্থিত। নির্দিষ্টকরণ জোরবা নিম্নলিখিত ডব্লিউ3সি নির্দিষ্টকরণগুলির বাস্তবায়ন প্রদান করেঃ এক্সকুয়েরি 1 এক্সকুয়েরি 3 এক্সকুয়েরি আপডেট সুবিধা 1 এক্সকুয়েরি এবং এক্সপ্যাথ ফুল টেক্সট 1 এক্সএমএল সিনট্যাক্স এক্সকুয়েরি 1 এক্সএমএল স্কিমা এক্সএসএল ট্রান্সফর্মেশনস (এক্সএসএলটি) এক্সএসএল ফরম্যাটিং অবজেক্টস জোরবা এছাড়াও এর বাস্তবায়ন প্রদান করেঃ জে. এস. ও. এন. আই. সি স্ক্রিপ্টিং এক্সটেনশন ডেটা ডেফিনিশন সুবিধা স্ক্রিপ্টিং এক্সটেনশন একটি উন্মুক্ত নির্দিষ্টকরণ যা এক্সকুয়েরি বা জে. এস. ও. এন. আই. সি প্রোগ্রামগুলিতে পার্শ্ব প্রতিক্রিয়াগুলির জন্য শব্দার্থ প্রদান করে। এটি এই ধরনের প্রোগ্রামগুলির মধ্যে অপরিহার্য প্রোগ্রামিংয়ের জন্য একটি ব্যবহারকারী-বান্ধব বাক্যবিন্যাসও সরবরাহ করে। নিম্নলিখিত কোড স্নিপেটটি স্ক্রিপ্টিং সিনট্যাক্সের একটি উদাহরণ। এটি 100-এর কম সমস্ত ফিবোনাচ্চি সংখ্যা সম্বলিত একটি ক্রম গণনা করে। (: এটি একটি পরিবর্তনশীল ঘোষণা বিবৃতিঃ) xs হিসাবে পরিবর্তনশীল $a: পূর্ণসংখ্যাঃ = 0; xs হিসাবে পরিবর্তনশীল $b: পূর্ণসংখ্যাঃ = 1; xs হিসাবে পরিবর্তনশীল $c: পূর্ণসংখ্যাঃ = $a + $b; xs হিসাবে পরিবর্তনশীল $fibseq: পূর্ণসংখ্যা *: = ($a, $b); যখন ($clt 100) {(: এটি একটি পরিবর্তনশীল অ্যাসাইনমেন্ট বিবৃতিঃ) $fibseq: = ($fibseq, $c); $a: = $b; $b: = $c; $c: = $a + $b;} $fibseq স্ক্রিপ্টিং ব্যবহার করে সিআরইউডি ক্রিয়াকলাপের একটি উদাহরণ নিম্নরূপ। পরিবর্তনশীল $দোকানঃ = doc ("stores.xml")/দোকান; (: তৈরি করুনঃ) নোড <দোকান> <দোকান-সংখ্যা> 4 <দোকান-সংখ্যা> <রাজ্য> NY </রাজ্য> </দোকান> $দোকানে সন্নিবেশ করান; (: হালনাগাদঃ) নোড $দোকান/স্টোরের মান প্রতিস্থাপন করুন [রাজ্য = "NY"]/দোকান-সংখ্যা "5" দিয়ে; (: মুছে ফেলুনঃ) নোড $দোকান/দোকান মুছে ফেলুন [রাজ্য! = "NY"]; (: পড়ুনঃ) স্টোর ডেটা সংজ্ঞা সুবিধা ডেটা সংজ্ঞা সুবিধা XQuery বা 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এম. এস. ই. সি মঙ্গোডিবি-র উপরে একটি দোকান চালু করে। ব্রাউজার প্রকল্পের এক্সকুয়েরি জোরবার জন্য একটি ব্রাউজার প্লাগইন তৈরি করেছে এবং ডিওএম-কে তার দোকান হিসাবে ব্যবহার করে। এপিআই জোরবা বিভিন্ন হোস্ট ভাষার মাধ্যমে ব্যবহারযোগ্যঃ সি + +, সি, এক্সকিউজে/জাভা, পিএইচপি, পাইথন, সি #, রুবি এবং এমনকি এক্সকুয়েরি/জেএসওনিক। জোরবা একটি কমান্ড-লাইন টুল হিসেবেও পাওয়া যায়। এক্সকিউডিটি হল ইক্লিপ্স (আইডিই)-এর জন্য একটি এক্সকুয়েরি প্লাগইন। এটি সম্পূর্ণরূপে জোরবা এপিআই এবং সিনট্যাক্স সমর্থন করে। মডিউল জোরবা অ্যাপ্লিকেশন তৈরির জন্য 70টিরও বেশি এক্সকুয়েরি মডিউল সরবরাহ করে। এই মডিউলগুলির মধ্যে কয়েকটি হলঃ ফাইল সিস্টেম, ইমেল, এইচটিটিপি ক্লায়েন্ট, ওঅথ ক্লায়েন্ট এক্সকুয়েরি এবং জেএসওনিক ডেটা মডেল প্রসেসিংঃ টাইপিং, পারমাণবিক আইটেম এবং নোড। পূর্ণ পাঠ্যঃ টোকেনাইজার, স্টেমার, থিসারাস লুকআপ। তথ্য পরিষ্কার করাঃ ধ্বনিগত সাদৃশ্য, সেট সাদৃশ্য, রূপান্তর। তথ্য রূপান্তরঃ বেস64, সি. এস. ভি, এইচ. টি. এম. এল, জে. এস. ও. এন, এক্স. এম. এল তথ্য বিন্যাসঃ এক্স. এস. এল-এফ. ও অন্তর্দৃষ্টি এবং প্রতিফলন ক্রিপ্টোগ্রাফি চিত্র প্রক্রিয়াকরণ বাহ্যিক লিঙ্ক জোরবা ওয়েবসাইট জোরবা লাইভ ডেমো জোরবা মডিউল এক্সকোয়ারি প্রসেসর এক্স. এম. এল