Editing Talk:XMBML Coding
Jump to navigation
Jump to search
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 26: | Line 26: | ||
= XML structure levels = | = XML structure levels = | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
! colspan=5 | XML tag levels !! colspan= | ! colspan=5 | XML tag levels !! colspan=6 | Common tags | ||
|- | |- | ||
! lv1 !! lv2 !! lv3 !! lv4 !! lv5 !! version !! id !! class !! key !! attr !! src | ! lv1 !! lv2 !! lv3 !! lv4 !! lv5 !! version !! id !! class !! key !! attr !! src | ||
|-{{cellcolors|#9999ff}} | |-{{cellcolors|#9999ff}} | ||
| rowspan=6 | XMBML || colspan=4 | || {{yes | | rowspan=6 | XMBML || colspan=4 | || {{yes}} || {{no}} || {{no}} || {{no}} || {{no}} || {{no}} | ||
|-{{cellcolors|#99ff99}} | |-{{cellcolors|#99ff99}} | ||
| rowspan=5 | View || colspan=3 | || {{no}} || {{yes | | rowspan=5 | View || colspan=3 | || {{no}} || {{yes}} || {{no}} || {{no}} || {{no}} || {{no}} | ||
|- | |- | ||
| rowspan=2 | Attributes || rowspan=2 {{cellcolors|#ff9999}} Table || {{cellcolors|#ff9999}} || {{no}} || {{no}} || {{no}} || {{yes}} || {{no}} || {{no | | rowspan=2 | Attributes || rowspan=2 {{cellcolors|#ff9999}} Table || {{cellcolors|#ff9999}} || {{no}} || {{no}} || {{no}} || {{yes}} || {{no}} || {{no}} | ||
|- | |- | ||
| Pair || {{no}} || {{no}} || {{no}} || {{yes | | Pair || {{no}} || {{no}} || {{no}} || {{yes}} || {{no}} || {{no}} | ||
|- | |- | ||
| rowspan=2 | Items || colspan=2 | Query || {{no}} || {{no}} || {{yes}} || {{yes}} || {{opt}} || {{opt | | rowspan=2 | Items || colspan=2 | Query || {{no}} || {{no}} || {{yes}} || {{yes}} || {{opt}} || {{opt}} | ||
|- | |- | ||
| colspan=2 | Item || {{no}} || {{no}} || {{yes}} || {{yes}} || {{opt}} || {{opt | | colspan=2 | Item || {{no}} || {{no}} || {{yes}} || {{yes}} || {{opt}} || {{opt}} | ||
|} | |} | ||
0027A950 58 4D 42 4D 4C 00 00 00 76 65 72 73 69 6F 6E 00 XMBML...version. | XMBML generic structure descriptor from explore_plugin.sprx | ||
0027A960 31 2E 30 00 00 00 00 00 56 69 65 77 00 00 00 00 1.0.....View.... | |||
0027A970 69 64 00 00 00 00 00 00 49 74 65 6D 73 00 00 00 id......Items... | Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F | ||
0027A980 49 74 65 6D 00 00 00 00 51 75 65 72 79 00 00 00 Item....Query... | |||
0027A990 6B 65 79 00 00 00 00 00 63 6C 61 73 73 00 00 00 key.....class... | 0027A950 58 4D 42 4D 4C 00 00 00 76 65 72 73 69 6F 6E 00 XMBML...version. | ||
0027A9A0 61 74 74 72 00 00 00 00 73 72 63 00 00 00 00 00 attr....src..... | 0027A960 31 2E 30 00 00 00 00 00 56 69 65 77 00 00 00 00 1.0.....View.... | ||
0027A9B0 74 79 70 65 3A 00 00 00 63 6C 73 69 64 3A 00 00 type:...clsid:.. | 0027A970 69 64 00 00 00 00 00 00 49 74 65 6D 73 00 00 00 id......Items... | ||
0027A9C0 41 74 74 72 69 62 75 74 65 73 00 00 00 00 00 00 Attributes...... | 0027A980 49 74 65 6D 00 00 00 00 51 75 65 72 79 00 00 00 Item....Query... | ||
0027A9D0 54 61 62 6C 65 00 00 00 6B 65 79 00 00 00 00 00 Table...key..... | 0027A990 6B 65 79 00 00 00 00 00 63 6C 61 73 73 00 00 00 key.....class... | ||
0027A9E0 69 6E 63 6C 75 64 65 00 50 61 69 72 00 00 00 00 include.Pair.... | 0027A9A0 61 74 74 72 00 00 00 00 73 72 63 00 00 00 00 00 attr....src..... | ||
0027A9F0 6B 65 79 00 00 00 00 00 53 74 72 69 6E 67 00 00 key.....String.. | 0027A9B0 74 79 70 65 3A 00 00 00 63 6C 73 69 64 3A 00 00 type:...clsid:.. | ||
0027A9C0 41 74 74 72 69 62 75 74 65 73 00 00 00 00 00 00 Attributes...... | |||
0027A9D0 54 61 62 6C 65 00 00 00 6B 65 79 00 00 00 00 00 Table...key..... | |||
0027A9E0 69 6E 63 6C 75 64 65 00 50 61 69 72 00 00 00 00 include.Pair.... | |||
0027A9F0 6B 65 79 00 00 00 00 00 53 74 72 69 6E 67 00 00 key.....String.. | |||
* | *Interesting tags supported but not found in official XMBML files (speculative) | ||
{{Boxcode| | {{Boxcode|content=<syntaxhighlight lang="xml"> | ||
< | <Item class="clsid:?????" /> | ||
< | <Table include="?????"> | ||
</syntaxhighlight>}} | </syntaxhighlight>}} | ||
= #include | = #include attributes = | ||
In old firmwares there seems to be a way to | In old firmwares there seems to be a way to ''include'' attributes tables inside other attribute tables, it works in the same way like in some coding languages, the included stuff needs to be loaded before the tag that includes it, and the names used are the same than the table keys, as example, using the minimalistic example of front page: | ||
{{Boxcode| | {{Boxcode|content=<syntaxhighlight lang="xml"> | ||
<View id=" | <View id="seg_browser"> | ||
<Attributes> | <Attributes> | ||
<Table key="PS3_cover_size"> | <Table key="PS3_cover_size"> | ||
<Pair key="icon_fixed_width"><String> | <Pair key="icon_fixed_width"><String>200</String></Pair> | ||
<Pair key="icon_fixed_height"><String> | <Pair key="icon_fixed_height"><String>170</String></Pair> | ||
</Table> | </Table> | ||
</Attributes> | |||
<Attributes> | |||
<Table key="game_id" include="PS3_cover_size"> | |||
<Pair key="icon"><String>game_id_cover</String></Pair> | |||
<Table key=" | |||
<Pair key="icon"><String> | |||
</Table> | </Table> | ||
</Attributes> | </Attributes> | ||
<Items> | <Items> | ||
<Item key=" | <Item key="game"/> | ||
</Items> | </Items> | ||
</View> | </View> | ||
</syntaxhighlight>}} | </syntaxhighlight>}} | ||
In the example the attribute | In the example the attribute table named "game_id" is going to load the contents of the table named "PS3_cover_size", this can be used when there are several items that uses the same attributes, is posible to create some common groups of attributes that defines a group (for restrictions or shared features), and then create more items or querys that loads an small attribute table specific for the icon + additionally the included attributes common for this kind of item. This is specially useful to make custom .xml files much smaller by removing duplicated lines (like webman) | ||