<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<!--
// // See license.txt for license information. // // schema_objectlist.xsl // // 7-Oct-2004 phamilton Created //
-->

<xsl:stylesheet xmlns:lit="urn:xmlliterate.schema" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
    <xsl:output method="text"/>
    <xsl:template name="newline">
        <xsl:text> </xsl:text>
    </xsl:template>
    <xsl:template name="depracated">
        <xsl:param name="object"/>
<!--
here is a list of all depracated members in schemas.
-->

        <xsl:if test="$object/lit:methods/*/lit:source">
            <xsl:text> "method/source" is depracated. Please use "returns" and "arguments" now.</xsl:text>
            <xsl:call-template name="newline"/>
        </xsl:if>
        <xsl:if test="$object/lit:members/*/lit:templatetype">
            <xsl:text> "member/templatetype" is depracated. Please use "reftype".</xsl:text>
            <xsl:call-template name="newline"/>
        </xsl:if>
        <xsl:if test="$object/lit:members/*/lit:forward_class">
            <xsl:text> "member/forward_class" is depracated. Please use "reftype".</xsl:text>
            <xsl:call-template name="newline"/>
        </xsl:if>
        <xsl:if test="$object/lit:members/*/lit:composite">
            <xsl:text> "member/composite" is depracated. Please use type names.</xsl:text>
            <xsl:call-template name="newline"/>
        </xsl:if>
    </xsl:template>
    <xsl:template name="object">
        <xsl:param name="object"/>
        <xsl:value-of select="$object/@name"/>
        <xsl:call-template name="newline"/>
        <xsl:call-template name="depracated">
            <xsl:with-param name="object" select="$object"/>
        </xsl:call-template>
        <xsl:if test="count($object/lit:derived/*) > 0">
            <xsl:for-each select="$object/lit:derived/*">
                <xsl:call-template name="object">
                    <xsl:with-param name="object" select="."/>
                </xsl:call-template>
            </xsl:for-each>
        </xsl:if>
        <xsl:if test="count($object/lit:fragment/*) > 0">
            <xsl:for-each select="$object/lit:fragment/*">
                <xsl:call-template name="object">
                    <xsl:with-param name="object" select="."/>
                </xsl:call-template>
            </xsl:for-each>
        </xsl:if>
    </xsl:template>
    <xsl:template match="/">
        <xsl:call-template name="object">
            <xsl:with-param name="object" select="lit:object"/>
        </xsl:call-template>
    </xsl:template>
</xsl:stylesheet>