اجعل رورو44 صفحتك الرئيسية | احفظ رورو44 في مفضلتك | ارسل رورو44 إلى صديقك | أعلن على رورو44 | English Interface

 

 

 

شات خدمات مسجات جوال بطاقات رسائل حب دليل مواقع شات خليجي  دردشة منتديات حسناء الفارس عالم الرومانسية

مواقع سعودية | مواقع كويتية | مواقع بحرينية | مواقع قطرية | مواقع عمانية | مواقع يمنية | مواقع عراقية | مواقع اماراتية

 
    دروس في برمجة المواقع  الاكس ام ال - XML
 

 

دورة XML [الدرس الرابع-الجزء الأول]: منهجية عمل مستندات XML وتكوينها الهرمي



 بسم الله الرحمن الرحيم

 

منهجية عمل مستندات XML وتكوينها الهرمي .              الدرس الرابع

 

سنناقش اليوم التركيب الهرمي الذي يكون مستندات XML     وكيفية بناء البيانات وكيفية تمثيلها في مستند XML    

 

    - عندما نكون أمام كمية معلومات ضخمة أو حتى متوسطة الحجم فمن الأفضل تجميع هذه المعلومات التي تنتمي إلى موضوع واحد مع بعضها البعض بدل من تمثيلها كما هي .

 

  نعطى مثال لكي توضح الصورة .

 

 

 

مثلا هذه المنتدى مجزأ إلى مجموعة من الأقسام والمواضيع الفرعية التي تتبع موضوعات فرعية والتي تتبع بدورها مواضيع رئيسيه بالإضافة إلى تقسيم الموضوع الواحد إلى مجموعة من الفقرات وهى عبارة عن ردود الأعضاء . فذلك يسهل من عملية استخراج المعلومات .

 

 

 

فنجد مطوري البرمجيات تستخدم  هذا النموذج منذ سنوات عدة باستخدام بنية بينات تسمى Object model     أو نموذج الكائن وهى مرتبطة مع بعضها بتسلسل هرمي . أيضا في لغة XML     تجمع البينات في تسلسل هرمي فالبنود في المستند تتبع بعضها البعض بعلاقات Parent / Child     أو الأب / الابن .

 

وهذه البنود تسمى بالعناصر elements     وهى أجزاء منفردة من المعلومات .

 

 

 

نأخذ مثال الاسم السابق شرحه ونمثله بطريقة هرمية كالشكل التالي.

 

نلاحظ أن البند     < Name>     هو أب للبند     < First>     والبند     < First>     هو ابن للبند     < Name>     والبنود     < First>     و    < Middle>     و     < Last> جميعها انساب لبعضها البعض لان جميعهم أبناء للبند     < Name>

 

ونلاحظ أيضا أن النص هو ابن للعنصر الذي ينتمي له فالنص Emad     يمثل ابنا للبند     < First>     .تسمى هذه البنية من البينات بالشجرة Tree     فكل جزى من الشجرة يحتوى على أبناء تسمى بالفروع Branches     وجميع الأجزاء التي تحتوى على أبناء تسمى بالأوراق Leaves

 

 

إذا  نقول :

Element Content

العنصر     < Name>     يعتبر element content     لان هناك عناصر تنتمي له وليس مجرد نص فإنه يعتبر محتوى عنصر .

 

 

 

Simple Content

 

العنصر     < First>     و     < Middle>و    < Last>     هي محتوى بسيط Simple Content     لأنها تحتوى على نص فقط .

 

 

 

Mixed Content  

 

أيضا يمكن للعناصر أن تحتوى على عناصر أخرى وعلى نصوص في تلك الحالة فان للعناصر تلك محتوى مختلط Mixed Content     على سبيل المثال .

 

 

نلاحظ في المثال هذا أن للبند     < parent>     ثلاث أبناء

 

نص ,, يحتوى على النص Computer

 

