VolumeTag

class VolumeTag(meta, value=None, key=None, sly_id=None, labeler_login=None, updated_at=None, created_at=None)[source]

Bases: Tag

Tag on a volume annotation (meta, value). Immutable.

Tag on volume annotation.

Parameters:
meta

Tag metadata (name, value type).

value : str or int or float, optional

Tag value; type must match TagMeta.value_type.

key : uuid.UUID, optional

UUID key. Auto-generated if not provided.

sly_id : int, optional

Server-side tag ID.

labeler_login : str, optional

Login of user who created the tag.

updated_at : str, optional

Last modification timestamp (ISO format).

created_at : str, optional

Creation timestamp (ISO format).

Usage Example:
import supervisely as sly

meta_brain = sly.TagMeta('brain', sly.TagValueType.NONE)
tag_brain = sly.VolumeTag(meta_brain)

meta_heart = sly.TagMeta('heart', sly.TagValueType.ANY_STRING)
tag_heart = sly.VolumeTag(meta_heart, value="Heart")

Methods

clone

Makes a copy of VolumeTag with new fields, if fields are given, otherwise it will use fields of the original VolumeTag.

from_json

Convert a json dict to VolumeTag.

get_compact_str

Displays information about Tag's name and value in string format.

get_header_ptable

Get header of the table with tags.

get_row_ptable

Get row with tag properties.

key

Get key value.

to_json

Convert the VolumeTag to a json dict.

Attributes

meta

General information about Tag.

name

Name property.

value

Tag value.

classmethod from_json(data, tag_meta_collection, key_id_map=None)[source]

Convert a json dict to VolumeTag. Read more about Supervisely format.

Parameters:
data : dict

VolumeTag in json format as a dict.

tag_meta_collection

TagMetaCollection object.

key_id_map=None

Key ID Map object.

Returns:

VolumeTag object

Return type:

VolumeTag

Usage Example:
import supervisely as sly
from supervisely.volumme_annotation.volume_tag import VolumeTag

tag_heart_json = {"name": "heart", "value": "777"}
meta_heart = sly.TagMeta('heart', sly.TagValueType.ANY_STRING)
meta_collection = sly.TagMetaCollection([meta_heart])

tag_heart = VolumeTag.from_json(tag_heart_json, meta_collection)
classmethod get_header_ptable()

Get header of the table with tags.

Returns:

List of table header values.

Return type:

List[str]

Usage Example:
import supervisely as sly

header = sly.Tag.get_header_ptable()

print(header)
# Output: ['Name', 'Value type', 'Value']
clone(meta=None, value=None, key=None, sly_id=None, labeler_login=None, updated_at=None, created_at=None)[source]

Makes a copy of VolumeTag with new fields, if fields are given, otherwise it will use fields of the original VolumeTag.

Parameters:
meta=None

General information about VolumeTag.

value : str or int or float or None, optional

VolumeTag value. Depends on TagValueType of TagMeta.

key : uuid.UUID, optional

The UUID key associated with the VolumeFigure.

sly_id : int, optional

VolumeTag ID in Supervisely.

labeler_login : str, optional

Login of user who created VolumeTag.

updated_at : str, optional

Date and Time when VolumeTag was modified last. Date Format: Year:Month:Day:Hour:Minute:Seconds. Example: ‘2021-01-22T19:37:50.158Z’.

created_at : str, optional

Date and Time when VolumeTag was created. Date Format is the same as in “updated_at” parameter.

Usage Example:
import supervisely as sly
from supervisely.volume_annotation.volume_tag import VolumeTag

meta_heart = sly.TagMeta('heart_tag', sly.TagValueType.ANY_STRING)
heart_tag = VolumeTag(meta_heart, value='Heart')

meta_heart_2 = sly.TagMeta('heart tag 2', sly.TagValueType.ANY_STRING)

new_tag = car_tag.clone(meta=meta_heart_2, key=car_tag.key())
new_tag_json = new_tag.to_json()

