Showing posts with label XML. Show all posts
Showing posts with label XML. Show all posts

Sunday, October 3, 2010

XML Attributes

From HTML you will remember this: < IMG SRC="comp.gif" >. The SRC attribute provides additional information about the IMG element. In HTML (and in XML) attributes provide additional information about elements:

< img src="computer.gif" >
< a href="demo.asp" >

Attributes often provide information that is not a part of the data. In the example below, the file type is irrelevant to the data, but important to the software that wants to manipulate the element:

< file type="gif" > computer.gif < /file >
Students now u know abt basic XML, its scripting rules. Lets understand XML attributes which can be understood as property of an element.

Here are simple rules for XML elements

Quote Styles, "female" or 'female'?
Attribute values must always be enclosed in quotes, but either single or double quotes can be used. For a person's sex, the person tag can be written like this:

< person sex="female" > or like this:
< person sex='female' >

Note: If the attribute value itself contains double quotes it is necessary to use single quotes, like in this example:

< Inspector name='George "Rain" Abslum' >

Note: If the attribute value itself contains single quotes it is necessary to use double quotes, like in this example:

< Inspector name="George 'Rain' Abslum" >

Use of Elements vs. Attributes: Data can be stored in child elements or in attributes.

E.g. Take a look at these examples:

< firstname > Anna < /firstname >
lastname > Smith < /lastname >
< /person >
< person >
< sex > female < /sex >
< firstname > Anna > /firstname >
< lastname > Smith > /lastname >
< /person >

In the first example sex is an attribute. In the last, sex is a child element. Both examples provide the same information. There are no rules about when to use attributes, and when to use child elements. My experience is that attributes are handy in HTML, but in XML you should try to avoid them. Use child elements if the information feels like data.

E.g.Storing data in child elements.

The following three XML documents contain exactly the same information:
A date attribute is used in the first example:
< note date="12/11/2002" >
< to > Tove < /to >
< from>Jani < /from >
< heading>Reminder < /heading >
< body>Don't forget me this weekend! < /body >
< /note >

A date element is used in the second example:

< note >
< date > 12/11/2002 < /date >
< to > Tove < /to >
< from>JaniReminder < /heading >
< body>Don't forget me this weekend! < /body >
< /note >
An expanded date element is used in the third: (THIS IS MY FAVORITE):

< note >
< date >
< day > 12 < /day >
< month > 11 < /month >
< year > 2002 </year >
< /date >
< to > Tove < /to >
< from > Jani < /from >
< heading > Reminder < /heading >
< body >Don't forget me this weekend! < /body >
< /note >

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, etc)
  • 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: < stud_name >, < stud_age > .


Avoid "-" and "." in names. For example, if you name something "first-name," it could be a mess if your software tries to subtract name from first. Or if you name something "first.name," your software may think that "name" is a property of the object "first." Element names can be as long as you like, but don't exaggerate. Names should be short and simple, like this:



< Thesis_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).

Sunday, September 26, 2010

Just quick recap

I am sure you must be able to answer following questions:


1. How XML differs from HTML?
2. What is advantage of XML?

Difference between HTML and XML

You need to understand that you will not use XML for replacing HTML. Both XML and HTML have been designed for different goals which can be summarized as follows:


a. XML is designed specifically for describing and structuring the data where as HTML is used for formatting and displaying the data.

b. XML is focused on defining data with its attributes. It basically tells what data is all about. HTML is focused on presentation of data and is used to customize looks of data.

c. In case of HTML Document tags to be used and the structure of the documents are predefined. While using HTML you can only use tags which are pre-defined in the HTML standards. In case of XML you can define your own tags and develop your own document structure.

d. An XML document is saved with an extension .XML whereas an HTML document is saved as .HTML.

E.g. The following example is an e-mail from Ram to Shyam stored as XML

< email >
< to > Ram </to >
< from > Shyam < /from >
< subject > Hi how are you? </subject >
< content > Let’s go for a New Year party </content >
< /email >

In above example e-mail has been stored using XML markup language. You can see that own tags have been created to store the names of sender and receiver. Similarly different tags have been created to store the subject and content of the web page.

CHARACTERISTICS OF XML

XML stands for ‘Extensible Markup Language’. It is a general-purpose specification which is commonly used for creating custom markup languages. It is an extensible language as it provides its users an ability to define their own elements. Thus it enables users to create custom tags that suit their requirement. XML has been primarily developed to information systems share their structured data online. It can be used to encode documents as well as to serialize data so that it can be efficiently used. Some of the features of XML have been summarized below:
1. XML can be understood as an extensible language which is freely available.
2. XML tags are user made tags. They are not predefined tags. In case of HTML predefined tags are used (like < p >, < h1 > etc.). While using XML users can define custom tags and develop document structure as per their requirement.
3. XML is not a replacement for HTML. It is actually a complement to HTML. Both scripting languages have their own purpose. As web is developing XML is being popularly used to describe and structure the data where as HTML is being be used for formatting and displaying the data.


4. XML has been inherited from SGML


Let us define SGML


SGML:SGML implies Standard Generalized Markup Language. SGML is an ISO standard that defines an extremely powerful markup language. It is popularly used in the publishing industry and large manufacturing companies. It is a meta language used for creating other markup languages such as HTML. It marks the origin of XML.




XML

XML can be understood as markup language like the Hypertext Markup Language (HTML) which is commonly used for scripting web page. XML is specifically designed to describe data so that it can be effectively stored online. Web today contains such vast information. XML enables structuring of data so that it can then be mined to get suitable information. In case of XML unlike HTML there are no predefined tags. XML can also be called as self-descriptive markup language as users need to define their on tags.

For better understanding check out the example below:

Suppose you are storing information about a set of books. You may store the information in html as follows:

Book.html

< html >
< head > < title > Storing Information < /title >
< body >
< p > Linear Programming by A.S. Bajaj

< p > Marketing Research by Kotler

< /body >
< /html >

Book.xml

< catalog >
< book >
< title > Linear Programming < title >
< author > A.S Bajaj </author >
< /book >
< book >
< title > <Marketing Research="" <br=""> < author > Kotler < /author > <br /> < /book > <br /> < /catalog > <br /> <br /> In the above example you can see that you can easily define data in an XML file. The file shows that a catalogue of books is being developed which contains title and author detail of the book. You can see that XML the file size in XML is more then the other file size. You may feel that XML will loss in efficiency those results from this increased size. However XML makes this loss by speeding up the processing of a well-defined XML file. The way you interpret an html file is dependent on the pre-defined tags available in html. In contrast XML file tags are user defined and represent a piece of information in a hierarchical manner. Such kind of data which describes is also called metadata. Such data provides great strength to XML as it provides ability for creating own specifications and structure the data in the way you want it to be interpreted by any other system.

Introduction to XML

Dear Students


In this an subsequent posts we will read about XML. We will be covering following topics in XML.



• List the applications and advantages of XML
• Create well-formed and valid XML documents.
• Make a XHTML document.
• Create XM DTD
• Use XSL for transforming XML data and display it in a Web browser.
• Apply data binding and the Document Object Model for displaying dynamic XML data in a Web browser.