عنصر ,,     < em>     وهو عنصر ابن أيضا

 

نص ,, نص أخر يحتوى على النص arab

 

فيمكننا ألان تمثيل هذا المثال ببنية شجرية هكذا .
 

 

 

 

نرجو أن تكونوا تفهمتم كيفية التمثيل الهرمي للبنود والعلامات فيما بينهما فأنك حينما تفهم ذلك ستتمكن من فهم طبيعة لغة XML    

 

     

 

 منهجية عمل XML     وقواعدها :-
 

 

 

1)   اللواحق والنصوص والعناصر              Tags and Text and Elements

 

اللاحقة أو ما يطلق عليها البعض والوسم  (Tag    ) هي عبارة عن كلمة أو مصطلح موضوع بين رمزي إحاطة     >         <      يمثل رمزا معرفا لتنسيق ما وذلك في مستندات HTML     بينما يمثل اسما لعنصر Elements     في مستندات XML           

 

مثل ....

 

 

وكما تلاحظ فان الـ  Tag     تأخذ الطابع الزوجي فكل لاحقة لها لاحقة مقابله لها  تعرف الأولى لاحقة البداية Start Tag       وتعرف الثانية بلاحقة النهاية End Tag     . الاختلاف بين الاثنين هو أن لاحقة النهاية تحتوى على الرمز “    /    ” .

 

في XML     جميع المعلومات الموجودة بين لاحقة البداية ولاحقة النهاية نسمى بالعناصر Element     وبالتالي فان .

 

 

 

    < first>     هي لاحقة بداية

 

    < /first>     هي لاحقة نهاية

 

    < firest>Adel< /first>     هو عنصر

 

Element Content

النص الواقع بين لاحقة البداية ولاحقة النهاية يسمى بمحتوى العنصر Element content 
 

PCDATA

 

المحتوى الواقع بين لاحقتين عبارة عن بيانات ويعرف في هذه الحالة ببيانات الرمز المعرب
PCDATA وذلك إذا احتوى هذه العنصر على معلومات نصية مثل العنصر  < middle>  فهو PCDATA

 

 

Root Element

 

المستند ككل بدء باللاحقة   < name> وانتهاء باللاحقة < /name>
فهو يمثل عنصر يحتوى على مجموعة من العناصر وهنا نطلق عليه عنصر الجذر Root Element

 

 

قوانين العناصر

يجب على مستندات XML الخضوع لهذه القوانين كي تشكل فعليا مستندات XML محكمة الهيئة Well-formed XML Documents 

-         لكل لاحقة بداية لاحقة نهاية مماثلة لها .

-         لا يمكن للواحق أن تتداخل .

-         يحتوى مستند XML  على عنصر جذر واحد فقط.

-         لغة XML حساسة لحالة الحروف Case-Sensitive

-     لغة XML لا تتجاهل المساحات الفارغة في مستنداتها .

 

أسماء العناصر :-

لغة XML توفر لك الحرية في تسمية العناصر فهي لا تحتوى على أسماء محجوزة  كما في معظم اللغات , فهي لديها مرونة كبيرة في اختيار الأسماء . ولكن يوجد مجموعة من القوانين التي يجب مراعاتها :-

-         يمكن للأسماء أن تبدأ بأحرف لاتينية أو غير لاتينية أو أن تبدأ بالرمز underscore(_)  ولكن لا يمكن أن تبدأ برقم أو بعلامة ترقيم .

-         بعد الحرف الأول يمكن للأسماء أن تحتوى على أرقام بالإضافة إلى الرمزين " _ "  و " .  "

-         لا يمكن للأسماء أن تحتوى على فراغات .

-         لا يمكن للأسماء أن تحتوى على ":"  فهو محجوز في XML 

-         لا يمكن للأسماء أن تبدأ بالأحرف XML سواء كانت بأحرف صغيرة أو كبيرة .

