Please visit our sponsors !
XML Elements
XML Elements are extensible and they have relationships.
XML Elements have simple naming rules.
XML Elements are Extensible
XML documents can be extended to carry more information.
Look at the following XML NOTE example:
<note>
<to>Tove</to>
<from>Jani</from>
<body>Don't forget me this weekend!</body>
</note>
|
Let's imagine that we created an application that extracted the <to>,
<from>, and <body> elements from the XML document to produce this
output:
MESSAGE
To: Tove
From: Jani
Don't forget me this weekend!
|
Imagine that the author of the XML document added some extra information to
it:
<note>
<date>1999-08-01</date>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
|
Should the application break or crash?
No. The application should still be able to find the <to>,
<from>, and <body> elements in the XML document and produce the same
output.
XML documents are Extensible.
XML Elements have Relationships
Elements are related as parents and children.
To understand XML terminology, you have to know how relationships between XML
elements are named, and how element content is described.
Imagine that this is a description of a book:
Book Title: My First XML
Chapter 1: Introduction to XML
Chapter 2: XML Syntax
- Elements must have a closing tag
- Elements must be properly nested
|
Imagine that this XML document describes the book:
<book>
<title>My First XML</title>
<prod id="33-657" media="paper"></prod>
<chapter>Introduction to XML
<para>What is HTML</para>
<para>What is XML</para>
</chapter>
<chapter>XML Syntax
<para>Elements must have a closing tag</para>
<para>Elements must be properly nested</para>
</chapter>
</book>
|
Book is the root element. Title, prod, and chapter are child elements
of book. Book is the parent element of title, prod, and chapter. Title,
prod, and
chapter are siblings (or sister elements) because they have the
same parent.
Elements have Content
Elements can have different content types.
An XML element is everything from (including) the element's start tag
to (including) the element's end tag.
An element can have element content, mixed content, simple
content, or empty content. An element can also have attributes.
In the example above, book has element content, because it contains
other elements. Chapter has mixed
content because it contains both text and other elements. Para has simple
content (or text content) because it contains only text. Prod has empty
content, because it carries no information.
In the example above only the prod element has attributes.
The attribute named id has the value "33-657". The attribute
named media has the value "paper".
Element Naming
XML elements must follow these naming rules:
- Names can contain letters, numbers, and other characters
- Names must not start with a number or punctuation character
- Names must not start with the letters xml (or XML or Xml ..)
- Names cannot contain spaces
Take care when you "invent" element names and follow these simple
rules:
Any name can be used, no words are reserved, but the
idea is to make names descriptive. Names with an underscore separator are nice.
Examples: <first_name>,
<last_name>.
Avoid "-" and "." in names. It
could be a mess if your software tried to subtract name from first (first-name)
or think that "name" is a property of the object "first" (first.name).
Element names can be as long as you like, but don't exaggerate. Names should
be short and simple, like this: <book_title> not like this: <the_title_of_the_book>.
XML documents often have a corresponding database, in which fields exist corresponding to elements in the XML document. A
good practice is to use the naming rules of your database for the elements in the XML documents.
Non-English letters like йтб are perfectly legal in XML element names, but
watch out for problems if your software vendor doesn't support them.
The ":" should not be used in element names because it is reserved
to be used for something called namespaces (more later).
Jump to: Top of Page
or HOME or
Printer friendly page
Search W3Schools:
What Others Say About Us
Does the world know about us? Check out these places:
Dogpile
Alta Vista
MSN
Google
Excite
Lycos
Yahoo
Ask Jeeves
We Help You For Free. You Can Help Us!
W3Schools is for training only. We do not warrant its correctness or its fitness for use.
The risk of using it remains entirely with the user. While using this site, you agree to have read and accepted our
terms of use and
privacy policy.
Copyright 1999-2002 by Refsnes Data. All Rights Reserved
|