symbian4/mw/mds/package_definition.xml
author Bob Rosenberg <bob.rosenberg@nokia.com>
Thu, 01 Apr 2010 12:01:18 +0100
branchHighFidelityModel
changeset 150 8d58b930d36e
permissions -rw-r--r--
First draft of Symbian^4 pkgdefs

<?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^4" schema="2.0.1">
  <systemModel>
    <layer name="mw" long-name="Middleware" levels="generic specific">
      <block name="mds" level="specific" long-name="Metadata Services" levels="mgr eng server int">
        <collection name="mds_plat" long-name="Metadata Services Platform Interfaces" level="int">
          <component name="context_engine_plugin_api" long-name="Context Engine Plugin API" introduced="^2" filter="s60" class="api">
            <unit bldFile="/sf/mw/mds/mds_plat/context_engine_plugin_api/group" filter="!test"/>
            <unit bldFile="/sf/mw/mds/mds_plat/context_engine_plugin_api/tsrc/group" filter="test,api_test"/>
          </component>
          <component name="harvester_framework_api" long-name="Harvester Framework API" introduced="^2" filter="s60" class="api">
            <unit bldFile="/sf/mw/mds/mds_plat/harvester_framework_api/group" filter="!test"/>
            <unit bldFile="/sf/mw/mds/mds_plat/harvester_framework_api/tsrc/group" filter="test,api_test"/>
            <!-- can only have one unit with the same filter, #include the following from the previous unit -->
            <unit bldFile="/sf/mw/mds/mds_plat/harvester_framework_api/tsrc/composerplugintest/group" filter="test,api_test"/>
            <unit bldFile="/sf/mw/mds/mds_plat/harvester_framework_api/tsrc/harvesterclienttest/group" filter="test,api_test"/>
            <unit bldFile="/sf/mw/mds/mds_plat/harvester_framework_api/tsrc/harvesterdatatest/group" filter="test,api_test"/>
            <unit bldFile="/sf/mw/mds/mds_plat/harvester_framework_api/tsrc/harvesterplugintest/group" filter="test,api_test"/>
            <unit bldFile="/sf/mw/mds/mds_plat/harvester_framework_api/tsrc/monitorplugintest/group" filter="test,api_test"/>
          </component>
          <component name="location_manager_api" long-name="Location Manager API" introduced="^2" filter="s60" class="api">
            <unit bldFile="/sf/mw/mds/mds_plat/location_manager_api/group" filter="!test"/>
            <unit bldFile="/sf/mw/mds/mds_plat/location_manager_api/tsrc/group" filter="test,api_test"/>
          </component>
          <component name="metadata_engine_api" long-name="Metadata Engine API" introduced="^2" filter="s60" class="api">
            <unit bldFile="/sf/mw/mds/mds_plat/metadata_engine_api/group" filter="!test"/>
            <unit bldFile="/sf/mw/mds/mds_plat/metadata_engine_api/tsrc/group" filter="test,api_test"/>
          </component>
          <component name="content_listing_framework_collection_manager_api" long-name="Content Listing Framework Collection Manager API" introduced="^2" filter="s60" class="api">
            <unit bldFile="/sf/mw/mds/mds_plat/content_listing_framework_collection_manager_api/group" filter="!test"/>
            <unit bldFile="/sf/mw/mds/mds_plat/content_listing_framework_collection_manager_api/tsrc/group" filter="test,api_test"/>
          </component>
          <component name="content_listing_framework_extended_api" long-name="Content Listing Framework Extended API" introduced="^2" filter="s60" class="api">
            <unit bldFile="/sf/mw/mds/mds_plat/content_listing_framework_extended_api/group"/>
          </component>
        </collection>
        <collection name="mds_pub" long-name="Metadata Services Public Interfaces" level="int">
          <component name="content_listing_framework_api" long-name="Content Listing Framework API" introduced="^2" filter="s60" class="api">
            <unit bldFile="/sf/mw/mds/mds_pub/content_listing_framework_api/group" filter="!test"/>
            <unit bldFile="/sf/mw/mds/mds_pub/content_listing_framework_api/tsrc/group" filter="test,api_test"/>
          </component>
        </collection>
        <collection name="metadataengine" long-name="Metadata Engine" level="eng">
          <component name="metadataengine_common" filter="s60" long-name="Metadata Engine Common" introduced="^2">
            <unit bldFile="/sf/mw/mds/metadataengine/common/group"/>
          </component>
          <component name="metadataengine_server" filter="s60" long-name="Metadata Engine Server" introduced="^2">
            <unit bldFile="/sf/mw/mds/metadataengine/server/group"/>
          </component>
          <component name="metadataengine_client" filter="s60" long-name="Metadata Engine Client" introduced="^2">
            <unit bldFile="/sf/mw/mds/metadataengine/client/group"/>
          </component>
          <component name="metadataengine_build" filter="s60" long-name="Metadata Engine Build" introduced="^2">
            <!--make this collection a single component, or split this bld.inf into the other units  -->
            <unit bldFile="/sf/mw/mds/metadataengine/group"/>
          </component>
        </collection>
        <collection name="locationmanager" long-name="Location Manager" level="mgr">
          <component name="locationtrail" filter="s60" long-name="Location Trail" introduced="^2">
            <unit bldFile="/sf/mw/mds/locationmanager/locationtrail/group"/>
          </component>
          <component name="locationmanager_server" filter="s60" long-name="Location Manager Server" introduced="^2">
            <unit bldFile="/sf/mw/mds/locationmanager/server/group"/>
          </component>
          <component name="locationmanager_client" filter="s60" long-name="Location Manager Client" introduced="^2">
            <unit bldFile="/sf/mw/mds/locationmanager/client/group"/>
          </component>
          <component name="locationmanager_build" filter="s60" long-name="Location Manager Build" introduced="^2">
            <!--make this collection a single component, or split this bld.inf into the other units  -->
            <unit bldFile="/sf/mw/mds/locationmanager/group"/>
          </component>
        </collection>
        <collection name="contextengine" long-name="Context Engine" level="eng">
          <component name="contextengine_plugins" filter="s60" long-name="Context Engine Plugins" introduced="^2" plugin="Y">
            <unit bldFile="/sf/mw/mds/contextengine/plugins/group"/>
          </component>
          <component name="contextengine_build" filter="s60" long-name="Context Engine Build" introduced="^2">
            <!--make this collection a single component, or make this unit self-contained  -->
            <unit bldFile="/sf/mw/mds/contextengine/group"/>
          </component>
        </collection>
        <collection name="harvester" long-name="Harvester" level="eng">
          <component name="blacklistclient" filter="s60" long-name="Blacklist Client" introduced="^2">
            <unit bldFile="/sf/mw/mds/harvester/blacklistclient/group"/>
          </component>
          <component name="blacklistserver" filter="s60" long-name="Blacklist Server" introduced="^2">
            <unit bldFile="/sf/mw/mds/harvester/blacklistserver/group"/>
          </component>
          <component name="harvester_common" filter="s60" long-name="Harvester Common" introduced="^2">
            <unit bldFile="/sf/mw/mds/harvester/common/group"/>
          </component>
          <component name="composerplugins" filter="s60" long-name="Composer Plugins" introduced="^2" plugin="Y">
            <unit bldFile="/sf/mw/mds/harvester/composerplugins/group"/>
          </component>
          <component name="harvesterplugins" filter="s60" long-name="Harvester Plugins" introduced="^2" plugin="Y">
            <unit bldFile="/sf/mw/mds/harvester/harvesterplugins/group"/>
          </component>
          <component name="monitorplugins" filter="s60" long-name="Monitor Plugins" introduced="^2" plugin="Y">
            <unit bldFile="/sf/mw/mds/harvester/monitorplugins/group"/>
          </component>
          <component name="harvester_server" filter="s60" long-name="Harvester Server" introduced="^2">
            <unit bldFile="/sf/mw/mds/harvester/server/group"/>
          </component>
          <component name="harvester_client" filter="s60" long-name="Harvester Client" introduced="^2">
            <unit bldFile="/sf/mw/mds/harvester/client/group"/>
          </component>
          <component name="harvester_build" filter="s60" long-name="Harvester Build" introduced="^2">
            <!-- split these exports into the other components -->
            <unit bldFile="/sf/mw/mds/harvester/group"/>
          </component>
        </collection>
        <collection name="watchdog" long-name="Watchdog" level="server">
          <!-- collection is really a component. Move down a directory -->
          <component name="mdswatchdog" filter="s60" long-name="Metadata Watchdog" introduced="^2">
            <unit bldFile="/sf/mw/mds/watchdog/group"/>
          </component>
        </collection>
        <collection name="clfwrapper" long-name="Content Listing Framework Wrapper" level="int">
          <!-- collection is really a component. Move down a directory -->
          <component name="clfwrapper_build" filter="s60" long-name="CLF Wrapper Build" introduced="^2" class="placeholder">
            <!-- Uncomment unit when configuration is in place. Currently #included from mds_build -->
            <!--<unit bldFile="clfwrapper/group"/>-->
          </component>
        </collection>
        <collection name="mds_info" long-name="Metadata Services Info" level="int">
          <component name="mds_build" filter="s60" long-name="Metadata Services Build" introduced="^2">
            <!-- consider distributiing this into the rest of the components in the package -->
            <unit bldFile="/sf/mw/mds/group"/>
          </component>
        </collection>
      </block>
    </layer>
  </systemModel>
</SystemDefinition>