-         لا يمكن أن يكون هناك فراغ بين قوس الإحاطة المفتوح < وبين اسم العنصر

 

2)   الصفات                                             Attributes

 

أن مستندات XML     يمكن أن تتضمن صفات أو سمات معينة attributes     الصفات عبارة عن اسم معين تسند له قيمة معينة بحيث يرتبط ذلك الاسم وتلك القيمة بعنصر معين في مستند XML     .

 

     

 

مثل ..

 

 

يجب أن تحتوى الصفات على قيم ويجب أن تكون هذه القيم واقعة بين علامتي اقتباس ولا يشترط أن تكون علامة الاقتباس مفردة أو مزدوجة .

يمكن للصفات أن تقدم بيانات وصفية Metadata    والتي يمكن أن لا تكون وثيقة الصلة بمعظم التطبيقات التي تتعامل مع المستندات XML    

 

على سبيل المثال إذا علمنا أن بعض التطبيقات يمكن أن تهتم بالاسم المستعار Nickname     ولكن معظم التطبيقات لا تهتم بهذه المعلومات فان استخدام هذه المعلومات كصفة سيكون ذا معنى .

 

 

إذا ما الذي تقدمه الصفات ولا يمكن للعناصر أن تقدمه .

مثال ..

 

أيضا  ,,,

 

السبب يرجع إلى أن بعض الأشخاص يجدون أن استخدام الصفات تسهل على سبيل المثال فانك لا تحتاج إلى الاهتمام بدرجة تعشيش العناصر ولا تحتاج للقلق حول المعرفات المتداخلة.

فيما أن البعض الآخر يرى إن عملية تداخل وتعشيش العناصر سهل .

مجموعة أخرى ترى أن الصفات تستهلك مساحة اقل بكثير من العناصر . فمثلا المثال الأول لو قمنا بكتابته بواسطة الصفات سيكون بهذا الشكل .

 

ولكن ذلك قلل من مرونة مستندات XML    التي تتسم بالمرونة .

 

    -  في النهاية نقول إن عملية أفضلية الصفات عن العناصر أو العناصر عن الصفات تعود على اختيار الشخص وعلى أسلوبه . فاختار منهم ما يشعرك بالارتياح .

 

 

3) التعليقات                                                            Comments

هي عبارة عن إضافة النصوص التي لا تشكل جزءا من المستن و إنما تخص الشخص الذي يقراء شفرة XML     نفسها .

 

إذ  صادف لك وتعاملت من قبل مع أي لغة برمجة فانك تعرف تماما ماذا تعنى بالتعليقات .

 

وهى تستخدم لوضع بها تعليقات تصف بعض الفقرات و الاكواد لكي تساعدك في فهم شفره مستندات XML    

 

ولكنها ليست مهمة بالدرجة مثلما في إي لغة برمجة أخري حيث أن لغة XML     لغة تصف البينات إي أنها ذاتية الوصف تساعدك على فهمها .

 

تبدأ التعليقات بالرمز  < !—  وتنتهي بالرمز -- >   مثل التعليقات في HTML

 

مثلا ..

 

   

                             

 

 

 

4) العناصر الفارغة                              Empty Elements
 

 

قد توجد في بعض مستندات XML     عناصر فارغة من البينات

 

فمثلا ...

 

 

 

 
في هذه الحالة تقدم لك XML     الحل الأفضل والبديل الذي تكون فيه لا تحتاج إلى معرف نهاية End Tag     فتكتب بهذا الشكل

 

    < last/>

 

 

على أن يكون العنصر ثم الرمز "/" بدون لاحقة النهاية المعتادة وهى الحالة الوحيدة التي لا تستخدم فيها لواحق النهايات .

 

ولو أجريت تجربة بسيطة داخل معرب XML     المدمجة بمتصفح إنترنت اكسبلورر 5.5 وكتبت الشفرة التالية

 

     

 

أنها سوف تظهر بالشكل التالي

 

 

 

