<?xml version="1.0" encoding="UTF-8"?>
<maxdQL version="0.1" name="ListATableWithAttributes" >
	<description>List the entries for a given table (with formatting)</description>
	
	<xfunction id="formatBrowseSimple" comment="formats a list of entries from a browse output">
		<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
			<xsl:output method="xml" encoding="ISO-8859-1" indent="no" omit-xml-declaration="yes"  media-type="text/html" />
			<xsl:template match="/">
				<resultSet>
					<xsl:for-each select="//browse/*">

                                         	<xsl:variable name="name" select="@Name"/>
						<item >
                                                 	<xsl:attribute name="Name">
	                                                	<xsl:value-of select="$name" />
	                                               	</xsl:attribute> 
                                                         <xsl:attribute name="Value">n.a.</xsl:attribute> 
                                                 </item>
                                                 <xsl:for-each select="*">
		                                        <xsl:variable name="nodeName" select="name()"/>
                                                 	<xsl:variable name="subName" select="@Name"/>
                                                         <!-- <namey ><xsl:value-of select="$nodeName" /></namey> -->
                                                          <xsl:choose>
								<xsl:when test="$nodeName = 'attribute'">
                                                                 	<item> 
	                                                                          <xsl:attribute name="Name">
	                                                                                  <xsl:value-of select="$subName" />
	                                                                          </xsl:attribute> 
	                                                                          <xsl:attribute name="Value">
	                                                                                  <xsl:value-of select="." />
	                                                                          </xsl:attribute> 
		                                                         </item>
                                                                 </xsl:when>
								<xsl:otherwise>
                                                                          <item>
	                                                                          <xsl:attribute name="Name">
	                                                                                  <xsl:value-of select="$nodeName" />
	                                                                          </xsl:attribute> 
	                                                                          <xsl:attribute name="Value">
	                                                                                  <xsl:value-of select="$subName" />
	                                                                          </xsl:attribute> 
		                                                         </item>
                                                                 
                                                                 </xsl:otherwise>
        							</xsl:choose>
                                                 	
                                         	</xsl:for-each>        
                                                          
					</xsl:for-each>
				</resultSet>
			</xsl:template>
		</xsl:stylesheet>
	</xfunction>
	
	<arguments type="user">  
		<var name="TableName" comment="the table name you wish to retrieve entries for" />
	</arguments>
	
	<query id="1" name="ListTable" comment="list entries in a table" type="maxdBrowse" >
		<table uref="user" name="TableName" />
		<action>browse</action>
		<ids>*</ids>
		<attributes>yes</attributes>
	</query>
	
	<query id="2" name="DisplayResults" type="export" >
		<table xref="formatBrowseSimple" processResultID="1" >
			<var uref="user" name="TableName" />
		</table>
	</query>

</maxdQL>
