From 1fce758513a51f35fd38ce684a51c3f497a5d833 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Fri, 24 Jul 2020 14:17:15 +0200 Subject: spec: Move specification of specification items This makes it reusable. --- config.yml | 1 + spec-spec/spec/copyright.yml | 21 +++++++ spec-spec/spec/copyrights.yml | 16 +++++ spec-spec/spec/enabled-by-list.yml | 16 +++++ spec-spec/spec/enabled-by.yml | 53 ++++++++++++++++ spec-spec/spec/link.yml | 28 +++++++++ spec-spec/spec/links.yml | 16 +++++ spec-spec/spec/list-str.yml | 16 +++++ spec-spec/spec/optional-str.yml | 16 +++++ spec-spec/spec/root.yml | 51 +++++++++++++++ spec-spec/spec/spdx-license-identifier.yml | 21 +++++++ spec-spec/spec/spec-assert-float-list.yml | 16 +++++ spec-spec/spec/spec-assert-float.yml | 71 +++++++++++++++++++++ spec-spec/spec/spec-assert-int-list.yml | 16 +++++ spec-spec/spec/spec-assert-int.yml | 70 +++++++++++++++++++++ spec-spec/spec/spec-assert-str-list.yml | 16 +++++ spec-spec/spec/spec-assert-str.yml | 94 ++++++++++++++++++++++++++++ spec-spec/spec/spec-attribute-value.yml | 26 ++++++++ spec-spec/spec/spec-attributes.yml | 24 +++++++ spec-spec/spec/spec-bool.yml | 33 ++++++++++ spec-spec/spec/spec-dict.yml | 37 +++++++++++ spec-spec/spec/spec-float.yml | 30 +++++++++ spec-spec/spec/spec-generic-attributes.yml | 33 ++++++++++ spec-spec/spec/spec-info.yml | 46 ++++++++++++++ spec-spec/spec/spec-int.yml | 30 +++++++++ spec-spec/spec/spec-list.yml | 26 ++++++++ spec-spec/spec/spec-mandatory-attributes.yml | 30 +++++++++ spec-spec/spec/spec-member.yml | 22 +++++++ spec-spec/spec/spec-refinement.yml | 32 ++++++++++ spec-spec/spec/spec-str.yml | 29 +++++++++ spec-spec/spec/spec.yml | 72 +++++++++++++++++++++ spec/spec/copyright.yml | 21 ------- spec/spec/copyrights.yml | 16 ----- spec/spec/enabled-by-list.yml | 16 ----- spec/spec/enabled-by.yml | 53 ---------------- spec/spec/link.yml | 28 --------- spec/spec/links.yml | 16 ----- spec/spec/list-str.yml | 16 ----- spec/spec/optional-str.yml | 16 ----- spec/spec/root.yml | 51 --------------- spec/spec/spdx-license-identifier.yml | 21 ------- spec/spec/spec-assert-float-list.yml | 16 ----- spec/spec/spec-assert-float.yml | 71 --------------------- spec/spec/spec-assert-int-list.yml | 16 ----- spec/spec/spec-assert-int.yml | 70 --------------------- spec/spec/spec-assert-str-list.yml | 16 ----- spec/spec/spec-assert-str.yml | 94 ---------------------------- spec/spec/spec-attribute-value.yml | 26 -------- spec/spec/spec-attributes.yml | 24 ------- spec/spec/spec-bool.yml | 33 ---------- spec/spec/spec-dict.yml | 37 ----------- spec/spec/spec-float.yml | 30 --------- spec/spec/spec-generic-attributes.yml | 33 ---------- spec/spec/spec-info.yml | 46 -------------- spec/spec/spec-int.yml | 30 --------- spec/spec/spec-list.yml | 26 -------- spec/spec/spec-mandatory-attributes.yml | 30 --------- spec/spec/spec-member.yml | 22 ------- spec/spec/spec-refinement.yml | 32 ---------- spec/spec/spec-str.yml | 29 --------- spec/spec/spec.yml | 72 --------------------- 61 files changed, 1008 insertions(+), 1007 deletions(-) create mode 100644 spec-spec/spec/copyright.yml create mode 100644 spec-spec/spec/copyrights.yml create mode 100644 spec-spec/spec/enabled-by-list.yml create mode 100644 spec-spec/spec/enabled-by.yml create mode 100644 spec-spec/spec/link.yml create mode 100644 spec-spec/spec/links.yml create mode 100644 spec-spec/spec/list-str.yml create mode 100644 spec-spec/spec/optional-str.yml create mode 100644 spec-spec/spec/root.yml create mode 100644 spec-spec/spec/spdx-license-identifier.yml create mode 100644 spec-spec/spec/spec-assert-float-list.yml create mode 100644 spec-spec/spec/spec-assert-float.yml create mode 100644 spec-spec/spec/spec-assert-int-list.yml create mode 100644 spec-spec/spec/spec-assert-int.yml create mode 100644 spec-spec/spec/spec-assert-str-list.yml create mode 100644 spec-spec/spec/spec-assert-str.yml create mode 100644 spec-spec/spec/spec-attribute-value.yml create mode 100644 spec-spec/spec/spec-attributes.yml create mode 100644 spec-spec/spec/spec-bool.yml create mode 100644 spec-spec/spec/spec-dict.yml create mode 100644 spec-spec/spec/spec-float.yml create mode 100644 spec-spec/spec/spec-generic-attributes.yml create mode 100644 spec-spec/spec/spec-info.yml create mode 100644 spec-spec/spec/spec-int.yml create mode 100644 spec-spec/spec/spec-list.yml create mode 100644 spec-spec/spec/spec-mandatory-attributes.yml create mode 100644 spec-spec/spec/spec-member.yml create mode 100644 spec-spec/spec/spec-refinement.yml create mode 100644 spec-spec/spec/spec-str.yml create mode 100644 spec-spec/spec/spec.yml delete mode 100644 spec/spec/copyright.yml delete mode 100644 spec/spec/copyrights.yml delete mode 100644 spec/spec/enabled-by-list.yml delete mode 100644 spec/spec/enabled-by.yml delete mode 100644 spec/spec/link.yml delete mode 100644 spec/spec/links.yml delete mode 100644 spec/spec/list-str.yml delete mode 100644 spec/spec/optional-str.yml delete mode 100644 spec/spec/root.yml delete mode 100644 spec/spec/spdx-license-identifier.yml delete mode 100644 spec/spec/spec-assert-float-list.yml delete mode 100644 spec/spec/spec-assert-float.yml delete mode 100644 spec/spec/spec-assert-int-list.yml delete mode 100644 spec/spec/spec-assert-int.yml delete mode 100644 spec/spec/spec-assert-str-list.yml delete mode 100644 spec/spec/spec-assert-str.yml delete mode 100644 spec/spec/spec-attribute-value.yml delete mode 100644 spec/spec/spec-attributes.yml delete mode 100644 spec/spec/spec-bool.yml delete mode 100644 spec/spec/spec-dict.yml delete mode 100644 spec/spec/spec-float.yml delete mode 100644 spec/spec/spec-generic-attributes.yml delete mode 100644 spec/spec/spec-info.yml delete mode 100644 spec/spec/spec-int.yml delete mode 100644 spec/spec/spec-list.yml delete mode 100644 spec/spec/spec-mandatory-attributes.yml delete mode 100644 spec/spec/spec-member.yml delete mode 100644 spec/spec/spec-refinement.yml delete mode 100644 spec/spec/spec-str.yml delete mode 100644 spec/spec/spec.yml diff --git a/config.yml b/config.yml index d6d93dfe..5028e755 100644 --- a/config.yml +++ b/config.yml @@ -38,6 +38,7 @@ spec: cache-directory: cache spec-type-root-uid: /spec/root paths: + - spec-spec - spec - modules/rtems/spec glossary: diff --git a/spec-spec/spec/copyright.yml b/spec-spec/spec/copyright.yml new file mode 100644 index 00000000..f5e0ffab --- /dev/null +++ b/spec-spec/spec/copyright.yml @@ -0,0 +1,21 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + str: + assert: + - re: ^\s*Copyright\s+\(C\)\s+[0-9]+,\s*[0-9]+\s+.+\s*$ + - re: ^\s*Copyright\s+\(C\)\s+[0-9]+\s+.+\s*$ + - re: ^\s*Copyright\s+\(C\)\s+.+\s*$ + description: | + It shall be a copyright statement of a copyright holder of the + specification item. +spec-name: Copyright +spec-type: copyright +type: spec diff --git a/spec-spec/spec/copyrights.yml b/spec-spec/spec/copyrights.yml new file mode 100644 index 00000000..522e4f43 --- /dev/null +++ b/spec-spec/spec/copyrights.yml @@ -0,0 +1,16 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + list: + description: null + spec-type: copyright +spec-name: Copyrights Type +spec-type: copyrights +type: spec diff --git a/spec-spec/spec/enabled-by-list.yml b/spec-spec/spec/enabled-by-list.yml new file mode 100644 index 00000000..f84fff28 --- /dev/null +++ b/spec-spec/spec/enabled-by-list.yml @@ -0,0 +1,16 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + list: + description: null + spec-type: enabled-by +spec-name: Enabled-By Expression List +spec-type: enabled-by-list +type: spec diff --git a/spec-spec/spec/enabled-by.yml b/spec-spec/spec/enabled-by.yml new file mode 100644 index 00000000..c88d74e4 --- /dev/null +++ b/spec-spec/spec/enabled-by.yml @@ -0,0 +1,53 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: | + A value of this type shall be an expression which defines under which + conditions the specification item or parts of it are enabled. The expression + is evaluated with the use of an *enabled set*. This is a set of strings + which indicate enabled features. +spec-example: | + enabled-by: + and: + - RTEMS_NETWORKING + - not: RTEMS_SMP +spec-info: + bool: + description: | + This expression evaluates directly to the boolean value. + dict: + attributes: + and: + description: | + The *and* operator evaluates to the *logical and* of the evaluation + results of the expressions in the list. + spec-type: enabled-by-list + not: + description: | + The *not* operator evaluates to the *logical not* of the evaluation + results of the expression. + spec-type: enabled-by + or: + description: | + The *or* operator evaluates to the *logical or* of the evaluation + results of the expressions in the list. + spec-type: enabled-by-list + description: | + Each attribute defines an operator. + mandatory-attributes: exactly-one + list: + description: | + This list of expressions evaluates to the *logical or* of the evaluation + results of the expressions in the list. + spec-type: enabled-by + str: + description: | + If the value is in the *enabled set*, this expression evaluates to true, + otherwise to false. +spec-name: Enabled-By Expression +spec-type: enabled-by +type: spec diff --git a/spec-spec/spec/link.yml b/spec-spec/spec/link.yml new file mode 100644 index 00000000..3c7fb5de --- /dev/null +++ b/spec-spec/spec/link.yml @@ -0,0 +1,28 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + dict: + attributes: + role: + description: | + It shall be the role of the link. + spec-type: name + uid: + description: | + It shall be the absolute or relative UID of the link target item. + spec-type: uid + description: | + This set of attributes specifies a link from one specification item to + another specification item. The links in a list are ordered. The first + link in the list is processed first. + mandatory-attributes: all +spec-name: Link +spec-type: link +type: spec diff --git a/spec-spec/spec/links.yml b/spec-spec/spec/links.yml new file mode 100644 index 00000000..665f9135 --- /dev/null +++ b/spec-spec/spec/links.yml @@ -0,0 +1,16 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + list: + description: null + spec-type: link +spec-name: Link List +spec-type: links +type: spec diff --git a/spec-spec/spec/list-str.yml b/spec-spec/spec/list-str.yml new file mode 100644 index 00000000..db3dd518 --- /dev/null +++ b/spec-spec/spec/list-str.yml @@ -0,0 +1,16 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + list: + description: null + spec-type: str +spec-name: String List +spec-type: list-str +type: spec diff --git a/spec-spec/spec/optional-str.yml b/spec-spec/spec/optional-str.yml new file mode 100644 index 00000000..3f409247 --- /dev/null +++ b/spec-spec/spec/optional-str.yml @@ -0,0 +1,16 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + none: null + str: + description: null +spec-name: Optional String +spec-type: optional-str +type: spec diff --git a/spec-spec/spec/root.yml b/spec-spec/spec/root.yml new file mode 100644 index 00000000..58d65280 --- /dev/null +++ b/spec-spec/spec/root.yml @@ -0,0 +1,51 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2019, 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: [] +spec-description: null +spec-example: null +spec-info: + dict: + attributes: + SPDX-License-Identifier: + description: | + It shall be the license of the item. + spec-type: spdx-license-identifier + copyrights: + description: | + It shall be the list of copyright statements of the item. + spec-type: copyrights + enabled-by: + description: | + It shall define the conditions under which the item is enabled. + spec-type: enabled-by + links: + description: null + spec-type: links + type: + description: | + It shall be the item type. The selection of types and the level of + detail depends on a particular standard and product model. We need + enough flexibility to be in line with ECSS-E-ST-10-06 and possible + future applications of other standards. The item type may be refined + further with additional type-specific subtypes. + spec-type: name + description: | + The technical specification of RTEMS will contain for example + requirements, specializations of requirements, interface specifications, + test suites, test cases, and requirement validations. These things will + be called *specification items* or just *items* if it is clear from the + context. + + The specification items are stored in files in ${/glossary/yaml:/term} + format with a defined set of key-value pairs called attributes. Each + attribute key name shall be a :ref:`SpecTypeName`. In particular, key + names which begin with an underscore (``_``) are reserved for internal + use in tools. + + This is the root specification item type. + mandatory-attributes: all +spec-name: Root Item Type +spec-type: root +type: spec diff --git a/spec-spec/spec/spdx-license-identifier.yml b/spec-spec/spec/spdx-license-identifier.yml new file mode 100644 index 00000000..874cb7a0 --- /dev/null +++ b/spec-spec/spec/spdx-license-identifier.yml @@ -0,0 +1,21 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + str: + assert: + - eq: CC-BY-SA-4.0 OR BSD-2-Clause + - eq: BSD-2-Clause + - eq: CC-BY-SA-4.0 + description: | + It defines the license of the item expressed though an SPDX License + Identifier. +spec-name: SPDX License Identifier +spec-type: spdx-license-identifier +type: spec diff --git a/spec-spec/spec/spec-assert-float-list.yml b/spec-spec/spec/spec-assert-float-list.yml new file mode 100644 index 00000000..30addf5c --- /dev/null +++ b/spec-spec/spec/spec-assert-float-list.yml @@ -0,0 +1,16 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + list: + description: null + spec-type: spec-assert-float +spec-name: Specification Floating-Point Assert List +spec-type: spec-assert-float-list +type: spec diff --git a/spec-spec/spec/spec-assert-float.yml b/spec-spec/spec/spec-assert-float.yml new file mode 100644 index 00000000..fd6f2564 --- /dev/null +++ b/spec-spec/spec/spec-assert-float.yml @@ -0,0 +1,71 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: | + A value of this type shall be an expression which asserts that the + floating-point value of the specified attribute satisfies the required + constraints. +spec-example: null +spec-info: + dict: + attributes: + and: + description: | + The *and* operator evaluates to the *logical and* of the evaluation + results of the expressions in the list. + spec-type: spec-assert-float-list + eq: + description: | + The *eq* operator evaluates to true, if the value to check is equal + to the value of this attribute, otherwise to false. + spec-type: float + ge: + description: | + The *ge* operator evaluates to true, if the value to check is greater + than or equal to the value of this attribute, otherwise to false. + spec-type: float + gt: + description: | + The *gt* operator evaluates to true, if the value to check is greater + than the value of this attribute, otherwise to false. + spec-type: float + le: + description: | + The *le* operator evaluates to true, if the value to check is less + than or equal to the value of this attribute, otherwise to false. + spec-type: float + lt: + description: | + The *lt* operator evaluates to true, if the value to check is less + than the value of this attribute, otherwise to false. + spec-type: float + ne: + description: | + The *ne* operator evaluates to true, if the value to check is not + equal to the value of this attribute, otherwise to false. + spec-type: float + not: + description: | + The *not* operator evaluates to the *logical not* of the evaluation + results of the expression. + spec-type: spec-assert-float + or: + description: | + The *or* operator evaluates to the *logical or* of the evaluation + results of the expressions in the list. + spec-type: spec-assert-float-list + description: | + Each attribute defines an operator. + mandatory-attributes: exactly-one + list: + description: | + This list of expressions evaluates to the *logical or* of the evaluation + results of the expressions in the list. + spec-type: spec-assert-float +spec-name: Specification Floating-Point Assert +spec-type: spec-assert-float +type: spec diff --git a/spec-spec/spec/spec-assert-int-list.yml b/spec-spec/spec/spec-assert-int-list.yml new file mode 100644 index 00000000..98f20673 --- /dev/null +++ b/spec-spec/spec/spec-assert-int-list.yml @@ -0,0 +1,16 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + list: + description: null + spec-type: spec-assert-int +spec-name: Specification Integer Assert List +spec-type: spec-assert-int-list +type: spec diff --git a/spec-spec/spec/spec-assert-int.yml b/spec-spec/spec/spec-assert-int.yml new file mode 100644 index 00000000..ec903b80 --- /dev/null +++ b/spec-spec/spec/spec-assert-int.yml @@ -0,0 +1,70 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: | + A value of this type shall be an expression which asserts that the integer + value of the specified attribute satisfies the required constraints. +spec-example: null +spec-info: + dict: + attributes: + and: + description: | + The *and* operator evaluates to the *logical and* of the evaluation + results of the expressions in the list. + spec-type: spec-assert-int-list + eq: + description: | + The *eq* operator evaluates to true, if the value to check is equal + to the value of this attribute, otherwise to false. + spec-type: int + ge: + description: | + The *ge* operator evaluates to true, if the value to check is greater + than or equal to the value of this attribute, otherwise to false. + spec-type: int + gt: + description: | + The *gt* operator evaluates to true, if the value to check is greater + than the value of this attribute, otherwise to false. + spec-type: int + le: + description: | + The *le* operator evaluates to true, if the value to check is less + than or equal to the value of this attribute, otherwise to false. + spec-type: int + lt: + description: | + The *lt* operator evaluates to true, if the value to check is less + than the value of this attribute, otherwise to false. + spec-type: int + ne: + description: | + The *ne* operator evaluates to true, if the value to check is not + equal to the value of this attribute, otherwise to false. + spec-type: int + not: + description: | + The *not* operator evaluates to the *logical not* of the evaluation + results of the expression. + spec-type: spec-assert-int + or: + description: | + The *or* operator evaluates to the *logical or* of the evaluation + results of the expressions in the list. + spec-type: spec-assert-int-list + description: | + Each attribute defines an operator. + mandatory-attributes: exactly-one + list: + description: | + This list of expressions evaluates to the *logical or* of the evaluation + results of the expressions in the list. + spec-type: spec-assert-int +spec-name: Specification Integer Assert +spec-type: spec-assert-int +type: spec diff --git a/spec-spec/spec/spec-assert-str-list.yml b/spec-spec/spec/spec-assert-str-list.yml new file mode 100644 index 00000000..290c0bd9 --- /dev/null +++ b/spec-spec/spec/spec-assert-str-list.yml @@ -0,0 +1,16 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + list: + description: null + spec-type: spec-assert-str +spec-name: Specification String Assert List +spec-type: spec-assert-str-list +type: spec diff --git a/spec-spec/spec/spec-assert-str.yml b/spec-spec/spec/spec-assert-str.yml new file mode 100644 index 00000000..915da6ed --- /dev/null +++ b/spec-spec/spec/spec-assert-str.yml @@ -0,0 +1,94 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: | + A value of this type shall be an expression which asserts that the string of + the specified attribute satisfies the required constraints. +spec-example: null +spec-info: + dict: + attributes: + and: + description: | + The *and* operator evaluates to the *logical and* of the evaluation + results of the expressions in the list. + spec-type: spec-assert-str-list + contains: + description: | + The *contains* operator evaluates to true, if the string to check + converted to lower case with all white space characters converted to + a single space character contains a string of the list of strings of + this attribute, otherwise to false. + spec-type: list-str + eq: + description: | + The *eq* operator evaluates to true, if the string to check is equal + to the value of this attribute, otherwise to false. + spec-type: str + ge: + description: | + The *ge* operator evaluates to true, if the string to check is + greater than or equal to the value of this attribute, otherwise to + false. + spec-type: str + gt: + description: | + The *gt* operator evaluates to true, if the string to check is + greater than the value of this attribute, otherwise to false. + spec-type: str + in: + description: | + The *in* operator evaluates to true, if the string to check is + contained in the list of strings of this attribute, otherwise to + false. + spec-type: list-str + le: + description: | + The *le* operator evaluates to true, if the string to check is less + than or equal to the value of this attribute, otherwise to false. + spec-type: str + lt: + description: | + The *lt* operator evaluates to true, if the string to check is less + than the value of this attribute, otherwise to false. + spec-type: str + ne: + description: | + The *ne* operator evaluates to true, if the string to check is not + equal to the value of this attribute, otherwise to false. + spec-type: str + not: + description: | + The *not* operator evaluates to the *logical not* of the evaluation + results of the expression. + spec-type: spec-assert-str + or: + description: | + The *or* operator evaluates to the *logical or* of the evaluation + results of the expressions in the list. + spec-type: spec-assert-str-list + re: + description: | + The *re* operator evaluates to true, if the string to check matches + with the regular expression of this attribute, otherwise to false. + spec-type: str + uid: + description: | + The *uid* operator evaluates to true, if the string is a valid UID, + otherwise to false. + spec-type: none + description: | + Each attribute defines an operator. + mandatory-attributes: exactly-one + list: + description: | + This list of expressions evaluates to the *logical or* of the evaluation + results of the expressions in the list. + spec-type: spec-assert-str +spec-name: Specification String Assert +spec-type: spec-assert-str +type: spec diff --git a/spec-spec/spec/spec-attribute-value.yml b/spec-spec/spec/spec-attribute-value.yml new file mode 100644 index 00000000..d44e2256 --- /dev/null +++ b/spec-spec/spec/spec-attribute-value.yml @@ -0,0 +1,26 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + dict: + attributes: + description: + description: | + It shall be the description of the attribute value. + spec-type: optional-str + spec-type: + description: | + It shall be the specification type of the attribute value. + spec-type: name + description: | + This set of attributes specifies an attribute value. + mandatory-attributes: all +spec-name: Specification Attribute Value +spec-type: spec-attribute-value +type: spec diff --git a/spec-spec/spec/spec-attributes.yml b/spec-spec/spec/spec-attributes.yml new file mode 100644 index 00000000..eb489783 --- /dev/null +++ b/spec-spec/spec/spec-attributes.yml @@ -0,0 +1,24 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + dict: + attributes: {} + description: null + generic-attributes: + description: | + Each generic attribute specifies an explicit attribute of the attribute + set. The key of the each generic attribute defines the attribute key + of the explicit attribute. + key-spec-type: name + value-spec-type: spec-attribute-value + mandatory-attributes: none +spec-name: Specification Explicit Attributes +spec-type: spec-attributes +type: spec diff --git a/spec-spec/spec/spec-bool.yml b/spec-spec/spec/spec-bool.yml new file mode 100644 index 00000000..e23f3b1f --- /dev/null +++ b/spec-spec/spec/spec-bool.yml @@ -0,0 +1,33 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + dict: + attributes: + assert: + description: | + This optional attribute defines the value constraint of the specified + boolean value. If the value of the assert attribute is true, then + the value of the specified boolean value shall be true. If the value + of the assert attribute is false, then the value of the specified + boolean value shall be false. In case the assert attribute is not + present, then the value of the specified boolean value may be true or + false. + spec-type: bool + description: + description: | + It shall be the description of the specified boolean value. + spec-type: optional-str + description: | + This attribute set specifies a boolean value. + mandatory-attributes: + - description +spec-name: Specification Boolean Value +spec-type: spec-bool +type: spec diff --git a/spec-spec/spec/spec-dict.yml b/spec-spec/spec/spec-dict.yml new file mode 100644 index 00000000..1fae4d15 --- /dev/null +++ b/spec-spec/spec/spec-dict.yml @@ -0,0 +1,37 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + dict: + attributes: + attributes: + description: | + It shall specify the explicit attributes of the attribute set. + spec-type: spec-attributes + description: + description: | + It shall be the description of the attribute set. + spec-type: optional-str + generic-attributes: + description: | + It shall specify the generic attributes of the attribute set. + spec-type: spec-generic-attributes + mandatory-attributes: + description: | + It shall specify the mandatory attributes of the attribute set. + spec-type: spec-mandatory-attributes + description: | + This set of attributes specifies a set of attributes. + mandatory-attributes: + - attributes + - description + - mandatory-attributes +spec-name: Specification Attribute Set +spec-type: spec-dict +type: spec diff --git a/spec-spec/spec/spec-float.yml b/spec-spec/spec/spec-float.yml new file mode 100644 index 00000000..1f831eb8 --- /dev/null +++ b/spec-spec/spec/spec-float.yml @@ -0,0 +1,30 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + dict: + attributes: + assert: + description: | + This optional attribute defines the value constraints of the + specified floating-point value. In case the assert attribute is not + present, then the value of the specified floating-point value may be + every valid floating-point number. + spec-type: spec-assert-float + description: + description: | + It shall be the description of the specified floating-point value. + spec-type: optional-str + description: | + This set of attributes specifies a floating-point value. + mandatory-attributes: + - description +spec-name: Specification Floating-Point Value +spec-type: spec-float +type: spec diff --git a/spec-spec/spec/spec-generic-attributes.yml b/spec-spec/spec/spec-generic-attributes.yml new file mode 100644 index 00000000..8f9b4180 --- /dev/null +++ b/spec-spec/spec/spec-generic-attributes.yml @@ -0,0 +1,33 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + dict: + attributes: + description: + description: | + It shall be the description of the generic attributes. + spec-type: optional-str + key-spec-type: + description: | + It shall be the specification type of the generic attribute keys. + spec-type: name + value-spec-type: + description: | + It shall be the specification type of the generic attribute values. + spec-type: name + description: | + This set of attributes specifies generic attributes. Generic attributes + are attributes which are not explicitly specified by + ${spec-attributes:/spec-name}. They are restricted to uniform attribute + key and value types. + mandatory-attributes: all +spec-name: Specification Generic Attributes +spec-type: spec-generic-attributes +type: spec diff --git a/spec-spec/spec/spec-info.yml b/spec-spec/spec/spec-info.yml new file mode 100644 index 00000000..5bdbeee0 --- /dev/null +++ b/spec-spec/spec/spec-info.yml @@ -0,0 +1,46 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + dict: + attributes: + bool: + description: | + It shall specify a boolean value. + spec-type: spec-bool + dict: + description: | + It shall specify a set of attributes. + spec-type: spec-dict + float: + description: | + It shall specify a floating-point value. + spec-type: spec-float + int: + description: | + It shall specify an integer value. + spec-type: spec-int + list: + description: | + It shall specify a list of attributes or values. + spec-type: spec-list + none: + description: | + It specifies that no value is required. + spec-type: none + str: + description: | + It shall specify a string. + spec-type: spec-str + description: | + This set of attributes specifies attribute values. + mandatory-attributes: at-least-one +spec-name: Specification Information +spec-type: spec-info +type: spec diff --git a/spec-spec/spec/spec-int.yml b/spec-spec/spec/spec-int.yml new file mode 100644 index 00000000..080a3a9d --- /dev/null +++ b/spec-spec/spec/spec-int.yml @@ -0,0 +1,30 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + dict: + attributes: + assert: + description: | + This optional attribute defines the value constraints of the + specified integer value. In case the assert attribute is not + present, then the value of the specified integer value may be every + valid integer number. + spec-type: spec-assert-int + description: + description: | + It shall be the description of the specified integer value. + spec-type: optional-str + description: | + This set of attributes specifies an integer value. + mandatory-attributes: + - description +spec-name: Specification Integer Value +spec-type: spec-int +type: spec diff --git a/spec-spec/spec/spec-list.yml b/spec-spec/spec/spec-list.yml new file mode 100644 index 00000000..b8f87807 --- /dev/null +++ b/spec-spec/spec/spec-list.yml @@ -0,0 +1,26 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + dict: + attributes: + description: + description: | + It shall be the description of the list. + spec-type: optional-str + spec-type: + description: | + It shall be the specification type of elements of the list. + spec-type: name + description: | + This set of attributes specifies a list of attributes or values. + mandatory-attributes: all +spec-name: Specification List +spec-type: spec-list +type: spec diff --git a/spec-spec/spec/spec-mandatory-attributes.yml b/spec-spec/spec/spec-mandatory-attributes.yml new file mode 100644 index 00000000..700de958 --- /dev/null +++ b/spec-spec/spec/spec-mandatory-attributes.yml @@ -0,0 +1,30 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: | + It defines which explicit attributes are mandatory. +spec-example: null +spec-info: + list: + description: | + The list defines the mandatory attributes through their key names. + spec-type: name + str: + assert: + in: + - all + - at-least-one + - at-most-one + - exactly-one + - none + description: | + It defines how many explicit attributes are mandatory. If `none` is + used, then none of the explicit attributes is mandatory, they are all + optional. +spec-name: Specification Mandatory Attributes +spec-type: spec-mandatory-attributes +type: spec diff --git a/spec-spec/spec/spec-member.yml b/spec-spec/spec/spec-member.yml new file mode 100644 index 00000000..790500ef --- /dev/null +++ b/spec-spec/spec/spec-member.yml @@ -0,0 +1,22 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +- role: spec-refinement + spec-key: role + spec-value: spec-member + uid: link +spec-description: null +spec-example: null +spec-info: + dict: + attributes: {} + description: | + It defines the specification membership role of links. + mandatory-attributes: all +spec-name: Specification Member Link Role +spec-type: spec-member +type: spec diff --git a/spec-spec/spec/spec-refinement.yml b/spec-spec/spec/spec-refinement.yml new file mode 100644 index 00000000..8fd16da1 --- /dev/null +++ b/spec-spec/spec/spec-refinement.yml @@ -0,0 +1,32 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +- role: spec-refinement + spec-key: role + spec-value: spec-refinement + uid: link +spec-description: null +spec-example: null +spec-info: + dict: + attributes: + spec-key: + description: | + It shall be the specification type refinement attribute key of the + specification refinement. + spec-type: name + spec-value: + description: | + It shall be the specification type refinement attribute value of the + specification refinement. + spec-type: name + description: | + It defines the specification refinement role of links. + mandatory-attributes: all +spec-name: Specification Refinement Link Role +spec-type: spec-refinement +type: spec diff --git a/spec-spec/spec/spec-str.yml b/spec-spec/spec/spec-str.yml new file mode 100644 index 00000000..f83dae5e --- /dev/null +++ b/spec-spec/spec/spec-str.yml @@ -0,0 +1,29 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +spec-description: null +spec-example: null +spec-info: + dict: + attributes: + assert: + description: | + This optional attribute defines the constraints of the specified + string. In case the assert attribute is not present, then the + specified string may be every valid string. + spec-type: spec-assert-str + description: + description: | + It shall be the description of the specified string attribute. + spec-type: optional-str + description: | + This set of attributes specifies a string. + mandatory-attributes: + - description +spec-name: Specification String Value +spec-type: spec-str +type: spec diff --git a/spec-spec/spec/spec.yml b/spec-spec/spec/spec.yml new file mode 100644 index 00000000..e67e920e --- /dev/null +++ b/spec-spec/spec/spec.yml @@ -0,0 +1,72 @@ +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) +enabled-by: true +links: +- role: spec-member + uid: root +- role: spec-refinement + spec-key: type + spec-value: spec + uid: root +spec-description: null +spec-example: | + SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause + copyrights: + - Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) + enabled-by: true + links: + - role: spec-member + uid: root + - role: spec-refinement + spec-key: type + spec-value: example + uid: root + spec-description: null + spec-example: null + spec-info: + dict: + attributes: + an-example-attribute: + description: | + It shall be an example. + spec-type: optional-str + example-number: + description: | + It shall be the example number. + spec-type: int + description: | + This set of attributes specifies an example. + mandatory-attributes: all + spec-name: Example Item Type + spec-type: spec + type: spec +spec-info: + dict: + attributes: + spec-description: + description: | + It shall be the description of the specification type. + spec-type: optional-str + spec-example: + description: | + If the value is present, then it shall be an example of the + specification type. + spec-type: optional-str + spec-info: + description: null + spec-type: spec-info + spec-name: + description: | + It shall be the human readable name of the specification type. + spec-type: optional-str + spec-type: + description: | + It shall the specification type. + spec-type: name + description: | + This set of attributes specifies specification types. + mandatory-attributes: all +spec-name: Specification Item Type +spec-type: spec +type: spec diff --git a/spec/spec/copyright.yml b/spec/spec/copyright.yml deleted file mode 100644 index f5e0ffab..00000000 --- a/spec/spec/copyright.yml +++ /dev/null @@ -1,21 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -spec-description: null -spec-example: null -spec-info: - str: - assert: - - re: ^\s*Copyright\s+\(C\)\s+[0-9]+,\s*[0-9]+\s+.+\s*$ - - re: ^\s*Copyright\s+\(C\)\s+[0-9]+\s+.+\s*$ - - re: ^\s*Copyright\s+\(C\)\s+.+\s*$ - description: | - It shall be a copyright statement of a copyright holder of the - specification item. -spec-name: Copyright -spec-type: copyright -type: spec diff --git a/spec/spec/copyrights.yml b/spec/spec/copyrights.yml deleted file mode 100644 index 522e4f43..00000000 --- a/spec/spec/copyrights.yml +++ /dev/null @@ -1,16 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -spec-description: null -spec-example: null -spec-info: - list: - description: null - spec-type: copyright -spec-name: Copyrights Type -spec-type: copyrights -type: spec diff --git a/spec/spec/enabled-by-list.yml b/spec/spec/enabled-by-list.yml deleted file mode 100644 index f84fff28..00000000 --- a/spec/spec/enabled-by-list.yml +++ /dev/null @@ -1,16 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -spec-description: null -spec-example: null -spec-info: - list: - description: null - spec-type: enabled-by -spec-name: Enabled-By Expression List -spec-type: enabled-by-list -type: spec diff --git a/spec/spec/enabled-by.yml b/spec/spec/enabled-by.yml deleted file mode 100644 index c88d74e4..00000000 --- a/spec/spec/enabled-by.yml +++ /dev/null @@ -1,53 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -spec-description: | - A value of this type shall be an expression which defines under which - conditions the specification item or parts of it are enabled. The expression - is evaluated with the use of an *enabled set*. This is a set of strings - which indicate enabled features. -spec-example: | - enabled-by: - and: - - RTEMS_NETWORKING - - not: RTEMS_SMP -spec-info: - bool: - description: | - This expression evaluates directly to the boolean value. - dict: - attributes: - and: - description: | - The *and* operator evaluates to the *logical and* of the evaluation - results of the expressions in the list. - spec-type: enabled-by-list - not: - description: | - The *not* operator evaluates to the *logical not* of the evaluation - results of the expression. - spec-type: enabled-by - or: - description: | - The *or* operator evaluates to the *logical or* of the evaluation - results of the expressions in the list. - spec-type: enabled-by-list - description: | - Each attribute defines an operator. - mandatory-attributes: exactly-one - list: - description: | - This list of expressions evaluates to the *logical or* of the evaluation - results of the expressions in the list. - spec-type: enabled-by - str: - description: | - If the value is in the *enabled set*, this expression evaluates to true, - otherwise to false. -spec-name: Enabled-By Expression -spec-type: enabled-by -type: spec diff --git a/spec/spec/link.yml b/spec/spec/link.yml deleted file mode 100644 index 3c7fb5de..00000000 --- a/spec/spec/link.yml +++ /dev/null @@ -1,28 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -spec-description: null -spec-example: null -spec-info: - dict: - attributes: - role: - description: | - It shall be the role of the link. - spec-type: name - uid: - description: | - It shall be the absolute or relative UID of the link target item. - spec-type: uid - description: | - This set of attributes specifies a link from one specification item to - another specification item. The links in a list are ordered. The first - link in the list is processed first. - mandatory-attributes: all -spec-name: Link -spec-type: link -type: spec diff --git a/spec/spec/links.yml b/spec/spec/links.yml deleted file mode 100644 index 665f9135..00000000 --- a/spec/spec/links.yml +++ /dev/null @@ -1,16 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -spec-description: null -spec-example: null -spec-info: - list: - description: null - spec-type: link -spec-name: Link List -spec-type: links -type: spec diff --git a/spec/spec/list-str.yml b/spec/spec/list-str.yml deleted file mode 100644 index db3dd518..00000000 --- a/spec/spec/list-str.yml +++ /dev/null @@ -1,16 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -spec-description: null -spec-example: null -spec-info: - list: - description: null - spec-type: str -spec-name: String List -spec-type: list-str -type: spec diff --git a/spec/spec/optional-str.yml b/spec/spec/optional-str.yml deleted file mode 100644 index 3f409247..00000000 --- a/spec/spec/optional-str.yml +++ /dev/null @@ -1,16 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -spec-description: null -spec-example: null -spec-info: - none: null - str: - description: null -spec-name: Optional String -spec-type: optional-str -type: spec diff --git a/spec/spec/root.yml b/spec/spec/root.yml deleted file mode 100644 index 58d65280..00000000 --- a/spec/spec/root.yml +++ /dev/null @@ -1,51 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2019, 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: [] -spec-description: null -spec-example: null -spec-info: - dict: - attributes: - SPDX-License-Identifier: - description: | - It shall be the license of the item. - spec-type: spdx-license-identifier - copyrights: - description: | - It shall be the list of copyright statements of the item. - spec-type: copyrights - enabled-by: - description: | - It shall define the conditions under which the item is enabled. - spec-type: enabled-by - links: - description: null - spec-type: links - type: - description: | - It shall be the item type. The selection of types and the level of - detail depends on a particular standard and product model. We need - enough flexibility to be in line with ECSS-E-ST-10-06 and possible - future applications of other standards. The item type may be refined - further with additional type-specific subtypes. - spec-type: name - description: | - The technical specification of RTEMS will contain for example - requirements, specializations of requirements, interface specifications, - test suites, test cases, and requirement validations. These things will - be called *specification items* or just *items* if it is clear from the - context. - - The specification items are stored in files in ${/glossary/yaml:/term} - format with a defined set of key-value pairs called attributes. Each - attribute key name shall be a :ref:`SpecTypeName`. In particular, key - names which begin with an underscore (``_``) are reserved for internal - use in tools. - - This is the root specification item type. - mandatory-attributes: all -spec-name: Root Item Type -spec-type: root -type: spec diff --git a/spec/spec/spdx-license-identifier.yml b/spec/spec/spdx-license-identifier.yml deleted file mode 100644 index 874cb7a0..00000000 --- a/spec/spec/spdx-license-identifier.yml +++ /dev/null @@ -1,21 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -spec-description: null -spec-example: null -spec-info: - str: - assert: - - eq: CC-BY-SA-4.0 OR BSD-2-Clause - - eq: BSD-2-Clause - - eq: CC-BY-SA-4.0 - description: | - It defines the license of the item expressed though an SPDX License - Identifier. -spec-name: SPDX License Identifier -spec-type: spdx-license-identifier -type: spec diff --git a/spec/spec/spec-assert-float-list.yml b/spec/spec/spec-assert-float-list.yml deleted file mode 100644 index 30addf5c..00000000 --- a/spec/spec/spec-assert-float-list.yml +++ /dev/null @@ -1,16 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -spec-description: null -spec-example: null -spec-info: - list: - description: null - spec-type: spec-assert-float -spec-name: Specification Floating-Point Assert List -spec-type: spec-assert-float-list -type: spec diff --git a/spec/spec/spec-assert-float.yml b/spec/spec/spec-assert-float.yml deleted file mode 100644 index fd6f2564..00000000 --- a/spec/spec/spec-assert-float.yml +++ /dev/null @@ -1,71 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -spec-description: | - A value of this type shall be an expression which asserts that the - floating-point value of the specified attribute satisfies the required - constraints. -spec-example: null -spec-info: - dict: - attributes: - and: - description: | - The *and* operator evaluates to the *logical and* of the evaluation - results of the expressions in the list. - spec-type: spec-assert-float-list - eq: - description: | - The *eq* operator evaluates to true, if the value to check is equal - to the value of this attribute, otherwise to false. - spec-type: float - ge: - description: | - The *ge* operator evaluates to true, if the value to check is greater - than or equal to the value of this attribute, otherwise to false. - spec-type: float - gt: - description: | - The *gt* operator evaluates to true, if the value to check is greater - than the value of this attribute, otherwise to false. - spec-type: float - le: - description: | - The *le* operator evaluates to true, if the value to check is less - than or equal to the value of this attribute, otherwise to false. - spec-type: float - lt: - description: | - The *lt* operator evaluates to true, if the value to check is less - than the value of this attribute, otherwise to false. - spec-type: float - ne: - description: | - The *ne* operator evaluates to true, if the value to check is not - equal to the value of this attribute, otherwise to false. - spec-type: float - not: - description: | - The *not* operator evaluates to the *logical not* of the evaluation - results of the expression. - spec-type: spec-assert-float - or: - description: | - The *or* operator evaluates to the *logical or* of the evaluation - results of the expressions in the list. - spec-type: spec-assert-float-list - description: | - Each attribute defines an operator. - mandatory-attributes: exactly-one - list: - description: | - This list of expressions evaluates to the *logical or* of the evaluation - results of the expressions in the list. - spec-type: spec-assert-float -spec-name: Specification Floating-Point Assert -spec-type: spec-assert-float -type: spec diff --git a/spec/spec/spec-assert-int-list.yml b/spec/spec/spec-assert-int-list.yml deleted file mode 100644 index 98f20673..00000000 --- a/spec/spec/spec-assert-int-list.yml +++ /dev/null @@ -1,16 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -spec-description: null -spec-example: null -spec-info: - list: - description: null - spec-type: spec-assert-int -spec-name: Specification Integer Assert List -spec-type: spec-assert-int-list -type: spec diff --git a/spec/spec/spec-assert-int.yml b/spec/spec/spec-assert-int.yml deleted file mode 100644 index ec903b80..00000000 --- a/spec/spec/spec-assert-int.yml +++ /dev/null @@ -1,70 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -spec-description: | - A value of this type shall be an expression which asserts that the integer - value of the specified attribute satisfies the required constraints. -spec-example: null -spec-info: - dict: - attributes: - and: - description: | - The *and* operator evaluates to the *logical and* of the evaluation - results of the expressions in the list. - spec-type: spec-assert-int-list - eq: - description: | - The *eq* operator evaluates to true, if the value to check is equal - to the value of this attribute, otherwise to false. - spec-type: int - ge: - description: | - The *ge* operator evaluates to true, if the value to check is greater - than or equal to the value of this attribute, otherwise to false. - spec-type: int - gt: - description: | - The *gt* operator evaluates to true, if the value to check is greater - than the value of this attribute, otherwise to false. - spec-type: int - le: - description: | - The *le* operator evaluates to true, if the value to check is less - than or equal to the value of this attribute, otherwise to false. - spec-type: int - lt: - description: | - The *lt* operator evaluates to true, if the value to check is less - than the value of this attribute, otherwise to false. - spec-type: int - ne: - description: | - The *ne* operator evaluates to true, if the value to check is not - equal to the value of this attribute, otherwise to false. - spec-type: int - not: - description: | - The *not* operator evaluates to the *logical not* of the evaluation - results of the expression. - spec-type: spec-assert-int - or: - description: | - The *or* operator evaluates to the *logical or* of the evaluation - results of the expressions in the list. - spec-type: spec-assert-int-list - description: | - Each attribute defines an operator. - mandatory-attributes: exactly-one - list: - description: | - This list of expressions evaluates to the *logical or* of the evaluation - results of the expressions in the list. - spec-type: spec-assert-int -spec-name: Specification Integer Assert -spec-type: spec-assert-int -type: spec diff --git a/spec/spec/spec-assert-str-list.yml b/spec/spec/spec-assert-str-list.yml deleted file mode 100644 index 290c0bd9..00000000 --- a/spec/spec/spec-assert-str-list.yml +++ /dev/null @@ -1,16 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -spec-description: null -spec-example: null -spec-info: - list: - description: null - spec-type: spec-assert-str -spec-name: Specification String Assert List -spec-type: spec-assert-str-list -type: spec diff --git a/spec/spec/spec-assert-str.yml b/spec/spec/spec-assert-str.yml deleted file mode 100644 index 915da6ed..00000000 --- a/spec/spec/spec-assert-str.yml +++ /dev/null @@ -1,94 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -spec-description: | - A value of this type shall be an expression which asserts that the string of - the specified attribute satisfies the required constraints. -spec-example: null -spec-info: - dict: - attributes: - and: - description: | - The *and* operator evaluates to the *logical and* of the evaluation - results of the expressions in the list. - spec-type: spec-assert-str-list - contains: - description: | - The *contains* operator evaluates to true, if the string to check - converted to lower case with all white space characters converted to - a single space character contains a string of the list of strings of - this attribute, otherwise to false. - spec-type: list-str - eq: - description: | - The *eq* operator evaluates to true, if the string to check is equal - to the value of this attribute, otherwise to false. - spec-type: str - ge: - description: | - The *ge* operator evaluates to true, if the string to check is - greater than or equal to the value of this attribute, otherwise to - false. - spec-type: str - gt: - description: | - The *gt* operator evaluates to true, if the string to check is - greater than the value of this attribute, otherwise to false. - spec-type: str - in: - description: | - The *in* operator evaluates to true, if the string to check is - contained in the list of strings of this attribute, otherwise to - false. - spec-type: list-str - le: - description: | - The *le* operator evaluates to true, if the string to check is less - than or equal to the value of this attribute, otherwise to false. - spec-type: str - lt: - description: | - The *lt* operator evaluates to true, if the string to check is less - than the value of this attribute, otherwise to false. - spec-type: str - ne: - description: | - The *ne* operator evaluates to true, if the string to check is not - equal to the value of this attribute, otherwise to false. - spec-type: str - not: - description: | - The *not* operator evaluates to the *logical not* of the evaluation - results of the expression. - spec-type: spec-assert-str - or: - description: | - The *or* operator evaluates to the *logical or* of the evaluation - results of the expressions in the list. - spec-type: spec-assert-str-list - re: - description: | - The *re* operator evaluates to true, if the string to check matches - with the regular expression of this attribute, otherwise to false. - spec-type: str - uid: - description: | - The *uid* operator evaluates to true, if the string is a valid UID, - otherwise to false. - spec-type: none - description: | - Each attribute defines an operator. - mandatory-attributes: exactly-one - list: - description: | - This list of expressions evaluates to the *logical or* of the evaluation - results of the expressions in the list. - spec-type: spec-assert-str -spec-name: Specification String Assert -spec-type: spec-assert-str -type: spec diff --git a/spec/spec/spec-attribute-value.yml b/spec/spec/spec-attribute-value.yml deleted file mode 100644 index d44e2256..00000000 --- a/spec/spec/spec-attribute-value.yml +++ /dev/null @@ -1,26 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -spec-description: null -spec-example: null -spec-info: - dict: - attributes: - description: - description: | - It shall be the description of the attribute value. - spec-type: optional-str - spec-type: - description: | - It shall be the specification type of the attribute value. - spec-type: name - description: | - This set of attributes specifies an attribute value. - mandatory-attributes: all -spec-name: Specification Attribute Value -spec-type: spec-attribute-value -type: spec diff --git a/spec/spec/spec-attributes.yml b/spec/spec/spec-attributes.yml deleted file mode 100644 index eb489783..00000000 --- a/spec/spec/spec-attributes.yml +++ /dev/null @@ -1,24 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -spec-description: null -spec-example: null -spec-info: - dict: - attributes: {} - description: null - generic-attributes: - description: | - Each generic attribute specifies an explicit attribute of the attribute - set. The key of the each generic attribute defines the attribute key - of the explicit attribute. - key-spec-type: name - value-spec-type: spec-attribute-value - mandatory-attributes: none -spec-name: Specification Explicit Attributes -spec-type: spec-attributes -type: spec diff --git a/spec/spec/spec-bool.yml b/spec/spec/spec-bool.yml deleted file mode 100644 index e23f3b1f..00000000 --- a/spec/spec/spec-bool.yml +++ /dev/null @@ -1,33 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -spec-description: null -spec-example: null -spec-info: - dict: - attributes: - assert: - description: | - This optional attribute defines the value constraint of the specified - boolean value. If the value of the assert attribute is true, then - the value of the specified boolean value shall be true. If the value - of the assert attribute is false, then the value of the specified - boolean value shall be false. In case the assert attribute is not - present, then the value of the specified boolean value may be true or - false. - spec-type: bool - description: - description: | - It shall be the description of the specified boolean value. - spec-type: optional-str - description: | - This attribute set specifies a boolean value. - mandatory-attributes: - - description -spec-name: Specification Boolean Value -spec-type: spec-bool -type: spec diff --git a/spec/spec/spec-dict.yml b/spec/spec/spec-dict.yml deleted file mode 100644 index 1fae4d15..00000000 --- a/spec/spec/spec-dict.yml +++ /dev/null @@ -1,37 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -spec-description: null -spec-example: null -spec-info: - dict: - attributes: - attributes: - description: | - It shall specify the explicit attributes of the attribute set. - spec-type: spec-attributes - description: - description: | - It shall be the description of the attribute set. - spec-type: optional-str - generic-attributes: - description: | - It shall specify the generic attributes of the attribute set. - spec-type: spec-generic-attributes - mandatory-attributes: - description: | - It shall specify the mandatory attributes of the attribute set. - spec-type: spec-mandatory-attributes - description: | - This set of attributes specifies a set of attributes. - mandatory-attributes: - - attributes - - description - - mandatory-attributes -spec-name: Specification Attribute Set -spec-type: spec-dict -type: spec diff --git a/spec/spec/spec-float.yml b/spec/spec/spec-float.yml deleted file mode 100644 index 1f831eb8..00000000 --- a/spec/spec/spec-float.yml +++ /dev/null @@ -1,30 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -spec-description: null -spec-example: null -spec-info: - dict: - attributes: - assert: - description: | - This optional attribute defines the value constraints of the - specified floating-point value. In case the assert attribute is not - present, then the value of the specified floating-point value may be - every valid floating-point number. - spec-type: spec-assert-float - description: - description: | - It shall be the description of the specified floating-point value. - spec-type: optional-str - description: | - This set of attributes specifies a floating-point value. - mandatory-attributes: - - description -spec-name: Specification Floating-Point Value -spec-type: spec-float -type: spec diff --git a/spec/spec/spec-generic-attributes.yml b/spec/spec/spec-generic-attributes.yml deleted file mode 100644 index 8f9b4180..00000000 --- a/spec/spec/spec-generic-attributes.yml +++ /dev/null @@ -1,33 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -spec-description: null -spec-example: null -spec-info: - dict: - attributes: - description: - description: | - It shall be the description of the generic attributes. - spec-type: optional-str - key-spec-type: - description: | - It shall be the specification type of the generic attribute keys. - spec-type: name - value-spec-type: - description: | - It shall be the specification type of the generic attribute values. - spec-type: name - description: | - This set of attributes specifies generic attributes. Generic attributes - are attributes which are not explicitly specified by - ${spec-attributes:/spec-name}. They are restricted to uniform attribute - key and value types. - mandatory-attributes: all -spec-name: Specification Generic Attributes -spec-type: spec-generic-attributes -type: spec diff --git a/spec/spec/spec-info.yml b/spec/spec/spec-info.yml deleted file mode 100644 index 5bdbeee0..00000000 --- a/spec/spec/spec-info.yml +++ /dev/null @@ -1,46 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -spec-description: null -spec-example: null -spec-info: - dict: - attributes: - bool: - description: | - It shall specify a boolean value. - spec-type: spec-bool - dict: - description: | - It shall specify a set of attributes. - spec-type: spec-dict - float: - description: | - It shall specify a floating-point value. - spec-type: spec-float - int: - description: | - It shall specify an integer value. - spec-type: spec-int - list: - description: | - It shall specify a list of attributes or values. - spec-type: spec-list - none: - description: | - It specifies that no value is required. - spec-type: none - str: - description: | - It shall specify a string. - spec-type: spec-str - description: | - This set of attributes specifies attribute values. - mandatory-attributes: at-least-one -spec-name: Specification Information -spec-type: spec-info -type: spec diff --git a/spec/spec/spec-int.yml b/spec/spec/spec-int.yml deleted file mode 100644 index 080a3a9d..00000000 --- a/spec/spec/spec-int.yml +++ /dev/null @@ -1,30 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -spec-description: null -spec-example: null -spec-info: - dict: - attributes: - assert: - description: | - This optional attribute defines the value constraints of the - specified integer value. In case the assert attribute is not - present, then the value of the specified integer value may be every - valid integer number. - spec-type: spec-assert-int - description: - description: | - It shall be the description of the specified integer value. - spec-type: optional-str - description: | - This set of attributes specifies an integer value. - mandatory-attributes: - - description -spec-name: Specification Integer Value -spec-type: spec-int -type: spec diff --git a/spec/spec/spec-list.yml b/spec/spec/spec-list.yml deleted file mode 100644 index b8f87807..00000000 --- a/spec/spec/spec-list.yml +++ /dev/null @@ -1,26 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -spec-description: null -spec-example: null -spec-info: - dict: - attributes: - description: - description: | - It shall be the description of the list. - spec-type: optional-str - spec-type: - description: | - It shall be the specification type of elements of the list. - spec-type: name - description: | - This set of attributes specifies a list of attributes or values. - mandatory-attributes: all -spec-name: Specification List -spec-type: spec-list -type: spec diff --git a/spec/spec/spec-mandatory-attributes.yml b/spec/spec/spec-mandatory-attributes.yml deleted file mode 100644 index 700de958..00000000 --- a/spec/spec/spec-mandatory-attributes.yml +++ /dev/null @@ -1,30 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -spec-description: | - It defines which explicit attributes are mandatory. -spec-example: null -spec-info: - list: - description: | - The list defines the mandatory attributes through their key names. - spec-type: name - str: - assert: - in: - - all - - at-least-one - - at-most-one - - exactly-one - - none - description: | - It defines how many explicit attributes are mandatory. If `none` is - used, then none of the explicit attributes is mandatory, they are all - optional. -spec-name: Specification Mandatory Attributes -spec-type: spec-mandatory-attributes -type: spec diff --git a/spec/spec/spec-member.yml b/spec/spec/spec-member.yml deleted file mode 100644 index 790500ef..00000000 --- a/spec/spec/spec-member.yml +++ /dev/null @@ -1,22 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -- role: spec-refinement - spec-key: role - spec-value: spec-member - uid: link -spec-description: null -spec-example: null -spec-info: - dict: - attributes: {} - description: | - It defines the specification membership role of links. - mandatory-attributes: all -spec-name: Specification Member Link Role -spec-type: spec-member -type: spec diff --git a/spec/spec/spec-refinement.yml b/spec/spec/spec-refinement.yml deleted file mode 100644 index 8fd16da1..00000000 --- a/spec/spec/spec-refinement.yml +++ /dev/null @@ -1,32 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -- role: spec-refinement - spec-key: role - spec-value: spec-refinement - uid: link -spec-description: null -spec-example: null -spec-info: - dict: - attributes: - spec-key: - description: | - It shall be the specification type refinement attribute key of the - specification refinement. - spec-type: name - spec-value: - description: | - It shall be the specification type refinement attribute value of the - specification refinement. - spec-type: name - description: | - It defines the specification refinement role of links. - mandatory-attributes: all -spec-name: Specification Refinement Link Role -spec-type: spec-refinement -type: spec diff --git a/spec/spec/spec-str.yml b/spec/spec/spec-str.yml deleted file mode 100644 index f83dae5e..00000000 --- a/spec/spec/spec-str.yml +++ /dev/null @@ -1,29 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -spec-description: null -spec-example: null -spec-info: - dict: - attributes: - assert: - description: | - This optional attribute defines the constraints of the specified - string. In case the assert attribute is not present, then the - specified string may be every valid string. - spec-type: spec-assert-str - description: - description: | - It shall be the description of the specified string attribute. - spec-type: optional-str - description: | - This set of attributes specifies a string. - mandatory-attributes: - - description -spec-name: Specification String Value -spec-type: spec-str -type: spec diff --git a/spec/spec/spec.yml b/spec/spec/spec.yml deleted file mode 100644 index e67e920e..00000000 --- a/spec/spec/spec.yml +++ /dev/null @@ -1,72 +0,0 @@ -SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause -copyrights: -- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) -enabled-by: true -links: -- role: spec-member - uid: root -- role: spec-refinement - spec-key: type - spec-value: spec - uid: root -spec-description: null -spec-example: | - SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause - copyrights: - - Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) - enabled-by: true - links: - - role: spec-member - uid: root - - role: spec-refinement - spec-key: type - spec-value: example - uid: root - spec-description: null - spec-example: null - spec-info: - dict: - attributes: - an-example-attribute: - description: | - It shall be an example. - spec-type: optional-str - example-number: - description: | - It shall be the example number. - spec-type: int - description: | - This set of attributes specifies an example. - mandatory-attributes: all - spec-name: Example Item Type - spec-type: spec - type: spec -spec-info: - dict: - attributes: - spec-description: - description: | - It shall be the description of the specification type. - spec-type: optional-str - spec-example: - description: | - If the value is present, then it shall be an example of the - specification type. - spec-type: optional-str - spec-info: - description: null - spec-type: spec-info - spec-name: - description: | - It shall be the human readable name of the specification type. - spec-type: optional-str - spec-type: - description: | - It shall the specification type. - spec-type: name - description: | - This set of attributes specifies specification types. - mandatory-attributes: all -spec-name: Specification Item Type -spec-type: spec -type: spec -- cgit v1.2.3