الخطوط العريضة:
مقدمة
1. المصطلحات المتعلقة بمستندات XML
2. المصطلحات المتعلقة بـ DTD
مقدمة
الشيء الأكثر إزعاجًا للمبتدئين في تعلم XML هو أن هناك الكثير من مفاهيم المصطلحات الجديدة التي يجب فهمها. نظرًا لأن لغة XML نفسها هي أيضًا تقنية جديدة تمامًا، فهي تتطور وتتغير باستمرار، حيث تقدم المؤسسات وشركات الشبكات الكبرى (Microsoft وIBM وSUN وما إلى ذلك) باستمرار رؤى ومعايير خاصة بها، لذلك ليس من المستغرب أن تكون المفاهيم الجديدة. تحلق في كل مكان. لا توجد مؤسسة أو منظمة موثوقة في الصين لتسمية هذه المصطلحات رسميًا. تتم ترجمة معظم الكتب المدرسية الصينية التي تراها حول لغة XML بناءً على فهم المؤلف. بعضها صحيح وبعضها الآخر خاطئ، مما يزيد من إعاقة تطوير لغة XML فهم وتعلم هذه المفاهيم.
إن تفسيرات مصطلحات XML التي ستراها أدناه هي أيضًا فهم المؤلف وترجمته. يعتمد Ajie على مواصفات XML1.0 القياسية الصادرة عن منظمة W3C والوثائق الرسمية ذات الصلة. ويمكن التأكد من أن هذه المفاهيم صحيحة في الأساس، على الأقل ليست خاطئة. إذا كنت ترغب في القراءة والفهم بشكل أكبر، فقد قمت بإدراج المصادر والروابط للموارد ذات الصلة في نهاية هذه المقالة، والتي يمكنك الوصول إليها مباشرة. حسنًا، لنبدأ العمل:
1. المصطلحات المتعلقة بمستندات XML
ما هي وثيقة XML؟ هل تعلم أن ملف التعليمات البرمجية المصدر لـ HTML؟ مستند XML هو ملف تعليمات برمجية مصدر XML مكتوب بعلامات XML. مستندات XML هي أيضًا ملفات نصية عادية بتنسيق ASCII يمكنك إنشاؤها وتعديلها باستخدام برنامج "المفكرة". الاسم اللاحق لمستندات XML هو .XML، على سبيل المثال، myfile.xml. يمكنك أيضًا فتح ملف .xml مباشرةً باستخدام متصفح IE5.0 أو أعلى، ولكن ما تراه هو "رمز XML الأصلي" ولن يتم عرض محتوى الصفحة. يمكنك محاولة حفظ الكود التالي باسم myfile.xml:
<?xml version="1.0" encoding="GB2312"?>
<ملفي>
<title>دليل تعلم XML السهل</title>
<author>اجي</author>
<email>[email protected]</email>
<التاريخ>20010115</التاريخ>
</myfile>
تحتوي مستندات XML على ثلاثة أجزاء:
1. إعلان مستند XML؛
2. تعريف نوع الوثيقة؛
3. قم بتمييز المحتوى الذي تم إنشاؤه باستخدام XML.
مثال:
<?xml version="1.0"?>
<!DOCTYPE filelist SYSTEM "filelist.dtd">
<قائمة الملفات>
<ملفي>
<title>البدء السريع لملف XML</title>
<author>اجي</author>
</myfile>
...
</ملف قائمة>
السطر الأول <?xml version="1.0"?> هو تعريف مستند XML. يشير السطر الثاني إلى أن هذا المستند يستخدم filelist.dtd لتعريف نوع المستند. السطر الثالث أدناه هو الجزء الرئيسي من المحتوى.
دعونا نفهم المصطلحات ذات الصلة في مستندات XML:
1. العنصر:
نحن نعرف بالفعل العنصر في HTML وهو أصغر وحدة تشكل مستند HTML، وهو نفسه في XML. يتم تعريف العنصر بواسطة معرف، بما في ذلك معرف البداية والنهاية ومحتواه، مثل هذا: <author>ajie</author>
والفرق الوحيد هو: في HTML، يتم إصلاح العلامة، ولكن في XML، يجب إنشاء العلامة بواسطتك.
2.العلامة (الشعار)
يتم استخدام المعرفات لتحديد العناصر. في XML، يجب أن تظهر العلامات في أزواج، وتحيط بالبيانات. اسم المعرف هو نفس اسم العنصر. على سبيل المثال، عنصر مثل هذا:
<author>اجي</author>
حيث <author> هو المعرف.
3.السمة:
ما هي الخصائص؟ انظر إلى كود HTML هذا:<font color="red">word</font>. ومن بينها، اللون هو أحد سمات الخط.
السمات هي أوصاف وتفسيرات إضافية للشعار. يمكن أن يحتوي الشعار على سمات متعددة، مثل سمة الخط وحجمه. السمات في XML هي نفس السمات في HTML. كل سمة لها اسمها وقيمتها الخاصة. السمة هي جزء من المعرف. مثال:
<author sex="female">آجي</author>
يتم تعريف السمات في XML أيضًا من تلقاء نفسها، ونوصي بمحاولة عدم استخدام السمات وتغيير السمات إلى عناصر فرعية، على سبيل المثال، يمكن تغيير الكود أعلاه إلى ما يلي:
<المؤلف>اجي
<الجنس>أنثى</الجنس>
</المؤلف>
والسبب هو أنه لا يمكن توسيع السمات ومعالجتها بسهولة بواسطة البرامج.
4.الإعلان
يوجد في السطر الأول من كافة مستندات XML إعلان XML. يشير هذا الإعلان إلى أن هذا المستند عبارة عن مستند XML وإلى مواصفات إصدار XML التي يتبعها. يبدو بيان إعلان XML كما يلي:
<?xml version="1.0"?>
5.DTD (تعريف نوع الملف)
يتم استخدام DTD لتحديد العناصر والسمات والعلاقات بين العناصر في مستندات XML.
يمكن استخدام ملف DTD لاكتشاف ما إذا كانت بنية مستند XML صحيحة. لكن إنشاء مستند XML لا يتطلب بالضرورة ملف DTD. سيتم إدراج الأوصاف التفصيلية لملفات DTD بشكل منفصل أدناه.
6.XML جيد التشكيل (XML جيد التكوين)
يُطلق على المستند الذي يلتزم بقواعد بناء جملة XML ويلتزم بمواصفات XML اسم "جيد التكوين". إذا كانت جميع العلامات الخاصة بك تلتزم بشكل صارم بمواصفات XML، فإن مستند XML الخاص بك لا يحتاج بالضرورة إلى ملف DTD لتعريفه.
يجب أن يبدأ المستند جيد التنسيق بإعلان XML، مثل:
<?xml version="1.0" standalone="yes" encoding="UTF-8"?>
ومن بينها، يجب الإشارة إلى إصدار XML الذي يتوافق معه المستند، وهو 1.0 حاليًا؛ ثانيًا، توضيح أن المستند "مستقل"، ولا يحتاج إلى ملف DTD للتحقق من صحة التعريف فيه ثالثًا ، يجب عليك الإشارة إلى ترميز اللغة المستخدم في المستند. الافتراضي هو UTF-8 إذا كنت تستخدم اللغة الصينية، فستحتاج إلى تعيينه على GB2312.
يجب أن تحتوي وثيقة XML جيدة التكوين على عنصر جذر، وهو العنصر الأول الذي يتم إنشاؤه مباشرة بعد الإعلان. جميع العناصر الأخرى هي عناصر فرعية لهذا العنصر الجذري وتنتمي إلى مجموعة من العناصر الجذرية.
يجب كتابة محتوى مستند XML جيد التنسيق بما يتوافق مع بناء جملة XML. (سنشرح بناء جملة XML بالتفصيل في الفصل التالي)
7.XML صالح (XML صالح)
يُطلق على مستند XML الذي يتوافق مع قواعد بناء جملة XML ويتوافق مع مواصفات ملف DTD المقابل، مستند XML صالح. لاحظ أننا نقارن بين "XML جيد التنسيق" و"صالح
XML"، والفرق الأكبر بينهما هو أن أحدهما يتوافق تمامًا مع مواصفات XML، بينما الآخر لديه "تعريف نوع المستند (DTD) الخاص به".
عملية مقارنة مستند XML مع ملف DTD الخاص به لمعرفة ما إذا كان يتوافق مع قواعد DTD تسمى التحقق من الصحة. تتم معالجة هذه العملية عادةً بواسطة برنامج يسمى المحلل اللغوي.
يجب أيضًا أن يبدأ مستند XML الصالح بإعلان XML، على سبيل المثال:
<?xml version="1.0" standalone="no" encode="UTF-8"?>
بخلاف المثال أعلاه، في السمة المستقلة (المستقلة)، تم تعيين "no" هنا لأنه يجب استخدامه مع DTD المقابل. يتم تعريف ملف DTD على النحو التالي:
<!DOCTYPE نوع المستند SYSTEM/PUBLIC "dtd-name">
في:
"!DOCTYPE" يعني أنك تريد تعريف DOCTYPE؛
"type-of-doc" هو اسم نوع المستند الذي حددته بنفسك، وعادةً ما يكون نفس اسم ملف DTD؛
استخدم فقط أحد المعلمتين "SYSTEM/PUBLIC". يشير SYSTEM إلى عنوان URL لملف DTD الخاص الذي يستخدمه المستند، بينما يشير PUBLIC إلى عنوان URL لملف DTD العام الذي يستخدمه المستند.
"dtd-name" هو عنوان URL واسم ملف DTD. كافة ملفات DTD لها اللاحقة ".dtd".
ما زلنا نستخدم المثال أعلاه، وينبغي كتابته على النحو التالي:
<?xml version="1.0" standalone="no" encode="UTF-8"?>
<!DOCTYPE filelist SYSTEM "filelist.dtd">
2. المصطلحات ذات الصلة بـ DTD
ما هو DTD، لقد ذكرنا بإيجاز أعلاه. يعد DTD طريقة فعالة للتأكد من صحة تنسيق مستند XML. يمكنك مقارنة مستند XML وملف DTD لمعرفة ما إذا كان المستند يتوافق مع المواصفات وما إذا تم استخدام العناصر والعلامات بشكل صحيح. تحتوي وثيقة DTD على: قواعد تعريف العناصر، وقواعد تعريف العلاقات بين العناصر، والصفات التي يمكن أن تستخدمها العناصر، وقواعد الكيانات أو الرموز التي يمكن استخدامها.
ملف DTD هو أيضًا ملف نصي ASCII مع اللاحقة .dtd. على سبيل المثال: myfile.dtd.
لماذا نستخدم ملفات DTD؟ ما أفهمه هو أنه يتوافق مع مشاركة الشبكة وتفاعل البيانات. أكبر فائدة لاستخدام DTD هي مشاركة ملفات DTD. (هذه هي السمة العامة في بيان وصف DTD أعلاه). على سبيل المثال، إذا كان شخصان في نفس الصناعة ومناطق مختلفة يستخدمان نفس ملف DTD كمواصفات إنشاء مستند، فيمكن تبادل بياناتهما ومشاركتها بسهولة. إذا أراد أشخاص آخرون على الإنترنت إضافة بيانات، فما عليهم سوى إنشاء مستند وفقًا لمواصفات DTD العامة، ويمكنهم الانضمام على الفور.
حاليًا، يوجد بالفعل عدد كبير من ملفات DTD المكتوبة المتوفرة. تستهدف ملفات DTD هذه صناعات وتطبيقات مختلفة، وقد أنشأت قواعد مشتركة للعناصر والتسمية. لا تحتاج إلى إعادة إنشائها بنفسك، ما عليك سوى إضافة الشعارات الجديدة التي تحتاجها بناءً عليها.
وبطبيعة الحال، إذا أردت، يمكنك إنشاء DTD الخاص بك، والذي قد يطابق المستند الخاص بك بشكل أكثر مثالية. يعد إنشاء DTD الخاص بك أمرًا بسيطًا جدًا، وبشكل عام، تحتاج فقط إلى تحديد 4-5 عناصر.
هناك طريقتان لاستدعاء ملف DTD:
1. DTD موجود مباشرة في مستند XML
كل ما عليك فعله هو إدخال بعض التعليمات الخاصة في إعلان DOCTYPE، مثل هذا:
لدينا وثيقة XML:
<?xml version="1.0" encoding="GB2312"?>
<ملفي>
<title>دليل تعلم XML السهل</title>
<author>اجي</author>
</myfile>
نقوم فقط بإدخال الكود التالي بعد السطر الأول:
<!DOCTYPE ملفي [
<!عنوان العنصر (#PCDATA)>
<!مؤلف العنصر (#PCDATA)>
<!ENTITY حقوق الطبع والنشر "حقوق النشر 2001، Ajie.">
]>
2. اتصل بملف DTD مستقل
احفظ مستند DTD كملف .dtd، ثم قم باستدعائه في سطر تعريف DOCTYPE على سبيل المثال، احفظ التعليمة البرمجية التالية كـ myfile.dtd
<!ELEMENT myfile (العنوان، المؤلف)>
<!عنوان العنصر (#PCDATA)>
<!مؤلف العنصر (#PCDATA)>
ثم قم باستدعائه في مستند XML، مع إدراجه بعد السطر الأول:
<!DOCTYPE myfile SYSTEM "myfile.dtd">
يمكننا أن نرى أن استدعاءات js في مستندات DTD وHTML متشابهة فيما يتعلق بكيفية كتابة مستندات DTD، سنقدمها مع بناء جملة مستندات XML في الفصل التالي.
دعونا نتعرف على المصطلحات المتعلقة بـ DTD:
1.المخطط (التخطيط)
المخطط هو وصف لقواعد البيانات. يقوم المخطط بأمرين:
أ. يحدد نوع بيانات العنصر والعلاقة بين العناصر؛
ب. يحدد نوع المحتوى الذي يمكن أن يحتوي عليه العنصر.
DTD هو مخطط لمستندات XML.
2. شجرة الوثيقة
لقد ذكرنا بالفعل "شجرة الوثيقة" في الفصل الثاني. وهي عبارة عن تمثيل صورة للبنية الهرمية لعناصر الوثيقة. تحتوي شجرة بنية المستند على العنصر الجذر، وهو عنصر المستوى الأعلى (أي العنصر الأول الذي يلي بيان تعريف XML مباشرة). انظر إلى المثال:
<?xml version="1.0"?>
<قائمة الملفات>
<ملفي>
<العنوان>...</العنوان>
<المؤلف>...</المؤلف>
</myfile>
</ملف قائمة>
تم ترتيب المثال أعلاه في بنية ثلاثية المستويات في شكل "شجرة"، حيث يكون <filelist> هو العنصر الجذر. في ملفات XML وDTD، العنصر الأول المحدد هو العنصر الجذر.
3. العنصر الأصل/العنصر الفرعي
العنصر الأصلي هو عنصر يحتوي على عناصر أخرى، ويسمى العنصر المتضمن العنصر الفرعي الخاص به. انظر إلى "شجرة البنية" أعلاه، حيث <myfile> هو العنصر الأصلي، و<title>، و<author> هي عناصرها الفرعية، و<myfile> هو العنصر الفرعي لـ <filelist>. عناصر المستوى الأخير التي لا تحتوي على أي عناصر فرعية مثل <title> تسمى أيضًا "عناصر الصفحة".
4.Parser (برنامج التحليل)
المحلل اللغوي هو برنامج أداة يتحقق مما إذا كانت مستندات XML تتوافق مع مواصفات DTD.
تم تطوير محللي XML إلى فئتين: الأولى هي "المحلل غير التأكيدي"، الذي يكتشف فقط ما إذا كانت الوثيقة تتوافق مع قواعد بناء جملة XML وما إذا كانت شجرة الوثيقة قد تم إنشاؤها باستخدام معرفات العناصر. والآخر هو "Paeser فئة التأكيد"، الذي لا يكتشف فقط بناء جملة المستند وشجرة البنية، ولكنه يقارن أيضًا ويحلل ما إذا كانت معرفات العناصر التي تستخدمها تتوافق مع مواصفات ملف DTD المقابل.
يمكن استخدام المحلل اللغوي بشكل مستقل أو كجزء من برنامج التحرير أو المتصفح. في القائمة التالية من الموارد ذات الصلة، قمت بإدراج بعض المحللين المشهورين حاليًا.
حسنًا، من خلال دراسة الفصل الثالث، تعلمنا بعض المصطلحات الأساسية لـ XML وDTD، لكننا مازلنا لا نعرف كيفية كتابة هذه الملفات ونوع الصيغة التي يجب اتباعها في الفصل التالي، سنركز على كتابة XML وبناء جملة وثائق DTD. يرجى مواصلة التصفح، شكرا لك!