الصفحة السابقةبيان المحتوياتالصفحة التالية

5. علاج الأعطال

5.1 مجموعة المحارف

أحد أهم خصائص ترميز لغة XML هي قابليتها للتحول. فوثائق XML تستطيع في واقع الأمر أن تحوي أية محارف أُحادية الكود باستثناء بعض محارف الضبط. ولكن للأسف، فإن العديد من نظم قواعد البيانات لا تقدم دعما مناسبا للمحارف أُحادية الكود وتحتاج إلى شكل خاص للتعامل مع محارف non-ASCCI. فإذا كانت البيانات تحتوي على محارف non-ASCCI، يجب التأكد من فحص ذلك وعما إذا كانت برامج قاعدة البيانات والبيانات الخاصة بك تتعامل مع هذه المحارف. لذلك، فإنه يجب عمل فحص مناسب عن كيفية تعامل قاعدة البيانات (أو النظام الذي يتم استخلاص البيانات منه) مع التكويد.

فلنفترض أنه يجب تكويد وثائق XML بنظام UTF-8 (من المفضل ذلك)، ثمة نظم أخرى للتكويد مسموح بها أيضا، مثل ISO-8859-1، بشرط الإعلان عنها بوضوح في بداية رأس إعلان XML من أجل التعرف عليها وحتى تتمتع بعرض صحيح في المستودع المركزي لأجريس XML.

5.2 إشارات الكينونة سابقة التعريف

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

المحارف

إشارات الكينونة

&

&

<

&lt;

>

&gt;

&quot;

&apos;

5.3 المسافة البيضاء (Whitespace)

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

5.4 العناصر المتكررة

يجب أن تأخذ العناصر أو المعرفات المتكررة علامات حقلية مزدوجة.

فمثلا، التكويد التالي غير صحيح:

<ags:subjectClassification scheme="ags:ASC">E20 ; J12</ags:subjectClassification>

بينما يمثل الوضع التالي التكويد الصحيح:

<ags:subjectClassification scheme="ags:ASC">E20</ags:subjectClassification>
<ags:subjectClassification scheme="ags:ASC">J12</ags:subjectClassification>

5.5 حجم وثائق

يتم تجنب بناء أو إرسال وثائق XML كبيرة الحجم. فإذا زادت الملفات عن 500 كيلوبايت، يتم تقسيمها إلى ملفين أو أكثر. وعند تقسيم الملف، يتم التأكد من وضع الرأس الصحيح بها (أنظر 4.1). غير أنه من المفضل عند تداول وثائق XML بمستودعات المعلومات الكبيرة، أن يتم تقسيم كل مصدر XML لكل وثيقة.

5.6 نظام للغة xml:lang

تقدم خاصية اللغةxml:lang لمنشئي XML وسيلة متسقة لتعريف اللغة الممثلة داخل عنصر معين. حيث تستخدم قواعد أجريس هذه الخاصية في العناصر التي تمثل فيها معرفة لغة المحتوى ضرورة. وتتيح تلك الإضافة أيضا إدخال قيم متعددة من العنصر بلغات مختلفة. يتم استخدام نظام ISO639-2 (الكود ثلاثي الحروف) لخاصيةxml:lang .

5.7 علامات العناصر الخالية

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

5.8 العلامات الإلزامية

بالرغم من مرونة نظام معرف نوع الوثيقة DTD، فهناك القليل من القواعد الني يجب إتباعها للحصول على وثيقة XML سليمة. يوجد بعض العناصر، والمعرفات والنظم الإلزامية التي يجب إدخالها تحت العلامات المناسبة لها. ويعني ذلك بأن وثائق XML يجب أن تحتوي على الأقل على الخمس عناصر الجوهرية الآتية لكل منهم:ags:resource: العنصر الجذري

• <dc:title علامة عنصر العنوان>
• <dc:dateعلامة عنصر التاريخ>
• <dc:subjectعلامة عنصر الموضوع>
• <dc:languageعلامة عنصر اللغة>
• < علامة عنصر الإتاحةagls:availability>

5.9 عدم الإتساق بين بيانات الوصف المحلية وعناصر سمات تطبيق أجريس

دائما ما تحتوي النظم المحلية على حقول مصممة خصيصا للوفاء بالمتطلبات المحلية وليس لها أية عناصر مقابلة في هيكل بيانات الوصف المعرف في سمات تطبيق أجريس "AGRIS AP". يجب عدم النظر لبيانات الوصف هذه عند إجراء عملية التوصيف والنقل. وتعتبر هذه النسخة من بيانات وصف سمات أجريس مرنة إلى حد ما ومن أغراضها أيضا إحتواء أنواع مختلفة من المعلومات، وفي النسخ القادمة من المتوقع أن ينم النظر في إضافة معرفات ونظم أساسية.

5.10 تجميع وتفريغ البيانات والتوافق مع دوبلين كور

لا تعتبر مجموعة بيانات وصف دوبلين كور (DC metadata) ملائمة تماما لوصف المصادر، ولكن في حالات معينة، تم الأخذ بعنصر دوبلين كور لأغراض معالجة مصادر أجريس. يستدل على تحديد عناصر دوبلين كور بقاعدة تعرف عاميا بمبدأ التفريغ Dumping-Down. ووفقا لهذه القاعدة، يجب أن يكون المستخدم قادرا على تجاهل أي محدد "qualifier" واستخدام القيمة كما لو كانت غير محددة "unqualified". وبينما قد ينتج عن ذلك فقد بعض الدقة، فإن باقي القيمة (ناقص المحدد) لابد أن تستمر لتكون بصفة عامة سليمة ومفيدة للكشف. وبذلك يفترض أن يقوم المحدد بتنقية العنصر، وليس نقل النطاق اللفظي للعنصر. يتقاسم معنى منقيات العنصر (المحددات) مع معنى العنصر غير المحدد، ولكن في نطاق أكثر تقييدا. وعند الضرورة، يتم "تفريغ" هذه المحددات إلى عناصر دوبلين كور عن طريق التجميع للتأكد من التوافق مع دوبلين كور. والمثال التالي يبين تفريغ ags:publisherPlace و ags:publisherName إلى العنصر الجوهري dc:publisher. وينتج عن هذه المعالجة تجاهل عنصر التنقية واستخدام القيمة (البيانات) كمحتوى للعنصر الجوهري غير المحدد dc:publisher

باستخدام المحددات

التفريغ

<dc:publisher>
<ags:publisherPlace>Rome (Italy)</ags:publisherPlace>
<ags:publisherName>FAO</ags:publisherName>
</dc:publisher>

<dc:publisher>FAO Rome (Italy)</dc:publisher>



الصفحة السابقةأعلى الصفحةالصفحة التالية