واجهة برمجة تطبيقات مستودع المحتوى للغة جافا

واجهة برمجة تطبيقات مستودعات المحتوى لجافا ( JCR ) هي مواصفة لواجهة برمجة تطبيقات (API) لمنصة جافا ، تتيح الوصول إلى مستودعات المحتوى بطريقة موحدة. [ 1 ] تُستخدم مستودعات المحتوى في أنظمة إدارة المحتوى لحفظ بيانات المحتوى، بالإضافة إلى البيانات الوصفية المستخدمة في أنظمة إدارة المحتوى (CMS)، مثل بيانات وصف الإصدارات. طُوّرت هذه المواصفة ضمن عملية مجتمع جافا (JSR-170) (الإصدار 1)، [ 2 ] [ 3 ] وJSR-283 (الإصدار 2). [ 4 ] حزمة جافا الرئيسية هي ...javax.jcr

ملخص

JCR هو نوع من قواعد بيانات الكائنات مصمم خصيصًا لتخزين البيانات الهرمية والبحث عنها واسترجاعها. نشأت واجهة برمجة تطبيقات JCR من احتياجات أنظمة إدارة المحتوى، التي تتطلب تخزين المستندات والكائنات الثنائية الأخرى مع البيانات الوصفية المرتبطة بها؛ ومع ذلك، فإن واجهة برمجة التطبيقات قابلة للتطبيق على العديد من أنواع التطبيقات الأخرى. بالإضافة إلى تخزين الكائنات، يوفر JCR ما يلي: واجهات برمجة تطبيقات للتحكم في إصدارات البيانات؛ والمعاملات ؛ ومراقبة التغييرات في البيانات؛ واستيراد أو تصدير البيانات إلى XML بطريقة قياسية.

بنية البيانات

تتكون البيانات في سجل معلومات المستخدم (JCR) من شجرة من العقد ذات خصائص مرتبطة بها. تُخزَّن البيانات في الخصائص، التي قد تحتوي على قيم بسيطة مثل الأرقام والسلاسل النصية، أو بيانات ثنائية ذات أطوال مختلفة. يمكن أن تحتوي العقد، اختياريًا، على نوع واحد أو أكثر مرتبط بها، والذي يحدد أنواع الخصائص، وعدد ونوع العقد الفرعية، وبعض الخصائص السلوكية للعقد. يمكن للعقد الإشارة إلى عقد أخرى عبر خاصية نوع مرجعي خاصة. وبهذه الطريقة، توفر العقد في سجل معلومات المستخدم (JCR) كلاً من التكامل المرجعي ومفهوم الوراثة الموجه للكائنات . تشمل أنواع العقد الإضافية نوع العقدة المرجعية، الذي يسمح للمستخدم بالإشارة إلى هذه العقدة باستخدام مُعرِّف فريد عالميًا. نوع آخر شائع هو النوع القابل للإصدار. هذا النوع يجعل المستودع يتتبع تاريخ المستند ويخزن نسخًا من كل إصدار منه.

استفسارات

يمكن لـ JCR تصدير أجزاء من شجرته إلى XML بصيغتين قياسيتين، كما يمكنه استيراد التسلسلات الهرمية مباشرةً من XML. يجب أن تدعم التطبيقات المتوافقة مع JSR 283 شكلاً موحدًا من لغة SQL للاستعلامات ونموذج كائن الاستعلام QOM. يُلغي JSR 283 لغة استعلام XPath المُعرّفة في JSR 170. يدعم تطبيق Apache Jackrabbit المرجعي لـ JCR أيضًا دمج محرك بحث Apache Lucene لإجراء عمليات بحث نصية كاملة عن البيانات في المستودع.

التطبيقات المتاحة

