Album Cover: Black Holes and Revelations

"Come ride with me through the veins of history. I'll show you a god who falls asleep on the job."
Muse / Knights of Cydonia

Posted on October 28, 2003 12:16 PM in XML
Warning: This blog entry was written two or more years ago. Therefore, it may contain broken links, out-dated or misleading content, or information that is just plain wrong. Please read on with caution.

On my way into work this morning I was thinking about xml and music, and I came up with an idea involving XML representation of music data, or more specifically ID3 information. One of the first things that came to mind is what the markup language would be called; I came up with MXML (pronounced "maximal").

While ID3 tags work great for applications that play music (e.g. Winamp), they don't quite provide the level of extensibility that XML does. While thinking up scenarios that would make use of MXML, the most poignant one that came to mind was web applications tieing into data that Internet radio stations might provide. So, for instance, a streaming radio station running on the Shoutcast network would provide web service access to their current playlist, or more specifically, their current playing song. With ID3 tag information available in XML form, other commercial websites or even more personal web applications like blogs could manipulate the information (I can think of many exciting possibilities involving the use of XPATH) for their own personal uses.

So, after realizing the potential of such a markup language, and after taking a long look at the type of information ID3v2 provides, I came up with the following example of what an MXML document might look like:

<?xml version="1.0" ?>
  <Title>Save You</Title>
  <Genre>Alt. Rock</Genre>
  <Comment />
  <Copyright>Sony 2002</Copyright>
  <EncodedBy />
  <Title>Riot Act</Title>
  <Name>Pearl Jam</Name>
  <OriginalArtist />
  <Composer />

You can also view the actual MXML document.

Using XML in such a useful way is exciting. It's even more exciting to me in this case because it involves music, and the meaningful exchange of music information between applications that may or may not know anything about the other. If you have any comments on the sample document I created or the idea of MXML in general, I would love to hear from you.

One final thing I should note is that I didn't do any online research before coming up with this idea. I'm guessing this has already been thought of, and perhaps even implemented. I may, eventually, do the research and see what has already been done. Who knows, if it hasn't been put into widespread use maybe I could spec it out and make "maximal" a reality. For now, though, it will remain nothing more than a pretty nifty idea.


No one has added any comments.

Post Comments

If you feel like commenting on the above item, use the form below. Your email address will be used for personal contact reasons only, and will not be shown on this website.


Email Address:



Check this box if you hate spam.