Skip to content

Commit 81a08b2

Browse files
committed
RFC-002: specify postfixes and clarify version number
1 parent 9ce6bac commit 81a08b2

File tree

1 file changed

+16
-4
lines changed

1 file changed

+16
-4
lines changed

rfcs/RFC-002-schemata.rst

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ form, while not losing human readability and too much flexibility.
3131
These entities are:
3232

3333
- Interface classes and features
34-
- Parameters, commands and properties
34+
- Parameters, parameter postfixes, commands and properties
3535
- Data types
3636
- Systems (see RFC-004)
3737

@@ -56,7 +56,8 @@ Each entity has a few common fields:
5656

5757
``kind``
5858
The kind of entity, one of ``Repository``, ``System``, ``Interface``,
59-
``Feature``, ``Parameter``, ``Command``, ``Property``, ``Datainfo``.
59+
``Feature``, ``Parameter``, ``ParameterPostfix``, ``Command``, ``Property``,
60+
``Datainfo``.
6061
``name``
6162
The entity's unique name.
6263
``version``
@@ -76,7 +77,7 @@ SECoP extensions".
7677
``files``
7778
A list of other YAML file paths, relative to this file, in which the entities
7879
making up the repository can be found.
79-
``systems``, ``interfaces``, ``features``, ``parameters``, ``commands``, ``datainfo``
80+
``systems``, ``interfaces``, ``features``, ``parameters``, ``postfixes``, ``commands``, ``datainfo``
8081
Lists of references_ to entities that are part of the repository.
8182
``properties``
8283
Dictionary of lists of references_ to properties in the repository, keyed
@@ -105,6 +106,15 @@ SECoP extensions".
105106
Boolean, if the parameter is by default optional when added in
106107
interfaces/features.
107108

109+
**For parameter postfixes:**
110+
111+
``readonly``
112+
Boolean, if the parameter should be readonly.
113+
``datainfo``
114+
Specification of the parameter's datainfo_.
115+
``properties``
116+
References_ to the properties that are possible on this entity.
117+
108118
**For commands:**
109119

110120
``argument``
@@ -157,7 +167,9 @@ SECoP extensions".
157167
When a new entity is proposed, the ``version`` starts at 0. A version of 0
158168
does not give a stability guarantee, unlike versions larger than 0. If an
159169
entity is accepted and introduced into the specification, the version is
160-
defined as 1. Changes to the interface afterwards bump the version number.
170+
defined as the major number of the specification it first appears in.
171+
Changes to the interface afterwards require a major specification version
172+
bump and also bump the entity's version number.
161173

162174
Example
163175
-------

0 commit comments

Comments
 (0)