طراحی سایت | طراحی اسلایدر | خدمات سئو | سئو وبسایت | خدمات طراحی وبسایت | پشتیبانی وبسایت |
0 محصولات نمایش سبد خرید

هیچ محصولی در سبد خرید نیست.

فضای نام ها در XML | بخش هشتم

در بخش فضای نام ها در XML محیط های موجود در XML روشی برای جلوگیری از درگیری نام عنصر ارائه می دهد.

تضاد نام ها

در XML ، نام عناصر توسط توسعه دهنده تعریف می شود. این اغلب منجر به درگیری می شود هنگام تلاش برای مخلوط کردن اسناد XML از برنامه های مختلف XML.

در این XML اطلاعات جدول HTML را در اختیار دارد:
<table>
  <tr>
    <td>Apples</td>
    <td>Bananas</td>
  </tr>
</table>این XML اطلاعات مربوط به یک میز (یک تکه مبلمان) را شامل می شود:
این XML اطلاعات مربوط به یک میز (یک تکه مبلمان) را شامل می شود:
<table>
  <name>African Coffee Table</name>
  <width>80</width>
  <length>120</length>
</table>

در فضای نام ها اگر این قطعات XML به هم اضافه شوند ، درگیری نام وجود خواهد داشت. هر دو دارای یک عنصر هستند ، اما این عناصر دارای محتوا و معنای متفاوتی هستند.
یک کاربر یا یک برنامه 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>

در مثال بالا هیچ درگیری وجود نخواهد داشت زیرا دو عنصر
دارای نامهای مختلفی هستند.

هنگام استفاده از پیشوندها در 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 در اولین عنصر h را می دهد: پیشوند یک اسم که قابل قبول باشد. ویژگی xmlns در عنصر دوم فضای پیش فرض 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 استفاده می شود.

<?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 ما را بخوانید.

دیدگاه‌های نوشته

Share via
ارسال این به یک دوست