XMBML Functions

From PS3 Developer wiki
Jump to navigation Jump to search

Operators

XMBML Operators
Operator Field Example
Ae And equal Ae+Game:Game.category GD
An And not equal An+Game:Game.category GD
Al And less than Al+Game:Common.stat.rating 299
AL And less or equal than AL+Game:Common.stat.rating 299
Ag And greater than Ag+Game:Common.stat.rating 299
Agl And greater than and less than Agl+Person:Person.stat.presence 2 6
AgL And greater than and less or equal than AgL+Person:Person.stat.presence 2 6
AG And greater or equal than AG+Game:Common.stat.rating 299
AGl And greater or equal than and less than AGl+Person:Person.stat.presence 2 6
AGL And greater or equal than and less or equal than AGL+StorageMedia:StorageMedia.type 1 5
Aa And exists Aa+Game:Common.title
Ai And indexed ? (in XMB database) Ai+xCB:VideoList
Ap And present ? (in a path) Ap+Ps3SaveData:Common.dirPath %xUserHomeDir/savedata
Oe Or equal Oe+Game:Game.category GD
On Or not equal On+Game:Game.category GD
Ol Or less than Ol+Game:Common.stat.rating 299
OL Or less or equal than OL+Game:Common.stat.rating 299
Og Or greater than Og+Game:Common.stat.rating 299
Ogl Or greater than and less than Ogl+Person:Person.stat.presence 2 6
OgL Or greater than and less or equal than OgL+Person:Person.stat.presence 2 6
OG Or greater or equal than OG+Game:Common.stat.rating 299
OGl Or greater or equal than and less than OGl+Person:Person.stat.presence 2 6
OGL Or greater or equal than and less or equal than OGL+Person:Person.stat.presence 2 6
Oa Or exists Oa+Game:Common.title
Oi Or indexed ? (in XMB database) Oi+xCB:VideoList
Op Or present ? (in a path) Op+Ps3SaveData:Common.dirPath %xUserHomeDir/savedata


host Functions

host functions enable you to see folders and files on the filesystem.

host://localhost/

No function, direct. Using direct paths to the filesystem. Usage example:

<Query class="type:x-xmb/folder-pixmap" key="host_hdd0" src="host://localhost/dev_hdd0/game"/>
FileSystem Paths Examples
Disk Example
All filesystem host://localhost/
PS3 HDD host://localhost/dev_hdd0
USB Port 0 Disk host://localhost/dev_usb000
USB Port 1 Disk host://localhost/dev_usb001
USB Port 2 Disk host://localhost/dev_usb002
USB Port 3 Disk host://localhost/dev_usb003
  • Only 4 usb storage devices can be mounted by the system at the same time, the usb device number is assigned dynamically (e.g: dev_usb089), there is no need to list all them

host://localhost/q?

Querys the filesystem with parameters to filter or identify contents. Usage example:

<Query class="type:x-xmb/xmlpackagefolder" key="host_provider_usb0" src="host://localhost/q?path=/dev_usb000&suffix=.pkg&subclass=x-host/package"/>
Parameters
Description Parameter Examples
path FileSystem Path (null)
path=/
path=/dev_hdd0/game
path=/dev_usb000
path=/dev_bdvd/PS3_CONTENT/THEMEDIR/D000
any other filesystem path
suffix Filter by extension? (null)
suffix=.*
suffix=.pkg
suffix=.P3T
any other extension?
subclass Subclass of the files (mimetype?) (null)
subclass=x-host/package
subclass=x-host/widget
subclass=x-host/directory
subclass=x-host/theme-content
subclass=x-host/mount-info (to confirm)
subclass=x-host/unknown (to confirm)
subclass=x-host/file (to confirm)

xcb Functions

XCB = XMB Content Browser ?

  • Managed by dev_flash/vsh/module
    • xcbcontentop.sprx
    • xcbplugin1.sprx

xcb://localhost/exists?

