Welp, finally found a use for XML, but it might as well just be ASCII for all I care. Didn't need to learn XSLT or XPath or whatever the freakin' heck.

Anyhow, it's persistent recordsets in Visual Basic 6/ADO with XML. I'd been following some red herring about MSPersist being required and installed or some such, but ADO 2.6, at least, seems to have what I'm looking for. Basically you're turning an ADO Recordset into attribute-heavy XML and then reading that into another RS.

Here's a sub I added to the mix for straight reading the XML file that's created in the first Sub, above:

Public Sub readRsFromXml()
On Error GoTo errHand
    Dim strTemp As String
    Dim i As Long
    Dim rst As ADODB.Recordset
    Set rst = New ADODB.Recordset
    
    'For sake of illustration, we specify all parameters
    rst.Open "c:\Pubs.xml", "Provider=MSPersist;", _
        adOpenForwardOnly, adLockBatchOptimistic, adCmdFile
    
    If Not (rst.EOF And rst.BOF) Then
        For i = 0 To rst.Fields.Count - 1
            strTemp = strTemp & rst.Fields(i).Name & vbTab & vbTab
        Next i
        strTemp = strTemp & vbNewLine
        
        rst.MoveFirst
        While Not rst.EOF
            For i = 0 To rst.Fields.Count - 1
                strTemp = strTemp & rst(i) & vbTab & vbTab
            Next i
            strTemp = strTemp & vbNewLine
            rst.MoveNext
        Wend
        
        Me.richOut.Text = strTemp
    End If
        
Exit Sub
errHand:
    MsgBox Err.Number & " :: " & Err.Description
End Sub


Note that to take this from a local file to a URL is pretty danged easy:

    'For sake of illustration, we specify all parameters
    'rst.Open "c:\Pubs.xml", "Provider=MSPersist;", _
    '    adOpenForwardOnly, adLockBatchOptimistic, adCmdFile
    
    rst.Open "http://myBox/adoXml.asp?state=IN", "Provider=MSPersist;", _
        adOpenForwardOnly, adLockBatchOptimistic, adCmdFile


Security options are left as an excercise for the reader. ;^) And the writer, for all that matters.