Telerik blogs

All XML Elements Must Have a Closing Tag

In HTML, you will often see elements that don't have a closing tag: 

<p>This is a paragraph 
<p>This is another paragraph 
 

In XML, it is illegal to omit the closing tag. All elements must have a closing tag:
<p>This is a paragraph</p> 
<p>This is another paragraph</p>  
 

 

 Note: You might have noticed from the previous example that the XML declaration did not have a closing tag. This is not an error. The declaration is not a part of the XML document itself, and it has no closing tag.

XML Tags are Case Sensitive

XML elements are defined using XML tags.
XML tags are case sensitive. With XML, the tag <Letter> is different from the tag <letter>.
Opening and closing tags must be written with the same case:

<Message>This is incorrect</message> 
<message>This is correct</message> 
 

 Note: "Opening and closing tags" are often referred to as "Start and end tags". Use whatever you prefer. It is exactly the same thing.

XML Elements Must be Properly Nested
In HTML, you will often see improperly nested elements:

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

 In XML, all elements must be properly nested within each other:

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

 

In the example above, "Properly nested" simply means that since the <i> element is opened inside the <b> element, it must be closed inside the <b> element.

XML Documents Must Have a Root Element
XML documents must contain one element that is the parent of all other elements. This element is called the root element.

<root> 
  <child> 
    <subchild>.....</subchild> 
  </child> 
</root>  
 

 XML Attribute Values Must be Quoted
XML elements can have attributes in name/value pairs just like in HTML.
In XML the attribute value must always be quoted. Study the two XML documents below. The first one is incorrect, the second is correct:

<note date=12/11/2007> 
<to>Tove</to> 
<from>Jani</from> 
</note> 
 

 

<note date="12/11/2007"
<to>Tove</to> 
<from>Jani</from> 
</note> 
 

 The error in the first document is that the date attribute in the note element is not quoted.

Entity References

 Some characters have a special meaning in XML.
If you place a character like "<" inside an XML element, it will generate an error because the parser interprets it as the start of a new element.
This will generate an XML error:

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

 To avoid this error, replace the "<" character with an entity reference:

<message>if salary &lt; 1000 then</message> 

 

There are 5 predefined entity references in XML:

&lt;

less than

&gt;

greater than

&amp;

&

ampersand 

&apos;

'

apostrophe

&quot;

"

quotation mark

   

 Note: Only the characters "<" and "&" are strictly illegal in XML. The greater than character is legal, but it is a good habit to replace it

 Comments in XML

The syntax for writing comments in XML is similar to that of HTML.
<!-- This is a comment -->

 

 With XML, White Space is Preserved
HTML reduces multiple white space characters to a single white space: 

HTML:

Hello           my name is Tove

Output:

Hello my name is Tove.

 

With XML, the white space in your document is not truncated.

XML Stores New Line as LF
In Windows applications, a new line is normally stored as a pair of characters: carriage return (CR) and line feed (LF). The character pair bears some resemblance to the typewriter actions of setting a new line. In Unix applications, a new line is normally stored as a LF character. Macintosh applications use only a CR character to store a new line.

Can XML use non-Latin characters?
Yes, the XML Specification explicitly says XML uses ISO 10646, the international standard 31--bit character repertoire which covers most human (and some non-human) languages. This is currently congruent with Unicode and is planned to be superset of Unicode.

The contents of this article were taken from the following w3schools page: http://www.w3schools.com/Xml/xml_syntax.asp.


About the Author

Iana Tsolova

is Product Manager at Telerik’s DevTools division. She joined the company back in the beginning of 2008 as a Support Officer and has since occupied various positions at Telerik, including Senior Support Officer, Team Lead at one of the ASP.NET AJAX teams and Technical Support Director. Iana’s main interests are web development, reading articles related to geography, wild nature and latest renewable energy technologies.

Comments

Comments are disabled in preview mode.