From b9f3aa7a96c5ae96fb52f3420dbae63a99eb4e08 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Mon, 18 May 2020 10:20:58 +0200 Subject: spec: Add specification of specification items --- spec/spec/copyright.yml | 21 ++++++++ spec/spec/copyrights.yml | 16 ++++++ spec/spec/enabled-by-list.yml | 16 ++++++ spec/spec/enabled-by.yml | 49 ++++++++++++++++++ spec/spec/link.yml | 26 ++++++++++ spec/spec/links.yml | 17 ++++++ spec/spec/list-str.yml | 17 ++++++ spec/spec/optional-str.yml | 16 ++++++ spec/spec/root.yml | 39 ++++++++++++++ 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 | 28 ++++++++++ spec/spec/spec-attributes.yml | 21 ++++++++ spec/spec/spec-bool.yml | 34 ++++++++++++ spec/spec/spec-dict.yml | 41 +++++++++++++++ spec/spec/spec-float.yml | 31 +++++++++++ spec/spec/spec-generic-attributes.yml | 30 +++++++++++ spec/spec/spec-info.yml | 46 +++++++++++++++++ spec/spec/spec-int.yml | 31 +++++++++++ spec/spec/spec-list.yml | 28 ++++++++++ spec/spec/spec-member.yml | 22 ++++++++ spec/spec/spec-refinement.yml | 33 ++++++++++++ spec/spec/spec-required-attributes.yml | 30 +++++++++++ spec/spec/spec-str.yml | 30 +++++++++++ spec/spec/spec.yml | 74 ++++++++++++++++++++++++++ 30 files changed, 1000 insertions(+) create mode 100644 spec/spec/copyright.yml create mode 100644 spec/spec/copyrights.yml create mode 100644 spec/spec/enabled-by-list.yml create mode 100644 spec/spec/enabled-by.yml create mode 100644 spec/spec/link.yml create mode 100644 spec/spec/links.yml create mode 100644 spec/spec/list-str.yml create mode 100644 spec/spec/optional-str.yml create mode 100644 spec/spec/root.yml create mode 100644 spec/spec/spdx-license-identifier.yml create mode 100644 spec/spec/spec-assert-float-list.yml create mode 100644 spec/spec/spec-assert-float.yml create mode 100644 spec/spec/spec-assert-int-list.yml create mode 100644 spec/spec/spec-assert-int.yml create mode 100644 spec/spec/spec-assert-str-list.yml create mode 100644 spec/spec/spec-assert-str.yml create mode 100644 spec/spec/spec-attribute-value.yml create mode 100644 spec/spec/spec-attributes.yml create mode 100644 spec/spec/spec-bool.yml create mode 100644 spec/spec/spec-dict.yml create mode 100644 spec/spec/spec-float.yml create mode 100644 spec/spec/spec-generic-attributes.yml create mode 100644 spec/spec/spec-info.yml create mode 100644 spec/spec/spec-int.yml create mode 100644 spec/spec/spec-list.yml create mode 100644 spec/spec/spec-member.yml create mode 100644 spec/spec/spec-refinement.yml create mode 100644 spec/spec/spec-required-attributes.yml create mode 100644 spec/spec/spec-str.yml create mode 100644 spec/spec/spec.yml (limited to 'spec') diff --git a/spec/spec/copyright.yml b/spec/spec/copyright.yml new file mode 100644 index 00000000..a8f46080 --- /dev/null +++ b/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: | + A value of this type 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 new file mode 100644 index 00000000..522e4f43 --- /dev/null +++ b/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/enabled-by-list.yml b/spec/spec/enabled-by-list.yml new file mode 100644 index 00000000..f84fff28 --- /dev/null +++ b/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/enabled-by.yml b/spec/spec/enabled-by.yml new file mode 100644 index 00000000..fa7de056 --- /dev/null +++ b/spec/spec/enabled-by.yml @@ -0,0 +1,49 @@ +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: null +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. + required-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 new file mode 100644 index 00000000..748ce840 --- /dev/null +++ b/spec/spec/link.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: + role: + description: | + This mandatory attribute defines the role of the link. + spec-type: name + uid: + description: | + This mandatory attribute defines the link target item UID. + spec-type: uid + description: | + This attribute value shall a link to a specification item. + required-attributes: all +spec-name: Link +spec-type: link +type: spec diff --git a/spec/spec/links.yml b/spec/spec/links.yml new file mode 100644 index 00000000..77092dfa --- /dev/null +++ b/spec/spec/links.yml @@ -0,0 +1,17 @@ +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: | + This attribute value shall be a list of links to specification items. +spec-example: null +spec-info: + list: + description: null + spec-type: link +spec-name: Item Links Type +spec-type: links +type: spec diff --git a/spec/spec/list-str.yml b/spec/spec/list-str.yml new file mode 100644 index 00000000..4d1246fb --- /dev/null +++ b/spec/spec/list-str.yml @@ -0,0 +1,17 @@ +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: | + This attribute value shall a list of strings. +spec-example: null +spec-info: + list: + description: null + spec-type: str +spec-name: String List Type +spec-type: list-str +type: spec diff --git a/spec/spec/optional-str.yml b/spec/spec/optional-str.yml new file mode 100644 index 00000000..3f409247 --- /dev/null +++ b/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/root.yml b/spec/spec/root.yml new file mode 100644 index 00000000..93fd3a9b --- /dev/null +++ b/spec/spec/root.yml @@ -0,0 +1,39 @@ +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: [] +spec-description: null +spec-example: null +spec-info: + dict: + attributes: + SPDX-License-Identifier: + description: | + This mandatory attribute defines the license of this item. + spec-type: spdx-license-identifier + copyrights: + description: | + This mandatory attribute defines the copyright holders and copyright + information of this item. + spec-type: copyrights + enabled-by: + description: | + This mandatory attribute defines the conditions under which this item + is enabled. + spec-type: enabled-by + links: + description: | + This mandatory attribute defines the links of this items to other + items. + spec-type: links + type: + description: | + This mandatory attribute defines the type of this item. + spec-type: name + description: | + This is the root specification item type. + required-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 new file mode 100644 index 00000000..375f3b21 --- /dev/null +++ b/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: | + This attribute value defines the license of this item expressed though an + SPDX License Identifier. +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: null +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 new file mode 100644 index 00000000..2ff8a414 --- /dev/null +++ b/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: Floating-Point Assert Specification 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 new file mode 100644 index 00000000..9ed1a3fd --- /dev/null +++ b/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. + required-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: Floating-Point Assert Specification +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 new file mode 100644 index 00000000..27e689b3 --- /dev/null +++ b/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: Integer Assert Specification 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 new file mode 100644 index 00000000..983e1930 --- /dev/null +++ b/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. + required-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: Integer Assert Specification +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 new file mode 100644 index 00000000..39a54916 --- /dev/null +++ b/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: String Assert Specification 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 new file mode 100644 index 00000000..eccbf710 --- /dev/null +++ b/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. + required-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: String Assert Specification +spec-type: spec-assert-str +type: spec diff --git a/spec/spec/spec-attribute-value.yml b/spec/spec/spec-attribute-value.yml new file mode 100644 index 00000000..f824de54 --- /dev/null +++ b/spec/spec/spec-attribute-value.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: + description: + description: | + This mandatory attribute shall be the description of the specified + attribute. + spec-type: optional-str + spec-type: + description: | + This mandatory attribute defines the specification type of the + specified attribute. + spec-type: name + description: | + This attribute set specifies an attribute value. + required-attributes: all +spec-name: Attribute Value Specification +spec-type: spec-attribute-value +type: spec diff --git a/spec/spec/spec-attributes.yml b/spec/spec/spec-attributes.yml new file mode 100644 index 00000000..c5299138 --- /dev/null +++ b/spec/spec/spec-attributes.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: + dict: + attributes: {} + description: null + generic-attributes: + description: | + The generic attributes specify an attribute set. + spec-type: spec-attribute-value + required-attributes: none +spec-name: Attribute Specification +spec-type: spec-attributes +type: spec diff --git a/spec/spec/spec-bool.yml b/spec/spec/spec-bool.yml new file mode 100644 index 00000000..12f932b6 --- /dev/null +++ b/spec/spec/spec-bool.yml @@ -0,0 +1,34 @@ +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: | + This mandatory attribute shall be the description of the specified + boolean value. + spec-type: optional-str + description: | + This attribute set specifies a boolean value. + required-attributes: + - description +spec-name: Boolean Value Specification +spec-type: spec-bool +type: spec diff --git a/spec/spec/spec-dict.yml b/spec/spec/spec-dict.yml new file mode 100644 index 00000000..411d0370 --- /dev/null +++ b/spec/spec/spec-dict.yml @@ -0,0 +1,41 @@ +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: | + This mandatory attribute defines the explicitly defined attributes of + the specified attribute set. + spec-type: spec-attributes + description: + description: | + This mandatory attribute shall be the description of the specified + attribute set. + spec-type: optional-str + generic-attributes: + description: | + This optional attribute defines the generic attributes of the + specified attribute set. + spec-type: spec-generic-attributes + required-attributes: + description: | + This mandatory attribute defines the required attributes of the + specified attribute set. + spec-type: spec-required-attributes + description: | + This set of attributes specifies a set of attributes. + required-attributes: + - attributes + - description + - required-attributes +spec-name: Attribute Set Specification +spec-type: spec-dict +type: spec diff --git a/spec/spec/spec-float.yml b/spec/spec/spec-float.yml new file mode 100644 index 00000000..1b0e4925 --- /dev/null +++ b/spec/spec/spec-float.yml @@ -0,0 +1,31 @@ +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: | + This mandatory attribute shall be the description of the specified + floating-point value. + spec-type: optional-str + description: | + This attribute set specifies a floating-point value. + required-attributes: + - description +spec-name: Floating-Point Value Specification +spec-type: spec-float +type: spec diff --git a/spec/spec/spec-generic-attributes.yml b/spec/spec/spec-generic-attributes.yml new file mode 100644 index 00000000..71fb976d --- /dev/null +++ b/spec/spec/spec-generic-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: null +spec-example: null +spec-info: + dict: + attributes: + description: + description: | + This mandatory attribute shall be the description of the generic + attributes. + spec-type: optional-str + spec-type: + description: | + This mandatory attribute defines 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 defined. They are restricted to + a uniform attribute value type. + required-attributes: all +spec-name: Generic Attributes Specification +spec-type: spec-generic-attributes +type: spec diff --git a/spec/spec/spec-info.yml b/spec/spec/spec-info.yml new file mode 100644 index 00000000..18ecf5c5 --- /dev/null +++ b/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: | + This attribute specifies a boolean value. + spec-type: spec-bool + dict: + description: | + This attribute specifies a set of attributes. + spec-type: spec-dict + float: + description: | + This attribute specifies a floating-point value. + spec-type: spec-float + int: + description: | + This attribute specifies an integer value. + spec-type: spec-int + list: + description: | + This attribute specifies a list of attributes or values. + spec-type: spec-list + none: + description: | + This attribute indicates that no value is required. + spec-type: none + str: + description: | + This attribute specifies a string. + spec-type: spec-str + description: | + This attribute set specifies attribute values. + required-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 new file mode 100644 index 00000000..2f7394b0 --- /dev/null +++ b/spec/spec/spec-int.yml @@ -0,0 +1,31 @@ +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: | + This mandatory attribute shall be the description of the specified + integer value. + spec-type: optional-str + description: | + This attribute set specifies an integer value. + required-attributes: + - description +spec-name: Integer Value Specification +spec-type: spec-int +type: spec diff --git a/spec/spec/spec-list.yml b/spec/spec/spec-list.yml new file mode 100644 index 00000000..2c60db37 --- /dev/null +++ b/spec/spec/spec-list.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: + description: + description: | + This mandatory attribute shall be the description of the specified + list. + spec-type: optional-str + spec-type: + description: | + This mandatory attribute defines the specification type of elements + of the specified list. + spec-type: name + description: | + This attribute set specifies a list of attributes or values. + required-attributes: all +spec-name: List Specification +spec-type: spec-list +type: spec diff --git a/spec/spec/spec-member.yml b/spec/spec/spec-member.yml new file mode 100644 index 00000000..60707f97 --- /dev/null +++ b/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: | + This specification type defines the specification membership role of links. + required-attributes: none +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 new file mode 100644 index 00000000..e95467ae --- /dev/null +++ b/spec/spec/spec-refinement.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 +- 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: | + This mandatory attribute defines the specification type refinement + attribute key of the specification refinement. + spec-type: name + spec-value: + description: | + This mandatory attribute defines the specification type refinement + attribute value of the specification refinement. + spec-type: name + description: | + This specification type defines the specification refinement role of + links. + required-attributes: all +spec-name: Specification Refinement Link Role +spec-type: spec-refinement +type: spec diff --git a/spec/spec/spec-required-attributes.yml b/spec/spec/spec-required-attributes.yml new file mode 100644 index 00000000..adf6f47b --- /dev/null +++ b/spec/spec/spec-required-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: | + This attribute value defines which of the explicitly defined attributes are + required. +spec-example: null +spec-info: + list: + description: | + This list defines the required attributes through their keys. + spec-type: name + str: + assert: + in: + - all + - at-least-one + - at-most-one + - exactly-one + - none + description: | + This string defines the how many explicitly defined attributes are + required. +spec-name: Required Attributes Specification +spec-type: spec-required-attributes +type: spec diff --git a/spec/spec/spec-str.yml b/spec/spec/spec-str.yml new file mode 100644 index 00000000..1ccba6f4 --- /dev/null +++ b/spec/spec/spec-str.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 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: | + This mandatory attribute shall be the description of the specified + string attribute. + spec-type: optional-str + description: | + This attribute set specifies a string. + required-attributes: + - description +spec-name: String Specification +spec-type: spec-str +type: spec diff --git a/spec/spec/spec.yml b/spec/spec/spec.yml new file mode 100644 index 00000000..7f33c78a --- /dev/null +++ b/spec/spec/spec.yml @@ -0,0 +1,74 @@ +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: | + This mandatory attribute shall be an example. + spec-type: optional-str + example-number: + description: | + This mandatory attribute shall be the example number. + spec-type: int + description: | + This set of attributes gives an example. + required-attributes: all + spec-name: Example Item Type + spec-type: spec + type: spec +spec-info: + dict: + attributes: + spec-description: + description: | + This mandatory attribute shall be the description of the + specification type. + spec-type: optional-str + spec-example: + description: | + This mandatory attribute shall an example of the specification type. + spec-type: optional-str + spec-info: + description: | + This mandatory attribute defines the specification type information. + spec-type: spec-info + spec-name: + description: | + This mandatory attribute shall be the human readable name of the + specification type. + spec-type: optional-str + spec-type: + description: | + This mandatory attribute defines the specification type name. + spec-type: name + description: | + This set of attributes specifies specification types. + required-attributes: all +spec-name: Specification Item Type +spec-type: spec +type: spec -- cgit v1.2.3