زوربا (معالج إكس كويري)
زوربا هو معالج استعلامات مفتوح المصدر مكتوب بلغة C++ ، [ 1 ] وينفذ
يتم توزيع برنامج زوربا بموجب ترخيص أباتشي ، الإصدار 2.0. ويحظى المشروع بدعم رئيسي من مؤسسة FLWOR ، وأوراكل ، و 28msec .
لم يعد مشروع زوربا قيد التطوير النشط. يعود آخر تحديث لمستودع GitHub إلى عام 2017 [ 2 ] ، بينما يعود آخر إصدار 3.1 إلى يونيو 2015؛ [ 3 ] أما أحدث إصدار 2.9.1 على موقع SourceForge فيعود إلى مايو 2013. [ 4 ]
تحديد
يوفر برنامج زوربا تطبيقًا لمواصفات W3C التالية :
- XQuery 1.0
- XQuery 3.0
- مرفق تحديث XQuery 1.0
- XQuery و XPath Full Text 1.0
- صيغة XML لـ XQuery 1.0
- مخطط XML
- تحويلات XSL (XSLT)
- كائنات تنسيق XSL
كما توفر زوربا تطبيقات لما يلي:
كتابة البرامج النصية
تُعدّ امتدادات البرمجة النصية (Scripting Extension) المؤرشفة بتاريخ ٢١ فبراير ٢٠١٤ على موقع Wayback Machine مواصفة مفتوحة المصدر تُوفّر دلالاتٍ للتأثيرات الجانبية في برامج XQuery أو JSONiq. كما تُوفّر صيغةً سهلة الاستخدام للبرمجة الإجرائية ضمن هذه البرامج. يُقدّم مقتطف الشفرة التالي مثالًا على صيغة البرمجة النصية، حيث يحسب متتاليةً تحتوي على جميع أعداد فيبوناتشي الأقل من ١٠٠.
(: هذه عبارة تعريف متغير :) متغير $ a كـ xs:integer := 0 ؛ متغير $ b كـ xs:integer := 1 ؛ متغير $ c كـ xs:integer := $ a + $ b ؛ متغير $ fibseq كـ xs:integer * := ( $ a , $ b )؛بينما ( $ c < 100 ) { (: هذه عبارة إسناد متغير :) $ fibseq := ( $ fibseq , $ c ); $ a := $ b ; $ b := $ c ; $ c := $ a + $ b ; } $ fibseqفيما يلي مثال على عمليات CRUD باستخدام البرمجة النصية و XQuery و XQuery Update.
variable $ stores := doc ( "stores.xml" )/ stores ;(: إنشاء :) إدراج عقدة < متجر > <رقم المتجر> 4 < /رقم المتجر> < ولاية > نيويورك < / ولاية > < / متجر> في $stores;(: تحديث :) استبدل قيمة العقدة $ stores / store [ state = "NY" ] / store-number بـ "5" ؛(: حذف :) حذف العقدة $ المتاجر / المتجر [ الولاية != "NY" ];اقرأ :) متاجر $مرفق تعريف البيانات
يُوفّر مرفق تعريف البيانات ( المؤرشف بتاريخ 21 فبراير 2014 على موقع Wayback Machine) دلالاتٍ للبيانات الدائمة، مثل المجموعات والفهارس، في برامج XQuery أو JSONiq. على سبيل المثال، تُعرّف مقتطفات الشفرة التالية مجموعةً باسم entries وفهرسًا على تلك المجموعة باسم entry .
مساحة اسم الوحدة النمطية g = "http://www.zorba-xquery.com/guestbook" ;استيراد وحدة مساحة الاسم db = "http://www.zorba-xquery.com/modules/store/static/collections/dml" ;declare namespace an = "http://www.zorba-xquery.com/annotations" ;(: يُعلن عن مجموعة باسم entries :) declare collection g : entries as element ( entry ); (: يُعلن عن متغير يشير إلى مجموعة g:entries :) declare variable $ g:entries := xs:QName ( 'g:entries' );(: يُعلن عن فهرس باسم entry أعلى مجموعة entries :) declare %an:automatic %value-equality index g:entry on nodes db : collection ( xs:QName ( 'g:entries' )) by xs : string ( @id ) as xs:string ;تخزين
توفر زوربا مخزنًا قابلًا للتوصيل، مما يسمح باستخدامها في بيئات مختلفة: القرص، وقاعدة البيانات، والمتصفح. بشكل افتراضي، تُبنى زوربا باستخدام مخزن في الذاكرة الرئيسية. تُنفذ مكتبة 28msec مخزنًا يعتمد على MongoDB . أما مشروع XQuery in the Browser، فقد طوّر إضافةً للمتصفح خاصة بزوربا، وتستفيد من DOM كمخزن لها.
واجهات برمجة التطبيقات
يمكن استخدام Zorba من خلال لغات مضيفة مختلفة. مؤرشف في 2014-02-21 في Wayback Machine : C++، C، XQJ / Java، PHP، Python، C#، Ruby، وحتى XQuery/JSONiq. مؤرشف في 2014-02-21 في Wayback Machine .
يتوفر برنامج زوربا أيضًا كأداة سطر أوامر. تمت أرشفة هذا المحتوى بتاريخ 21-02-2014 في Wayback Machine .
XQDT هو إضافة XQuery لبيئة التطوير المتكاملة Eclipse . وهو يدعم بشكل كامل واجهة برمجة تطبيقات Zorba وبنيتها.
الوحدات
توفر زوربا أكثر من 70 وحدة XQuery لبناء التطبيقات. بعض هذه الوحدات هي:
- نظام الملفات، البريد الإلكتروني، عميل HTTP، عميل OAuth
- معالجة نماذج البيانات باستخدام XQuery و JSONiq: الكتابة، والعناصر الذرية، والعقد.
- النص الكامل: مُجزئ الكلمات، مُجزئ الجذور، البحث في قاموس المرادفات.
- تنظيف البيانات: أوجه التشابه الصوتي، أوجه التشابه في المجموعات، التحويلات.
- تحويل البيانات: Base64، CSV، HTML، JSON، XML
- تنسيق البيانات: XSL-FO
- التأمل والتدبر
- علم التشفير
- معالجة الصور
مراجع
- ↑ تشانغ تشينغ، لي؛ وانغ، لينغ، توك (28 فبراير 2010). التطبيقات والهياكل المتقدمة في معالجة XML: تدفقات التسميات، واستخدام الدلالات، وتقنيات استعلام البيانات . IGI Global. ص 40. ISBN 978-1-61520-728-2.
{{cite book}}: صيانة CS1: أسماء متعددة: قائمة المؤلفين ( رابط ) - ↑ "زوربا على جيت هاب" . جيت هاب . 28 مللي ثانية . تم الاسترجاع في 3 أكتوبر 2025 .
- ↑ "إصدار زوربا 3.1 "ليتو" على جيت هاب" . جيت هاب . 28 مللي ثانية . تم الاسترجاع في 3 أكتوبر 2025 .
- ↑ "زوربا على موقع sourceforge.net" . sourceforge.net . زوربا . تم الاطلاع عليه بتاريخ 3 أكتوبر 2025 .
روابط خارجية
- موقع زوربا مؤرشف بتاريخ 9 يوليو 2013 على موقع Wayback Machine
- عرض توضيحي مباشر للعبة زوربا، مؤرشف بتاريخ 3 فبراير 2014 على موقع Wayback Machine.
- وحدات زوربا مؤرشفة بتاريخ ٢١ فبراير ٢٠١٤ على موقع Wayback Machine
- زوربا على جيت هاب
- معالجات XQuery
- برنامج مجاني مكتوب بلغة C++
- برنامج يستخدم ترخيص أباتشي
