ایکس ایم ایل نامساحات

XML نام‌گذاری فضای ناسازگاری کی روک تھام کا ایک طریقہ فراہم کرتا ہے۔

نام ناسازگاری

XML میں، عناصر کے نام پروگرامر کے ذریعے تعریف کئے جاتے ہیں۔ جب دو مختلف دستاویزات ایک ہی عناصر نام استفادے کراتی ہیں تو نام ناسازگاری آئیتی ہے۔

اس XML دستاویز میں کسی جدول کی معلومات کا حمل ہے:

<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> عناصر کو نام دیتے ہیں (<h:table> اور <f:table>)。

پیشوند استفادے کے ذریعے، ہم دو مختلف نوعیت کے <table> عناصر پیدا کردیم۔

XML نام‌گذاری فضای - xmlns属性

XML ਵਿੱਚ ਪ੍ਰਤੀਕ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਪ੍ਰਤੀਕ ਦੇ ਪ੍ਰਤੀਕ ਨੂੰ ਨਿਰਧਾਰਤ ਕਰਨਾ ਹੈ।ਨੇਮਸਪੇਸ(Namespaces)。

ਨੇਮਸਪੇਸ ਇੱਕ ਏਲੀਮੈਂਟ ਦੇ ਸ਼ੁਰੂਆਤੀ ਟੈਗ ਵਿੱਚ xmlns ਪ੍ਰਤੀਕ ਨਾਲ ਦਿਸ਼ਾ-ਨਿਰਦੇਸ਼ ਦਿੰਦੀ ਹੈ:

ਨੇਮਸਪੇਸ ਘੋਸ਼ਣਾ ਇਸ ਗਰੰਥ ਦੀ ਵਰਤੋਂ ਕਰਦੀ ਹੈ: xmlns:prefix="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.codew3c.com/furniture">
  <f:name>African Coffee Table</f:name>
  <f:width>80</f:width>
  <f:length>120</f:length>
</f:table>
</root>

ਉੱਪਰੋਕਤ ਉਦਾਹਰਣ ਵਿੱਚ:

ਪਹਿਲੇ <table> ਏਲੀਮੈਂਟ ਵਿੱਚ xmlns ਪ੍ਰਤੀਕ ਹੈ h: ਪ੍ਰਤੀਕ ਸੀਮਿਤ ਨੇਮਸਪੇਸ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ。

ਦੂਜੇ <table> ਏਲੀਮੈਂਟ ਵਿੱਚ xmlns ਪ੍ਰਤੀਕ ਹੈ f: ਪ੍ਰਤੀਕ ਸੀਮਿਤ ਨੇਮਸਪੇਸ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ。

ਜੇਕਰ ਇੱਕ ਏਲੀਮੈਂਟ ਲਈ ਨੇਮਸਪੇਸ ਦਿਆ ਗਿਆ ਹੈ ਤਾਂ ਉਸ ਸਮਾਨ ਪ੍ਰਤੀਕ ਦੇ ਸਾਰੇ ਉਪ ਏਲੀਮੈਂਟ ਉਸੇ ਨੇਮਸਪੇਸ ਨਾਲ ਸਬੰਧਤ ਹੁੰਦੇ ਹਨ。

ਨੇਮਸਪੇਸ ਵੀ XML ਰੂਟ ਏਲੀਮੈਂਟ ਵਿੱਚ ਘੋਸ਼ਿਤ ਕੀਤੀ ਜਾ ਸਕਦੀ ਹੈ:

<root xmlns:h="http://www.w3.org/TR/html4/">
xmlns:f="https://www.codew3c.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)

ਏਕੀਕ੍ਰਿਤ ਸੰਸਾਧਨ ਪਛਾਣਕ (Uniform Resource Identifier,URI) ਇੰਟਰਨੈੱਟ ਸੰਸਾਧਨਾਂ ਨੂੰ ਪਛਾਣਣ ਵਾਲੀ ਚਿੰਨ੍ਹਕ ਚਿੰਨ੍ਹਾਂ ਦੀ ਸ਼ਬਦਮਾਲਾ ਹੈ。

) ਸਭ ਤੋਂ ਮਿਲਣ ਵਾਲਾ URI ਹੈਏਕੀਕ੍ਰਿਤ ਸੰਸਾਧਨ ਸਥਾਨਾਂਕ (Uniform Resource Locator,URL)،ਇਹ ਇੰਟਰਨੈੱਟ ਡੋਮੇਨ ਠੇਕੇ ਨੂੰ ਪਛਾਣਦਾ ਹੈ。