5) تصريح XML                                   XML Declaration

 

 

 

تعد التصاريح في تعريف مستندات XML     بأنها تتبع نوعا معينا بالإضافة إلي إعطاء المعرب التعليمات الأخرى

 

فمثلا هذا التصريح

 

   

 

وهو يجب أن يكون في بداية مستندات XML     وليس معنى عدم وجوده يسبب الخطأ ولكن الأفضل تعريف المستندات .

 

 

 

شرح التصريح السابق

 

 

 

فبدا تصريح XML     بالرمز < ?xml     و ينتهي بالرمز ? >

 

<? 

 

-  إذا أضفت تصريح XML     يجب أن تضيف أيضا الصفة version     أما بالنسبة للصفتين Encoding     و Standalonge     بهذا الترتيب .

 

-  حاليا فان الإصدار Version     يجب أن يكون يحوى القيمة 1.0 إذا قمت بوضع رقم غير هذا الرقم فان XML     المكتوب للتعامل مع مواصفات XML     الإصدار 1.0 سترفض المستند .

 

-   يجب أن يأتي هذا التصريح في أول سطر في مستند XML     كما ذكرنا .

 

       

 

الصفة الثانية في تصريح XML     هي Encoding    
 

 

صفة التشفير Encoding Attributes      , لو رجعنا إلى درسنا الأول في هذه السلسلة والذي تحدثنا فيه عن البيانات وأنواعها فلا تستغرب إذا عرفت أن النصوص تخزن في الحاسب على شكل أرقام باعتبار أن الأرقام هي اللغة ألام للحاسب فمثلا الحرف a      يمثل في جدول الـ ASCII     الرقم 97 والحرف A     يمثل الرقم 65 .

 

هناك نوعان من شفرة ASCII     الشفرة القياسية والتي تتكون من سبعة بتات والشفرة الموسعة والتي تتكون من ثمانية بتات أي أن شفرة ASCII     الموسعة تستخدم بايتا واحدا لكل رمز وبالتالي فان الشفرة لا يمكن استيعابا اكثر من 256 رمز مختلف فهو كافي لتمثيل كل الحروف الأبجدية الإنجليزية الكبيرة والصغيرة بالإضافة إلى العلامات والأرقام ولكن غير كافي لتمثيل لغات أخرى مثل العربية أو اليابانية ... الخ

 

لهذا السبب وجدت الشفرة الموحدة Unicode     .

 

 

 

بعد هذه المقدمة نرجع إلى مثالنا السابق جملة تصريح XML     عند الصفة

 

     

 

     encoding=’UTF-16'    

 

 

 

هنا تم ضبط التشفير لمستند XML     على انه Unicode     وذلك بوضع  UTF-16    

 

لذا فقد نصت مواصفات XML     على استخدام شفره موحدة عالمية لتمثيل البيانات ولكن للأسف فان القليل يستخدم هذه الشفرة والعديد يستخدم شفرات أخرى مثل  ISO-88591     وشفرة windows-1252    

 

 

 

ملاحظة إذ لم تقم بتحديد شفرة إي انك لم تقم بوضع هذه الصفة أصلا أن معرب XML     يقراء المستند بشفرة UTF-8     أو UTF-16    

 

 

 

الصفة الأخيرة في تصريح XML     هي صفة Standalone

 

 

 

وهى تعنى أن المستند قائم بذاتية فإذا قمت بإضافة هذه الصفة إلى تصريح XML     فإنه لهذه الصفة قيمتين yes     وno

 

تشير القيمةyes     إلى أن المستند قائم بذاته ولا يعتمد على أي ملفات أخرى

 

تشير القيمة No      إلى أن المستند يمكن إن يكون معتمد أو مرتبطا بملفات أخرى.

 

 

 

6 )  رموز نصوص PCDATA     غير مسموح بها .
 

 

