<!-- <options version="1.0"> --><!-- <local-props-only /> -->
<!-- 	<object name="Model"> -->
<!-- 		<properties> -->
<!-- 			<property name="Name" /> -->
<!-- 			<property name="Definition" /> -->
<!-- 			<property name="Author" /> -->
<!-- 		</properties> -->
<!-- 		<children> -->
<!-- 			<object name="Table"> -->
<!-- 				<properties> -->
<!-- 					<property name="Name" /> -->
<!-- 				</properties> -->
<!-- 				<children> -->
<!-- 					<object name="Column"> -->
<!-- 						<properties> -->
<!-- 							<property name="Name" /> -->
<!-- 							<property name="Datatype" /> -->
<!-- 						</properties> -->
<!-- 					</object> -->
<!-- 				</children> -->
<!-- 			</object> -->
<!-- 		</children> -->
<!-- 	</object> -->
<!-- </options> -->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  <xsl:key name="IDs" match="*" use="@id"/>
<xsl:template match="/">
  <html  xmlns="http://www.w3.org/1999/xhtml">
		<head>
			<title>Table/Columns Report</title>
      <script type="text/javascript">
        // <![CDATA[
        function toggle(element, togimg) {
          if (element.style.display == 'none') {
            element.style.display = 'block';
            togimg.src="images/collapse.gif";
          }
          else {
            element.style.display = 'none';
            togimg.src="images/expand.gif";
          }
        }
        // ]]>
      </script>
		</head>
      <STYLE>
        BODY
        {
        font-family:Arial;
        background-image: url(images/background.gif);
        }
        TD
        {
        font-size: 80%;
        background-color: #EEEEEE;
        vertical-align: top;
        }
        H1   { border-bottom: #000099 thick solid; }
        img { border-width: 0px; }
        .sqlcode
        {
        font-family: system;
        font-size: 70%;
        }
        .CommonHeader
        {
        color: #666666;
        font-size: 130%;
        font-weight: bold;
        font-family: Tahoma, Arial, Helvetica;
        padding: 0px;
        margin: 0px;
        margin-top: 8px;
        }
        a:link, a:visited
        {
        color: #4444BF;
        text-decoration: none;
        }
        .header-table, .header-table TD, .header-table TH
        {
        background-color: #92B2F2;
        color: black;
        border-width: 0px;
        font-family:sans-serif;
        font-weight:600;
        vertical-align:middle;
        }
        .TablesHeader
        {
        color: white;
        background-color: #000099;
        }
        .TableHeading
        {
        border-bottom: #000099 solid;
        }
        pre
        {
        border: solid 1px #666666;
        background-color: #f2f2f2;
        }
        .pre
        {
        border: solid 1px #666666;
        background-color: #f2f2f2;
        }
        pre2
        {
        border: solid 1px #666666;
        background-color: #f2f2f2;
        }

      </STYLE>
      <body>
        <table cellpadding="10px" class="header-table" style="border-width: 5; border-color: #000099; border-style:solid;">
          <tr>
            <td width="100px">
            </td>
            <td style="font-size:110%">
              This reporting template displays all Table Columns that do not inherit their datatype from a Domain.
            </td>
            <td width="200px">
              <img src="images/ModelRight.gif" align="right" height="100px"/>
            </td>
          </tr>
        </table>
        <br/>

      <xsl:text>&#xA;</xsl:text>
      <h1 class="TableHeading">
        <img src="images/model.gif" height="25"/>
        <xsl:text>  </xsl:text>
        <a name="{model/@id}">
          <xsl:value-of select="model/model-properties/model.name" />
        </a>
      </h1>
      <xsl:if test="model/model-properties/model.author">
        <span class="CommonHeader">Author: </span>
            <xsl:value-of select="model/model-properties/model.author" />
      </xsl:if>
      <xsl:if test="model/model-properties/model.company">
        <br/>
        <br/>
        <span class="CommonHeader">Company: </span>
            <xsl:value-of select="model/model-properties/model.company" />
      </xsl:if>
      <xsl:if test="model/@timestamp">
        <br/>
        <br/>
        <span class="CommonHeader">Generated: </span>
        <xsl:value-of select="model/@timestamp" />
      </xsl:if>
      <xsl:if test="model/model-properties/model.definition">
        <br/>
        <br/>
        <span class="CommonHeader">Definition</span>
        <div class="pre">
          <xsl:value-of select="model/model-properties/model.definition" />
        </div>
      </xsl:if>
      <br/>
      <br/>
      <span class="CommonHeader">Table Columns with local datatypes:</span>
      <xsl:if test ="/model/model-children/table">
        <table>
          <xsl:call-template name="column-header"/>
          <xsl:apply-templates select="/model/model-children/table">
            <xsl:sort select="table-properties/table.name"/>
          </xsl:apply-templates>
        </table>
      </xsl:if>
    </body>
  </html>
</xsl:template>

<xsl:template match="table">
    <xsl:apply-templates select="table-children/column[column-properties/column.datatype]"/>
 </xsl:template>

  <xsl:template name="column-header">
    <xsl:text>&#xA;&#x9;</xsl:text>
    <tr>
      <xsl:text>&#xA;&#x9;&#x9;</xsl:text>
      <th class="TablesHeader" align="center">
        <xsl:text>&#xA;&#x9;&#x9;&#x9;</xsl:text>
        Table
      </th>
      <th class="TablesHeader" align="center">
        <xsl:text>&#xA;&#x9;&#x9;&#x9;</xsl:text>
        Column
      </th>
      <th class="TablesHeader">
        <xsl:text>&#xA;&#x9;&#x9;&#x9;</xsl:text>
        Datatype
      </th>
    </tr>
  </xsl:template>

<xsl:template match="table-children/column">
    <xsl:variable name="col-id" select="@id"/>
    <xsl:text>&#xA;&#x9;</xsl:text>
    <tr>
      <xsl:text>&#xA;&#x9;&#x9;&#x9;</xsl:text>
      <td valign="top">
        <xsl:value-of select="../../table-properties/table.name" />
      </td>
      <xsl:text>&#xA;&#x9;&#x9;&#x9;</xsl:text>
      <td valign="top">
        <xsl:value-of select="column-properties/column.name" />
      </td>
      <xsl:text>&#xA;&#x9;&#x9;&#x9;</xsl:text>
      <td>
        <xsl:variable name="type-elem" select="key('IDs', column-properties/column.datatype/@reference-id)"/>
        <xsl:choose>
          <xsl:when test="column-properties/column.datatype/@property-as-string">
            <xsl:value-of select="column-properties/column.datatype/@property-as-string" />
          </xsl:when>
          <xsl:when test="$type-elem and not($type-elem/type-properties/type.builtin)">
            <xsl:value-of select="column-properties/column.datatype" />
          </xsl:when>
          <xsl:otherwise>
            <xsl:value-of select="column-properties/column.datatype" />
          </xsl:otherwise>
        </xsl:choose>
      </td>
    </tr>
</xsl:template>
</xsl:stylesheet>