Querys the database for Games, Music, Photos, Video, etc and if condition satisfaied (or not) go to selected xcb function. Usage example:

<Query class="type:x-xmb/folder-pixmap" key="seg_folding_at_home" src="xcb://localhost/exists?having=off&rquery=root.fixed_items.fah&cond=Ae+Game:Common.dirPath /dev_hdd0/game+Ae+Game:Common.fileName NPIA00002"/>
Parameters
Description Parameter Confirmed accepted values Example
Positive or negative condition having on
off
having=off
Main search table? table Table from XMB database tables table=MMS_MEDIA_TYPE_SYSTEM
Run function (from registory.xml variables) rquery (null)
Variables from registory.xml
rquery=root.fixed_items.fah
Run function (from envirmont variables?) rqueryenv (null)
backup
rqueryenv=backup
Search condition cond (null)
Combination of XMB database object fields using logical operators
cond=Ae+StorageMedia:StorageMedia.stat.mediaStatus %xCB_MEDIA_INSERTED+Ae+StorageMedia:StorageMedia.deviceType %xCB_DEVICE_TYPE_CF

xcb://localhost/query?

Querys the database for Games, Music, Photos, Video, etc and presents the returned items. Usage example:

<Query class="type:x-xmb/folder-pixmap" key="vmc_device_ms" src="xcb://localhost/query?table=MMS_MEDIA_TYPE_SYSTEM&subclass=x-xcb/storagemedia-psv&sort=+StorageMedia:StorageMedia.sortOrder&genre=Game&cond=Ae+StorageMedia:StorageMedia.stat.mediaStatus %xCB_MEDIA_INSERTED+Ae+StorageMedia:StorageMedia.deviceType %xCB_DEVICE_TYPE_MS+AGL+StorageMedia:StorageMedia.type %xCB_MEDIA_TYPE_MS_STD %xCB_MEDIA_TYPE_MS_IOX+Ae+StorageMedia:StorageMedia.mediaFormat %xCB_MEDIA_FORMAT_DATA"/>
Parameters
Description Parameter Confirmed accepted values Example
Returned items limit limit (null)
Numbers up to 2048?
limit=2048
Main search table? table Table from XMB database tables table=MMS_MEDIA_TYPE_SYSTEM
Filter by subclass? subclass (null)
x-xcb/unknown
x-xcb/game
x-xcb/game-disc
x-xcb/game-debug
x-xcb/game-list
x-xcb/content-disc
x-xcb/video
x-xcb/video-disctitle
x-xcb/video-file
x-xcb/video-list
x-xcb/video-content
x-xcb/editingvideo
x-xcb/photo
x-xcb/photo-list
x-xcb/music
x-xcb/music-list
x-xcb/segment
x-xcb/storage-media
x-xcb/storagemedia-generic
x-xcb/storagemedia-cdda
x-xcb/storagemedia-sacd
x-xcb/storagemedia-psmc
x-xcb/storagemedia-dlna
x-xcb/storagemedia-avchd
x-xcb/storagemedia-bdc
x-xcb/storagemedia-videodisc
x-xcb/storagemedia-sdps3
x-xcb/storagemedia-sdps2
x-xcb/storagemedia-sdpsp
x-xcb/storagemedia-psv
x-xcb/directory
x-xcb/directory-generic
x-xcb/directory-photo
x-xcb/directory-music
x-xcb/directory-video
x-xcb/directory-bddata
x-xcb/savedata-ps3
x-xcb/savedata-ps2
x-xcb/savedata-ps1
x-xcb/savedata-psp
x-xcb/savedata-plus
x-xcb/savedata-pspdir
x-xcb/achbase
x-xcb/achievtitle
x-xcb/achievgroup
x-xcb/achievflag
x-xcb/friendachievtitle
x-xcb/friendachievflag
x-xcb/friendachievgroup
x-xcb/person
x-xcb/playedplayer
x-xcb/blockedplayer
x-xcb/message
x-xcb/psv
x-xcb/vmc
x-xcb/query-condition
subclass=x-xcb/storagemedia-sdps2
Filter by genre? genre (null)
Photo
Game
Music
Video
BdData
genre=Photo
Sorting sort (null)
Combination of XMB database object fields using sort operators:
+ [increasing]
- [decreasing]
sort=+StorageMedia:StorageMedia.sortOrder+StorageMedia :StorageMedia.timeInserted
Sorting (from registory.xml variables) ssort (null)
Variables from registory.xml
ssort=root.sort_selected.friend_named
Search condition cond (null)
Combination of XMB database object fields using logical operators
cond=Ae+StorageMedia:StorageMedia.stat.mediaStatus %xCB_MEDIA_INSERTED+Ae+StorageMedia:StorageMedia.deviceType %xCB_DEVICE_TYPE_CF
Search condition (from registory.xml variables) scond (null)
Variables from registory.xml
scond=root.cond_selected.gamelist_format
???????? option (null)
option_hybrid
option_plus
option=option_hybrid
???????? perm (null)
1
perm=1, perm=off
???????? attr (to confirm) (null)
??????
attr=PspSdDir:Common.title+PspSdDir:Common.fileName+PspSdDir:Common.titleForSort+PspSdDir:Common.size+PspSdDir:Common.timeCreatedUTC+PspSdDir:Common.dirPath
???????? trigger (null)
off
trigger=off
???????? range (null)
off
only 0 1
ahead 0 1024
range=ahead 0 1024
???????? opt (null)
parent
logical
shared
opt=parent

