CLEAR CLOSE TABLES ALL TEXT TO cDummyXML NOSHOW TEXTMERGE <?xml version = "1.0" encoding="Windows-1252" standalone="yes"?> <xsd:schema id="VFPDataSet" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> <xsd:element name="VFPDataSet" msdata:IsDataSet="true"> <xsd:complexType> <xsd:choice maxOccurs="unbounded"> <xsd:element name="someTable" minOccurs="0" maxOccurs="unbounded"> <xsd:complexType> <xsd:sequence> <xsd:element name="somefield"> <xsd:simpleType> <xsd:restriction base="xsd:string"> <xsd:maxLength value="10"/> </xsd:restriction> </xsd:simpleType> </xsd:element> </xsd:sequence> </xsd:complexType> </xsd:element> </xsd:choice> <xsd:anyAttribute namespace="http://www.w3.org/XML/1998/namespace" processContents="lax"/> </xsd:complexType> </xsd:element> </xsd:schema> ENDTEXT *** Wrap schema into Recordset tags *** cDummyXML = STUFF(cDummyXML, AT("?>", cDummyXML)+2, 0, "<VFPDataSet>") + "</VFPDataSet>" *** LOCAL oXA as XMLAdapter, oXT as XMLTable oXA=CREATEOBJECT("XMLAdapter") oXA.LoadXML(cDummyXML) FOR EACH oXT IN oXA.Tables oXT.ToCursor() SELECT (oXT.Alias) ?"Alias=",ALIAS() AFIELDS(aflds) DISPLAY MEMORY LIKE aflds NEXT>Beautiful, thanks Sergey! :o)