دروس XML

الصفحة الرئيسية لـ XML مقدمة XML كيفية استخدام XML شجرة XML بناء جملة XML عناصر XML سمات XML مساحات أسماء XML عرض XML طلب XML HttpRequest محلل XML XML DOM XML XPath XML XSLT XML XQuery XML XLink مدقق XML XML DTD مخطط XML خادم XML أمثلة XML مسابقة XML شهادة XML

XML AJAX

مقدمة أجاكس أجاكس XMLHttp طلب AJAX استجابة AJAX ملف AJAX XML أجاكس بي إتش بي أجاكس آسيا والمحيط الهادئ قاعدة بيانات أجاكس تطبيقات أجاكس أمثلة AJAX

XML DOM

مقدمة حول DOM عقد DOM الوصول إلى DOM معلومات عقدة DOM قائمة عقدة DOM عبور DOM التنقل في DOM DOM احصل على القيم DOM تغيير العقد DOM إزالة العقد استبدل DOM Nodes DOM إنشاء العقد DOM أضف العقد عقد استنساخ DOM أمثلة DOM

دروس XPath

مقدمة XPath عقد XPath بناء جملة XPath محاور XPath مشغلي XPath أمثلة XPath

XSLT التعليمي

XSLT مقدمة لغات XSL تحويل XSLT XSLT <template> XSLT <قيمة> XSLT <للجميع> XSLT <ترتيب> XSLT <if> XSLT <اختر> XSLT تطبيق XSLT على العميل XSLT على الخادم XSLT تحرير XML أمثلة XSLT

XQuery تعليمي

XQuery مقدمة مثال XQuery XQuery FLWOR XQuery HTML شروط XQuery بناء جملة XQuery XQuery إضافة XQuery حدد وظائف XQuery

XML DTD

مقدمة DTD مكعبات بناء DTD عناصر DTD سمات DTD عناصر DTD مقابل Attr كيانات DTD أمثلة DTD

مخطط XSD

مقدمة XSD XSD كيف XSD <المخطط عناصر XSD سمات XSD قيود XSD

مجمع XSD

عناصر XSD XSD فارغ عناصر XSD فقط نص XSD فقط XSD مختلط مؤشرات XSD XSD <أي> XSD <أي سمة> تبديل XSD مثال XSD

بيانات XSD

سلسلة XSD تاريخ XSD XSD الرقمية XSD متفرقات مرجع XSD

خدمات الويب

خدمات XML XML WSDL صابون XML XML RDF XML RSS

مراجع

أنواع عقدة DOM عقدة DOM قائمة عقدة DOM DOM NamedNodeMap مستند DOM عنصر DOM سمة DOM نص DOM DOM CDATA تعليق DOM DOM XMLHttpRequest محلل DOM عناصر XSLT وظائف XSLT / XPath

مساحات أسماء XML


توفر مساحات أسماء XML طريقة لتجنب تعارض اسم العنصر.


تعارض الأسماء

في XML ، يتم تحديد أسماء العناصر من قبل المطور. ينتج عن هذا غالبًا تعارض عند محاولة مزج مستندات XML من تطبيقات XML مختلفة.

يحمل XML هذا معلومات جدول HTML:

<table>
  <tr>
    <td>Apples</td>
    <td>Bananas</td>
  </tr>
</table>

يحمل XML هذا معلومات حول طاولة (قطعة أثاث):

<table>
  <name>African Coffee Table</name>
  <width>80</width>
  <length>120</length>
</table>

إذا تمت إضافة أجزاء XML هذه معًا ، فسيكون هناك تعارض في الأسماء. كلاهما يحتوي على عنصر <table> ، لكن لكل منهما محتوى ومعنى مختلف.

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


حل تعارض الأسماء باستخدام بادئة

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

يحمل XML هذا معلومات حول جدول HTML وقطعة أثاث:

<h:table>
  <h:tr>
    <h:td>Apples</h:td>
    <h:td>Bananas</h:td>
  </h:tr>
</h:table>

<f:table>
  <f:name>African Coffee Table</f:name>
  <f:width>80</f:width>
  <f:length>120</f:length>
</f:table>

في المثال أعلاه ، لن يكون هناك تعارض لأن عنصري <table> لهما أسماء مختلفة.