xcb://localhost/raw?

Unknown. Usage example:

<Query class="type:x-xmb/folder-pixmap" key="vmc_device_ms" src="xcb://localhost/raw?idlist=?????"/>
Parameters
Description Parameter Confirmed accepted values Example
List of ids? idlist (null) idlist=?????

xmb Functions

xmb://localhost/

Allows a direct link to a segment in other .xml file. Usage example with explicit complete path:

<Query class="type:x-xmb/folder-pixmap" key="seg_photo_playlist" src="xmb://localhost/dev_flash/vsh/resource/explore/xmb/category_photo.xml#seg_playlist_mgmt"/>

The same example but using the path shorcut %flash/ (as a replacement of dev_flash/vsh/resource/explore/):

<Query class="type:x-xmb/folder-pixmap" key="seg_photo_playlist" src="xmb://localhost/%flash/xmb/category_photo.xml#seg_playlist_mgmt"/>
FileSystem Paths Examples
Path Example notes
dev_flash/vsh/resource/explore/xmb/linked_file.xml xmb://localhost/dev_flash/vsh/resource/explore/xmb/linked_file.xml#loaded_segment
dev_flash/vsh/resource/explore/xmb/linked_file.xml xmb://localhost/%flash/xmb/linked_file.xml#loaded_segment
dev_hdd0/game/XMBMANPLS/USRDIR/xmbmp/game_settings.xml xmb://localhost/dev_hdd0/game/XMBMANPLS/USRDIR/xmbmp/game_settings.xml#seg_settings MXBM+ mod loads the main items from the installation folder of an app to allow an easy method to update the .xml files
dev_hdd0/xmlhost/game_plugin/fb.xml xmb://localhost/dev_hdd0/xmlhost/game_plugin/fb.xml#seg_fb Webman plugin XMB mod loads an .xml file to be able to update the list of games dinamically

ese Functions

ESE = acronym of ? ESE XML Schema ?

  • Managed by dev_flash/vsh/module/
    • esehttp.sprx
    • eseibrd.sprx
    • eseidle.sprx
    • eselock.sprx

ese://localhost/fixed?

Found inside explore_category_game.sprx

ese://localhost/fixed?type=dlctl

ese://localhost/item?

Found inside explore_category_game.sprx

ese://localhost/item?id=

ese://localhost/query?

