Have you hit the wall of technical possibilites with HTML? Think that HTML and it's friends JavaScript and CSS can't handle what you have in mind? Then you might want to invest some time to learn about eXtensible Markup Lanugage, XML.
Markup lanugage is somewhat of a misnomer for XML, since it's not really a true markup language, such as HTML, which describes how information is displayed; this is so with HTML, where all the tags are designed to display content. XML, on the other hand, is a bit higher on the lanuage hierarchy; it's a "meta-language", a language which allows a programmer to create his/her own markup language.
XML is a seperate language, although designed to be compatable with HTML, and is not meant to be placed within HTML code, unlike CSS. XML is a seperate language all it's own, but as I said earlier, it's very compatable with HTML; that is because it's quite easy to convert HTML into XML.
This is because XML is a subset of SGML (Standard Generalized Markup Language), the mother tongue of HTML, as well as other lanugages. SGML is the mother of most markup languages; although it is the very versatile and very robust, it's also very difficult to write in. XML is better suited for the normal programmers because it retains most of the verstaility and robustness, while discarding much of the difficulty. XML being such is also very easy to convert to SGML.
Because of these connections to other languages, XML is easier to learn if you know either HTML or SGML.
XML can be an excellent and powerful alternative to HTML. XML is very precise, it's more versatile, and it's very complementary to many other lanuages. And with the ability for you to create a totally new language is also very appealing.
XML can do this because the language itself is aimed towards the creation of original DTDs, Document Type Definitions, and the use of them; DTDs in turn define the properties of elements. You don't have to create your own DTD; there are many out there on the web you can use.
You can think of XML as modular HTML, the DTD being the modular part. Swap DTDs, and you have essentially a whole new language. That is the power of XML; where HTML is a pre-defined markup lanugage created from SGML that an ordinary programmer cannot change, XML is a language where you can change the vocabluary of elements and tags at will, or even create your own.
XML shows plenty of potential as the next big thing for web developers. But XML is only in the recommendation phase; there is no official XML standard so far from the World Wide Web Consortium, the group that standardizes every aspect of the Internet protocol. You should probably wait a small while before commiting yourself completely to learning XML, since a commercial browser to use XML is not avalible yet; however, if you just can't wait to fool around with this new tool, there are betas of Internet Explorer and Netscape Navigator that will support some features of the XML "standard", and there are many small authoring applications.
XML is going to be joined by two additional "X" languages, XLL and XSL, eXtensible Linking Lanugage and eXtensible Style Language. These two represent a logical addition to XML; XLL allows for more advanced hyperlinking and XSL allows the addition of dynamic stylesheets, just as HTML has hyperlinks and CSS (Cascading Stylesheets). These two are even further from standardization.
However, if you're very anxious, (I know I am), there are many resources that you can research that will give you a better idea about this new and wonderful lanugage. Because of the tenuousness of XML, many of these sites are very technical, so it may be hard going to understand. But be assured, just as HTML gained poplularity, the explosion of simple-to-use resources grew exponentially.
Now armed with a vague knowledge of XML, you are perfectly well informed for the moment. But if you want to stay ahead of the hundreds, if not thousands, of other web developers, you should do some work. But if you're satisfied, it's okay to relax... for now. Good luck.