بسم الله الرحمن الرحيم
السلام عليكم جميعا...
لعل من عزم على تعلم xml يجد نفسه أمام مجموعة من المفاهيم الجديدة ولا يدري من أين يبدأ.
في البداية يجب أن نعلم أن xml ليست بلغة برمجة جديدة إنما هي لغة لتوصيف البيانات. أو ببساطة ملف بيانات عادي!(مع بعض التجاوز)
وهذا النوع من البيانات (xml) له تفاصيله التقنية الخاصة به, وإذا أردت دراسة تفاصيل xml التقنية مثل طريقة كتابة الأوسمة وتعريف أنماط النص باستخدام DTD أو XSD وغيرها.. أقول إذا ردت دراسة كل هذه الأمور بشكل مستقل دون أن تفهم مبادئ تطبيقات xml بشكل عام فإنك ستحتاج إلى نفس طويل بلا شك....
إذن فمن المقترح أن تكوّن لديك تصورا عاما عن xml وتقنياتها والتقنيات المتعلقة بها...
ويمكننا تقسيم تقنيات xml والتقنيات المتعلقة بها إلى ثلاثة أقسام رئيسة.
1- xml وتقنياتها
والمقصود هنا هو التقنيات التي تحتاجها لكتابة ملف xml دون الإرتباط بأي شيء آخر.وبعض المفاهيم العامة حول xml. ويمكن الاكتفاء بالحد الأدنى منها ريثما تكون التصور الكافي حول xml وتطبيقاتها ومكانها داخل نظم المعلومات.
2- واجهات التطبيقات البرمجية API
وهي حلقة الوصل بين ملفات xml ولغات البرمجة... بمعنى أن لغة البرمجة تتعامل مع ملف xml بالتعديل والإضافة والإزالة عن طريق واجهات التطبيقات البرمجية هذه. ومن أشهرها DOM و SAX. أما الأول فهو مدعوم في أغلب لغات البرمجة المشهورة. ولعلنا نفرد لها حديثا خاصا.
3- لغات معالجة البيانات
وهي لغات برمجة خاصة بـxml طبعا. تعطيها ملف xml وتعطيك الناتج بشكل آخر إما في ملف xml آخر أو ملف HTML أو حتى ملف نص. فمثلا في لغة البرمجة هذه نقول إذا أتاك ملف xml بالمواصفات الفلانية تعامل معه بالشكل الفلاني وأخرج لنا الناتج بالشكل الفلاني(الكلام غامض إلى حد ما ولكن من المهم عدم الغرق في التفاصيل من البداية). ولعل أول ما يخطر بالبال تحت هذا المسمى هو XSLT.
زبدة القول أنه يجب عليك قبل أن تغرق نفسك بالتفاصيل التقنية أو تباشر المشاريع العملية, أن تعرف في أي جهة من البحر تغوص. فإذا ما تمكنت من الأبجديات العامة لـxml والتقنيات المتعلقة بها فسيكون من السهل جدا عليك أن تستوعب تفاصيل التفاصيل....
بقي أن نقول أنه على الرغم من تشعب هذه الأمور فإنها تتكلم بلهجة واحدة فإذا أمسكت بطرف الخيط تمكنت من المكرة كلها.
والسلام عليكم ورحمة الله وبركاته.
(إذا أعجبكم الكلام أدعوا لي بالتوفيق فأنا مقبل على أمور عظيمة - على المستوى الشخصي)