What a loaded question!
Here's the basics: XML is ascii text stuffed inside of tag where you make up the tag names. For example, here's a small table (3 records, 2 fields) represented in XML:
3
KIDS1
Children's Center Room #1
KID'S ROOM2
Children's Center Room #2
POD THREE
Pod Three
Every tag (except the XML one) was made up by me. I used the field names in this case. If you save this section in a text file with the extension .XML, you can point to it with IE5 and above and view it as a simple tree.
This is NOT the only way to encode records. You can add a LOT more to this simple example.
You can encode just about anything, not just recordsets, including function calls (a la SOAP):
MyFunction75Most people use a parser like the one Microsoft provides to read and write XML and allow you to work with it in object form:
oX=CreateObject("Microsoft.XMLDOM")
oX.load("test.xml")
?oX.xml
Check out
http://msdn.microsoft.com/xml/default.aspDTDs are document type definitions and describe the content. They can be part of the document or stored in another document. DTDs are kind of lame, don't look like XML and appear to be going away...
Schemas are replacing DTD. they are XML themselves and are a lot more powerful.
This is the tip of the iceburg...