Hi,
an "And" element is missing from the query (just below the Where) but maybe is it just a copy and paste problem:
<?xml version="1.0" encoding="utf-8" ?>
<root>
<list title="Contacts" relativeSiteUrl="/" tableName="results" useDisplayName="true">
<fields>Roles, Title, Last Name, First Name, Middle Name, Email, User Type, Affiliations, Address, City ,State/Province, ZIP/Postal Code, Business Phone, Company, Job Title, Deactivate, Created, Modified,Modified By, Source</fields>
<query>
<Where>
<And>
<And>
<Geq>
<FieldRef Name="Modified"/>
<Value Type="DateTime">@StartDate!</Value>
</Geq>
<Leq>
<FieldRef Name="Modified"/>
<Value Type="DateTime">@EndDate!</Value>
</Leq>
</And>
<Contains>
<FieldRef Name="Affiliations"/>
<Value Type="Text">@Affiliations!</Value>
</Contains>
</And>
</Where>
</query>
</list>
</root>
I have also removed the expandRecurrent attribute that will be ignored anyway (only used for recurring events in event lists).
Now for the date parameters, you should set your report's parameters to type "datetime" and the dates will be automatically converted as necessary for the query when running the report.
However, when running the report in the dataview, the parameter's dialog box that pops up will only let you enter parameters in string format. Therefore, in that case, you will have to specify the date in the format you mentioned: YYYY-MM-DDTHH:MM:SS.
Hope this clarifies. Let me know if you can't run the modified query.
Regards,