fragment Element

[The feature associated with this page, Windows Media Player SDK, is a legacy feature. It has been superseded by MediaPlayer. MediaPlayer has been optimized for Windows 10 and Windows 11. Microsoft strongly recommends that new code use MediaPlayer instead of Windows Media Player SDK, when possible. Microsoft suggests that existing code that uses the legacy APIs be rewritten to use the new APIs if possible.]

The fragment element specifies one condition of the query that selects items from the library. Conditions are specified by condition strings. A condition string typically has a name portion, a condition portion, and a value portion.

<fragment
    name = "string"
>
</fragment>

Attributes

name (required)

A portion of a condition string. See Remarks.

Parent/Child Elements

Hierarchy Elements
Parent filter, sourceFilter
Child argument

Remarks

Certain condition strings have a metadata attribute portion, a condition portion, and a value portion. For example, in the condition string "Album Artist Is Joe", the metadata attribute portion is "Album Artist", the condition portion is "Is", and the value portion is "Joe".

Example:

<fragment name = "Album Artist">
    <argument name = "condition">Is</argument>
    <argument name = "value">Joe</argument>
</fragment>

For condition strings of this type, the following table shows the possible metadata attributes, possible conditions and possible values:

Metadata attribute Possible conditions Possible values
ActorAlbum Artist
Album Title
Author
Caption
Channel
Composer
Conductor
Content Provider
Content Provider Genre
Contributing Artist
Copyright Text
Director
Episode
File Type
Genre
Key
Keywords
Language
Mood
Parental Rating
Period
Producer
Provider
Publisher
Series
Station name
Subgenre
Subtitle
Title
Writer
EqualsDoes Not Equal
Is
Is Not
Contains
Does Not Contain
Any string value
Bit Rate (In kilobytes per second.) EqualsDoes Not Equal
Is
Is Not
Contains
Does Not Contain
4864
96
128
160
192
256
300
500
750
1000
1500
3000
4500
6000
7500
Secondary Media Type EqualsDoes Not Equal
Is
Is Not
Contains
Does Not Contain
Audio: NewsAudio: Talk Show
Audio: Audio Books
Audio: Audio Spoken Word
Video: News
Video: Talk Show
Video: Home Video
Video: Movie / Film
Video: TV show
Video: Corporate Video
Video: Music Video
File Size (in KB)Image height
Image width
Play Count : Afternoon Totals
Play Count : Evening Totals
Play Count : Morning Totals
Play Count : Night Totals
Play Count : Total Overall
Play Count : Total Weekday
Play Count : Total Weekend
Is Less ThanIs Greater Than
Is
Is Not
Any number
Broadcast timeDate Encoded
Date Recorded
Date taken
Release Year
Is BeforeIs After
Is
Is Not
YesterdayLast week
Last month
6 months
1 year
2 years
5 years
2000s
1990s
1980s
1970s
1960s
1950s
1940s
Date Added Is BeforeIs After
Is
Is Not
YesterdayLast week
Last month
6 months
1 year
2 years
5 years
Date Last Played Older ThanMore Recent Than
Is
Is Not
YesterdayLast week
Last month
6 months
1 year
2 years
5 years
Month taken Is BeforeIs More Recent Than
Is
Is Not
12
3
4
5
6
7
8
9
10
11
12
13
Year taken Is BeforeIs More Recent Than
Is
Is Not
Any year
Auto RatingMy Rating
Is At LeastIs No More Than
Is
Is Not
Unrated1 Star
2 Stars
3 Stars
4 Stars
5 Stars
Custom Field #1Custom Field #2
File Name
Key Fields
ContainsDoes Not Contain
Any string

Certain condition strings have a limiter portion, a number portion and a format portion. For example in the condition string "Limit Total Size To 3 Megabytes", the limiter portion is "Limit Total Size To", the number portion is "3" and the format portion is "Megabytes".

Example:

