قوانین گرامری XML

XML 的语法规则很简单,且很有逻辑。这些规则很容易学习,也很容易使用。

XML 文档必须有根元素

XML 文档必须包含一个根元素,该元素是所有其他元素的父元素


  
    .....
  

在此例中, 是根元素:



  <to>George</to>
  <from>John</from>
  Reminder
  Don't forget the meeting!
</note>

XML 序言(XML Prolog)

这一行称为 XML 序言


XML 序言是可选的。如果存在,则必须位于文档的第一行。

XML 文档可以包含国际字符,例如挪威语 øæå 或法语 êèé。

为了避免错误,您应该指定所使用的编码,并将 XML 文件保存为 UTF-8。

UTF-8 是 XML 文档的默认字符编码。

您可以在我们的字符集教程中进行学习字符编码。

提示:UTF-8 也是 HTML5、CSS、JavaScript、PHP 和 SQL 的默认编码。

تمام XML عناصر کو کلوز کریو کریا جانا چاہئیے

XML میں، کلوز کریو چھوڑنے کو نا معقول خیال کیا جاتا ہے، تمام عناصرلازم استختم کریو موجود ہیں:

<p>یہ ایک پیراگراف ہے.</p>
<br />

توجہ:توجہ: XML پرولوق کو ختم کریو نہیں کریو، یہ غلط نہیں ہے! پرولوق XML کی بنیادی حصہ نہیں ہے، یہ ایک XML عنصر نہیں ہے اور کلوز کریو نہیں کریو نا چاہئیے۔

XML کریو کو اکسیس کریو اور کلوز کریو کا فرق اچار کی بولی میں نہیں ہوتا، کریو <Letter> اور کریو <letter> مختلف ہیں۔

XML کریو کو اکسیس کریو اور کلوز کریو کا فرق اچار کی بولی میں نہیں ہوتا، کریو <Letter> اور کریو <letter> مختلف ہیں۔

شروع اور ختم کریو کو ایک طرح سے اکسیس کریو اور کلوز کریو کہنا بھی جاسکتا ہے:

<message>This is correct</message>

نظر:اُپن کریو اور بند کریو عام طور میں شروع کریو اور ختم کریو کہلاتی ہیں۔ آپ کو کس کسی اصطلاح کی ترجیح دیکھیں، ان کا مفہوم ایک سے ہی مختلف نہیں ہوتا۔

عناصر XML باید به درستی قید شوند

در HTML، ممکن است عناصر بدون قیدهای عمیق را ببینید:

<b><i>This text is bold and italic</b></i>

در XML، تمام عناصرلازم استقیدهای عمیق درست:

<b><i>This text is bold and italic</i></b>

در مثال بالا، معنای صحیح قیدهای عمیق این است: زیرا عنصر <i> در داخل عنصر <b> باز شده است، بنابراین باید در داخل عنصر <b> بسته شود.

ارزش ویژگی‌های XML باید بین قیدها قرار گیرند

مانند HTML، XML نیز می‌تواند ویژگی‌ها (نام/ارزش) داشته باشد.

در XML، ارزش‌های ویژگی‌ها باید بین قیدها قرار گیرند:

<note date="12/11/2007">
  <to>George</to>
  <from>John</from>
</note>

اشاره‌ی شبه‌ماده

در XML، برخی از کاراکترها دارای معنای خاصی هستند.

اگر شما کاراکتر "<" را در داخل یک عنصر XML قرار دهید، خطا خواهد بود، زیرا پردازش‌کننده آن را به عنوان شروع یک عنصر جدید خواهد گرفت.

این می‌تواند خطای XML ایجاد کند:

<message>if salary < 1000 then</message>

برای جلوگیری از این خطا، لطفاً ازاشاره‌ی شبه‌مادهبه جای کاراکتر "<" استفاده کنید:

<message>if salary < 1000 then</message>

در XML، 5 شبه‌ماده‌ی پیش‌تعریف شده وجود دارد:

< < کوچکتر از
> > بزرگتر از
& & و
' ' قیدهای یکتا
" " قیدها

نظر:در XML، فقط کاراکتر "<" و "&" واقعاً غیرقانونی هستند. > قانونی است، اما استفاده از > به جای آن یک عادت خوب است.

نظرات در XML

زبان نوشتن نظرات در XML بسیار مشابه با HTML است:

<!-- This is a comment -->

در میان نظرات، دو خط تیره مجاز نیستند:

<!-- This is an invalid -- comment -->

فضاهای خالی در XML حفظ می‌شوند

HTML تعداد زیادی فضای خالی پیوسته را به یک عدد کاهش می‌دهد (ادغام می‌کند)، در XML، فضاهای خالی در مستند ذخیره نمی‌شوند:

XML:	Hello           George
HTML:	Hello George

XML خطوط جدید را به صورت LF ذخیره می‌کند

در برنامه‌های ویندوز، خطوط جدید معمولاً با یک جفت کاراکتر ذخیره می‌شوند: کاراکتر برگشت (CR) و کاراکتر خط جدید (LF). این جفت کاراکتر شبیه به عمل تنظیم خط جدید ماشین تحریر است.

Unix و Mac OSX از LF استفاده می‌کنند.

سیستم‌های قدیمی Mac از CR استفاده می‌کنند.

XML خطوط جدید را به صورت LF ذخیره می‌کند.

XML خوب قالب‌بندی‌شده

دокумент‌های XML که با قوانین زبان مخصوص خود مطابقت دارند، به عنوان XML