واجهة XML لخدمات الشبكة
تُعد واجهة XML لخدمات الشبكة ( XINS ) تقنية مفتوحة المصدر لتعريف وتنفيذ تطبيقات الإنترنت، والتي تفرض نهجًا موجهًا نحو المواصفات. [ 1 ]
نهج موجه نحو المواصفات
يُعدّ النهج الموجّه نحو المواصفات جوهر نظام XINS:
- يجب أولاً كتابة المواصفات؛
- ثم يتم إنشاء الوثائق والتعليمات البرمجية من هذه المواصفات؛
- عندها يمكن البدء بكل من الاختبار والتنفيذ.
من خلال المواصفات، يستطيع برنامج XINS توليد ما يلي:
مكونات تقنية XINS
من الناحية الفنية، يتكون نظام XINS مما يلي:
- تنسيق مواصفات قائم على لغة XML للمشاريع، وواجهات برمجة التطبيقات ، والوظائف، والأنواع، ورموز الأخطاء.
- بروتوكول RPC على نمط POX (يسمى اتفاقية استدعاء XINS القياسية )، متوافق مع متصفحات الويب ( معلمات HTTP في المدخلات، XML في المخرجات).
- أداة لإنشاء وثائق قابلة للقراءة البشرية، انطلاقاً من المواصفات.
- أداة لإنشاء ملفات WSDL من المواصفات.
- تقنية Log4j لتسجيل البيانات (تسمى Logdoc)، والتي توفر تنسيقًا للمواصفات، وتدويل رسائل السجل، وإنشاء وثائق HTML، وإنشاء التعليمات البرمجية .
- مكتبة جافا لاستدعاء وظائف XINS، إطار عمل عميل XINS/Java ؛ في xins-client.jar.
- حاوية من جانب الخادم لتطبيقات واجهة برمجة تطبيقات XINS المستندة إلى Java، وهي إطار عمل خادم XINS/Java ؛ موجودة في ملف xins-server.jar. وهي بمثابة حاوية servlet لواجهات برمجة تطبيقات XINS.
- مكتبة جافا تحتوي على بعض الوظائف المشتركة، وتستخدمها كل من XINS/Java Client Framework و XINS/Java Server Framework: مكتبة XINS/Java المشتركة ، في xins-common.jar.
يقدم دليل تمهيدي بعنوان "XINS Primer" للقارئ خطوات سهلة المتابعة لتنفيذها، مع لقطات شاشة توضيحية.
منذ الإصدار 1.3.0، يدعم إطار عمل خادم XINS/Java ليس فقط استدعاءات نمط POX، بل يدعم أيضًا SOAP و XML-RPC . كما يدعم التحويل باستخدام XSLT . ابتداءً من الإصدار 2.0، يدعم أيضًا JSON و JSON-RPC .
XINS مفتوح المصدر ويتم توزيعه بموجب ترخيص BSD الليبرالي . [ 2 ]
تحديد
جميع ملفات مواصفات XINS هي ملفات XML عادية . بالمقارنة مع SOAP / WSDL / UDDI / إلخ، فإن تنسيقها بسيط للغاية. تتضمن هذه الملفات مواصفات للمشاريع، وقوائم البيئات، وواجهات برمجة التطبيقات، والوظائف، والأنواع، ورموز الأخطاء.
فيما يلي مثال على تعريف مشروع XINS.
<project name= "MyProject" domain= "com.mycompany" > <api name= "MyAPI" > <impl/> <environments/> </api> </project>فيما يلي مثال على مواصفات قائمة البيئة:
<environments> <environment id= "netarray" url= "http://xins.users.mcs2.netarray.com/myproject/xins/" /> </environments>مثال على ملف مواصفات واجهة برمجة التطبيقات (API):
<api name= "MyAPI" > <description> أول واجهة برمجة تطبيقات XINS لي </description> <function name= "Hello" /> </api>مثال على تعريف دالة:
<function name= "Hello" > <description> يُحيّي الشخص المُشار إليه . < /description> <input> <param name= "name" required= "true" > <description> اسم الشخص المراد تحيته . </description> </param> </input> <output> <param name= "greeting" required= "true" > <description> التحية المُنشأة . </description > </param> </output> </function> </function>بروتوكول RPC
بروتوكول XINS القياسي لاستدعاء الأجهزة هو بروتوكول RPC بسيط قائم على بروتوكول HTTP. يتكون المدخل من معلمات HTTP، بينما يكون المخرج عبارة عن مستند XML. هذا الأسلوب يجعله متوافقًا مع متصفحات الويب العادية .
مثال على طلب:
http://somehost/someapi/?_convention=_xins-std&_function=SayHello&firstName=John&lastName=Doe
مثال على استجابة ناجحة:
<result> <param name= "greeting" > مرحباً جون دو! </param> </result>مسابقة
لا توجد منتجات معروفة توفر منهجًا متكاملًا للتطوير الموجه نحو المواصفات، على غرار XINS. ومع ذلك، توجد العديد من الأطر والمكتبات التي توفر وظائف مشابهة لأجزاء فردية من XINS، بما في ذلك:
- JWSDP : مجموعة من تقنيات XML و SOAP المختلفة للغة برمجة Java .
- أباتشي أكسيس : إطار عمل قائم على لغة جافا لتطبيقات SOAP.
- كودهاوس إكس فاير : نفس الشيء.
- بروتوكول خدمة الويب Hessian : بديل ثنائي لاتفاقية استدعاء XINS القياسية. [ 3 ]
مراجع
- ↑ "XINS (واجهة XML لخدمات الشبكة)" . ديجيتال هوبيت . 15 نوفمبر 2005. تم الاطلاع عليه بتاريخ 11 أبريل 2025 .
- ↑ "واجهة برمجة تطبيقات XML" . مركز توثيق نوكيا .
- ↑ "XINS : واجهة XML لخدمات الشبكة" . Bact هو اسم . 6 نوفمبر 2004.
روابط خارجية
- بروتوكولات الإنترنت
- مكتبات لغة البرمجة جافا
- المعايير القائمة على لغة XML
- خدمات الويب
- مواصفات خدمة الويب
