*एक्स॰एम॰एल॰* (**Extensible Markup Language** या **XML**) एक सामान्य उपयोग की मार्कअप भाषा है। अधिक सूक्ष्म रूप में कहें तो यह सामान्य उपयोग की विनिर्देश यानि स्पेसिफिकेशन है जो स्वानुकूल मार्कअप भाषा की रचना करने के काम आती है। *एक्सटेंसिबल* इसलिये क्योंकि ये प्रयोक्ताओं को अपने टैग बनाने की अनुमति देता है। क्षमल का मूल उद्देश्य है अलहदा सूचना निकायों के बीच, विशेषकर इंटरनेट द्वारा, संरचित यानी स्ट्रक्चर्ड सूचना के आदान प्रदान के लिये सुविधा प्रदान करना।

उदाहरण
एक छोटी सी XML फाइल का एक उदाहरण नीचे दिया है।

```
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE छात्र-विवरण>
<श्रेणी>
<छात्र अनुक्रमांक="1">
 <नाम>मोहन कुमार</नाम>
 <जन्मतिथि>12-12-1988</जन्मतिथि>
 <पता>
  <ग्राम>रामपुर</ग्राम>
  <डाकघर>बकुलगर</डाकघर>
  <थाना>बकुलगर</थाना>
  <जिला>कुशीनगर</जिला>
 </पता>
</छात्र>
<छात्र अनुक्रमांक="2">
 <नाम>जयराम</नाम>
 <जन्मतिथि>16-09-1992</जन्मतिथि>
 <पता>
  <ग्राम>मधुपुर</ग्राम>
  <डाकघर>सुखतली</डाकघर>
  <थाना>सुखतली</थाना>
  <जिला>वीरभूम</जिला>
 </पता>
</छात्र>
</श्रेणी>
```

एच टी एम एल से भिन्नता
----------------------

एक्स एस एल, एचटीएमएल से इस माने में अलग है कि एचटीएमएल में टैग और उनके attributes( लक्षण) के नाम सुनिश्चित हैं जबकि एक्सएमएल में नहीं। उदाहरणतया, HTML में एक पाराग्राफ़ को 

```
 <p> 
```
 टैग के साथ ही लिखा जाएगा। साथ ही इसके अंदर अगर पृष्ठभूमि का रंग लाल करना हो तो इसे इसप्रकार ही लिखा जाएगा 

```
<p background-color="red"> अंदरूनी लेख </p> 
```
। जबकि एक्सएसएल में प्रयोक्ता अपने हिसाब से लिख सकता है और उसका अर्थ भी अपने हिसाब से लगा सकता है।

```
<textblock>
<textbgcolor> 990000 </textbgcolor>
<text> </text>
</textblock>

```

चूँकि XML में प्रयोक्ता अपने हिसाब से टैग का इस्तेमाल करता है, अतः एक ख़ास काम के के लिए उसे एक ख़ास रूप में बदलना पड़ता है। जैसे वैब ब्राउज़र के लिए एचटीएमएल, या पुस्तक प्रकाशन के लिए लातेक या वर्ड फ़ार्मेट। इसके लिए एक्सएमएल पार्सर की आवश्यकता होती है।

ध्यान दें कि XML का प्रयोग HTML बनाने में होता है, जबकि उल्टा नहीं किया जाता है। XML डेटा को अन्य कई प्रकार के रूपों में भी बदला जा सकता है।

एक्स॰एम॰एल॰ के बारे में मुख्य बातें
-----------------------------------

* यह एक टेक्स्ट फाइल होती है जिसे किसी टेक्स्ट एडिटर द्वारा खोला जा सकता है।
* 'इक्स्टेंसिबुल मार्कप लैंग्वेज' में जो ' eXtensible ' शब्द है वह महत्वपूर्ण है, और XMLके बारे में बहुत कुछ कहता है। सार रूप में यह यही कहता है कि XML फाइल का उपयोग (और, प्रदर्शन) भिन्न-भिन्न प्रकार से किया जा सकता है, न कि एक बंधे-बंधाये तरीके से। वास्तव में, XML में जो टैग प्रयोग किये जाते हैं उनका नाम कुछ भी हो सकता है, और उनकी संख्या भी आवश्यकतानुसार कम या बहुत अधिक हो सकती है ( ध्यान रहे कि HTML में कुछ निश्चित टैग ही हैं)।
* XML, डेटा को प्रस्तुतीकरण से अलग करती है। अर्थात XML फाइल के अन्दर जो डेटा होता है उसे कैसे प्रस्तुत किया जाय, इसके बारे में कोई अन्तिम बात नहीं कही गयी होती है (जैसे, इस डेटा को १८ साइज के फॉण्ट में लाग रंग में दिखाओ, या ऐसा ही कुछ)। इसके बजाय डेटा एक वृक्ष-रूप में (ट्री-ट्रक्चर में) दिया होता है। ऐसा करने के कारण इस डेटा को अपनी इच्छानुसार हजारों तरीकों से प्रस्तुत किया जा सकता है, इसमें से सूचना निकाली जा सकती है, आदि। (किन्तु इसके लिये थोड़ा सा अतिरिक्त काम करना पड़ता है)।
* XML, प्रायः HTML की पूरक है। बहुत से एचटीएमएल अप्लिकेशनों में XML का उपयोग डेटा के भण्डारण या आदान-प्रदान के लिये किया जाता है जबकि HTML का उपयोग उस डेटा को फॉर्मट करने तथा प्रदर्शित करने के लिये किया जाता है।
* XML में स्थित आंकड़ों को प्रोग्राम लिखकर तरह-तरह से प्रक्रमित (process) किया जा सकता है। उदाहरण के लिये पुस्तकों का विवरण बताने वाली किसी एक्सएमएल फाइल से उन पुस्तकों को हटाया जा सकता है जो १९०२ के पहले छपीं हों। इसी प्रकार, कई स्रोतों से प्राप्त भिन्न-भिन्न XML डॉक्युमेन्ट्स को आपस में जोड़ा जा सकता है और फिर तरह-तरह से उपयोग में लाया जा सकता है। XML फाइल को, बिना किसी सूचना के ह्रास किये, दूसरे फॉर्मटों में बदला जा सकता है (जैसे csv में)

उपयोग
-----

यह भी पढ़ें
-----------

* क्षमल फीड

बाहरी कड़ियाँ
-------------

* एक्स.एम.एल. के दस निर्देश
* असाधारण है रियली सिंपल सिंडिकेशन
* XML Viewer एक्सएमएल डेटा देखने, संपादित करने और स्वरूपण करने के लिए
* XML Formatter XML डेटा फ़ॉर्मेट करने के लिए