Getting through the basic functions in 10 steps.
These steps depend on each other. Afterwards you should know how the new features of the XML module are working.
0. Preperation
Create a new tab 'xmltest' and add a new XML module to it.
1. Check XSL transformation is working
Go to
Edit Module Configuration1.1. Select "file" as DataSourceType. Save the string
as
Test.xml and upload it.
1.2. Select "XSL Transformation" as rendering provider. Save
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform' >
<xsl:output method="xml" omit-xml-declaration="yes"/>
<xsl:param name="MyArg"/>
<xsl:template match="xml"><b>Hello World<xsl:if test="$MyArg">, <xsl:value-of select="$MyArg"/></xsl:if></b>
</xsl:template>
</xsl:stylesheet>
as
test.xsl and upload it as XSL source.
1.3. Click on
Update.
Hello World, should appear.
2. Testing Static XSL Parameter
Go to
Edit Module Configuration, add a new XSL parameter MyArg, type Static Value, value = "Tester"

Click on
Update,
Hello World, Tester should appear.
3. Test Search
Go to
Edit Module Configuration and expand
Advanced Options.
Set Allow Indexing to "only on next run". Click on
Update to save settings.
Perform a Index Run using Host->Search Admin->Re-index Content. Search for "Tester", your XML module should appear in the search result.*
4. Clear up search
Go to
Edit Module Configuration again, go to
Advanced Options. Allow Indexing should be set to "never". Your module is still inside the dnn index. Click on Clear Search Index to remove it. Search for "Tester" again, your module should not appear again on the result page.
5. Testing User Specific Parameter
Go to
Edit Module Configuration again, and expand the
Advanced Options once more.
Set Allow indexing to "Always".
Go back to the XSL settings, and alter the type of the MyArg parameter to Username.

Save the parameter first. Go to
Advanced Options ->Allow indexing should be set on never as the result now depends on the current user.
Save settings. The result should be "Hello World, Admin" or whoever you are.
6. Test Querystring pass through
Go to
Edit Module Configuration, go to the XSL parameter and alter the type of "MyArg" to "Pass-Through Query String".
Enter "qparam" in the value field. Save parameter and
Update.

Output should be "Hello World".
Now add a "qparam" querystring to the URL so it looks similar to this:
http://localhost/DotNetNuke3/udt/tabid/53/Default.aspx?qparam=My Friend
Output should be "Hello World, My Friend"
7. Test output as text file
Go to
Edit Module Configuration, go to
Advanced Options and set the output type to "link to a download".
Set Content type to "*.txt(text/plain)". Click
Update to save.
Click on Download.
This should result in a plain text file containing "<b>Hello World</b>".
8. Test output as xml file
Open
Edit Module Configuration again, expand
Advanced Options and set output type to as "link to a download". Set Content type to "*.xml (text/xml)". Save the changes.
Click on Download. This should result in the following XML output: "<b>Hello World</b>".
Copy URL to your clipboard.
Alter the URL, add the querystring parameter qparam again so that it will look like this:
http://localhost/DotNetNuke3/DesktopModules/XML/download.ashx?tabid=62&mid=381&qparam=My Friend
Note that it changes the XML result.
9. Working with a http source
This is for testing, it is not the common use case to queue XML modules!Add a new page/tab and add a new XML module inside.
Open
Edit Module Configuration, set the Data Source Type to Http Request and paste the address from the previous step into the location text box.

Upload the following as test2.xsl and select as your XSL script:
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform' >
<xsl:template match="/"><xsl:value-of select="b"/></xsl:template>
</xsl:stylesheet>
Click
Update to save.
This should result in an unbold "Hello world".
10. Working with dynamic http sources.
This is for testing, it is not the common use case to queue xml modules!Open
Edit Module Configuration again and add a Query string parameter for the XML source.
Name it qparam and set the Data Origin to UserName.

Save settings. The result should be "Hello World, Admin" or whoever you are.