Page Properties | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||
Resources & Remarks https://wiki.optimal-systems.de/pages/viewpage.action?pageId=57442949
Modification History
|
Excerpt |
---|
The basic idea for the usage of tags is to describe the state of an object within a process chain. They consist basically They basically consist of a name and a state value and can be assigned to any object. |
Section | ||||||
---|---|---|---|---|---|---|
| ||||||
|
...
- Tags do NOT belong to the metadata and thus do not need to be defined in the schema.
- Tags are stored together with the object as value for the property '
system:tags
' property similar to metadata. - Pure tag operations do NOT lead to the creation of a new object version.
- Tags can only be attached to the current version of an object, whereas previous versions cannot have tags.
- For version-specific information, metadata provide the suitable options. They have to be defined in the schema.
...
Behavior during POST metadata updates:
- If the property
system:tags
property is specified in the request body,- all included tags are assigned to the new object version with the given
name
andstate
. The same value assystem:lastModificationDate
andsystem:traceId
will be set automatically forcreationDate
andtraceId
respectively for all of them. - each tag that is not included is deleted. The new object version will not have that tag.
- all included tags are assigned to the new object version with the given
- If the property
system:tags
is NOT specified in the request body or is set tonull
, all tags will be deleted. The new object version will not have any tag.
Behavior during PATCH metadata updates:
- If the property
system:tags
property is specified in the request body,- all included tags are assigned to the new object version.
- each tag that is not included is deleted. The new object version will not have that tag.
- If the property
system:tags
property is NOT specified in the request body, all tags are transferred to the new object version. Theirstate
,creationDate
andtraceId
remain unchanged. - If the property
system:tags
is property is set tonull
, all tags will be deleted. The new object version will not have any tag.
...
Property | Type | Description | In a request |
---|---|---|---|
name | String | Name of the tag for identification. It has to be unique for the corresponding object. The tag names are validated during a tag creation or update process. To pass the validation, they have to match the regular expression [a-z](:?[a-z][a-z0-9]*)* and must not be longer than 32 characters (as of 2022 Spring, not no longer than 128 characters). As of version 2021 Summer, the suffix | required |
state | Integer | Represents the status of the corresponding object in a process chain. | required |
creationDate | String | Date and time of the last modification of the tag. It is set automatically by the system. | optional, only available in search queries |
traceId | Hexadecimal lowercase string with maximum length 16 | Process identification of any tag operation. If not specified in the request, a random String value will be set after the tag operation. In a tag update or delete request, the request parameter Per default, | optional, specified by means of the HTTP header X-B3-TraceId |
In a request, the corresponding properties are included directly in the URL for the call of the endpoint. In contrast, if tags are displayed in a response body, their properties are listed as a part of a JSON structure in the value
of the property system:tags
property.
Tagging Endpoints
The following endpoints for pure tag operations do not trigger a new version of the corresponding object, but only a new entry in the audit trail:
...
Resistant tags are identified by the suffix :resistant
at the end of the string tag name.
Note: The tag name including the suffix must not exceed the length limit of 128 characters.
...