<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
	<link rel="stylesheet" type="text/css" href="http://oldforge.etsi.org/mantis/css/default.css" />
	<script type="text/javascript"><!--
		if(document.layers) {document.write("<style>td{padding:0px;}<\/style>")}
	// --></script>
	<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
	<meta http-equiv="Pragma" content="no-cache" />
	<meta http-equiv="Cache-Control" content="no-cache" />
	<meta http-equiv="Pragma-directive" content="no-cache" />
	<meta http-equiv="Cache-Directive" content="no-cache" />
	<meta http-equiv="Expires" content="Tue, 17 Dec 2024 09:18:45 GMT" />
	<link rel="shortcut icon" href="/mantis/images/favicon.ico" type="image/x-icon" />
	<link rel="search" type="application/opensearchdescription+xml" title="MantisBT: Text Search" href="http://oldforge.etsi.org/mantis/browser_search_plugin.php?type=text" />	<link rel="search" type="application/opensearchdescription+xml" title="MantisBT: Issue Id" href="http://oldforge.etsi.org/mantis/browser_search_plugin.php?type=id" />	<title>0005811: Correction in BNF rules for template variables - ETSI's Bug Tracker</title>
<script type="text/javascript" src="/mantis/javascript/min/common.js"></script>
<script type="text/javascript">var loading_lang = "Loading...";</script><script type="text/javascript" src="/mantis/javascript/min/ajax.js"></script>
</head>
<body>
<br /><table class="width100" cellspacing="1"><tr><td class="form-title" colspan="6"><div class="center">ETSI's Bug Tracker - Part 01: TTCN-3 Core Language</div></td></tr><tr><td class="form-title" colspan="6">View Issue Details</td></tr><tr><td class="print-spacer" colspan="6"><hr size="1" /></td></tr><tr class="print-category"><td class="print" width="16%">ID</td><td class="print" width="16%">Project</td><td class="print" width="16%">Category</td><td class="print" width="16%">View Status</td><td class="print" width="16%">Date Submitted</td><td class="print" width="16%">Last Update</td></tr><tr class="print"><td class="print">0005811</td><td class="print">Part 01: TTCN-3 Core Language</td><td class="print">Technical</td><td class="print">public</td><td class="print">25-11-2010 09:11</td><td class="print">14-12-2010 14:54</td></tr><tr><td class="print-spacer" colspan="6"><hr size="1" /></td></tr><tr class="print"><td class="print-category">Reporter</td><td class="print">Andrus Lehtmets</td><td class="print" colspan="4">&#160;</td></tr><tr class="print"><td class="print-category">Assigned To</td><td class="print">Benjamin Zeiss</td><td class="print" colspan="4">&#160;</td></tr><tr class="print"><td class="print-category">Priority</td><td class="print">normal</td><td class="print-category">Severity</td><td class="print">major</td><td class="print-category">Reproducibility</td><td class="print">have not tried</td></tr><tr class="print"><td class="print-category">Status</td><td class="print">closed</td><td class="print-category">Resolution</td><td class="print">fixed</td><td class="print" colspan="2">&#160;</td></tr><tr class="print"><td class="print-category">Platform</td><td class="print"></td><td class="print-category">OS</td><td class="print"></td><td class="print-category">OS Version</td><td class="print"></td></tr><tr class="print"><td class="print-category">Product Version</td><td class="print"></td><td class="print" colspan="4">&#160;</td></tr><tr><td class="print-category">Target Version</td><td class="print">v4.3.1 (published 2011-06)</td><td class="print-category">Fixed in Version</td><td class="print"></td><td class="print" colspan="2">&#160;</td></tr><tr class="print"><td class="print-category">Clause Reference(s)</td><td class="print" colspan="4">CL</td></tr><tr class="print"><td class="print-category">Source  (company  - Author)</td><td class="print" colspan="4">Elvior</td></tr><tr><td class="print-spacer" colspan="6"><hr size="1" /></td></tr><tr class="print"><td class="print-category">Summary</td><td class="print" colspan="5">0005811: Correction in BNF rules for template variables</td></tr><tr class="print"><td class="print-category">Description</td><td class="print" colspan="5">While the BNF doesn't allow using static templates and template parameters in expressions, the rule for referenced value (494. ValueReference) allows referencing any variable including template variables. This is because the BNF doesn't distinguish between template variable identifiers and value variable identifiers.<br />
<br />
Therefore we propose to change the BNF so that these identifiers are distinct and template variables are excluded from using in expressions in the same way as it is done in case of parameter identifiers. <br />
<br />
A new rule should be added to the BNF:<br />
TempVarIdentifier ::= Identifier<br />
<br />
The existing rules shall be changed as follows:<br />
305. SingleTempVarInstance ::= TempVarIdentifier [ArrayDef] [AssignmentChar TempVarInitialValue]<br />
307. VariableRef ::= ( VarIdentifier | ValueParIdentifier | TempVarIdentifier | TemplateParIdentifier )<br />
[ ExtendedFieldReference ]<br />
544. DefinitionRef ::= StructTypeIdentifier |<br />
EnumTypeIdentifier |<br />
PortTypeIdentifier |<br />
ComponentTypeIdentifier |<br />
SubTypeIdentifier |<br />
ConstIdentifier |<br />
TemplateIdentifier |<br />
AltstepIdentifier |<br />
TestcaseIdentifier |<br />
FunctionIdentifier |<br />
SignatureIdentifier |<br />
VarIdentifier |<br />
TimerIdentifier |<br />
PortIdentifier |<br />
ModuleParIdentifier |<br />
FullGroupIdentifier |<br />
TempVarIdentifier<br />
<br />
In addition to that, the syntactical description in chapter 11.2 shall be changed as follows:<br />
var template [ restriction ] Type TempVarIdentifier [ ArrayDef ] &quot;:=&quot; TemplateBody<br />
{ [ &quot;,&quot; ] TempVarIdentifier [ ArrayDef ] &quot;:=&quot; TemplateBody } [ &quot;;&quot; ]<br />
<br />
It should be also considered to change VarIdentifier to ValueVarIdentifier so that it follows the same naming pattern as parameter identifiers.<br />
</td></tr><tr class="print"><td class="print-category">Steps To Reproduce</td><td class="print" colspan="5"></td></tr><tr class="print"><td class="print-category">Additional Information</td><td class="print" colspan="5"></td></tr><tr class="print"><td class="print-category">Tags</td><td class="print" colspan="5">No tags attached.</td></tr><tr class="print"><td class="print-category">Relationships</td><td class="print" colspan="5"><table border="0" width="100%" cellpadding="0" cellspacing="1"><tr><td class="print"><span class="nowrap">related to</span>&#160;</td><td class="print">0005451</td><td class="print">closed&#160;</td><td class="print"><span class="nowrap"><a href="http://oldforge.etsi.org/mantis/view_user_page.php?id=81">Ina Schieferdecker</a></span>&#160;</td><td class="print">Potential BNF Simplification&#160;</td></tr></table></td></tr><tr class="print"><td class="print-category">Attached Files</td><td class="print" colspan="5"></td></tr><tr><td class="print-spacer" colspan="6"><hr size="1" /></td></tr><tr><td class="form-title">Issue History</td></tr><tr class="print-category"><td class="row-category-history">Date Modified</td><td class="row-category-history">Username</td><td class="row-category-history">Field</td><td class="row-category-history">Change</td></tr><tr class="print"><td class="print">25-11-2010 09:11</td><td class="print"><a href="http://oldforge.etsi.org/mantis/view_user_page.php?id=509">Andrus Lehtmets</a></td><td class="print">New Issue</td><td class="print"></td></tr><tr class="print"><td class="print">25-11-2010 09:11</td><td class="print"><a href="http://oldforge.etsi.org/mantis/view_user_page.php?id=509">Andrus Lehtmets</a></td><td class="print">Clause Reference(s)</td><td class="print"> =&gt; CL</td></tr><tr class="print"><td class="print">25-11-2010 09:11</td><td class="print"><a href="http://oldforge.etsi.org/mantis/view_user_page.php?id=509">Andrus Lehtmets</a></td><td class="print">Source  (company  - Author)</td><td class="print"> =&gt; Elvior</td></tr><tr class="print"><td class="print">29-11-2010 15:41</td><td class="print"><a href="http://oldforge.etsi.org/mantis/view_user_page.php?id=508">Jacob Wieland - Spirent</a></td><td class="print">Note Added: 0009832</td><td class="print"></td></tr><tr class="print"><td class="print">30-11-2010 09:34</td><td class="print"><a href="http://oldforge.etsi.org/mantis/view_user_page.php?id=81">Ina Schieferdecker</a></td><td class="print">Project</td><td class="print">TTCN-3 Change Requests =&gt; Part 01: TTCN-3 Core Language</td></tr><tr class="print"><td class="print">30-11-2010 17:35</td><td class="print"><a href="http://oldforge.etsi.org/mantis/view_user_page.php?id=127">Gyorgy Rethy</a></td><td class="print">Relationship added</td><td class="print">related to 0005451</td></tr><tr class="print"><td class="print">30-11-2010 17:35</td><td class="print"><a href="http://oldforge.etsi.org/mantis/view_user_page.php?id=127">Gyorgy Rethy</a></td><td class="print">Assigned To</td><td class="print"> =&gt; Benjamin Zeiss</td></tr><tr class="print"><td class="print">30-11-2010 17:35</td><td class="print"><a href="http://oldforge.etsi.org/mantis/view_user_page.php?id=127">Gyorgy Rethy</a></td><td class="print">Status</td><td class="print">new =&gt; assigned</td></tr><tr class="print"><td class="print">30-11-2010 17:35</td><td class="print"><a href="http://oldforge.etsi.org/mantis/view_user_page.php?id=127">Gyorgy Rethy</a></td><td class="print">Target Version</td><td class="print"> =&gt; Edition 4.3.1 (not yet published)</td></tr><tr class="print"><td class="print">02-12-2010 15:30</td><td class="print"><a href="http://oldforge.etsi.org/mantis/view_user_page.php?id=510">Benjamin Zeiss</a></td><td class="print">Note Added: 0009933</td><td class="print"></td></tr><tr class="print"><td class="print">14-12-2010 14:54</td><td class="print"><a href="http://oldforge.etsi.org/mantis/view_user_page.php?id=510">Benjamin Zeiss</a></td><td class="print">Status</td><td class="print">assigned =&gt; closed</td></tr><tr class="print"><td class="print">14-12-2010 14:54</td><td class="print"><a href="http://oldforge.etsi.org/mantis/view_user_page.php?id=510">Benjamin Zeiss</a></td><td class="print">Note Added: 0009968</td><td class="print"></td></tr><tr class="print"><td class="print">14-12-2010 14:54</td><td class="print"><a href="http://oldforge.etsi.org/mantis/view_user_page.php?id=510">Benjamin Zeiss</a></td><td class="print">Resolution</td><td class="print">open =&gt; fixed</td></tr></table>
<br />
<table class="width100" cellspacing="1">
<tr>
	<td class="form-title" colspan="2">
		Notes	</td>