<Query class="type:x-xmb/folder-pixmap" key="seg_hdd_install" src="ese://localhost/query?type=install_game"/>
Unknown Example
? ese://localhost/query?type=download_control
? ese://localhost/query?type=download_list
? ese://localhost/query?type=install_game
? ese://localhost/query?type=install_video
? ese://localhost/query?type=install_pkg

sel Functions

Selective functions, only available when satisfyed a condition, e.g: with screenshots the function sel://localhost/screenshot?category_photo.xml#seg_screenshot means: "when screenshot plugin is available... then load the segment #seg_screenshot" (screenshot plugin is enabled from the eboot of some games, and screenshot segment makes the icon visible in XMB photo column)

Parameter Valid values Example
type game
minis
music
network
photo
psn
tv
video
sel://localhost/welcome?type=game
path path to an .xml file#segment sel://localhost/ingame?path=category_game.xml#seg_gameexit&type=game

sel://localhost/avcroom?

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="seg_avcroom" src="sel://localhost/avcroom?category_friend.xml#seg_avcroom"/>

sel://localhost/currentuser?query?

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="Played" attr="Played" src="sel://localhost/currentuser?query?table=MMS_MEDIA_TYPE_HDD&sort=-PlayedPlayer:Common.timeCreated&cond=Aa+PlayedPlayer:Common.titleForSort+Ae+PlayedPlayer:Common.owner"/>

sel://localhost/dlnaconf?

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="seg_network_dlnaconf" src="sel://localhost/dlnaconf?category_sysconf.xml#seg_network_dlnaconf"/>

sel://localhost/env?

Found inside explore_category_game.sprx

sel://localhost/ex?

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="gameDir2" attr="gameDir2" src="sel://localhost/ex?root.view_selected.game"/>

sel://localhost/fnregist?

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="seg_regist" src="sel://localhost/fnregist?"/>

sel://localhost/hakoniwa?

Hakoniwa is the "Photo Gallery" official app (NPIA00006) that comes partially preinstalled in the firmwares (there is a mandatory icon in XMB photo column and is dependant of hknw_plugin.sprx, but the program itself is not installed with the firmware). To use the program is needed to install the .PKG that installs the rest of the files in dev_hdd0/game/NPIA00006/USRDIR/EBOOT.PBP

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="seg_hakoniwa" src="sel://localhost/hakoniwa?category_photo.xml#seg_hakoniwa"/>

sel://localhost/hasbddata?

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="seg_bddata_mgmt" attr="seg_bddata_mgmt" src="sel://localhost/hasbddata?category_video.xml#seg_bddatamgmt"/>

sel://localhost/ingame?

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="seg_minis_manual" src="sel://localhost/ingame?path=category_game.xml#seg_minis_manual&type=minis"/>

sel://localhost/isdlna?

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="seg_dlna_scan" attr="seg_dlna_scan" src="sel://localhost/isdlna?category_photo.xml#seg_dlna_scan"/>

sel://localhost/ishantai?

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="seg_device_kbim_hantai" src="sel://localhost/ishantai?category_sysconf.xml#seg_device_kbim_hantai"/>

sel://localhost/iskana?

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="seg_device_kbim_kana" src="sel://localhost/iskana?category_sysconf.xml#seg_device_kbim_kana"/>

sel://localhost/ismegatv?

Found inside explore_category_game.sprx , explore_category_network.sprx Region Checked for Korean.

sel://localhost/ispremo?

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="seg_premo" src="sel://localhost/ispremo?file=category_network.xml&n=seg_premo"/>

sel://localhost/minis?

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="seg_sdpsp" src="sel://localhost/minis?category_game.xml#seg_sdpsp"/>

sel://localhost/newchat?

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="seg_new_chat" src="sel://localhost/newchat?category_friend.xml#seg_new_chat"/>

sel://localhost/nogold?

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="seg_plus" src="sel://localhost/nogold?category_psn.xml#seg_plus"/>