<fragment name = "Limit Total Size To">
  <argument name = "number">3</argument>
  <argument name = "format">Megabytes</argument>
</fragment>

For condition strings of this type the following table shows the possible limiters and formats.

Limiter Possible numbers Possible formats
Limit Total Size To Any number Kilobytes, Megabytes, Gigabytes
Limit Total Duration To Any number Seconds, Minutes, Hours, Days

Certain condition strings have a limiter portion and a number portion. For example in the condition string "Limit Number of Items to 25", the limiter portion is "Limit Number of Items" and the number portion is "25".

Example:

<fragment name = "Limit Number of Items">
    <argument name = "number">25</argument>
</fragment>

For condition strings of this type the following table shows the only possible limiter.

Limiter Possible numbers
Limit Number Of Items Any number

Certain condition strings have a protection portion and a condition portion. For example in the condition string "Protection Is present", the protection portion is "Protection" and the condition portion is "Is".

Example:

<fragment name = "Protection">
    <argument name = "condition">Is</argument>
</fragment>

For condition strings of this type the following table shows the possible conditions.

Protection portion Possible conditions
Protection Is
Is Not

There is one type of fragment element that does not contain a condition string. If the name attribute of a fragment element is "Randomize Playback Order" the fragment element contains no argument elements. This fragment element instructs the player to play the list in random order.

Example:

<fragment name = "Randomize Playback Order">
</fragment>

Certain condition strings have a sort portion, a value portion and a condition portion. For example, in the condition string "Sort By Title Ascending order", the sort portion is "Sort By", the value portion is "Title", and the condition portion is "Ascending". Note that in this case the value portion is a metadata attribute.

Example:

<fragment name = "Sort By">
    <argument name = "value">Title</argument>
    <argument name = "condition">Ascending</argument>
</fragment>

For condition strings of this type the following table shows the possible values and conditions.

Sort portion Possible values Possible conditions
Sort By GenreTitle
Date Added
Auto Rating
My Rating
Play Count : Total Overall
Play Count : Morning Totals
Play Count : Afternoon Totals
Play Count : Evening Totals
Play Count : Night Totals
Play Count : Total Weekday
Play Count : Total Weekend
Actor
Subtitle
Station name
Channel
Broadcast time
Director
Release Year
Writer
Producer
Date Recorded
Date Encoded
Bit Rate
Protection
AscendingDescending
Random

When you use a fragment element to sort a playlist, you must sort on a metadata attribute that applies to the type of media items you are sorting. For example, if you are sorting music items you cannot sort on Actor. The following table shows which metadata attributes you can use to sort which media types.

Media type Possible metadata attributes
Music GenreTitle
Date Added
Auto Rating
My Rating
Play Count : Total Overall
Play Count : Morning Totals
Play Count :Afternoon Totals
Play Count :Evening Totals
Play Count :Night Totals
Play Count :Total Weekday
Play Count : Total Weekend
Video or TV GenreActor
Subtitle
Title
Date Added
Auto Rating
Station name
Channel
Broadcast time
Director
Release Year
Writer
Producer
Date Recorded
Date Encoded
Bit Rate
My Rating
Protection
Play Count : Total Overall
Play Count : Morning Totals
Play Count : Afternoon Totals
Play Count : Evening Totals
Play Count : Night Totals
Play Count : Total Weekday
Play Count : Total Weekend
Radio TitleDate Added
Bit Rate
Photo Title
Other GenreTitle
Date Added
Auto Rating
My Rating
Bit Rate
Play Count : Total Overall
Play Count : Morning Totals
Play Count : Afternoon Totals
Play Count : Evening Totals
Play Count : Night Totals
Play Count : Total Weekday
Play Count : Total Weekend

Requirements

Requirement Value
Version
Windows Media Player 9 Series or later

See also

argument Element

filter Element

sourceFilter Element

Windows Media Playlist Elements Reference