So I am beginning to understand XML. It appears just like a simple flat file data system of which you'll view output using a server side language of your liking plus some parsing. I do not really begin to see the help to using XML over storing values inside a database and doing exactly the same type of parsing. I am talking about it might appear that databases could be faster.

What exactly is it possible to use XML that you simply can't/should not use a database? Is XML really that helpful?

What exactly is it possible to use XML that you simply can't/should not use a database? Is XML really that helpful?

XML is definitely an interchange format first of all. It enables you to definitely transport structured data between programs, servers, or people, and retain a typical parser and schema system.

XML obviously could be horribly misused or overused.

This would be to broad (i.e. you will find a lot of aspects by which they differ), yet primary reason behind XML isn't even about data storage. It had been designed as ultimate common platform for data exchange with defined rules how information is organised. Thus readOrcreate valid XML on nearly every platfrom and language.

XML is made to become more human readable. XML could be opened up easily inside a text editor and browse. Some XML visitors supports folding, that also aids in obtaining a hierarchical organization for your data.

If you are processing files this is a different story. I believe databases frequently have the choice of conveying to XML.

You are able to carry your datas in one type database to a different (example from MS-SQL to MySQL) by utilizing XML.

Or delivering datas from a credit card applicatoin to a different, which is often used on many web programs.

It can be quite helpful with this.

It is comparison of apples to oranges... You will find lots of usages of XML but it's not mainly employed for storing data. It's very loosely combined data structure when in comparison to databases.

One of the numerous usages of XML, that we encounter with often is swapping data in one program to a different. Since it is quite simple format it's possible to create an XML file in Java program along with other can parse(read) the xml file in VB/C#/Python/Cacao or other language.

One particular utilization of XML is Webservices where client programs can call(Execute) code dwelling on servers, where demands and response both of them are in XML.

So it's possible to state that strong feature of XML is interoperability.

Alternatively had databases mostly are employed for storing and locating data, databases are very effective to complete fast retrieval/insertion of values in tables where XML will hugely fail because more often than not XMLs need to be read serially instead of tables dwelling in databases.

XML can contain highly complex tree data structures that can't be easily symbolized in relational databases.

XML can also be helpful for representing documents (Word paperwork for instance or HTML).

The one thing that's so appealing about XML is it is very easy to create.

Python is a superb language for transforming text files into XML for instance.

XML versus databases is really a false dichotomy, since you can store XML in databases. Though so an easy XML document can often be employed for a credit card applicatoin that will otherwise have needed a database.

If you are coping with documents (like articles in technical journals) your main option is between XML plus some proprietary equivalent. This obviously may be the problem that XML was initially invented to resolve.

XML can also be used extensively for data texting. It replaced EDI and ASN.one in this role since it are designed for all of the complex data that EDI and ASN.1 are designed for, but is itself easier. More lately we have seen JSON overtaking a number of this role, specifically for "private" (as distinct from standardised) methods, because JSON now is easier still, and works more effectively with general-purpose programming languages.

XML, like every effective technology, has additionally been used extensively for problems where it is not really needed. That isn't a misuse, anymore than a misuse of the forum to transmit an ordinary text inside a area that's able to holding highly formatted text, in order to ride my bicycle on the road that's designed to consider 40ton lorries: when the technology is within place, you may as well utilize it.