XML Sözdizimi Kuralları
XML'in sözdizimi kuralları çok basit ve mantıklıdır. Kuralları öğrenmesi kolay ve kullanımı kolaydır.
XML Belgelerinin Kök Öğesi Olması Gerekir
XML belgeleri, diğer tüm öğelerin ebeveyni olan bir kök öğe içermelidir :
<root>
<child>
<subchild>.....</subchild>
</child>
</root>
Bu örnekte <note> kök öğedir:
<?xml version="1.0" encoding="UTF-8"?>
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
XML Prolog'u
Bu satıra XML prolog adı verilir :
<?xml version="1.0" encoding="UTF-8"?>
XML prolog isteğe bağlıdır. Varsa, belgede ilk sırada yer almalıdır.
XML belgeleri, Norveççe øæå veya Fransızca êèé gibi uluslararası karakterler içerebilir.
Hatalardan kaçınmak için kullanılan kodlamayı belirtmeli veya XML dosyalarınızı UTF-8 olarak kaydetmelisiniz.
UTF-8, XML belgeleri için varsayılan karakter kodlamasıdır.
Karakter kodlaması, Karakter Seti Eğitimimizde incelenebilir .
UTF-8 ayrıca HTML5, CSS, JavaScript, PHP ve SQL için varsayılan kodlamadır.
Tüm XML Öğelerinin Bir Kapanış Etiketi Olması Gerekir
XML'de kapanış etiketini atlamak yasa dışıdır. Tüm öğelerin bir kapanış etiketi olmalıdır :
<p>This is a paragraph.</p>
<br />
Not: XML girişinde bir kapanış etiketi yoktur! Bu bir hata değil. Prolog, XML belgesinin bir parçası değildir.
XML Etiketleri Büyük/Küçük Harfe Duyarlıdır
XML etiketleri büyük/küçük harf duyarlıdır. <Letter> etiketi, <letter> etiketinden farklıdır.
Açılış ve kapanış etiketleri aynı durumda yazılmalıdır:
<message>This is correct</message>
"Açılış ve kapanış etiketleri" genellikle "Başlangıç ve bitiş etiketleri" olarak adlandırılır. Hangisini tercih ederseniz onu kullanın. Bu tamamen aynı şeydir.
XML Öğeleri Düzgün Bir Şekilde Yuvalanmış Olmalıdır
HTML'de, hatalı şekilde iç içe yerleştirilmiş öğeler görebilirsiniz:
<b><i>This text is bold and italic</b></i>
XML'de, tüm öğeler birbirinin içine düzgün bir şekilde yerleştirilmelidir :
<b><i>This text is bold and italic</i></b>
Yukarıdaki örnekte, "Doğru iç içe", basitçe, <i> öğesi <b> öğesi içinde açıldığından, <b> öğesi içinde kapatılması gerektiği anlamına gelir.
XML Öznitelik Değerleri Her Zaman Alıntı Yapılmalıdır
XML öğeleri, tıpkı HTML'deki gibi ad/değer çiftlerinde niteliklere sahip olabilir.
XML'de öznitelik değerleri her zaman alıntılanmalıdır:
<note date="12/11/2007">
<to>Tove</to>
<from>Jani</from>
</note>
Varlık Referansları
Bazı karakterlerin XML'de özel bir anlamı vardır.
Bir XML öğesinin içine "<" gibi bir karakter yerleştirirseniz, ayrıştırıcı bunu yeni bir öğenin başlangıcı olarak yorumladığı için bir hata oluşturur.
Bu bir XML hatası üretecektir:
<message>salary < 1000</message>
Bu hatayı önlemek için "<" karakterini bir varlık referansıyla değiştirin :
<message>salary < 1000</message>
XML'de önceden tanımlanmış 5 varlık referansı vardır:
< | < | less than |
> | > | greater than |
& | & | ampersand |
' | ' | apostrophe |
" | " | quotation mark |
XML'de yalnızca < ve & kesinlikle yasa dışıdır, ancak > yerine > ilave olarak.
XML'deki yorumlar
XML'de yorum yazmak için kullanılan sözdizimi HTML'dekine benzer:
<!-- This is a comment -->
Bir yorumun ortasında iki tireye izin verilmez:
<!-- This is an invalid -- comment -->
Boşluk, XML'de Korunur
XML, birden çok beyaz boşluğu kırpmaz (HTML, birden çok beyaz boşluğu tek bir boşluk olarak kısaltır):
XML: | Hello Tove |
HTML: | Hello Tove |
XML Yeni Satırı LF Olarak Depolar
Windows uygulamaları yeni bir satırı şu şekilde depolar: satır başı ve satır besleme (CR+LF).
Unix ve Mac OSX, LF kullanır.
Eski Mac sistemleri CR kullanır.
XML, yeni bir satırı LF olarak saklar.
İyi Biçimlendirilmiş XML
Yukarıdaki sözdizimi kurallarına uyan XML belgelerine "İyi Biçimlendirilmiş" XML belgeleri denir.