sel://localhost/nonpaccount?

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="seg_reg_quick" src="sel://localhost/nonpaccount?category_psn.xml#seg_reg_quick"/>

sel://localhost/nopremo?

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="seg_premo" src="sel://localhost/nopremo?category_network.xml#seg_premo"/>

sel://localhost/npaccount?

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="seg_message_box" src="sel://localhost/npaccount?category_friend.xml#seg_message_box"/>

sel://localhost/nplogin?

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="seg_fixed_items" src="sel://localhost/nplogin?category_friend.xml#seg_fixed_items"/>

sel://localhost/npnologin?

Found inside explore_category_game.sprx

sel://localhost/ps2emusave?

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="seg_sdps2" src="sel://localhost/ps2emusave?category_game.xml#seg_sdps2"/>

sel://localhost/screenshot?

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="seg_screenshot" attr="seg_screenshot" src="sel://localhost/screenshot?category_photo.xml#seg_screenshot"/>

sel://localhost/videoedit?

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="seg_editingvideo_mgmt" attr="seg_editingvideo_mgmt" src="sel://localhost/videoedit?category_video.xml#seg_editingvideo_mgmt"/>

sel://localhost/welcome?

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="seg_welcome" attr="seg_welcome" src="sel://localhost/welcome?type=game"/>

sel://localhost/wenv?

Found inside explore_category_game.sprx

xil Functions

Acronym of... Xml? Index? List?

xil://localhost/list?

Loads XIL information, in most cases this xil info is stored in a xil.xml configuration file (music, tv, and video uses xil files, but not game). Usage example:

<Query class="type:x-xmb/folder-pixmap" key="seg_xil" attr="seg_xil" src="xil://localhost/list?t=music"/>
FileSystem Paths Examples
t= Linked to xil file in path: Example
music dev_hdd0/tmp/explore/xil/music/... xil.xml xil://localhost/list?t=music
tv dev_hdd0/tmp/explore/xil/tv/... xil.xml xil://localhost/list?t=tv
video dev_hdd0/tmp/explore/xil/video/... xil.xml xil://localhost/list?t=video
game no xil.xml associated xil://localhost/list?t=game
  • Notes
    • xil://localhost/list?t=game - Used for first time around firmware 4.40~4.46 in category_game.xml, in the XMB item gameDir. In previous/older firmwares gameDir was using xcb://localhost/query? with a long list of operators to filter contents. In other words the old xcb query (usefull because was very open, but maybe not much efficient) has been replaced by a new xil function (maybe more efficient, but with the filtering operators hardcoded somewhere, and doesnt seems to be a xil.xml associated with it). As a note, the XMBM+ project (an unnofficial xml mod able to display games by groups by using custom filters) is based in the old method


xil://localhost/item?

Found in explore_category_game.sprx

xil://localhost/item?x=%d&y=%u&t=%llx
? ? ?
x
y
t

chat Functions

chat://localhost/player?

Found in explore_plugin.sprx

chat://localhost/player?id=

chat://localhost/room?

Found in explore_plugin.sprx

chat://localhost/room?id=

chat://localhost/roomlist?

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="seg_chat" src="chat://localhost/roomlist?"/>
Unknown Example
? chat://localhost/roomlist?

user Functions

user://localhost/create

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="user_provider_0" attr="user_provider_0" src="user://localhost/create"/>

user://localhost/others

user://localhost/users

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="user_provider_1" attr="user_provider_1" src="user://localhost/users"/>

now Functions

now://localhost/q?

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="seg_now" src="now://localhost/q?id=XMB_MODULE_MUSIC&rquery=root.fixed_items.nowmusic"/>

rss Functions

rss://

Usage example:

<Query class="type:x-xmb/folder-pixmap" key="site_rss_2" attr="site_rss_2" src="rss://http://ps3.drikin.com/rss/sample.xml"/>

wboard Functions

wboard://localhost/item?

Usage example: (x and y axis ?)

wboard://localhost/item?x=%u&y=%u

wboard://localhost/list?