يتولى ديفيد نوشيلر من شركة أدوبي سيستمز (الذي كان يعمل سابقًا في شركة داي سوفتوير ) قيادة كلٍ من JSR وJCR. كان لدى داي تطبيق تجاري لـ JCR يُسمى Content Repository Extreme (CRX)، كما شاركت في تطوير Apache Jackrabbit JCR مفتوح المصدر، [ 5 ] [ 6 ] والذي صدرت منه النسخة 2.0 في يناير 2010. يُعد ModeShape [ 7 ] تطبيقًا آخر مفتوح المصدر لـ JCR يدعم JSR-283. أما Adobe Experience Manager (AEM) و Jahia و Hippo CMS و Magnolia فهي أنظمة لإدارة محتوى المؤسسات مبنية على واجهة برمجة تطبيقات JCR، وتستخدم Jackrabbit كمستودع افتراضي، ولكنها قادرة على دمج أي تطبيق آخر لمستودع معتمد من JSR-170. يدعم Oracle Beehive ، برنامج التعاون المؤسسي من أوراكل، معيار JSR-170 أيضًا. يُعد eXo JCR من eXo Platform مستودعًا مفتوح المصدر مع دعم تجاري مدفوع ووثائق. ويعمل العديد من الموردين التجاريين الآخرين على منتجات ومنتجات متوافقة مع JCR. ألفريسكو هو نظام إدارة محتوى مفتوح المصدر يوفر واجهة برمجة تطبيقات JCR لمستودعه. أصدرت GX النسخة المجتمعية الجديدة من منصة إدارة محتوى المؤسسات (ECM) الخاصة بها، والمبنية أصلاً على Apache Jackrabbit وJSR.

بدأت TYPO3 في تطوير تعديلات PHP ، حيث قامت بترجمة واجهة برمجة تطبيقات Java إلى PHP. [ 8 ] [ 9 ] كما تم تنفيذ واجهات PHPCR بواسطة Jackalope، [ 10 ] وهي واجهة أمامية PHP تتصل بواجهة Jackrabbit الخلفية من خلال واجهة WebDAV، و Midgard ، [ 11 ] وهو مستودع محتوى متعدد اللغات.

انظر أيضاً

مراجع

  1. "برنامج عملية مجتمع جافا (SM) - طلبات مواصفات جافا (JSRs): تفاصيل JSR رقم 93" . www.jcp.org . تاريخ الاسترجاع: 24-06-2025 .
  2. "برنامج عملية مجتمع جافا (SM) - طلبات مواصفات جافا (JSRs): تفاصيل JSR رقم 170" . www.jcp.org . تاريخ الاسترجاع: 24-06-2025 .
  3. "JSR-170 (نسخة HTML من المواصفات)" . مؤرشف من الأصل بتاريخ 2009-06-08 . تم الاطلاع عليه بتاريخ 2009-02-17 .
  4. "برنامج عملية مجتمع جافا (SM) - طلبات مواصفات جافا (JSRs): تفاصيل JSR رقم 283" . jcp.org . تم الاطلاع عليه بتاريخ 24-06-2025 .
  5. "أباتشي جاك رابيت - مرحباً بكم في أباتشي جاك رابيت" . jackrabbit.apache.org . تم الاطلاع عليه بتاريخ 24-06-2025 .
  6. "تسجيل الدخول - مؤسسة برمجيات أباتشي" . cwiki.apache.org . تم الاطلاع عليه بتاريخ 24-06-2025 .
  7. "يتوفر الإصدار النهائي من ModeShape 5.4.0" . modeshape.jboss.org . تم الاطلاع عليه بتاريخ 30 مايو 2024 .
  8. phpcr/phpcr ، PHPCR، 23-05-2025 ، تم الاطلاع عليه بتاريخ 24-06-2025
  9. "حزمة PHPPCR - TYPO3 Forge" . TYPO3 Forge . تم الاطلاع عليه بتاريخ 24-06-2025 .
  10. "جاكالوب: JCR لـ PHP" . مؤرشف من الأصل بتاريخ 27-01-2013 . تم الاطلاع عليه بتاريخ 19-09-2017 .
  11. ^ برجيوس ، هنري (23/12/2011). "موفر Midgard2 PHPCR يصل إلى 1.0" .