print(new_tag_json)
# Output: {
#     "name": "heart tag 2",
#     "value": "Heart",
#     "key": "360438485fd34264921ca19bd43b0b71"
# }
get_compact_str()

Displays information about Tag’s name and value in string format.

Returns:

Name and value of the given Tag

Return type:

str

Usage Example:
import supervisely as sly

meta_dog = sly.TagMeta('dog', sly.TagValueType.ANY_STRING)
tag_dog = sly.Tag(meta_dog, value="Husky")

print(tag_dog.get_compact_str())
# Output: 'dog:Husky'
get_row_ptable()

Get row with tag properties.

Returns:

List of tag properties.

Return type:

List[str]

Usage Example:
import supervisely as sly

weather_conditions = ["Sunny", "Cloudy", "Snowy", "Foggy", "Rainy"]
meta_weather = sly.TagMeta("weather", sly.TagValueType.ONEOF_STRING, possible_values=weather_conditions)
tag_weather = sly.Tag(meta_weather, value="Sunny")

row = tag_weather.get_row_ptable()

print(row)
# Output: ['weather', 'oneof_string', 'Sunny']
key()[source]

Get key value.

Returns:

Get key value.

Return type:

str

Usage Example:
import supervisely as sly
from supervisely.volume_annotation.volume_tag import VolumeTag

meta_heart = sly.TagMeta('heart', sly.TagValueType.NONE)
tag_heart = VolumeTag(meta_heart)

print(tag_heart.key())
# Output: 2d9cd2cd-f89c-40a9-8675-1b0773fa250d
to_json(key_id_map=None)[source]

Convert the VolumeTag to a json dict. Read more about Supervisely format.

Parameters:
key_id_map=None

Key ID Map object.

Returns:

Json format as a dict

Return type:

dict

Usage Example:
import supervisely as sly

from supervisely.volume_annotation.volume_tag import VolumeTag
meta_heart = sly.TagMeta('heart', sly.TagValueType.NONE)
tag_heart = VolumeTag(meta_heart)

tag_heart_json = tag_heart.to_json()

print(tag_heart_json)
# Output: {
#     "name": "heart",
#     "key": "058ad7993a534082b4d94cc52542a97d"
# }
property meta : supervisely.annotation.tag_meta.TagMeta

General information about Tag. When creating a new Tag, it’s value is automatically cross-checked against TagValueType to make sure that value is valid.

Returns:

TagMeta object

Return type:

TagMeta

Usage Example:
meta_dog = sly.TagMeta('dog', sly.TagValueType.NONE)
tag_dog = sly.Tag(meta_dog)

# Our TagMeta has value type 'NONE', if we try to add value to our Tag, "ValueError" error will be raised
tag_dog = sly.Tag(meta_dog, value="Husky")
# Output: ValueError: Tag dog can not have value Husky
property name : str

Name property.

Returns:

Name

Return type:

str

Usage Example:
meta_dog = sly.TagMeta('dog', sly.TagValueType.ANY_STRING)
tag_dog = sly.Tag(meta_dog, value="Husky")

print(tag_dog.name)
# Output: "dog"
property value : str

Tag value. Return type depends on TagValueType. Date tag values are returned as ISO datetime strings.

Returns:

Tag value

Return type:

str, int or float or None

Usage Example:
meta_dog = sly.TagMeta('dog', sly.TagValueType.ANY_STRING)
tag_dog = sly.Tag(meta_dog, value="Husky")

meta_age = sly.TagMeta('age', sly.TagValueType.ANY_NUMBER)
tag_age = sly.Tag(meta_age, value=9)

colors = ["Black", "White", "Golden", "Brown"]
meta_color = sly.TagMeta('coat color', sly.TagValueType.ONEOF_STRING, possible_values=colors)
tag_color = sly.Tag(meta_color, value="White")

meta_date = sly.TagMeta('reviewed_at', sly.TagValueType.DATE)
tag_date = sly.Tag(meta_date, value="2026-04-23T15:15:48")

type(tag_dog.value)   # 'str'
type(tag_age.value)   # 'int'
type(tag_color.value) # 'str'
type(tag_date.value)  # 'str'