- XML is a markup language used to encode documents that can be read by both humans and machines. It uses custom tags to describe the structure and features of the document.
- XML is different from HTML because it allows users to create their own markup symbols, making it extensible and self-defining.
- XML files are used as the basis for various document formats, including RSS, Microsoft .NET configuration files, and Microsoft Office files.
- XML files can be opened and edited with text editors, web browsers, online editors, and application-specific programs.
A file with the .xml file extension is an Extensible Markup Language (XML) file. These are really just plain text files that use custom tags to describe the structure and other features of the document.
What is XML?
XML is a markup language created by the World Wide Web Consortium (W3C) to define a syntax for encoding documents that both humans and machines could read. It does this through the use of tags that define the structure of the document, as well as how the document should be stored and transported.
It’s probably easiest to compare it to another markup language with which you might be familiar — the Hypertext Markup Language (HTML) used to encode web pages. HTML uses a pre-defined set of markup symbols (short codes) that describe the format of content on a web page. For example, the following simple HTML code uses tags to make some words bold and some italic:
This is how you make <b>bold text</b> and this is how you make <i>italic text</i>
The thing that differentiates XML, though, is that it’s extensible. XML doesn’t have a predefined markup language, like HTML does. Instead, XML allows users to create their own markup symbols to describe content, making an unlimited and self-defining symbol set.
Essentially, HTML is a language that focuses on the presentation of content, while XML is a dedicated data-description language used to store data.
What are XML Files Used For?
XML is often used as the basis for other document formats — hundreds, in fact. Here are a few you might recognize:
- RSS and ATOM both describe how reader apps handle web feeds.
- Microsoft .NET uses XML for its configuration files.
- Microsoft Office 2007 and later use XML as the basis for document structure. That’s what the “X” means in the .DOCX Word document format, for example, and it’s also used in Excel (XLSX files) and PowerPoint (PPTX files).
- Small databases
- UI Layouts in Android
- Application configuration files
So, if you have an XML file, that doesn’t necessarily tell you what app it’s intended for use with. And typically, you won’t need to worry about it, unless you’re the one actually designing the XML files.
How Do I Open an XML File?
There are a few ways you can open an XML file directly. You can open and edit XMLs with:
- Any text editor
- View them with any web browser
- Special websites that let you view, edit, and even convert them to other formats
- Application-specific programs
- Integrated Development Environments
- Microsoft Excel
Which of these you use depends on what you’re doing. A plain text editor is a reliable way to open any XML file, so if you only have to pick piece of software, do it that way.
Open XML Files with a Text Editor If You Work with XMLs Regularly
Since XML files are really just text files, you can open them in any text editor. The thing is, a lot of text editors — like Notepad — just aren’t designed to show XML files with their proper structure. It might be okay for popping an XML file open and taking a quick look to help figure out what it is. But, there are much better tools for working with them.
Right-click the XML file you want to open, point to “Open With” on the context menu, and then click the “Notepad” option.
We’re using Windows examples here, but the same holds true for other operating systems. Look for a good third-party text editor that is designed to support XML files.
The file does open, but it is a bit hard to read.
You’ll also frequently find that XMLs opened in Notepad lose most of their formatting and the entire thing winds up crammed onto just two lines of the document.
So, while Notepad might be useful for quickly checking out an XML file, you’re much better off with a more advanced tool like Visual Studio Code, which highlights syntax and formats the file the way it’s intended.
Here is the same XML file opened in VS Code:
Open XMLs With a Web Browser to View the Structured Data
If don’t really need to edit XML files, but just need to view them on occasion, the browser you’re using to read this article is well-suited to the job. And in fact, your default web browser is likely set up as the default viewer for XML files. So, double-clicking an XML file should open it in your browser.
If not, you can right-click the file to find options for opening it with whatever app you want. Just select your web browser from the list of programs. We’re using Chrome in this example.
When the file opens, you should see nicely-structured data. It’s not as pretty as the color-coded view you get with something like Notepad++, but it’s a far sight better than what you get with Notepad.
Use An Online Editor to View or Edit XML Files
If want to edit the occasional XML file and don’t want to download a new text editor, or if you need to convert an XML file to another format, there are a few decent online XML editors available for free. TutorialsPoint.com, XMLGrid.net, and CodeBeautify.org all let you view and edit XML files. After you’ve done your editing, you can download the reformatted XML file.
For the example here, we’ll be using CodeBeautify.org. The page is divided into three sections. On the left is the XML file you’re working with. In the middle, you’ll find several options. On the right, you’ll see the results of some of the options you can select. For example, in the image below, our full XML file is on the left and the tree view is showing in the results pane because we clicked the “Tree View” button in the middle.
Here’s a better look at those options. Use the “File” button to upload an XML file from your computer or the “URL” button to pull XML from an online source.
The “Tree View” button displays your data in a nicely formatted tree structure in the results pane, with all your tags on the left in orange and the attributes to the right of the tags.
The “Beautify” displays your data in neat, easy-to-read lines in the results pane.
The “Minify” button displays your data using the least amount of white space possible. It will attempt to put every single piece of data on one line. This comes in handy when trying to make the file smaller. It will save some space, but at the cost of being able to read it effectively. What you actually see is also variable, and depends on your screen’s resolution and the size of your browser window.
And finally, you can use the “to JSON” button to convert the XML to JSON format, the “to CSV” button to save your data as a comma-separated values file, or the “Download” button to download any changes you’ve made as a new XML file.