No, what I was looking for was a way of supplying a list of in-memory objects programmatically to the DocumentLayout class, rather than using an SQL query in the document itself to retrieve the record set. This seems to be what I was looking for:
DocumentLayout reportDocument = new DocumentLayout(pathToDPLXFile);
Query query1 = reportDocument.GetQueryById("Query1");
query1.OpeningRecordSet += (sender, e) => {
e.RecordSet = new EnumerableRecordSet(recordSet); };