Is it must that every developer should know XML? How important is XML for a developer? Any suggestion...
A good developer should know when it is appropriate to use XML and when it is not. This requires understanding the concepts behind it and the reasons for its use. That way you can make an informed decision on whether you need to utilise it in a specific scenario. But there's no reason to start learning the mechanics of XPATH, XSLT etc. and the finer points of syntax until you actually need to.
You should at least know the concept behind XML. Knowing the specifics isn't worth a damn if you don't understand why it's used in the first place. XML's approach to transporting data is by encasing it in tags like so:
<greeting>hi</greeting> but you're probably saying, what? Why's he all inventing HTML on me?
You know, some may not agree with me here, but I don't think it's a good idea to be calling yourself a developer and not knowing what XML is. It's just too common, too simple, and too easy to pickup any second now.
For example, you may spend 3 minutes reading these responses. But BAM, in those three minutes, I just read the introduction to XML at w3schools: http://www.w3schools.com/xml/xml_whatis.asp
Now I can let my bosses know that, hey, if you ever need some data transported... I'm the right guy to ask (sorta).
It is always good to know the different data formats like XMl, RRDBMS, CSV etc. Also it will be helpful to know basics of how it works, advantages and limitations of each. This will certainly help taking some important decisions at the design stage. In light of this I will say it is important for developers to know basics of the XML, XPATH, validations, dtd, xsl. But it will not be mandatory to know the low level implementation details.
XML is a tool, and like any tool it works better for some purposes than others. There is some debate about whether XML is the best tool for the purposes it's good at. My personal opinion is that JSON and s-expressions are both better alternatives for data interchange. In any case, knowing about XML as an option is a good thing.
XML is like a building block for a developer.
(1) In android application XML is the basic requirement to display graphical user interface. (2) In mobile applications like for iPhone and Blkackberry developer can use web service which is in xml format. (3) XML is easy to understand and very easy to learn. (4) XML gives structural information to display data.