+ """
+ :param name: Name of the Attribute
+ :type name: str
+
+ :param help: Description of the Attribute
+ :type help: str
+
+ :param type: The type expected for the Attribute value.
+ Should be one of Attribute.Types
+ :type type: str
+
+ :param flags: Defines Attribute behavior (i.e. whether it is read-only,
+ read and write, etc). This parameter must take its values from
+ Attribute.Flags. Flags values can be bitwised
+ :type flags: hex
+
+ :param default: Default value for the Attribute
+ :type default: Depends on the type of Attribute
+
+ :param allowed: List of values that the Attribute can take.
+ This parameter is only meaningful for Enumerate type Attributes
+ :type allowed: list
+
+ :param range: (max, min) tuple with range of possible values for
+ Attributes.
+ This parameter is only meaningful for Integer or Double type
+ Attributes
+ :type range: (int, int) or (float, float)
+
+ :param set_hook: Function that will be executed whenever a new
+ value is set for the Attribute.
+ :type set_hook: function
+
+ """