تعرفنا سابقا بالمقصود بالمصطلح PCDATA     وعرفنا انه مصطلح مستخدم من قبل SGML     يشير إلى البيانات النصية الموجودة داخل العناصر , فتوجد بعض القوانين تحكم هذه البيانات النصية عند كتابتها لفادى الأخطاء أثناء عمل معرب XML     .

 

 

 

فهناك بعض الرموز المحجوزة التي لا تستطيع تضمينها في بينات PCDATA     لان تركيب XML     يستخدمها من هذه الرموز      <     والرمز     &

 

 

 

فمثلا ..
 

 

 

عند تشغيل هذه الشفرة على المتصفح سوف تعرض لك الخطأ بهذا الشكل ..

 

 
 
 
  

 

هذا يعنى انه عندما يصل المعرب إلى الرمز     <     سيتوقع أن يجد اسما لمعرف Tag     وبدلا من ذلك فقد وجد فراغ Space     وحتى إن تجاوز المعرب هذا الخطأ فإنه سيتوقف عند خطا أخر عندما يصل إلى الرمز “     &     

 

 

 

فلا تقلق فهناك طريقتان تمكنك من تضمين هذه الرموز ضمن PCDATA     إما أن تستخدم الرموز المرادفة Escaping Characters     أو أن تستخدم قسم CDATA     

 

 



المزيد من المواضيع

دورة XML [الدرس الخامس]: Html مقابل XML
دورة XML [الدرس الرابع-الجزء الثاني]: تابع منهجية عمل مستندات XML وتكوينها الهرمي
دورة XML [الدرس الرابع-الجزء الثاني]: تابع منهجية عمل مستندات XML وتكوينها الهرمي
دورة XML [الدرس الثالث]: لماذا XML وفيما تستخدم ؟
دورة XML [الدرس الثاني]: مقدمة إلى تقنية XML وما حولها
دورة XML [الدرس الثاني]: مقدمة إلى تقنية XML وما حولها
دورة XML [الدرس الأول]: ماذا قبل XML

1

 

الاقسام الرئيسية

دروس للمبتدئين

--

دروس في أنظمة التشغيل

--

دروس في الانترنت

--

دروس في لغات البرمجة

--

دروس في برمجة المواقع

--

دروس في الأوفيس

--

دروس في الرسوم و التصميم

--

دروس في قواعد البيانات

--

دروس في الألعاب والبرامج

--

دروس في المكونات الصلبة

--

دروس في الشبكات

--

دروس في أمن المعلومات

--

دروس في الذكاء الاصطناعي

--

القائمة البريدية

  فضائح | ماسنجر | تداول | الحياة الزوجية | عجائب وغرائب| دروس تعليمية | عالم حواء | فضائح الفن | ستار اكاديمي | نكت | برامج | صور | | شات سعودي | شات عربي | ماسينجر | مسجات | دليل مواقع | دليلك | مواقع سعودية | مواقع كويتية | مواقع بحرينية | مواقع قطرية | مواقع عمانية | مواقع يمنية | مواقع عراقية | مواقع اماراتية | دردشة خليجية | دردشة سعودية | دردشة عربية | شات صوتي | دردشة صوتية | دردشة كويتية | دردشة اماراتية | دردشة عمانية | دردشة قطرية | دردشة بحرينية | دردشة عراقية | دردشة يمنية | سكس | طريق الاسلام, انا مسلم , طريق الهدايه , مسلمون , منوعات اسلاميه | اسلاميات , برامج اسلامية , منوعات اسلامية | جنس | الاسرة المسلمة , الاسرة العربية , اسرتي , عائلتي | برامج الاسره , نصائح معلومات , اسرة عربية سعودية خليجية | دروس تعليمية , مكتبة الدروس التعليمية | شروح برامج , شرح برامج , دورات تعليميه | طب وصحه - المركز الطبي | طبيبك على الانترنت , معلومات طبية , معلومات صحيه

Roro44.com xml :