-
Notifications
You must be signed in to change notification settings - Fork 2
GSoC:2008 Collections 2.0 Operator list
Erik Massop edited this page Nov 4, 2017
·
1 revision
- Type:
XMMS_COLLECTION_TYPE_UNIVERSE
- Result: All mediaids in the medialibrary
- Attributes: none
- Operands: none
- Type:
XMMS_COLLECTION_TYPE_IDLIST
- Result: A medialist containing the mediaids in the
idlist
found within the operator. - Attributes:
-
type
: The type of playlist. Typicallylist
,queue
orpshuffle
. The default value islist
. - any
-
- Operands: Zero or one
- Type:
XMMS_COLLECTION_TYPE_REFERENCE
- Result: All mediaids in the collection identified by the
namespace
andreference
attributes - Attributes:
-
namespace
: The namespace of the referenced collection, e.g.Playlists
orCollections
-
reference
: The name of the referenced, e.g.Muse
,Never
Played
,That
grand
Opeth
album
or justDefault
-
- Operands: none (except on the daemon-side, where the referenced collection can be attached as an operand to the reference-operator)
- Type:
XMMS_COLLECTION_TYPE_COMPLEMENT
- Result: All mediaids in medialibrary, except those in the operand.
- Attributes: none
- Operands: Exactly one
- Type:
XMMS_COLLECTION_TYPE_INTERSECTION
- Result: The mediaids that appear in all operands
- Attributes: none
- Operands: One or more
- Type:
XMMS_COLLECTION_TYPE_UNION
- Result: The mediaids that appear in any of the operands
- Attributes: none
- Operands: One or more
- Type:
XMMS_COLLECTION_TYPE_CONCATENATION
- Result: A medialist of the operands behind each other
- Attributes: none
- Operands: One or more medialists
- Type:
XMMS_COLLECTION_TYPE_INTERSECTION_ORDERED
- Result: The first operand, but only with the mediaids that are also in the second operand
- Attributes: none
- Operands: Exactly two
- Type:
XMMS_COLLECTION_TYPE_HAS
- Result: The operand, but only with the mediaids that have a property with a given name, as well as a given source, where only properties are examined using the given source-preference.
- Attributes:
-
field
: The name of the property, e.g.artist
,album
ortitle
. If this is not specified the name of the property is not taken into account. -
source
: The source of the property, e.g.server
,plugin/vorbis
,client/xmms2-cli
or2
(only for the daemon). If this is not specified the source of the property is not taken into account. -
source-preference
: The source-preference that needs to be applied, e.g.server:plugin/id3v2:client:plugin:plugin/pls
(see Source-Preference Specification). If this is not specified the global source-preference will be used. (Currently onlydefault
andall
are possible.)
-
- Operands: Exactly one
- Type:
XMMS_COLLECTION_TYPE_ID
- Result: The operand, but only with the mediaids for which id
[operation]
[value]
(e.g. id = 100, id <= 55) is true - Attributes:
-
operation
: One of<
,<=
,=
,>=
,>=
and!=
. The default is=
-
value
: A number
-
- Operands: Exactly one
- Type:
XMMS_COLLECTION_TYPE_COMPARE
- Result: The operand, but only with the mediaids that have a property with a given name, as well as a given source and a value for which the expression value
[operation]
[value]
is true, given a collation, where only properties are examined using the given source-preference. - Attributes:
-
operation
: One of<
,<=
,=
,>=
,>=
,!=
andprefix
. The default is=
. -
field
: The name of the property, e.g.artist
,album
ortitle
. If this is not specified the name of the property is not taken into account. -
value
: A string. -
collation
: A collation to be used when comparing the value from the medialib and thevalue
attribute, e.g.NOCASE
,BINARY
,INTCOLL
orNATCOLL
. The default-value isNATCOLL
-
source
: The source of the property, e.g.server
,plugin/vorbis
,client/xmms2-cli
or2
(only for the daemon). If this is not specified the source of the property is not taken into account. -
source-preference
: The source-preference that needs to be applied, e.g.server:plugin/id3v2:client:plugin:plugin/pls
(see Source-Preference Specification). If this is not specified the global source-preference will be used. (Currently onlydefault
andall
are possible.)
-
- Operands: Exactly one
- Type:
XMMS_COLLECTION_TYPE_MATCH
- Result: The operand, but only with the mediaids that have a property with a given name, as well as a given source and a value matching the pattern found in the
value
attribute, given a collation, where only properties are examined using the given source-preference. The pattern uses the glob-syntax, with the*
and?
wildcards. - Attributes:
-
field
: The name of the property, e.g.artist
,album
ortitle
. If this is not specified the name of the property is not taken into account. -
value
: A string. -
collation
: A collation to be used when comparing the value from the medialib and thevalue
attribute, e.g.NOCASE
,BINARY
,INTCOLL
orNATCOLL
. Currently onlyBINARY
andNOCASE
are supported, as the semantics of some patterns for the other two collations is not clear. The default-value isNOCASE
. -
source
: The source of the property, e.g.server
,plugin/vorbis
,client/xmms2-cli
or2
(only for the daemon). If this is not specified the source of the property is not taken into account. -
source-preference
: The source-preference that needs to be applied, e.g.server:plugin/id3v2:client:plugin:plugin/pls
(see Source-Preference Specification). If this is not specified the global source-preference will be used. (Currently onlydefault
andall
are possible.)
-
- Operands: Exactly one
- Type:
XMMS_COLLECTION_TYPE_TOKEN
- Result: The operand, but only with the mediaids that have a property with a given name, as well as a given source and a value consisting of no other tokens than those in the value-attribute, given a collation, where only properties are examined using the given source-preference. To tokenize a string it is split on whitespace, after which all non-alphanumeric characters are stripped from the separate parts.
- Attributes:
-
field
: The name of the property, e.g.artist
,album
ortitle
. If this is not specified the name of the property is not taken into account. -
value
: A string, which will be tokenized. If a token ends in*
prefix-matching will be used for that token. -
collation
: A collation to be used when comparing the value from the medialib and thevalue
attribute, e.g.NOCASE
,BINARY
,INTCOLL
orNATCOLL
. Currently onlyBINARY
andNOCASE
are supported for prefix-matching, as the semantics of some patterns for the other two collations is not clear. -
source
: The source of the property, e.g.server
,plugin/vorbis
,client/xmms2-cli
or2
(only for the daemon). If this is not specified the source of the property is not taken into account. -
source-preference
: The source-preference that needs to be applied, e.g.server:plugin/id3v2:client:plugin:plugin/pls
(see Source-Preference Specification). If this is not specified the global source-preference will be used. (Currently onlydefault
andall
are possible.)
-
- Operands: Exactly one
- Type:
XMMS_COLLECTION_TYPE_DATE
- Result: undefined
- Attributes: undefined
- Operands: Exactly one
- Type:
XMMS_COLLECTION_TYPE_ORDER
- Result: A medialist, with the mediaids in the operand sorted according to a value depending on the
type
attribute and the mediaid. If the operand also is an order operator, then the values generated by that will be used for secondary sorting. - Attributes:
-
order
:ASC
orDESC
for ascending and descending ordering. The default-value isASC
. -
collation
: A collation to be used when the values are strings. The default-value isNATCOLL
. -
type
: What kind of value should be retrieved, typicallyvalue
,field
,id
orrandom
. The default value isvalue
. -
field
: Iftype=value
, defines which property to order by.
-
- Operands: Exactly one
- Type:
XMMS_COLLECTION_TYPE_LIMIT
- Result: A medialist equal to the operand, but without the first
start
entries and containinglength
or fewer entries. - Attributes:
-
start
: an integer, defaulting to 0. -
length
: an integer, defaulting to UINT_MAX.
-
- Operands: Exactly one (a medialist)
- Type:
XMMS_COLLECTION_TYPE_MEDIASET
- Result: A mediaset containing the mediaids in the operand. (Removing duplicates and order)
- Attributes: none
- Operands: Exactly one
Content is available under GNU Free Documentation License 1.2 unless otherwise noted.
- Community
- Development