NAME
Data::TagDB::Tutorial::WellKnown - Work with Tag databases
VERSION
version v0.05
Overview
This documentation lists a set of well known tags that are commonly found in databases. It is by no mean an exhaustive list.
Tags listed here are included in Data::TagDB::WellKnown unless marked otherwise.
Note: This document however uses the standard spelling using -
. To access the tag via Data::TagDB::WellKnown one must convert all -
to _
. For example:
my Data::TagDB::Tag $tag = $wk->also_shares_identifier; # also-shares-identifier
See Data::TagDB::WellKnown for details.
Tags
also-has-comment
UUID: 11d8962c-0a71-4d00-95ed-fa69182788a8
This tag is used as a relation denoting a comment on the tag or it's subject. This can be used in any link (relation or metadata). It should be used with context set to a valid context (such as the application context, a user/account, or an instance).
Other relations might specialise on this.
See also "also-has-description", "also-has-title".
also-has-description
UUID: 30710bdb-6418-42fb-96db-2278f3bfa17f
This tag is used as a relation denoting a description for the tag or it's subject. This can be used in any link (relation or metadata). It should be used with context set to a valid context (such as the application context, instance, or language).
Other relations might specialise on this.
See also "also-has-comment", "also-has-title".
also-has-role
UUID: d2750351-aed7-4ade-aa80-c32436cc6030
This tag is used as a relation to denote a role (type) the tag has. This is an inclusive relation, meaning the tag may also have any number of other (more specific or more generic) roles.
See also "has-type".
also-has-title
UUID: f7fd59e6-6727-4128-a0a7-cbc702dc09b8
This tag defines a relation that provides the title of subject of the current tag. This relation can be used in any link (relation or metadata). It should be used with context set to a valid context (such as the application context, instance, or language).
Note: This is not to be confused with the name of the subject or the subject's job title. This relation is meant to provide the title of a creative work such as a book.
See also "also-has-comment", "also-has-description".
also-list-contains-also
UUID: 4c9656eb-c130-42b7-9348-a1fee3f42050
This tag is used in as a relation on tag lists. It denotes an element in the list. This tag specifically makes no assumption on how the related tag is included in the list. (Such as the order, or if it has other qualifiers.)
The tag this tag is used as a relation on has the role of a "specific-taglist" (for example a directory or a shopping list).
also-shares-identifier
UUID: ddd60c5c-2934-404f-8f2d-fcb4da88b633
This tag is used as a relation in a metadata to assign an identifier to the tag. The type of the identifier must be set.
colour-value
UUID: c64b5209-b975-4e59-9467-3c3b3f136b4e
This tag is used as a type for colour values in metadata.
The default encoding (in case encoding is undef
) is "hex-rgb-encoding".
default-context
UUID: 6ba648c2-3657-47c2-8541-9b73c3a9b2b4
This tag is used as a context and can be used in any link. The meaning of this context is to provide a fallback for more specific contexts without representing a universally true value.
Examples of this include internationalisation: names (or any string) may be given in different languages using different contexts. However if the user is not in any of those language contexts an implementation can fall back to the value given with the default context.
Note: Links with context set to undef
are always valid. So they should be handled by software in parallel to other contexts, not as an alternative.
A implementation may use a logic like:
Take all links with a context matching any context the application and/or the user is part of.
If the list is empty use all links with the context set to to the default-context.
Unconditionally add all links with the context set to
undef
.
default-encoding
UUID: 8440eabd-5d73-4679-8f06-abaa06cf04ac
This tag is used as a relation on types to denote the default encoding used when the encoding of a metadata is set to undef
.
default-type
UUID: 87c4892f-ae39-476e-8ed0-d9ed321dafe9
This tag is used as a relation on relations to denote the default type used when the type of a metadata is set to undef
.
displaycolour
UUID: a7cfbcb0-45e2-46b9-8f60-646ab2c18b0b
This relation is used to denote a colour that is used with the tag to provide a visual aid for the user. This can for example be used to assign a colour to be displayed alongside a note so it is easier for the user to spot the right note they are looking for.
This relation should virtually always be used with a context that is non-undef
. Most commonly the context set on the link is the tag of the user (or account) who set the colour. This links the value to said user. Another common value for context is "default-context". This denotes the displaycolour the creator/publisher prefers. But it can still be overridden by a user.
The default type (when used in metadata without a type set) is "colour-value".
final-file-encoding
UUID: 448c50a8-c847-4bc7-856e-0db5fea8f23b
This relation is used on (proto-)files to denote the encoding the file will have when reaching it's final state. In most cases this will be used with relations with related set to a tag representing a media-subtype. However this can also point to a more or less specific value.
See also "lifecycles" in File::Information, "final-file-hash", "final-file-size".
final-file-hash
UUID: 79385945-0963-44aa-880a-bca4a42e9002
This relation is used on (proto-)files to denote the hash (digest) the file will have when reaching it's final state. When stored as a metadata the default is to store the value in the universal tag format for hashes.
See also "lifecycles" in File::Information, "digest_info" in File::Information, "final-file-encoding", "final-file-size".
final-file-size
UUID: 1cd4a6c6-0d7c-48d1-81e7-4e8d41fdb45d
This relation is used on (proto-)files to denote the size the file will have when reaching it's final state. When stored as a metadata the default is to store the value in bytes.
See also "lifecycles" in File::Information, "final-file-hash", "final-file-encoding".
for-type
UUID: bc2d2e7c-8aa4-420e-ac07-59c422034de9
Used as a relation on a "generator" to denote the type generated by the generator.
four
UUID: 79422b2c-b6f6-547f-949f-0cba44fa69b7
The number four (4
).
generalises
UUID: c8530d1b-d600-47e5-bc06-7b01416c79eb
This is the "inverse" of "specialises". See them for details.
generated-by
UUID: 8efbc13b-47e5-4d92-a960-bd9a2efa9ccb
Relation used on generated tags to denote the generator they are generated with.
See also "generator-request", "generator".
generator
UUID: 8a1cb2d6-df2f-46db-89c3-a75168adebf6
Base type/role to be used with generators.
See also "for-type", "using-namespace".
generator-request
UUID: ab573786-73bc-4f5c-9b03-24ef8a70ae45
Relation used with metadata to store the request to the generator for any generated tag. The nature of the stored data is subject to the generator.
See also "generated-by", "generator".
has-type
UUID: 7f265548-81dc-4280-9550-1bd0aa4bf748
Used as a relation to denote the type of a tag. The type of the tag is part of it roles.
See also "also-has-role".
hex-rgb-encoding
UUID: 66d561ee-c06f-408f-a56c-a009439283bb
This is an encoding for a colour in RGB colour space.
The value is encoded in hash-and-hex notation or "#RRGGBB". The length of the value is always exactly 7 characters (also 7 bytes) long. The value must be in all lower case. But parsers should also support upper case and mixed case. Parsers must not support named colours or similar.
See also "colour-value".
inverse-relation
UUID: 1eae4688-f66c-4c77-bc9b-bb38be88240a
This tag is used as a relation set on relations. It denotes a second relation that is exactly inverse to the relation it is set on.
Formally speaking this means that: Relations X and Y are inverse if and only if the relations A X B and B Y A are only both true or neither of them.
Example: Parent and child are inverse relations because when A is a child of B, B is the parent of A. And if B is the parent of A, A is always a child of B. So child and parent are inverse.
Not inverse are parent and son-of: If A is the son-of B, then B is the parent of A. But because B is the parent of A, A may or may not be the son-of B (it could also be a daughter). So son-of and parent are not inverse.
Note: Implementations are free to insert inverse relations at will in order to autocomplete the data. However the value of filter in a relation is not well defined for inverse relations. Implementations should therefore skip generating any inverse relation if filter is not undef
.
namespace
UUID: d9bd807e-57cb-4736-9317-bf6bba5db48a
Type (role) used for namespaces. See also "has-type" and "using-namespace".
oid
UUID: d08dc905-bbf6-4183-b219-67723c3c8374
Used as an type of identifiers (see also: "also-shares-identifier"). This identifier denotes a globally unique identifier. OIDs are common with LDAP.
one
UUID: bd27669b-201e-51ed-9eb8-774ba7fef7ad
The number one (1
).
proto-file
UUID: 52a516d0-25d8-47c7-a6ba-80983e576c54
This tag is used as a role for tags that implement a basic file like interface. Normally a more specific role is used, such as inode.
See also "final-file-encoding", "final-file-hash", "final-file-size".
small-identifier
UUID: f87a38cb-fd13-4e15-866c-e49901adbec5
Used as an type of identifiers (see also: "also-shares-identifier"). This identifier type denotes a globally unique identifier for the tag that is globally registered. Small identifiers are used to provide a a basic vocabulary.
specialises
UUID: 923b43ae-a50e-4db3-8655-ed931d0dd6d4
This tag is used as a relation on tags denoting a related tag that this more generic than the current one. The current tag inherits all properties of the related tag (unless flagged otherwise).
This type of relation is often seen on types.
Example: Fish specialises animal. So every fish is also an animal.
See also "generalises" (which is the "inverse").
specific-taglist
UUID: 03cadc6f-2609-4527-b296-2590d737e99a
This tag is used as a role for list of tags. Normally a more specific type is used (such as a directory).
See also "also-list-contains-also".
tagname
UUID: bfae7574-3dae-425d-89b1-9c087c140c23
Used as an type of identifiers (see also: "also-shares-identifier"). This identifier type denotes a name for the tag. It is often displayed alongside the tag.
three
UUID: be6d8e00-a6c1-5c44-8ffc-f7393e14aa23
The number three (3
).
two
UUID: 73415b5a-31fb-5b5a-bb82-8ea5eb3b12f7
The number two (2
).
unicode-string
UUID: eacbf914-52cf-4192-a42c-8ecd27c85ee1
This tag is the base type for all strings that can be represented using Unicode. This is commonly used as "default-type" for relations.
The default encoding for this type is "utf-8-string-encoding".
uri
UUID: a8d1637d-af19-49e9-9ef8-6bc1fbcf6439
Used as an type of identifiers (see also: "also-shares-identifier"). This identifier denotes a globally unique identifier, commonly found in RDF data.
using-namespace
UUID: 3c9f40b4-2b98-44ce-b4dc-97649eb528ae
Used as a relation on a "generator" to denote the namespace used by the generator.
utf-8-string-encoding
UUID: ec6cd46a-aef5-495d-830b-acb3347a34ec
This tag represents the encoding for UTF-8 strings. It is commonly used with the type "unicode-string".
uuid
UUID: 8be115d2-dc2f-4a98-91e1-a6e3075cbc31
Used as an type of identifiers (see also: "also-shares-identifier"). This identifier type denotes a globally unique identifier for the tag. It is recommended that every tag has a UUID.
wikidata-identifier
UUID: ce7aae1e-a210-4214-926a-0ebca56d77e3
Used as an type of identifiers (see also: "also-shares-identifier"). This identifier type is used to store tag identifiers from Wikidata. It must not be used for QIDs from other services/databases.
See also "create_wikidata" in Data::TagDB::Factory
zero
UUID: dd8e13d3-4b0f-5698-9afa-acf037584b20
The number zero (0
).
AUTHOR
Löwenfelsen UG (haftungsbeschränkt) <support@loewenfelsen.net>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2024 by Löwenfelsen UG (haftungsbeschränkt) <support@loewenfelsen.net>.
This is free software, licensed under:
The Artistic License 2.0 (GPL Compatible)