ETSI's Bug Tracker |
Anonymous | Login | Signup for local Mantis account | 17-05-2024 01:45 IST |
Main | My View | View Issues | Change Log | Roadmap | Monitor project |
View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
0006877 | Part-1 Metamodel | [TDL] Editorial | public | 10-02-2015 13:20 | 11-10-2015 22:35 | ||||
Reporter | Andreas Ulrich | ||||||||
Assigned To | Finn Kristoffersen | ||||||||
Priority | normal | Severity | minor | Reproducibility | have not tried | ||||
Status | resolved | Resolution | open | ||||||
Platform | OS | OS Version | |||||||
Product Version | [TDL] Part-1 V1.2.1 | ||||||||
Target Version | [TDL] Part-1 V1.3.1 | Fixed in Version | |||||||
Summary | 0006877: Clarification of the purpose of sub-clauses of a clause describing a meta-class element for readers who are not literate in UML | ||||||||
Description | An explanation shall be given to introduce the structure of a MM element clause similar to the one provided: Introduction to software language design Basic principles of meta-modelling A software language consists of two independent parts: syntax and semantics. The syntax describes the structure of a text provided in this language (or of graphical symbols for a graphical language), while the semantics describes the meaning of individual syntax elements used in the text. With upcoming multi-representation syntaxes for a single language, the distinction between abstract syntax and concrete syntax becomes necessary. The abstract syntax defines the structure of the text without referencing keywords that are provided in a concrete syntax only. A text given in one concrete syntax can be transformed into a text of another concrete syntax if the text is syntactical correct w.r.t. concrete syntax and abstract syntax and both concrete syntaxes refer to the same abstract syntax. This transformation is completely independent from the semantics definition (which does not change). Semantics is divided into static semantics and dynamic semantics. The static semantics defines further restrictions on the structure of the text that cannot be defined alone in syntax rules. The dynamic semantics provide the meaning of a syntax element when it is put into an execution environment. Mapping to document structure The four pieces of a software language, concrete syntax, abstract syntax, static semantics, dynamic semantics, are mapped to the standards series of TDL as follows: • Concrete syntax: defined in parts 2 on TDL-GR (graphical format) and 3 on TDL-XF (exchange format) • Abstract syntax: defined in part 1 on TDL-MM in the contained diagrams representing the technical meta-model, which correspond to the individual sub-clauses "Generalization" and "Properties". • Static semantics: defined in part 1 on TDL-MM in the sub-clauses "Constraints" and partly, if constraints are hard to formulate, in the sub-clauses "Semantics". • Dynamic semantics: defined in part 1 on TDL-MM in the sub-clauses "Semantics". To highlight the dynamic semantics, sometimes the expression "at runtime" is used. In addition part 4 on TDL-TO (test objective specification) defines an extension of the abstract syntax and semantics of part 1 together with a concrete textual syntax for this extension. While the syntax and static semantics are (will be) formally defined, the dynamic semantics is defined only informally using a declarative style. It is augmented frequently with further explanations beyond pure semantics definition to ease reading of the document. These explanations are provided as NOTEs. | ||||||||
Additional Information | On the use of verbal forms for the expression of provisions in the MM draft ETSI requires the use of 'shall' and 'shall not' (among others) to "indicate requirements strictly to be followed in order to conform to the standard and from which no deviation is permitted." (see "ETSI Drafting Rules", clause 14a) It was observed during the last meeting that the semantics section of a clause in the MM draft does not use 'shall' to formulate requirements in the semantics sections. I provide the following explanation for this case: The semantics is given in a declarative style. This is true in particular for the data part but also to a large extend for the behaviour part. It is therefore completely useless and actually wrong usage to enrich declarative statements with 'shall'. A declaration is not a requirement, but a statement of fact. In this case, the EDR requires that 'is / is not' "shall be used to indicate statements of fact". This rule is followed in the MM draft. Example: clause 6.3.1 DataUse "A 'DataUse' denotes an expression that evaluates to a 'DataInstance' of a given 'DataType'." It would be a wrong style of writing "A 'DataUse' shall denote…" This would overburden the sentence. The use of 'shall' is commonly associated with verbs of action, e.g. "a user shall do this", "a protocol entity shall behave like this". Therefore, the MM draft makes use of 'shall' when a user could have a choice which needs to be restricted. Such cases typically occur within the constraints sections because here the options on the syntax a user has are clearly restricted. Counterexamples might exist in the MM draft, but do not invalidate the above reasoning. | ||||||||
Tags | No tags attached. | ||||||||
Attached Files | InputTDLMantisIssue_6877.docx [^] (161,030 bytes) 12-06-2015 16:30 | ||||||||
Notes | |
(0012980) Finn Kristoffersen (developer) 12-06-2015 16:35 |
The uploaded file "InputTDLMantisIssue_6877.docx" contains a proposal for text to TDL meta-model explaining the structure of the presentation of the meta-model as well as the basic principles of meta-modelling. The input is based on the text already contained in the "Description" section, with some additional text on the documentation structure of the concepts of the meta-model. |
(0013352) Finn Kristoffersen (developer) 11-10-2015 22:29 |
The revised document received from Andreas Ulrich based on the attached document "InputTDLMantisIssue_6877.docx" has been integrated in the TDL MM document. |
Issue History | |||
Date Modified | Username | Field | Change |
10-02-2015 13:20 | Andreas Ulrich | New Issue | |
10-02-2015 13:20 | Andreas Ulrich | Status | new => assigned |
10-02-2015 13:20 | Andreas Ulrich | Assigned To | => Stephan Schulz |
12-06-2015 16:30 | Finn Kristoffersen | File Added: InputTDLMantisIssue_6877.docx | |
12-06-2015 16:35 | Finn Kristoffersen | Note Added: 0012980 | |
16-07-2015 15:58 | Philip Makedonski | Product Version | Part-1 Meta-model and Semantics V1.2.1 => [TDL] Part-1 V1.2.1 |
16-07-2015 15:58 | Philip Makedonski | Target Version | => [TDL] Part-1 V1.3.1 |
06-10-2015 10:11 | Philip Makedonski | Assigned To | Stephan Schulz => Finn Kristoffersen |
11-10-2015 22:29 | Finn Kristoffersen | Note Added: 0013352 | |
11-10-2015 22:35 | Finn Kristoffersen | Status | assigned => resolved |
MantisBT 1.2.14 [^] Copyright © 2000 - 2024 MantisBT Team |