مساحات أسماء XML - سمة xmlns

عند استخدام البادئات في XML ، يجب تحديد مساحة اسم البادئة.

يمكن تحديد مساحة الاسم بواسطة سمة xmlns في علامة البداية للعنصر.

إعلان مساحة الاسم له بناء الجملة التالي. xmlns: بادئة = " URI ".

<root>

<h:table xmlns:h="http://www.w3.org/TR/html4/">
  <h:tr>
    <h:td>Apples</h:td>
    <h:td>Bananas</h:td>
  </h:tr>
</h:table>

<f:table xmlns:f="https://www.w3schools.com/furniture">
  <f:name>African Coffee Table</f:name>
  <f:width>80</f:width>
  <f:length>120</f:length>
</f:table>

</root>

في المثال أعلاه:

تعطي السمة xmlns في عنصر <table> الأول البادئة h: مساحة اسم مؤهلة.

تعطي السمة xmlns في عنصر <table> الثاني البادئة f: مساحة اسم مؤهلة.

عندما يتم تحديد مساحة اسم لعنصر ما ، فإن جميع العناصر الفرعية التي لها نفس البادئة تقترن بنفس مساحة الاسم.

يمكن أيضًا الإعلان عن مساحات الأسماء في عنصر جذر XML:

<root xmlns:h="http://www.w3.org/TR/html4/"
xmlns:f="https://www.w3schools.com/furniture">

<h:table>
  <h:tr>
    <h:td>Apples</h:td>
    <h:td>Bananas</h:td>
  </h:tr>
</h:table>

<f:table>
  <f:name>African Coffee Table</f:name>
  <f:width>80</f:width>
  <f:length>120</f:length>
</f:table>

</root>

ملاحظة: مساحة الاسم URI لا يستخدمها المحلل اللغوي للبحث عن المعلومات.

الغرض من استخدام URI هو إعطاء مساحة الاسم اسمًا فريدًا.

ومع ذلك ، غالبًا ما تستخدم الشركات مساحة الاسم كمؤشر لصفحة ويب تحتوي على معلومات مساحة الاسم.


معرف الموارد الموحد (URI)

معرف الموارد المنتظم (URI) هو سلسلة من الأحرف التي تحدد مورد الإنترنت.

أكثر URI شيوعًا هو محدد موقع المعلومات (URL) الذي يحدد عنوان مجال الإنترنت. نوع آخر غير شائع من URI هو اسم المورد الموحد (URN).


مساحات الأسماء الافتراضية

إن تحديد مساحة اسم افتراضية لعنصر ما يحفظنا من استخدام البادئات في جميع العناصر الفرعية. يحتوي على النحو التالي:

xmlns="namespaceURI"

يحمل XML هذا معلومات جدول HTML:

<table xmlns="http://www.w3.org/TR/html4/">
  <tr>
    <td>Apples</td>
    <td>Bananas</td>
  </tr>
</table>

يحمل XML هذا معلومات حول قطعة أثاث:

<table xmlns="https://www.w3schools.com/furniture">
  <name>African Coffee Table</name>
  <width>80</width>
  <length>120</length>
</table>

مساحات الأسماء في الاستخدام الحقيقي

XSLT هي لغة يمكن استخدامها لتحويل مستندات XML إلى تنسيقات أخرى.

مستند XML أدناه ، هو مستند يستخدم لتحويل XML إلى HTML.

تحدد مساحة الاسم "http://www.w3.org/1999/XSL/Transform" عناصر XSLT داخل مستند HTML:

<?xml version="1.0" encoding="UTF-8"?>

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">
<html>
<body>
  <h2>My CD Collection</h2>
  <table border="1">
    <tr>
      <th style="text-align:left">Title</th>
      <th style="text-align:left">Artist</th>
    </tr>
    <xsl:for-each select="catalog/cd">
    <tr>
      <td><xsl:value-of select="title"/></td>
      <td><xsl:value-of select="artist"/></td>
    </tr>
    </xsl:for-each>
  </table>
</body>
</html>
</xsl:template>

</xsl:stylesheet>

إذا كنت تريد معرفة المزيد عن XSLT ، فيرجى قراءة دروس XSLT التعليمية .