</tr>
<tr>
	<td class="print-spacer" colspan="2">
		<hr size="1" />
	</td>
</tr>
<tr>
	<td class="nopad" valign="top" width="20%">
		<table class="hide" cellspacing="1">
		<tr>
			<td class="print">
				(0009832)
			</td>
		</tr>
		<tr>
			<td class="print">
				<a href="http://oldforge.etsi.org/mantis/view_user_page.php?id=508">Jacob Wieland - Spirent</a>&#160;&#160;&#160;
			</td>
		</tr>
		<tr>
			<td class="print">
				29-11-2010 15:41&#160;&#160;&#160;
							</td>
		</tr>
		</table>
	</td>
	<td class="nopad" valign="top" width="85%">
		<table class="hide" cellspacing="1">
		<tr>
			<td class="print">
				agreed, but the name should be TemplateVarIdentifier instead of TempVarIdentifier (analogous to TemplateParIdentifier) - also the other existing TempVar-names should be changed to TemplateVar for more consistency.			</td>
		</tr>
		</table>
	</td>
</tr>
<tr>
	<td class="print-spacer" colspan="2">
		<hr size="1" />
	</td>
</tr>
<tr>
	<td class="nopad" valign="top" width="20%">
		<table class="hide" cellspacing="1">
		<tr>
			<td class="print">
				(0009933)
			</td>
		</tr>
		<tr>
			<td class="print">
				<a href="http://oldforge.etsi.org/mantis/view_user_page.php?id=510">Benjamin Zeiss</a>&#160;&#160;&#160;
			</td>
		</tr>
		<tr>
			<td class="print">
				02-12-2010 15:30&#160;&#160;&#160;
							</td>
		</tr>
		</table>
	</td>
	<td class="nopad" valign="top" width="85%">
		<table class="hide" cellspacing="1">
		<tr>
			<td class="print">
				In the BNF simplification of CR5451, we got rid of all superfluous Identifier rules and chain rules. Therefore, this issue will be solved once 5451 is reviewed and becoming the &quot;official&quot; BNF.			</td>
		</tr>
		</table>
	</td>
</tr>
<tr>
	<td class="print-spacer" colspan="2">
		<hr size="1" />
	</td>
</tr>
<tr>
	<td class="nopad" valign="top" width="20%">
		<table class="hide" cellspacing="1">
		<tr>
			<td class="print">
				(0009968)
			</td>
		</tr>
		<tr>
			<td class="print">
				<a href="http://oldforge.etsi.org/mantis/view_user_page.php?id=510">Benjamin Zeiss</a>&#160;&#160;&#160;
			</td>
		</tr>
		<tr>
			<td class="print">
				14-12-2010 14:54&#160;&#160;&#160;
							</td>
		</tr>
		</table>
	</td>
	<td class="nopad" valign="top" width="85%">
		<table class="hide" cellspacing="1">
		<tr>
			<td class="print">
				As the BNF simplification has been implementend and CR5451 is closed, this issue is automatically done as well. Hence, closing the issue.			</td>
		</tr>
		</table>
	</td>
</tr>
</table>
</body>
</html>
