symbian3/app/musicplayer/package_definition.xml
author Bob Rosenberg <bob.rosenberg@nokia.com>
Wed, 17 Mar 2010 14:41:09 +0000
branchHighFidelityModel
changeset 141 27d9d356efbf
parent 127 a79ea6a46139
permissions -rw-r--r--
Separate out all API components

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE SystemDefinition [
<!ELEMENT SystemDefinition ( systemModel )>
<!ATTLIST SystemDefinition
  name CDATA #REQUIRED
  schema CDATA #REQUIRED
>
<!-- all paths are relative to the environment variable specified by the root attribute, or SOURCEROOT if not.  -->

<!-- System Model Section of DTD -->
<!ELEMENT systemModel (layer+)>

<!ELEMENT layer (block* | collection*)*>
<!-- Kernel Services, Base Services, OS Services, Etc -->
<!ATTLIST layer
  name CDATA #REQUIRED
  long-name CDATA #IMPLIED
  levels NMTOKENS #IMPLIED
  span CDATA #IMPLIED
>

<!ELEMENT block (subblock* | collection*)*>
 <!-- Generic OS services, Comms Services, etc -->
<!ATTLIST block
  levels NMTOKENS #IMPLIED
  span CDATA #IMPLIED
  level NMTOKEN #IMPLIED
  name CDATA #REQUIRED
  long-name CDATA #IMPLIED
>

<!ELEMENT subblock (collection)*>
<!-- Cellular Baseband Services, Networking Services, etc -->
<!ATTLIST subblock
  name CDATA #REQUIRED
  long-name CDATA #IMPLIED
>

<!ELEMENT collection (component)*>
<!-- Screen Driver, Content Handling, etc -->
<!ATTLIST collection
  name CDATA #REQUIRED
  long-name CDATA #IMPLIED
  level NMTOKEN #IMPLIED
>

<!ELEMENT component (unit)*>
<!-- contains units or is a  package or prebuilt -->
<!ATTLIST component
  name CDATA #REQUIRED
  long-name CDATA #IMPLIED
  deprecated CDATA #IMPLIED
  introduced CDATA #IMPLIED
  contract CDATA #IMPLIED
  plugin (Y|N) "N"
  filter CDATA #IMPLIED
  class NMTOKENS #IMPLIED
  supports CDATA #IMPLIED
  purpose ( optional | mandatory | development ) "optional"
>

<!ELEMENT unit EMPTY >
<!-- must be buildable (bld.inf) -->
<!-- bldFile  may someday be removed in favour of mrp -->
<!ATTLIST unit
  mrp CDATA #IMPLIED
  filter CDATA #IMPLIED
  bldFile CDATA #IMPLIED
  root CDATA #IMPLIED
  version NMTOKEN #IMPLIED
  prebuilt NMTOKEN #IMPLIED
  late (Y|N) #IMPLIED
  priority CDATA #IMPLIED
>
]>
<SystemDefinition name="Symbian^3" schema="2.0.1">
  <systemModel>
    <layer name="app" long-name="Applications" levels="services apps">
      <block name="musicplayer" level="apps" long-name="Music Player Apps" levels="plugins support hs app">
        <collection name="musicplayer_plat" long-name="Music Player Apps Platform Interfaces" level="app">
          <component name="mpx_music_player_app_api" long-name="MPX Music Player App API" filter="s60" class="api">
            <unit bldFile="/sf/app/musicplayer/musicplayer_plat/mpx_music_player_app_api/group"/>
          </component>
          <component name="mpx_music_player_commonui_api" long-name="MPX Music Player Common UI API" filter="s60" class="api">
            <unit bldFile="/sf/app/musicplayer/musicplayer_plat/mpx_music_player_commonui_api/group"/>
          </component>
          <component name="mpx_music_player_media_key_handler_api" long-name="MPX Music Player Media Key Handler API" filter="s60" class="api">
            <unit bldFile="/sf/app/musicplayer/musicplayer_plat/mpx_music_player_media_key_handler_api/group"/>
          </component>
          <component name="mpx_music_player_remote_control_api" long-name="MPX Music Player Remote Control API" filter="s60" class="api">
            <unit bldFile="/sf/app/musicplayer/musicplayer_plat/mpx_music_player_remote_control_api/group"/>
          </component>
          <component name="mpx_music_shop_ui_api" long-name="MPX Music Shop UI API" filter="s60" class="api">
            <unit bldFile="/sf/app/musicplayer/musicplayer_plat/mpx_music_shop_ui_api/group"/>
          </component>
          <component name="mpx_music_wap_adapter_cenrep_api" long-name="MPX Music Wap Adapter CenRep API" filter="s60" class="api">
            <unit bldFile="/sf/app/musicplayer/musicplayer_plat/mpx_music_wap_adapter_cenrep_api/group"/>
          </component>
          <component name="mpx_music_store_api" long-name="MPX Music Store Find API" filter="s60" class="api">
            <unit bldFile="/sf/app/musicplayer/musicplayer_plat/mpx_music_store_api/group"/>
          </component>
          <component name="audio_application_features_api" long-name="Audio Application Features API" filter="s60" class="api">
            <unit bldFile="/sf/app/musicplayer/musicplayer_plat/audio_application_features_api/group"/>
          </component>
          <component name="music_content_publisher_plugin_api" long-name="Music Content Publisher Plugin API" filter="s60" class="api">
            <unit bldFile="/sf/app/musicplayer/musicplayer_plat/music_content_publisher_plugin_api/group"/>
          </component>
        </collection>
        <collection name="mpxmusicplayer" long-name="MPX Music Player" level="app">
          <component name="mpxmusicplayer_help" filter="s60" long-name="Help">
            <unit bldFile="/sf/app/musicplayer/mpxmusicplayer/help/group"/>
          </component>
          <component name="mpxmusicplayer_commonui" filter="s60" long-name="MPX Common UI">
            <unit bldFile="/sf/app/musicplayer/mpxmusicplayer/commonui/group"/>
          </component>
          <component name="mpx_metadatahandler" filter="s60" long-name="MPX Metadata Handler">
            <unit bldFile="/sf/app/musicplayer/mpxmusicplayer/metadatahandler/group"/>
          </component>
          <component name="mediakeyhandler" filter="s60" long-name="MPX Media Key Handler">
            <unit bldFile="/sf/app/musicplayer/mpxmusicplayer/mediakeyhandler/group"/>
          </component>
          <component name="mpxmusicplayer_app" filter="s60" long-name="MPX Application">
            <unit bldFile="/sf/app/musicplayer/mpxmusicplayer/app/group"/>
          </component>
          <component name="mpxmusicplayer_build" filter="s60" long-name="MPX Music Player Build">
            <!--  can the exports be distributed to the above components?  -->
            <unit bldFile="/sf/app/musicplayer/mpxmusicplayer/group"/>
          </component>
        </collection>
        <collection name="musichomescreen_multiview" long-name="Music Home Screen Multiview" level="hs">
          <!-- Uncomment all units when configuration is in place. All currently #included from musichomescreen_build -->
          <component name="mpxcollectionpublisher" filter="s60" long-name="MPX Collection Publisher" introduced="^2" class="placeholder">
            <!--<unit bldFile="musichomescreen_multiview/mpxcollectionpublisher/group"/>-->
          </component>
          <component name="musiccontentpublisher" filter="s60" long-name="Music Content Publisher" introduced="^2" class="placeholder">
            <!--<unit bldFile="musichomescreen_multiview/musiccontentpublisher/group"/>-->
          </component>
          <component name="mcpmusicplayer" filter="s60" long-name="Music Player MCP Plugin" introduced="^2" plugin="Y" class="placeholder">
            <!--<unit bldFile="musichomescreen_multiview/mcpmusicplayer/group"/>-->
          </component>
          <component name="musicplayeractionhandlerplugin" filter="s60" long-name="Music Player Action Handler Plugin" introduced="^2" plugin="Y" class="placeholder">
            <!--<unit bldFile="musichomescreen_multiview/musicplayeractionhandlerplugin/group"/>-->
          </component>
          <component name="mpx_data" filter="s60" long-name="MPX Data" introduced="^2" class="placeholder">
            <!-- does this make sense to be a component? should it just be #include from musichomescreen_multiview/group? -->
            <!--<unit bldFile="musichomescreen_multiview/data/themes/default/group"/>-->
          </component>
          <component name="musichomescreen_build" filter="s60" long-name="Music Homescreen Multiview Build" introduced="^2">
            <unit bldFile="/sf/app/musicplayer/musichomescreen_multiview/group"/>
          </component>
        </collection>
        <collection name="mpxplugins" long-name="MPX Plugins" level="plugins">
          <component name="serviceplugins" filter="s60" long-name="MPX Service Plugins" plugin="Y">
            <unit bldFile="/sf/app/musicplayer/mpxplugins/serviceplugins/group"/>
          </component>
          <component name="viewplugins" filter="s60" long-name="MPX View Plugins" plugin="Y">
            <unit bldFile="/sf/app/musicplayer/mpxplugins/viewplugins/group"/>
          </component>
          <component name="mpxplugins_build" filter="s60" long-name="MPX Plugins Build">
            <!--  can the exports be distributed to the above components?  -->
            <unit bldFile="/sf/app/musicplayer/mpxplugins/group"/>
          </component>
        </collection>
        <collection name="musicplayer_info" long-name="Music Player Apps Info" level="app">
          <component name="musicplayer_build" filter="s60" long-name="Music Player Build">
            <!-- should explicitly #inlcude musicplayerbldvariant.hrh in each component  -->
            <unit bldFile="/sf/app/musicplayer/group"/>
          </component>
          <component name="musicplayer_test" filter="s60,test,pref_test,api_test" purpose="development" long-name="Music Player Apps Test">
            <unit bldFile="/sf/app/musicplayer/tsrc/group"/>
          </component>
        </collection>
      </block>
    </layer>
  </systemModel>
</SystemDefinition>