795 lines
22 KiB
HTML
Executable file
795 lines
22 KiB
HTML
Executable file
<?xml version="1.0" encoding="UTF-8" ?>
|
|
|
|
<xsl:stylesheet version="1.0"
|
|
xmlns="http://bowyer.journeyman.cc/adl/1.4.1/"
|
|
xmlns:adl="http://bowyer.journeyman.cc/adl/1.4.1/"
|
|
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
|
|
<xsl:output encoding="UTF-8" method="xml" indent="yes" />
|
|
|
|
<xsl:param name="locale" select="en-GB"/>
|
|
|
|
<xsl:param name="css-stylesheet"
|
|
select="'http://libs.cygnets.co.uk/adl/unstable/ADL/documentation.css'"/>
|
|
|
|
<xsl:param name="detail" select="full"/>
|
|
|
|
<xsl:template match="adl:application">
|
|
<html>
|
|
<head>
|
|
<title>
|
|
Data definition for the <xsl:value-of select="@name"/> application
|
|
version <xsl:value-of select="@version"/>
|
|
</title>
|
|
<xsl:if test="$css-stylesheet">
|
|
<link rel="stylesheet" type="text/css">
|
|
<xsl:attribute name="href">
|
|
<xsl:value-of select="$css-stylesheet"/>
|
|
</xsl:attribute>
|
|
</link>
|
|
</xsl:if>
|
|
</head>
|
|
<body>
|
|
<a name="top"/>
|
|
<h1>
|
|
Data definition for the '<xsl:value-of select="@name"/>' application version <xsl:value-of select="@version"/>
|
|
</h1>
|
|
<xsl:if test="@revision">
|
|
<p>
|
|
<strong>
|
|
Generated from <xsl:value-of select="substring( @revision, 2, string-length( @revision) - 2)"/> of the ADL specification.
|
|
</strong>
|
|
</p>
|
|
</xsl:if>
|
|
<xsl:apply-templates select="adl:documentation"/>
|
|
<h2>Contents</h2>
|
|
<dl>
|
|
<dt>Entities</dt>
|
|
<dd>
|
|
<dl>
|
|
<xsl:for-each select="adl:entity">
|
|
<dt>
|
|
<a>
|
|
<xsl:attribute name="href">
|
|
<xsl:value-of select="concat( '#entity-', @name)"/>
|
|
</xsl:attribute>
|
|
<xsl:value-of select="@name"/>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
<xsl:value-of select="adl:documentation"/>
|
|
</dd>
|
|
</xsl:for-each>
|
|
</dl>
|
|
</dd>
|
|
<dt>Defined types</dt>
|
|
<dd>
|
|
<dl>
|
|
<xsl:for-each select="adl:typedef">
|
|
<dt>
|
|
<a>
|
|
<xsl:attribute name="href">
|
|
<xsl:value-of select="concat( '#typedef-', @name)"/>
|
|
</xsl:attribute>
|
|
<xsl:value-of select="@name"/>
|
|
</a>
|
|
</dt>
|
|
</xsl:for-each>
|
|
</dl>
|
|
</dd>
|
|
<dt>Security groups</dt>
|
|
<dd>
|
|
<dl>
|
|
<xsl:for-each select="adl:group">
|
|
<dt>
|
|
<a>
|
|
<xsl:attribute name="href">
|
|
<xsl:value-of select="concat( '#group-', @name)"/>
|
|
</xsl:attribute>
|
|
<xsl:value-of select="@name"/>
|
|
</a>
|
|
</dt>
|
|
</xsl:for-each>
|
|
</dl>
|
|
</dd>
|
|
</dl>
|
|
<hr/>
|
|
<h2>Entities</h2>
|
|
<xsl:apply-templates select="adl:entity"/>
|
|
<hr/>
|
|
<h2>
|
|
Type Definitions
|
|
</h2>
|
|
<xsl:apply-templates select="adl:typedef"/>
|
|
<hr/>
|
|
<h2>Security groups</h2>
|
|
<xsl:apply-templates select="adl:group"/>
|
|
</body>
|
|
</html>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="adl:entity">
|
|
<hr/>
|
|
<a>
|
|
<xsl:attribute name="name">
|
|
<xsl:value-of select="concat( 'entity-', @name)"/>
|
|
</xsl:attribute>
|
|
</a>
|
|
<h3>
|
|
<xsl:value-of select="@name" />
|
|
</h3>
|
|
<xsl:apply-templates select="adl:documentation"/>
|
|
<h4>Access control</h4>
|
|
<table>
|
|
<tr>
|
|
<th>Group</th>
|
|
<th>Permission</th>
|
|
</tr>
|
|
<xsl:for-each select="adl:permission">
|
|
<tr>
|
|
<td>
|
|
<a>
|
|
<xsl:attribute name="href">
|
|
<xsl:value-of select="concat( '#group-', @group)"/>
|
|
</xsl:attribute>
|
|
<xsl:value-of select="@group"/>
|
|
</a>
|
|
</td>
|
|
<td>
|
|
<xsl:value-of select="@permission"/>
|
|
</td>
|
|
</tr>
|
|
</xsl:for-each>
|
|
</table>
|
|
<h4>User interface</h4>
|
|
<ul>
|
|
<xsl:for-each select="adl:page|adl:list|adl:form">
|
|
<li>
|
|
<a>
|
|
<xsl:attribute name="href">
|
|
<xsl:value-of select="concat( '#page-', ancestor::adl:entity/@name, '-', @name)"/>
|
|
</xsl:attribute>
|
|
<xsl:value-of select="@name"/>
|
|
</a>
|
|
</li>
|
|
</xsl:for-each>
|
|
</ul>
|
|
<h4>Properties</h4>
|
|
<table>
|
|
<tr class="header">
|
|
<th>Property</th>
|
|
<th>Type</th>
|
|
<xsl:if test="not( $detail) or $detail = 'full'">
|
|
<th>Req'd</th>
|
|
<th>Def'lt</th>
|
|
<th>Size</th>
|
|
<th>Distinct</th>
|
|
<th>Prompt</th>
|
|
<th>Security overrides</th>
|
|
</xsl:if>
|
|
</tr>
|
|
<xsl:apply-templates select=".//adl:property" />
|
|
</table>
|
|
<xsl:apply-templates select="adl:form"/>
|
|
<xsl:apply-templates select="adl:list"/>
|
|
<xsl:apply-templates select="adl:page"/>
|
|
<a href="#top">[back to top]</a>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="adl:property">
|
|
<xsl:variable name="rowclass">
|
|
<xsl:choose>
|
|
<xsl:when test="position() mod 2 = 0">even</xsl:when>
|
|
<xsl:otherwise>odd</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:variable>
|
|
<tr>
|
|
<xsl:attribute name="class">
|
|
<xsl:value-of select="$rowclass"/>
|
|
</xsl:attribute>
|
|
<a>
|
|
<xsl:attribute name="name">
|
|
<xsl:value-of select="concat( 'property-', ancestor::adl:entity/@name, '-', @name)"/>
|
|
</xsl:attribute>
|
|
</a>
|
|
<th>
|
|
<xsl:value-of select="@name"/> 
|
|
</th>
|
|
<td>
|
|
<xsl:value-of select="@type"/>
|
|
<xsl:choose>
|
|
<xsl:when test="@type='entity'">
|
|
of type <a>
|
|
<xsl:attribute name="href">
|
|
<xsl:value-of select="concat( '#entity-', @entity)"/>
|
|
</xsl:attribute>
|
|
<xsl:value-of select="@entity"/>
|
|
</a>
|
|
</xsl:when>
|
|
<xsl:when test="@type = 'link'">
|
|
(many to many) to entities of type <a>
|
|
<xsl:attribute name="href">
|
|
<xsl:value-of select="concat( '#entity-', @entity)"/>
|
|
</xsl:attribute>
|
|
<xsl:value-of select="@entity"/>
|
|
</a>
|
|
</xsl:when>
|
|
<xsl:when test="@type = 'list'">
|
|
<xsl:choose>
|
|
<xsl:when test="@required='true'">
|
|
(one to one-or-many)
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
(one to zero-or-many)
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
of entities of type <a>
|
|
<xsl:attribute name="href">
|
|
<xsl:value-of select="concat( '#entity-', @entity)"/>
|
|
</xsl:attribute>
|
|
<xsl:value-of select="@entity"/>
|
|
</a>
|
|
</xsl:when>
|
|
<xsl:when test="@type='defined'">
|
|
as <a>
|
|
<xsl:attribute name="href">
|
|
<xsl:value-of select="concat( '#typedef-', @typedef)"/>
|
|
</xsl:attribute>
|
|
<xsl:value-of select="@typedef"/>
|
|
</a>
|
|
</xsl:when>
|
|
</xsl:choose>
|
|
</td>
|
|
<xsl:if test="not( $detail) or $detail = 'full'">
|
|
<td>
|
|
<xsl:value-of select="@required"/> 
|
|
</td>
|
|
<td>
|
|
<xsl:value-of select="@default"/> 
|
|
</td>
|
|
<td>
|
|
<xsl:value-of select="@size"/> 
|
|
</td>
|
|
<td>
|
|
<xsl:value-of select="@distinct"/> 
|
|
</td>
|
|
<td>
|
|
<xsl:apply-templates select="adl:prompt"/> 
|
|
</td>
|
|
<td>
|
|
<dl>
|
|
<xsl:for-each select="adl:permission">
|
|
<dt>
|
|
<a>
|
|
<xsl:attribute name="href">
|
|
<xsl:value-of select="concat( '#group-', @group)"/>
|
|
</xsl:attribute>
|
|
<xsl:value-of select="@group"/>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
<xsl:value-of select="@permission"/>
|
|
</dd>
|
|
</xsl:for-each>
|
|
</dl>
|
|
</td>
|
|
</xsl:if>
|
|
</tr>
|
|
<xsl:if test="adl:option">
|
|
<tr>
|
|
<xsl:attribute name="class">
|
|
<xsl:value-of select="$rowclass"/>
|
|
</xsl:attribute>
|
|
<td>
|
|
<xsl:attribute name="rowspan">
|
|
<xsl:value-of select="count( adl:option)"/>
|
|
</xsl:attribute>
|
|
Options:
|
|
</td>
|
|
<td colspan="7">
|
|
<xsl:apply-templates select="adl:option[ position()=1]"/>
|
|
</td>
|
|
<xsl:for-each select="adl:option[position() > 1]">
|
|
<tr>
|
|
<xsl:attribute name="class">
|
|
<xsl:value-of select="$rowclass"/>
|
|
</xsl:attribute>
|
|
<td colspan="7">
|
|
<xsl:apply-templates select="."/>
|
|
</td>
|
|
</tr>
|
|
</xsl:for-each>
|
|
</tr>
|
|
</xsl:if>
|
|
<xsl:if test="adl:help">
|
|
<tr>
|
|
<xsl:attribute name="class">
|
|
<xsl:value-of select="$rowclass"/>
|
|
</xsl:attribute>
|
|
<td>
|
|
<td>Helptext:</td>
|
|
<td>
|
|
<xsl:attribute name="colspan">
|
|
<xsl:choose>
|
|
<xsl:when test="$detail='full'">7</xsl:when>
|
|
<xsl:otherwise>2</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:attribute>
|
|
<xsl:apply-templates select="adl:help"/>
|
|
</td>
|
|
</td>
|
|
</tr>
|
|
</xsl:if>
|
|
<xsl:if test="adl:documentation">
|
|
<tr>
|
|
<xsl:attribute name="class">
|
|
<xsl:value-of select="$rowclass"/>
|
|
</xsl:attribute>
|
|
<td>Documentation:</td>
|
|
<td>
|
|
<xsl:attribute name="colspan">
|
|
<xsl:choose>
|
|
<xsl:when test="$detail='full'">7</xsl:when>
|
|
<xsl:otherwise>2</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:attribute>
|
|
<xsl:apply-templates select="adl:documentation"/>
|
|
</td>
|
|
</tr>
|
|
</xsl:if>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="adl:typedef">
|
|
<hr/>
|
|
<a>
|
|
<xsl:attribute name="name">
|
|
<xsl:value-of select="concat( 'typedef-', @name)"/>
|
|
</xsl:attribute>
|
|
</a>
|
|
<h3>
|
|
<xsl:value-of select="@name" />
|
|
</h3>
|
|
<p>
|
|
<xsl:choose>
|
|
<xsl:when test="@type = 'string'">
|
|
String matching
|
|
"<xsl:value-of select="@pattern"/>"
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<xsl:value-of select="@minimum"/> <
|
|
<xsl:value-of select="@typedef"/> <
|
|
<xsl:value-of select="@maximum"/>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</p>
|
|
<xsl:apply-templates select="adl:documentation"/>
|
|
<a href="#top">[back to top]</a>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="adl:group">
|
|
<hr/>
|
|
<a>
|
|
<xsl:attribute name="name">
|
|
<xsl:value-of select="concat( 'group-', @name)"/>
|
|
</xsl:attribute>
|
|
</a>
|
|
<h3>
|
|
<xsl:value-of select="@name" />
|
|
</h3>
|
|
<xsl:apply-templates select="adl:documentation"/>
|
|
<a href="#top">[back to top]</a>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="adl:prompt">
|
|
<!-- If I'm the prompt for the current locale, show me;
|
|
if I'm the default prompt, show me only if there isn't
|
|
one for the default locale -->
|
|
<xsl:choose>
|
|
<xsl:when test="not($locale) and @locale='en-GB'">
|
|
<!-- something's not right with the locale parameter? -->
|
|
<xsl:apply-templates/>
|
|
</xsl:when>
|
|
<xsl:when test="@locale=$locale">
|
|
<xsl:value-of select="@prompt"/>
|
|
</xsl:when>
|
|
<xsl:when test="@locale='default'">
|
|
<xsl:choose>
|
|
<xsl:when test="../adl:prompt[@locale=$locale]"/>
|
|
<xsl:otherwise>
|
|
<xsl:value-of select="@prompt"/>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:when>
|
|
</xsl:choose>
|
|
<xsl:apply-templates/>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="adl:help">
|
|
<!-- If I'm the helptext for the current locale, show me;
|
|
if I'm the default helptext, show me only if there isn't
|
|
one for the default locale -->
|
|
<xsl:choose>
|
|
<xsl:when test="not($locale) and @locale='en-GB'">
|
|
<!-- something's not right with the locale parameter? -->
|
|
<xsl:apply-templates/>
|
|
</xsl:when>
|
|
<xsl:when test="@locale=$locale">
|
|
<xsl:apply-templates/>
|
|
</xsl:when>
|
|
<xsl:when test="@locale='default'">
|
|
<xsl:choose>
|
|
<xsl:when test="../adl:help[@locale=$locale]"/>
|
|
<xsl:otherwise>
|
|
<xsl:apply-templates/>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:when>
|
|
</xsl:choose>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="adl:documentation">
|
|
<div class="documentation">
|
|
<xsl:value-of select="."/>
|
|
<xsl:if test="adl:reference">
|
|
<h5>See also</h5>
|
|
<ul>
|
|
<xsl:apply-templates select="adl:reference"/>
|
|
</ul>
|
|
</xsl:if>
|
|
</div>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="adl:reference">
|
|
<xsl:variable name="abbr" select="@abbr"/>
|
|
<xsl:variable name="specification" select="/adl:application/adl:specification[@abbr=$abbr]"/>
|
|
<li>
|
|
<xsl:choose>
|
|
<xsl:when test="@entity">
|
|
<a>
|
|
<xsl:attribute name="href">
|
|
<xsl:value-of select="concat('#',@entity)"/>
|
|
</xsl:attribute>
|
|
<xsl:value-of select="@entity"/>
|
|
<xsl:if test="@property">
|
|
: <xsl:value-of select="@property"/>
|
|
</xsl:if>
|
|
</a>
|
|
</xsl:when>
|
|
<xsl:when test="$specification/@url">
|
|
<a>
|
|
<xsl:attribute name="href">
|
|
<xsl:choose>
|
|
<xsl:when test="@section">
|
|
<xsl:value-of select="concat( $specification/@url, @section)"/>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<xsl:value-of select="$specification/@url"/>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:attribute>
|
|
<xsl:value-of select="$specification/@name"/>:
|
|
<xsl:if test="@section">
|
|
<xsl:value-of select="@section"/>:
|
|
</xsl:if>
|
|
</a>
|
|
<xsl:apply-templates/>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<xsl:value-of select="$specification/@name"/>:
|
|
<xsl:if test="@section">
|
|
<xsl:value-of select="@section"/>:
|
|
</xsl:if>
|
|
<xsl:apply-templates/>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</li>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="adl:form">
|
|
<div class="form">
|
|
<a>
|
|
<xsl:attribute name="name">
|
|
<xsl:value-of select="concat('page-', ancestor::adl:entity/@name, '-', @name)"/>
|
|
</xsl:attribute>
|
|
</a>
|
|
<h4>
|
|
Form '<xsl:value-of select="@name"/>' of entity
|
|
<a>
|
|
<xsl:attribute name="href">
|
|
<xsl:value-of select="concat('#entity-', ancestor::adl:entity/@name)"/>
|
|
</xsl:attribute>
|
|
<xsl:value-of select="ancestor::adl:entity/@name"/>
|
|
</a>
|
|
</h4>
|
|
<xsl:if test="adl:permission">
|
|
<h5>Permissions</h5>
|
|
<ul>
|
|
<xsl:apply-templates select="permission"/>
|
|
</ul>
|
|
</xsl:if>
|
|
<xsl:choose>
|
|
<xsl:when test="@properties='listed'">
|
|
<p>Showing the following properties</p>
|
|
<table>
|
|
<tr>
|
|
<th> </th>
|
|
<th>Property</th>
|
|
<th>Prompt</th>
|
|
<th>Documentation</th>
|
|
</tr>
|
|
<xsl:apply-templates select="adl:field|adl:fieldgroup|adl:auxlist|adl:verb"/>
|
|
</table>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<p>Showing all properties</p>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</div>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="adl:page">
|
|
<div class="page">
|
|
<a>
|
|
<xsl:attribute name="name">
|
|
<xsl:value-of select="concat('page-', ancestor::adl:entity/@name, '-', @name)"/>
|
|
</xsl:attribute>
|
|
</a>
|
|
<h4>
|
|
Page '<xsl:value-of select="@name"/>' of entity
|
|
<a>
|
|
<xsl:attribute name="href">
|
|
<xsl:value-of select="concat('#entity-', ancestor::adl:entity/@name)"/>
|
|
</xsl:attribute>
|
|
<xsl:value-of select="ancestor::adl:entity/@name"/>
|
|
</a>
|
|
</h4>
|
|
<xsl:if test="adl:permission">
|
|
<ul>
|
|
<xsl:apply-templates select="permission"/>
|
|
</ul>
|
|
</xsl:if>
|
|
<xsl:choose>
|
|
<xsl:when test="@properties='listed'">
|
|
<p>Showing the following properties</p>
|
|
<table>
|
|
<tr>
|
|
<th> </th>
|
|
<th>Property</th>
|
|
<th>Prompt</th>
|
|
<th>Documentation</th>
|
|
</tr>
|
|
<xsl:apply-templates select="adl:field|adl:fieldgroup|adl:auxlist|adl:verb"/>
|
|
</table>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<p>Showing all properties</p>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</div>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="adl:list">
|
|
<div class="list">
|
|
<a>
|
|
<xsl:attribute name="name">
|
|
<xsl:value-of select="concat('page-', ancestor::adl:entity/@name, '-', @name)"/>
|
|
</xsl:attribute>
|
|
</a>
|
|
<h4>
|
|
List '<xsl:value-of select="@name"/>' of entity
|
|
<a>
|
|
<xsl:attribute name="href">
|
|
<xsl:value-of select="concat('#entity-', ancestor::adl:entity/@name)"/>
|
|
</xsl:attribute>
|
|
<xsl:value-of select="ancestor::adl:entity/@name"/>
|
|
</a>, on select
|
|
<a>
|
|
<xsl:attribute name="href">
|
|
<xsl:value-of select="concat( '#page-', ancestor::adl:entity/@name, '-', @onselect)"/>
|
|
</xsl:attribute>
|
|
<xsl:value-of select="@onselect"/>
|
|
</a>
|
|
</h4>
|
|
<xsl:if test="adl:permission">
|
|
<ul>
|
|
<xsl:apply-templates select="adl:permission"/>
|
|
</ul>
|
|
</xsl:if>
|
|
<xsl:choose>
|
|
<xsl:when test="@properties='listed'">
|
|
<p>Showing the following properties</p>
|
|
<table>
|
|
<tr>
|
|
<th> </th>
|
|
<th>Property</th>
|
|
<th>Prompt</th>
|
|
<th>Documentation</th>
|
|
</tr>
|
|
<xsl:apply-templates select="adl:field|adl:fieldgroup|adl:auxlist|adl:verb"/>
|
|
</table>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<p>Showing all properties</p>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</div>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="adl:field">
|
|
<tr>
|
|
<xsl:attribute name="class">
|
|
<xsl:choose>
|
|
<xsl:when test="parent::adl:fieldgroup">
|
|
<xsl:choose>
|
|
<xsl:when test="position() = last()">fieldgroup-end</xsl:when>
|
|
<xsl:otherwise>fieldgroup</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:when>
|
|
<xsl:when test="parent::adl:auxlist">
|
|
<xsl:choose>
|
|
<xsl:when test="position() = last()">auxlist-end</xsl:when>
|
|
<xsl:otherwise>auxlist</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:when>
|
|
</xsl:choose>
|
|
</xsl:attribute>
|
|
<td>Field</td>
|
|
<td>
|
|
<a>
|
|
<xsl:attribute name="href">
|
|
<xsl:value-of select="concat( '#property-', ancestor::adl:entity/@name, '-', @property)"/>
|
|
</xsl:attribute>
|
|
<xsl:value-of select="@property"/>
|
|
</a>
|
|
</td>
|
|
<td>
|
|
<xsl:apply-templates select="adl:prompt"/>
|
|
</td>
|
|
<td>
|
|
<xsl:apply-templates select="adl:help"/>
|
|
</td>
|
|
<td>
|
|
<xsl:apply-templates select="adl:documentation"/>
|
|
</td>
|
|
</tr>
|
|
<xsl:if test="adl:permission">
|
|
<tr>
|
|
<td></td>
|
|
<td colspan="3">
|
|
<xsl:apply-templates select="adl:permission"/>
|
|
</td>
|
|
</tr>
|
|
</xsl:if>
|
|
</xsl:template>
|
|
|
|
|
|
<xsl:template match="adl:verb">
|
|
<tr>
|
|
<xsl:attribute name="class">
|
|
<xsl:choose>
|
|
<xsl:when test="parent::adl:fieldgroup">
|
|
<xsl:choose>
|
|
<xsl:when test="position() = last()">fieldgroup-end</xsl:when>
|
|
<xsl:otherwise>fieldgroup</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:when>
|
|
<xsl:when test="parent::adl:auxlist">
|
|
<xsl:choose>
|
|
<xsl:when test="position() = last()">auxlist-end</xsl:when>
|
|
<xsl:otherwise>auxlist</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:when>
|
|
</xsl:choose>
|
|
</xsl:attribute>
|
|
<td>Verb</td>
|
|
<td>
|
|
<xsl:value-of select="@verb"/>
|
|
<xsl:if test="@dangerous='true'">[dangerous]</xsl:if>
|
|
</td>
|
|
<td>
|
|
<xsl:apply-templates select="adl:prompt"/>
|
|
</td>
|
|
<td>
|
|
<xsl:apply-templates select="adl:help"/>
|
|
</td>
|
|
<td>
|
|
<xsl:apply-templates select="adl:documentation"/>
|
|
</td>
|
|
</tr>
|
|
<xsl:if test="adl:permission">
|
|
<tr>
|
|
<td></td>
|
|
<td colspan="3">
|
|
<xsl:apply-templates select="adl:permission"/>
|
|
</td>
|
|
</tr>
|
|
</xsl:if>
|
|
</xsl:template>
|
|
|
|
|
|
|
|
<xsl:template match="adl:auxlist">
|
|
<tr class="auxlist-start">
|
|
<th>Auxlist</th>
|
|
<th>
|
|
<xsl:value-of select="@property"/>
|
|
</th>
|
|
<th>
|
|
<xsl:apply-templates select="adl:prompt"/>
|
|
</th>
|
|
<th>
|
|
<xsl:apply-templates select="adl:help"/>
|
|
</th>
|
|
<th>
|
|
<xsl:apply-templates select="adl:documentation"/>
|
|
</th>
|
|
</tr>
|
|
<tr class="auxlist">
|
|
<th>
|
|
<xsl:if test="@onselect">On select:</xsl:if></th>
|
|
<td>
|
|
<a>
|
|
<xsl:attribute name="href">
|
|
<xsl:variable name="propname" select="@property"/>
|
|
<xsl:variable name="targetent">
|
|
<xsl:choose>
|
|
<xsl:when test="ancestor::adl:entity//adl:property[@name=$propname]/@entity">
|
|
<xsl:value-of select="ancestor::adl:entity//adl:property[@name=$propname]/@entity"/>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
<xsl:value-of select="ancestor::adl:entity/@name"/>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:variable>
|
|
<xsl:value-of select="concat( '#page-', $targetent, '-', @onselect)"/>
|
|
</xsl:attribute>
|
|
<xsl:value-of select="@onselect"/>
|
|
</a>
|
|
</td>
|
|
<td colspan="2">
|
|
<xsl:choose>
|
|
<xsl:when test="@properties='listed'">
|
|
Showing the following properties
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
Showing all properties
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</td>
|
|
</tr>
|
|
<xsl:apply-templates select="adl:field|adl:fieldgroup|adl:auxlist|adl:verb"/>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="adl:fieldgroup">
|
|
<tr class="fieldgroup-start">
|
|
<th>Field group</th>
|
|
<th>
|
|
<xsl:value-of select="@name"/>
|
|
</th>
|
|
<th>
|
|
<xsl:apply-templates select="adl:prompt"/>
|
|
</th>
|
|
<th>
|
|
<xsl:apply-templates select="adl:help"/>
|
|
</th>
|
|
<th>
|
|
<xsl:apply-templates select="adl:documentation"/>
|
|
</th>
|
|
</tr>
|
|
<xsl:apply-templates select="adl:field|adl:fieldgroup|adl:auxlist|adl:verb"/>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="adl:option">
|
|
<xsl:value-of select="@value"/>
|
|
<xsl:if test="adl:prompt">
|
|
: <xsl:apply-templates select="adl:prompt"/>
|
|
</xsl:if>
|
|
<xsl:if test="adl:help">
|
|
(<i>
|
|
<xsl:apply-templates select="adl:prompt"/>
|
|
</i>)
|
|
</xsl:if>
|
|
</xsl:template>
|
|
|
|
|
|
</xsl:stylesheet>
|