Editing XMBML Functions

Jump to navigation Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.

Latest revision Your text
Line 1: Line 1:
= Operators =
= Operators =
{{XMBML Operators}}
{{XMBML Operators}}
*There are 8 double operators (Agl, AgL, AGl, AGL, Ogl, OgL, OGl, OGL), with this operators are set 2 values of the range, in the example above '''''AGL+StorageMedia:StorageMedia.type 1 5''''' are fullfilled 2 conditions: The type is "greater or equal than" 1, and "less or equal than" 5. So it represents a range that includes the types 1, 2, 3, 4, 5
= app Functions =
== app://localhost/query? ==
App provider
<pre><Query class="type:x-xmb/folder-pixmap" key="app_provider_0" attr="app_provider_0" src="app://localhost/query?" /></pre>


= host Functions =
= host Functions =
Line 22: Line 14:
{| class="wikitable sortable"
{| class="wikitable sortable"
|+FileSystem Paths Examples
|+FileSystem Paths Examples
! Path !! Example
! Disk !! Example
|-
|-
| All filesystem || host://localhost/
| All filesystem || host://localhost/
Line 35: Line 27:
|-
|-
| USB Port 3 Disk || host://localhost/dev_usb003
| USB Port 3 Disk || host://localhost/dev_usb003
|-
| APP_HOME || host://localhost/app_home
|-
|-
|}
|}
Line 54: Line 44:
| path || FileSystem Path || (null)<br/>path=/<br/>path=/dev_hdd0/game<br/>path=/dev_usb000<br/>path=/dev_bdvd/PS3_CONTENT/THEMEDIR/D000<br/>any other filesystem path
| path || FileSystem Path || (null)<br/>path=/<br/>path=/dev_hdd0/game<br/>path=/dev_usb000<br/>path=/dev_bdvd/PS3_CONTENT/THEMEDIR/D000<br/>any other filesystem path
|-
|-
| suffix || Filter by extension? || (null)<br/>suffix=.*<br/>suffix=.pkg<br/>suffix=.P3T<br/>suffix=informationboard (see: [[Widgets]])<br/>any other extension?
| suffix || Filter by extension? || (null)<br/>suffix=.*<br/>suffix=.pkg<br/>suffix=.P3T<br/>any other extension?
|-
|-
| subclass || Subclass of the files (mimetype?) || (null)<br/>subclass=x-host/package<br/>subclass=x-host/widget (see: [[Widgets]])<br/>subclass=x-host/directory<br/>subclass=x-host/theme-content<br/>subclass=x-host/ps2_newsavedata<br/>subclass=x-host/mount-info<br/>subclass=x-host/unknown<br/>subclass=x-host/file
| subclass || Subclass of the files (mimetype?) || (null)<br/>subclass=x-host/package<br/>subclass=x-host/widget<br/>subclass=x-host/directory<br/>subclass=x-host/theme-content<br/>subclass=x-host/mount-info ''(to confirm)''<br/>subclass=x-host/unknown ''(to confirm)''<br/>subclass=x-host/file ''(to confirm)''
|-
|-
|}
|}
Line 79: Line 69:
| Positive or negative condition || having || on<br />off || having=off
| Positive or negative condition || having || on<br />off || having=off
|-
|-
| Main search table? || table || Table from [[XMB_database#Tables | XMB database tables]] || table=MMS_MEDIA_TYPE_SYSTEM
| Main search table? || table || Table from [http://www.ps3devwiki.com/wiki/XMB_database#Tables XMB database tables] || table=MMS_MEDIA_TYPE_SYSTEM
|-
|-
| Run function (from registory.xml variables) || rquery || (null)<br />Variables from registory.xml || rquery=root.fixed_items.fah
| Run function (from registory.xml variables) || rquery || (null)<br />Variables from registory.xml || rquery=root.fixed_items.fah
Line 85: Line 75:
| Run function (from envirmont variables?) || rqueryenv || (null)<br />backup || rqueryenv=backup
| Run function (from envirmont variables?) || rqueryenv || (null)<br />backup || rqueryenv=backup
|-
|-
| Search condition || cond || (null)<br />Combination of [[XMB_database#Objects_and_fields | XMB database object fields]] using logical [[#Operators|operators]] || cond=Ae+StorageMedia:StorageMedia.stat.mediaStatus %xCB_MEDIA_INSERTED+Ae+StorageMedia:StorageMedia.deviceType %xCB_DEVICE_TYPE_CF
| Search condition || cond || (null)<br />Combination of [http://www.ps3devwiki.com/wiki/XMB_database#Objects_and_fields XMB database object fields] using logical [[#Operators|operators]] || cond=Ae+StorageMedia:StorageMedia.stat.mediaStatus %xCB_MEDIA_INSERTED+Ae+StorageMedia:StorageMedia.deviceType %xCB_DEVICE_TYPE_CF
|-
|-
|}
|}
Line 101: Line 91:
| Returned items limit || limit || (null)<br />Numbers up to 2048? || limit=2048
| Returned items limit || limit || (null)<br />Numbers up to 2048? || limit=2048
|-
|-
| Main search table? || table || Table from [[XMB_database#Tables | XMB database tables]] || table=MMS_MEDIA_TYPE_SYSTEM
| Main search table? || table || Table from [http://www.ps3devwiki.com/wiki/XMB_database#Tables XMB database tables] || table=MMS_MEDIA_TYPE_SYSTEM
|-
|-
| Filter by subclass? || subclass || (null)<br />x-xcb/unknown<br />x-xcb/game<br />x-xcb/game-disc<br />x-xcb/game-debug<br />x-xcb/game-list<br />x-xcb/content-disc<br />x-xcb/video<br />x-xcb/video-disctitle<br />x-xcb/video-file<br />x-xcb/video-list<br />x-xcb/video-content<br />x-xcb/editingvideo<br />x-xcb/photo<br />x-xcb/photo-list<br />x-xcb/music<br />x-xcb/music-list<br />x-xcb/segment<br />x-xcb/storage-media<br />x-xcb/storagemedia-generic<br />x-xcb/storagemedia-cdda<br />x-xcb/storagemedia-sacd<br />x-xcb/storagemedia-psmc<br />x-xcb/storagemedia-dlna<br />x-xcb/storagemedia-avchd<br />x-xcb/storagemedia-bdc<br />x-xcb/storagemedia-videodisc<br />x-xcb/storagemedia-sdps3<br />x-xcb/storagemedia-sdps2<br />x-xcb/storagemedia-sdpsp<br />x-xcb/storagemedia-psv<br />x-xcb/directory<br />x-xcb/directory-generic<br />x-xcb/directory-photo<br />x-xcb/directory-music<br />x-xcb/directory-video<br />x-xcb/directory-bddata<br />x-xcb/savedata-ps3<br />x-xcb/savedata-ps2<br />x-xcb/savedata-ps1<br />x-xcb/savedata-psp<br />x-xcb/savedata-plus<br />x-xcb/savedata-pspdir<br />x-xcb/achbase<br />x-xcb/achievtitle<br />x-xcb/achievgroup<br />x-xcb/achievflag<br />x-xcb/friendachievtitle<br />x-xcb/friendachievflag<br />x-xcb/friendachievgroup<br />x-xcb/person<br />x-xcb/playedplayer<br />x-xcb/blockedplayer<br />x-xcb/message<br />x-xcb/psv<br />x-xcb/vmc<br />x-xcb/query-condition || subclass=x-xcb/storagemedia-sdps2
| Filter by subclass? || subclass || (null)<br />x-xcb/unknown<br />x-xcb/game<br />x-xcb/game-disc<br />x-xcb/game-debug<br />x-xcb/game-list<br />x-xcb/content-disc<br />x-xcb/video<br />x-xcb/video-disctitle<br />x-xcb/video-file<br />x-xcb/video-list<br />x-xcb/video-content<br />x-xcb/editingvideo<br />x-xcb/photo<br />x-xcb/photo-list<br />x-xcb/music<br />x-xcb/music-list<br />x-xcb/segment<br />x-xcb/storage-media<br />x-xcb/storagemedia-generic<br />x-xcb/storagemedia-cdda<br />x-xcb/storagemedia-sacd<br />x-xcb/storagemedia-psmc<br />x-xcb/storagemedia-dlna<br />x-xcb/storagemedia-avchd<br />x-xcb/storagemedia-bdc<br />x-xcb/storagemedia-videodisc<br />x-xcb/storagemedia-sdps3<br />x-xcb/storagemedia-sdps2<br />x-xcb/storagemedia-sdpsp<br />x-xcb/storagemedia-psv<br />x-xcb/directory<br />x-xcb/directory-generic<br />x-xcb/directory-photo<br />x-xcb/directory-music<br />x-xcb/directory-video<br />x-xcb/directory-bddata<br />x-xcb/savedata-ps3<br />x-xcb/savedata-ps2<br />x-xcb/savedata-ps1<br />x-xcb/savedata-psp<br />x-xcb/savedata-plus<br />x-xcb/savedata-pspdir<br />x-xcb/achbase<br />x-xcb/achievtitle<br />x-xcb/achievgroup<br />x-xcb/achievflag<br />x-xcb/friendachievtitle<br />x-xcb/friendachievflag<br />x-xcb/friendachievgroup<br />x-xcb/person<br />x-xcb/playedplayer<br />x-xcb/blockedplayer<br />x-xcb/message<br />x-xcb/psv<br />x-xcb/vmc<br />x-xcb/query-condition || subclass=x-xcb/storagemedia-sdps2
Line 107: Line 97:
| Filter by genre? || genre || (null)<br />Photo<br />Game<br />Music<br />Video<br/>BdData || genre=Photo
| Filter by genre? || genre || (null)<br />Photo<br />Game<br />Music<br />Video<br/>BdData || genre=Photo
|-
|-
| Sorting || sort || (null)<br />Combination of [[XMB_database#Objects_and_fields | XMB database object fields]] using sort operators:<br />+ ''[ascend]''<br />- ''[descend]'' || sort=+StorageMedia:StorageMedia.sortOrder+StorageMedia :StorageMedia.timeInserted
| Sorting || sort || (null)<br />Combination of [http://www.ps3devwiki.com/wiki/XMB_database#Objects_and_fields XMB database object fields] using sort operators:</br>+ ''[increasing]''<br/>- ''[decreasing]'' || sort=+StorageMedia:StorageMedia.sortOrder+StorageMedia :StorageMedia.timeInserted
|-
|-
| Sorting (from registory.xml variables) || ssort || (null)<br />Variables from registory.xml || ssort=root.sort_selected.friend_named
| Sorting (from registory.xml variables) || ssort || (null)<br />Variables from registory.xml || ssort=root.sort_selected.friend_named
|-
|-
| Search condition || cond || (null)<br />Combination of [[XMB_database#Objects_and_fields | XMB database object fields]] using logical [[#Operators|operators]] || cond=Ae+StorageMedia:StorageMedia.stat.mediaStatus %xCB_MEDIA_INSERTED+Ae+StorageMedia:StorageMedia.deviceType %xCB_DEVICE_TYPE_CF
| Search condition || cond || (null)<br />Combination of [http://www.ps3devwiki.com/wiki/XMB_database#Objects_and_fields XMB database object fields] using logical [[#Operators|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)<br />Variables from registory.xml || scond=root.cond_selected.gamelist_format
| Search condition (from registory.xml variables) || scond || (null)<br />Variables from registory.xml || scond=root.cond_selected.gamelist_format
Line 126: Line 116:
|-
|-
| ???????? || opt || (null)<br />parent<br/>logical<br/>shared || opt=parent
| ???????? || opt || (null)<br />parent<br/>logical<br/>shared || opt=parent
|-
| ???????? || io || IOGameVideo || io=IOGameVideo
|-
|-
|}
|}
Line 148: Line 136:


== xmb://localhost/ ==
== xmb://localhost/ ==
Allows to load a segment from another .xml file


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


<pre><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"/></pre>
<pre><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"/></pre>
Line 162: Line 149:
! Path !! Example !! notes
! Path !! Example !! notes
|-
|-
| rowspan="2" | dev_flash/vsh/resource/explore/xmb/file.xml || xmb://localhost/'''dev_flash/vsh/resource/explore/'''xmb/'''file.xml'''#'''segment''' || explicit path
| dev_flash/vsh/resource/explore/xmb/linked_file.xml || xmb://localhost/'''dev_flash/vsh/resource/explore/'''xmb/linked_file.xml#loaded_segment ||  
|-
|-
| xmb://localhost/'''%flash/'''xmb/'''file.xml'''#'''segment''' || shorcut path
| 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 || XMBM+ mod loads the main items from the installation folder of an app<br>Intended for easy updates of the .xml files
| 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<br>Intended for updating the list of displayed games dinamically
| 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
|-
|-
|}
|}
*Other uses, found inside explore_category_video.sprx (interesting because the file root.xml doesnt exists in path dev_flash/vsh/resource/explore/xmb/)
**xmb://localhost/root.xml#
**xmb://localhost/app_home/root.xml#
*Speculation (partially). It seems is posible to load an item from a segment by using one of these methods (untested):
**src="xmb://localhost/%flash/xmb/file.xml#segment.item"
**src="xmb://localhost/%flash/xmb/file.xml#segment:item"


= ese Functions =
= ese Functions =
Line 184: Line 163:


*Managed by dev_flash/vsh/module/
*Managed by dev_flash/vsh/module/
**esecron.sprx (replaced in firmware 2.20 <!-- by eseibrd.sprx -->)
**esehttp.sprx
**esehttp.sprx
**eseibrd.sprx
**eseibrd.sprx
Line 252: Line 230:


== sel://localhost/ex? ==
== sel://localhost/ex? ==
Loads an item from '''dev_flash/vsh/resource/explore/xmb/registory.xml'''
Usage example:
Usage example:


<pre><Query class="type:x-xmb/folder-pixmap" key="gameDir2" attr="gameDir2" src="sel://localhost/ex?root.view_selected.game"/></pre>
<pre><Query class="type:x-xmb/folder-pixmap" key="gameDir2" attr="gameDir2" src="sel://localhost/ex?root.view_selected.game"/></pre>
The example above loads all this info sequentially (reordered for convenience):
<pre>
<XMBML version="1.0">
<View id="root">
<Attributes>
<Table key="view_selected">
  <Pair key="game"><String>view_game.all</String></Pair>
</Table>
<Table key="view_game">
<Pair key="all"><String>xcb://localhost/query?limit=2048&ssort=root.sort_selected.game_all&limit=2048&scond=root.cond_selected.game_all</String></Pair>
</Table>
<Table key="sort_selected">
<Pair key="game_all"><String>sort_game.time_created_descend</String></Pair>
<Table key="sort_game">
<Pair key="time_created_descend"><String>sort=-Game:Common.stat.rating-Game:Common.timeCreated+Game:Common.titleForSort-Game:Game.category</String></Pair>
</Table>
<Table key="cond_selected">
<Pair key="game_all"><String>cond_game.all_default</String></Pair>
</Table>
<Table key="cond_game">
<Pair key="all_default"><String>cond=An+Game:Game.category GD+An+Game:Game.category 2D+An+Game:Game.category CB+An+Game:Game.category HM+An+Game:Game.category AT+An+Game:Game.category AV+An+Game:Game.category AM+An+Game:Game.category AP+An+Game:Game.category VF+An+Game:Game.category BV+An+Game:Game.category WT+An+Game:Game.category SF+An+Game:Game.category AS+AL+Game:Common.stat.rating 299</String></Pair>
</Table>
</Attributes>
<Items>
<Item key="view_selected" attr="view_selected" />
<Item key="view_game" attr="view_game" />
<Item key="sort_selected" attr="sort_selected" />
<Item key="sort_game" attr="sort_game" />
<Item key="cond_selected" attr="cond_selected" />
<Item key="cond_game" attr="cond_game" />
</Items>
</View>
</XMBML>
</pre>


== sel://localhost/fnregist? ==
== sel://localhost/fnregist? ==
Line 334: Line 272:


== sel://localhost/ismegatv? ==
== sel://localhost/ismegatv? ==
Found inside explore_category_game.sprx , explore_category_network.sprx
Found inside explore_category_game.sprx
Region Checked for Korean.


== sel://localhost/ispremo? ==
== sel://localhost/ispremo? ==
Line 381: Line 318:


== sel://localhost/ps2emusave? ==
== sel://localhost/ps2emusave? ==
Checks if one or more "PS2 classic" savedata exists (by looking at the [[xRegistry.sys]]/setting/game/ps2emuSaveUtility setting ?), and if found it loads category_game.xml#seg_sdps2 to show the [[:File:Saved_Data_Utility_(PS2).jpg|Saved Data Utility (PS2)]] submenu
Usage example:
Usage example:


Line 403: Line 338:


== sel://localhost/wenv? ==
== sel://localhost/wenv? ==
Found inside explore_category_game.sprx<br>
Found inside explore_category_game.sprx
Usage example:
<pre>
sel://localhost/wenv?k=FacebookDelAcc&v=on&rquery=root.fixed_items.facebook_del_acc&e=FacebookDelAccReload
</pre>


= xil Functions =
= xil Functions =
Line 413: Line 344:


== xil://localhost/list? ==
== xil://localhost/list? ==
Loads XIL information, in most cases this xil info is stored in a xil.xml configuration file. Usage example:
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:


<pre><Query class="type:x-xmb/folder-pixmap" key="seg_xil" attr="seg_xil" src="xil://localhost/list?t=music"/></pre>
<pre><Query class="type:x-xmb/folder-pixmap" key="seg_xil" attr="seg_xil" src="xil://localhost/list?t=music"/></pre>
Line 440: Line 371:


== xil://localhost/item? ==
== xil://localhost/item? ==
Found in explore_category_game.sprx (never found used on XMBML files, so no example from ofw available)
Found in explore_category_game.sprx


<pre>xil://localhost/item?x=%d&y=%u&t=%llx</pre>
<pre>xil://localhost/item?x=%d&y=%u&t=%llx</pre>
Line 449: Line 380:
|-
|-
! x
! x
|  ||  
|  ||
|-
|-
! y
! y
|  ||  
|  ||
|-
|-
! t
! t
|  ||  
|  ||
|-
|-
|}
|}
*Speculation
**The valid values for "t" probably are the same used by xil://localhost/list
***t=music
***t=tv
***t=video
***t=game


= chat Functions =
= chat Functions =
Line 515: Line 439:


== rss:// ==
== rss:// ==
Usage examples:
Usage example:


<pre><Query class="type:x-xmb/folder-pixmap" key="site_rss_2" attr="site_rss_2" src="rss://http://ps3.drikin.com/rss/sample.xml"/></pre>
<pre><Query class="type:x-xmb/folder-pixmap" key="site_rss_2" attr="site_rss_2" src="rss://http://ps3.drikin.com/rss/sample.xml"/></pre>
<pre><Query class="type:x-xmb/folder-pixmap" key="rss_provider_0" attr="rss_provider_0" src="rss://http://www.rssnavi.jp/rss/?k=caterss3"/></pre>
k = channel ?


= wboard Functions =
= wboard Functions =
Please note that all contributions to PS3 Developer wiki are considered to be released under the GNU Free Documentation License 1.2 (see PS3 Developer wiki:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!

To protect the wiki against automated edit spam, we kindly ask you to solve the following hCaptcha:

Cancel Editing help (opens in new window)