ਹੋਰ ਕੁਝ ਘੱਟ ਮਿਲਣ ਵਾਲੇ URI ਤਰੀਕੇ ਹਨਏਕੀਕ੍ਰਿਤ ਸੰਸਾਧਨ ਨਾਮ (Uniform Resource Name,URN)。

ਡਿਫਾਲਟ ਨੇਮਸਪੇਸ (Default Namespaces)

ਇਲੀਮੈਂਟ ਲਈ ਮੂਲ ਨਾਮ ਸਪੇਸ ਨਾਮ ਨਿਰਧਾਰਿਤ ਕਰਨ ਨਾਲ ਅਸੀਂ ਸਾਰੇ ਉਪ-ਇਲੀਮੈਂਟਾਂ ਵਿੱਚ ਪ੍ਰੋਫਾਇਲ ਨਹੀਂ ਵਰਤਣਾ ਪੈਂਦਾ।

ਹੇਠਲੀ ਗਰਿੱਖ ਵਰਤੋਂ ਕਰੋ:

xmlns="namespaceURI"

ਇਹ XML ਐੱਚਟੀਐੱਮਐੱਲ ਟੇਬਲ ਸੂਚਨਾ ਲੈ ਰਿਹਾ ਹੈ:

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

ਇਹ XML ਇੱਕ ਮੋਬਾਈਲ ਦੀ ਸੂਚਨਾ ਲੈ ਰਿਹਾ ਹੈ:

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

ਨਾਮ ਸਪੇਸ ਦੀ ਵਾਸਤਵਿਕ ਵਰਤੋਂ

XSLT ਇੱਕ ਐਕਸਐੱਲ ਦਸਤਾਵੇਜ਼ ਨੂੰ ਹੋਰ ਫਾਰਮੈਟਸ ਵਿੱਚ ਟਰਾਂਸਫਾਰਮ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਣ ਵਾਲਾ ਇੱਕ ਭਾਸ਼ਾ ਹੈ。

ਹੇਠਲਾ XML ਡੌਕੂਮੈਂਟ XML ਨੂੰ ਐੱਚਟੀਐੱਮਐੱਲ ਵਿੱਚ ਟਰਾਂਸਫਾਰਮ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ。

ਜੇਕਰ ਤੁਸੀਂ ਨਿਜੀ ਤੌਰ 'ਤੇ ਹੇਠਲੇ ਐਕਸਐੱਲ ਦਸਤਾਵੇਜ਼ ਨੂੰ ਦੇਖੋ, ਤਾਂ ਅਧਿਕਾਂਸ਼ਕਰਣ ਜ਼ਿਆਦਾਤਰ ਐੱਚਟੀਐੱਮਐੱਲ ਟੈਗਸ ਹੋਣਗੇ。

ਨਾਨ-ਐੱਚਟੀਐੱਮਐੱਲ ਟੈਗਸ ਸਾਰੇ ਪ੍ਰੋਫਾਇਲ ਹਨ ਅਤੇ ਇਸ ਨਾਮ ਸਪੇਸ ਦੁਆਰਾ ਪ੍ਰਤੀਕਿਤ ਕੀਤੇ ਜਾਂਦੇ ਹਨ: 'http://www.w3.org/1999/XSL/Transform':

ਨਾਮ ਸਪੇਸ 'http://www.w3.org/1999/XSL/Transform' ਐੱਚਟੀਐੱਮਐੱਲ ਡੌਕੂਮੈਂਟ ਵਿੱਚ ਐਕਸਐੱਲਟੀ ਇਲੀਮੈਂਟਸ ਨੂੰ ਪ੍ਰਤੀਕਿਤ ਕਰਦਾ ਹੈ:

<?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 ਸਿੱਖਿਆ.