Several more packages for middleware layer HighFidelityModel
authorBob Rosenberg <bob.rosenberg@nokia.com>
Tue, 02 Feb 2010 19:53:24 +0000
branchHighFidelityModel
changeset 45 262790aa488d
parent 44 0b761d12ae12
child 46 c94b55c3fb61
Several more packages for middleware layer
symbian3/mw/camerasrv/package_definition.xml
symbian3/mw/dlnasrv/package_definition.xml
symbian3/mw/helix/package_definition.xml
symbian3/mw/mmmw/package_definition.xml
symbian3/mw/mmmw/package_definition_3.0.xml
symbian3/mw/opensrv/package_definition.xml
symbian3/mw/phonesrv/package_definition.xml
symbian3/mw/platformtools/package_definition.xml
symbian3/mw/remoteconn/package_definition.xml
symbian3/mw/remotemgmt/package_definition.xml
symbian3/mw/remotemgmt/package_definition_3.0.xml
symbian3/mw/remotestorage/package_definition.xml
symbian3/mw/remotestorage/package_definition_3.0.xml
symbian3/mw/securitysrv/package_definition.xml
symbian3/mw/securitysrv/package_definition_3.0.xml
symbian3/mw/serviceapi/package_definition.xml
symbian3/mw/serviceapi/package_definition_3.0.xml
symbian3/mw/serviceapifw/package_definition.xml
symbian3/mw/serviceapifw/package_definition_3.0.xml
symbian3/mw/srvdiscovery/package_definition.xml
symbian3/mw/srvdiscovery/package_definition_3.0.xml
symbian3/mw/svgt/package_definition.xml
symbian3/mw/svgt/package_definition_3.0.xml
symbian3/mw/uiaccelerator/package_definition.xml
symbian3/mw/uiaccelerator/package_definition_3.0.xml
symbian3/mw/uiresources/package_definition.xml
symbian3/mw/uiresources/package_definition_3.0.xml
symbian3/mw/uitools/package_definition.xml
symbian3/mw/uitools/package_definition_3.0.xml
symbian3/mw/usbservices/package_definition.xml
symbian3/mw/usbservices/package_definition_3.0.xml
symbian3/mw/videoutils/package_definition.xml
symbian3/mw/videoutils/package_definition_3.0.xml
symbian3/mw/vpnclient/package_definition.xml
symbian3/mw/vpnclient/package_definition_3.0.xml
symbian3/mw/web/package_definition.xml
symbian3/mw/web/package_definition_3.0.xml
symbian3/mw/websrv/package_definition.xml
symbian3/mw/websrv/package_definition_3.0.xml
symbian3/mw/wirelessacc/package_definition.xml
symbian3/mw/wirelessacc/package_definition_3.0.xml
--- a/symbian3/mw/camerasrv/package_definition.xml	Mon Feb 01 16:11:43 2010 +0000
+++ b/symbian3/mw/camerasrv/package_definition.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -1,109 +1,127 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE SystemDefinition [
- <!ELEMENT SystemDefinition (systemModel?,SystemBuild?)>
- <!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (block*|collection*)*>
- <!ATTLIST layer
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED>
- <!ELEMENT block (subblock*|collection*)*>
- <!ATTLIST block
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED
-  level NMTOKEN #IMPLIED
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT subblock (collection)*>
- <!ATTLIST subblock
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT collection (component)*>
- <!ATTLIST collection
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  level NMTOKEN #IMPLIED>
- <!ELEMENT component (unit)*>
- <!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>
- <!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>
- <!ELEMENT SystemBuild (option*|target+|targetList+|list+|configuration+)*>
- <!ATTLIST SystemBuild schema CDATA #REQUIRED>
- <!ELEMENT list (ref+)>
- <!ATTLIST list
-  name ID #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT ref EMPTY>
- <!ATTLIST ref item CDATA #REQUIRED>
- <!ELEMENT targetList EMPTY>
- <!ATTLIST targetList
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  target IDREFS #REQUIRED>
- <!ELEMENT target EMPTY>
- <!ATTLIST target
-  name ID #REQUIRED
-  abldTarget CDATA #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT option EMPTY>
- <!ATTLIST option
-  name ID #REQUIRED
-  abldOption CDATA #REQUIRED
-  description CDATA #REQUIRED
-  enable (Y|N) #REQUIRED>
- <!ELEMENT configuration (listRef+|ref+|task+)*>
- <!ATTLIST configuration
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  filter CDATA #REQUIRED>
- <!ELEMENT task (listRef*,(buildLayer|specialInstructions))>
- <!ELEMENT listRef EMPTY>
- <!ATTLIST listRef list CDATA #REQUIRED>
- <!ELEMENT buildLayer EMPTY>
- <!ATTLIST buildLayer
-  command CDATA #REQUIRED
-  targetList IDREFS #IMPLIED
-  unitParallel (Y|N) #REQUIRED
-  targetParallel (Y|N) 'N'>
- <!ELEMENT specialInstructions EMPTY>
- <!ATTLIST specialInstructions
-  name CDATA #REQUIRED
-  cwd CDATA #REQUIRED
-  root CDATA #IMPLIED
-  command CDATA #REQUIRED>
-]>
-<SystemDefinition schema="2.0.1" name="Symbian^3">
-<systemModel>
-<layer name="mw">
-<block name="camerasrv">
-<collection name="s60">
-<component name="camerasrv">
-<unit bldFile="/sf/mw/camerasrv/group" mrp=""/>
-</component>
-</collection>
-</block>
-</layer>
-</systemModel>
+<!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="mw" long-name="Middleware" levels="generic specific">
+      <block name="camerasrv" level="specific" long-name="Camera Services" levels="plugin fw api">
+        <collection name="camappengine" long-name="Camera App Engine" level="fw">
+          <!-- is this collection really a component? If so, move down a directory -->
+          <component name="stillconverter" filter="s60" long-name="Still Image Converter" class="placeholder">
+            <!-- should separate this from parent engine's bld.inf  -->
+            <!-- <unit bldFile="camappengine/stillconverter/group"/> -->
+          </component>
+          <component name="camappengine_engine" filter="s60" long-name="Camera App Engine" class="placeholder">
+            <!-- should separate this from parent engine's bld.inf  -->
+            <!-- <unit bldFile="camappengine/engine/group"/> -->
+          </component>
+          <component name="asynchfilesavequeue" filter="s60" long-name="Asynch File Save Queue">
+            <unit bldFile="/sf/mw/camerasrv/camappengine/asynchfilesavequeue/group"/>
+          </component>
+          <component name="camappengine_build" filter="s60" long-name="Camera App Engine Build">
+            <unit bldFile="/sf/mw/camerasrv/camappengine/build"/>
+          </component>
+        </collection>
+        <collection name="camcordermmfplugin" long-name="Camcorder MMF Plugin" level="plugin">
+          <!-- collection is really a component. Should move down a directory -->
+          <component name="camcordermmfplugin_build" filter="s60" long-name="Camcorder MMF Plugin Build" plugin="Y">
+            <unit bldFile="/sf/mw/camerasrv/camcordermmfplugin/build"/>
+          </component>
+        </collection>
+        <collection name="configmanagers" long-name="Config Managers" level="api">
+          <component name="imagingconfigmanager" filter="s60" long-name="Imaging Config Manager">
+            <unit bldFile="/sf/mw/camerasrv/configmanagers/imagingconfigmanager/group"/>
+          </component>
+        </collection>
+        <collection name="camerasrv_info" long-name="Camera Services Info" level="api">
+          <component name="camerasrv_plat" filter="s60" long-name="Camera Services Platform Interfaces" class="api">
+            <unit bldFile="/sf/mw/camerasrv/camerasrv_plat/group"/>
+          </component>
+          <component name="camerasrv_test" filter="s60,api_test" long-name="Camera Services API Test" purpose="development">
+            <!-- #include from a single bld.inf or split into mutliple componens -->
+            <unit bldFile="/sf/mw/camerasrv/camerasrv_plat/asynchronous_file_saving_queue_api/tsrc/group"/>
+            <unit bldFile="/sf/mw/camerasrv/camerasrv_plat/camera_application_engine_api/tsrc/group"/>
+            <unit bldFile="/sf/mw/camerasrv/camerasrv_plat/imaging_configuration_manager_api/tsrc/group"/>
+            <unit bldFile="/sf/mw/camerasrv/camerasrv_plat/media_recorder_api/tsrc/group"/>
+          </component>
+          <component name="camerasrv_build" filter="s60" long-name="Camera Services Build">
+            <!-- should split into individual bld.infs -->
+            <unit bldFile="/sf/mw/camerasrv/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
 </SystemDefinition>
--- a/symbian3/mw/dlnasrv/package_definition.xml	Mon Feb 01 16:11:43 2010 +0000
+++ b/symbian3/mw/dlnasrv/package_definition.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -1,139 +1,252 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE SystemDefinition [
- <!ELEMENT SystemDefinition (systemModel?,SystemBuild?)>
- <!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (block*|collection*)*>
- <!ATTLIST layer
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED>
- <!ELEMENT block (subblock*|collection*)*>
- <!ATTLIST block
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED
-  level NMTOKEN #IMPLIED
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT subblock (collection)*>
- <!ATTLIST subblock
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT collection (component)*>
- <!ATTLIST collection
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  level NMTOKEN #IMPLIED>
- <!ELEMENT component (unit)*>
- <!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>
- <!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>
- <!ELEMENT SystemBuild (option*|target+|targetList+|list+|configuration+)*>
- <!ATTLIST SystemBuild schema CDATA #REQUIRED>
- <!ELEMENT list (ref+)>
- <!ATTLIST list
-  name ID #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT ref EMPTY>
- <!ATTLIST ref item CDATA #REQUIRED>
- <!ELEMENT targetList EMPTY>
- <!ATTLIST targetList
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  target IDREFS #REQUIRED>
- <!ELEMENT target EMPTY>
- <!ATTLIST target
-  name ID #REQUIRED
-  abldTarget CDATA #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT option EMPTY>
- <!ATTLIST option
-  name ID #REQUIRED
-  abldOption CDATA #REQUIRED
-  description CDATA #REQUIRED
-  enable (Y|N) #REQUIRED>
- <!ELEMENT configuration (listRef+|ref+|task+)*>
- <!ATTLIST configuration
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  filter CDATA #REQUIRED>
- <!ELEMENT task (listRef*,(buildLayer|specialInstructions))>
- <!ELEMENT listRef EMPTY>
- <!ATTLIST listRef list CDATA #REQUIRED>
- <!ELEMENT buildLayer EMPTY>
- <!ATTLIST buildLayer
-  command CDATA #REQUIRED
-  targetList IDREFS #IMPLIED
-  unitParallel (Y|N) #REQUIRED
-  targetParallel (Y|N) 'N'>
- <!ELEMENT specialInstructions EMPTY>
- <!ATTLIST specialInstructions
-  name CDATA #REQUIRED
-  cwd CDATA #REQUIRED
-  root CDATA #IMPLIED
-  command CDATA #REQUIRED>
-]>
-<SystemDefinition schema="2.0.1" name="Symbian^3">
-<systemModel>
-<layer name="mw">
-<block name="dlnasrv">
-<collection name="s60">
-<component name="homemedia">
-<unit bldFile="/sf/mw/dlnasrv/homemedia/group" mrp=""/>
-</component>
-<component name="homesync">
-<unit bldFile="/sf/mw/dlnasrv/homesync/group" mrp=""/>
-</component>
-<component name="upnpavcontrolpoint">
-<unit bldFile="/sf/mw/dlnasrv/upnpavcontrolpoint/group" mrp=""/>
-</component>
-<component name="upnpframework">
-<unit bldFile="/sf/mw/dlnasrv/upnpframework/group" mrp=""/>
-</component>
-<component name="upnpharvester">
-<unit bldFile="/sf/mw/dlnasrv/upnpharvester/group" mrp=""/>
-</component>
-<component name="upnpmediaserver">
-<unit bldFile="/sf/mw/dlnasrv/upnpmediaserver/group" mrp=""/>
-</component>
-<component name="upnpavcontroller">
-<unit bldFile="/sf/mw/dlnasrv/upnpavcontroller/group" mrp=""/>
-</component>
-<component name="upnpsharing">
-<unit bldFile="/sf/mw/dlnasrv/upnpsharing/group" mrp=""/>
-</component>
-<component name="upnpsettings">
-<unit bldFile="/sf/mw/dlnasrv/upnpsettings/group" mrp=""/>
-</component>
-<component name="upnpmpxplugins">
-<unit bldFile="/sf/mw/dlnasrv/upnpmpxplugins/group" mrp=""/>
-</component>
-<component name="dlnasrv_plat">
-<unit bldFile="/sf/mw/dlnasrv/dlnasrv_plat/group" mrp=""/>
-</component>
-</collection>
-</block>
-</layer>
-</systemModel>
+<!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="mw" long-name="Middleware" levels="generic specific">
+      <block name="dlnasrv" level="specific" long-name="DLNA Services" levels="stack server ctrl framework plugin">
+        <collection name="upnpavcontrolpoint" long-name="UPnP A/V Control Point" level="plugin">
+          <component name="avcontrolframework" filter="s60" long-name="A/V Control Famework" introduced="9.1" deprecated="^3">
+            <unit bldFile="/sf/mw/dlnasrv/upnpavcontrolpoint/avcontrolframework/group"/>
+          </component>
+          <component name="upnpavcontrolpoint_build" filter="s60" long-name="UPnP A/V Control Point Build" introduced="9.1" deprecated="^3">
+            <!-- put exports in other component instead -->
+            <unit bldFile="/sf/mw/dlnasrv/upnpavcontrolpoint/group"/>
+          </component>
+        </collection>
+        <collection name="upnpmediaserver" long-name="UPnP Media Server" level="server">
+          <component name="avobjects" filter="s60" long-name="A/V Objects">
+            <unit bldFile="/sf/mw/dlnasrv/upnpmediaserver/avobjects/group"/>
+          </component>
+          <component name="mediaserverclient" filter="s60" long-name="Media Server Client">
+            <unit bldFile="/sf/mw/dlnasrv/upnpmediaserver/mediaserverclient/group"/>
+          </component>
+          <component name="connectionmanagerservice" filter="s60" long-name="Connection Manager Service">
+            <unit bldFile="/sf/mw/dlnasrv/upnpmediaserver/connectionmanagerservice/group"/>
+          </component>
+          <component name="contentdirectoryservice" filter="s60" long-name="Content Directory Service">
+            <unit bldFile="/sf/mw/dlnasrv/upnpmediaserver/contentdirectoryservice/group"/>
+          </component>
+          <component name="mediaserverengine" filter="s60" long-name="Media Server Engine">
+            <unit bldFile="/sf/mw/dlnasrv/upnpmediaserver/mediaserverengine/group"/>
+          </component>
+          <component name="upnpmediaserver_build" filter="s60" long-name="UPnP Media Server Build">
+            <!-- move exports into one of above components -->
+            <unit bldFile="/sf/mw/dlnasrv/upnpmediaserver/group"/>
+          </component>
+        </collection>
+        <collection name="upnpavcontroller" long-name="UPnP A/V Controller" level="ctrl">
+          <component name="upnpxmlparser" filter="s60" long-name="UPnP XML Parser" introduced="^2">
+            <unit bldFile="/sf/mw/dlnasrv/upnpavcontroller/upnpxmlparser/group"/>
+          </component>
+          <component name="upnpavcontrollerserver" filter="s60" long-name="UPnP A/V Controller Server" introduced="^2">
+            <unit bldFile="/sf/mw/dlnasrv/upnpavcontroller/upnpavcontrollerserver/group"/>
+          </component>
+          <component name="upnpavcontrollerclient" filter="s60" long-name="UPnP A/V Ccontroller Client" introduced="^2">
+            <unit bldFile="/sf/mw/dlnasrv/upnpavcontroller/upnpavcontrollerclient/group"/>
+          </component>
+          <component name="upnpavcontrollerhelper" filter="s60" long-name="UPnP A/V Controller Helper" introduced="^2">
+            <unit bldFile="/sf/mw/dlnasrv/upnpavcontroller/upnpavcontrollerhelper/group"/>
+          </component>
+          <component name="upnpavcontroller_build" filter="s60" long-name="UPnP A/V Controller Build" introduced="^2">
+            <!-- move exports content into one of above components -->
+            <unit bldFile="/sf/mw/dlnasrv/upnpavcontroller/group"/>
+          </component>
+        </collection>
+        <collection name="upnpframework" long-name="UPnP Framework" level="framework">
+          <component name="upnputilities" filter="s60" long-name="UPnP Utilities" introduced="^2">
+            <unit bldFile="/sf/mw/dlnasrv/upnpframework/upnputilities/group"/>
+          </component>
+          <component name="upnpextensionpluginif" filter="s60" long-name="UPnP Home Media Extension Plugin Interface" introduced="^2" deprecated="^3">
+            <unit bldFile="/sf/mw/dlnasrv/upnpframework/upnpextensionpluginif/group"/>
+          </component>
+          <component name="upnpfiletransferengine" filter="s60" long-name="UPnP File Transfer Engine" introduced="^2" deprecated="^3">
+            <unit bldFile="/sf/mw/dlnasrv/upnpframework/upnpfiletransferengine/group"/>
+          </component>
+          <component name="upnpcommonui" filter="s60" long-name="UPnP Common UI" introduced="^2" deprecated="^3">
+            <unit bldFile="/sf/mw/dlnasrv/upnpframework/upnpcommonui/group"/>
+          </component>
+          <component name="upnpaiwengine" filter="s60" long-name="UPnP AIW Engine" introduced="^2" deprecated="^3">
+            <unit bldFile="/sf/mw/dlnasrv/upnpframework/upnpaiwengine/group"/>
+          </component>
+          <component name="upnpaiwprovider" filter="s60" long-name="UPnP AIW Provider" introduced="^2" deprecated="^3" plugin="Y">
+            <unit bldFile="/sf/mw/dlnasrv/upnpframework/upnpaiwprovider/group"/>
+          </component>
+          <component name="upnpmusicadapter" filter="s60" long-name="UPnP Music Adapter" introduced="^2">
+            <unit bldFile="/sf/mw/dlnasrv/upnpframework/upnpmusicadapter/group"/>
+          </component>
+          <component name="upnpcommand" filter="s60" long-name="UPnP Command" introduced="^2">
+            <unit bldFile="/sf/mw/dlnasrv/upnpframework/upnpcommand/group"/>
+          </component>
+          <component name="upnpframework_build" filter="s60" long-name="UPnP Framework Build" introduced="^2">
+            <!-- move exports content into one of above components -->
+            <unit bldFile="/sf/mw/dlnasrv/upnpframework/group"/>
+          </component>
+        </collection>
+        <collection name="upnpsettings" long-name="UPnP Settings" level="framework">
+          <component name="upnpsettingsengine" filter="s60" long-name="UPnP Settings Engine" introduced="^2">
+            <unit bldFile="/sf/mw/dlnasrv/upnpsettings/upnpsettingsengine/group"/>
+          </component>
+          <component name="multiselectionui" filter="s60" long-name="Multi-Selection UI" introduced="^2" deprecated="^3">
+            <unit bldFile="/sf/mw/dlnasrv/upnpsettings/multiselectionui/group"/>
+          </component>
+          <component name="appwizard" filter="s60" long-name="UPnP Settings Wizard App" introduced="^2" deprecated="^3">
+            <unit bldFile="/sf/mw/dlnasrv/upnpsettings/appwizard/group"/>
+          </component>
+          <component name="upnpsharingui" filter="s60" long-name="UPnP Sharing UI" introduced="^2" deprecated="^3">
+            <unit bldFile="/sf/mw/dlnasrv/upnpsettings/upnpsharingui/group"/>
+          </component>
+          <component name="upnpgsplugin" filter="s60" long-name="UPnP GS Plugin" introduced="^2" plugin="Y">
+            <unit bldFile="/sf/mw/dlnasrv/upnpsettings/upnpgsplugin/group"/>
+          </component>
+          <component name="upnpsettings_build" filter="s60" long-name="UPnP Settings Build" introduced="^2">
+            <!-- move exports content into one of above components -->
+            <unit bldFile="/sf/mw/dlnasrv/upnpsettings/group"/>
+          </component>
+        </collection>
+        <collection name="upnpsharing" long-name="UPnP Sharing" level="server">
+          <component name="upnpdlnaprofiler" filter="s60" long-name="UPnP DLNA Profiler" introduced="^2">
+            <unit bldFile="/sf/mw/dlnasrv/upnpsharing/upnpdlnaprofiler/group"/>
+          </component>
+          <component name="upnpsecurity" filter="s60" long-name="UPnP Security" introduced="^2">
+            <unit bldFile="/sf/mw/dlnasrv/upnpsharing/upnpsecurity/group"/>
+          </component>
+          <component name="upnpcontentserver" filter="s60" long-name="UPnP Content Server" introduced="^2">
+            <unit bldFile="/sf/mw/dlnasrv/upnpsharing/upnpcontentserver/group"/>
+          </component>
+          <component name="applicationengine" filter="s60" long-name="UPnP Application Engine" introduced="^2">
+            <unit bldFile="/sf/mw/dlnasrv/upnpsharing/applicationengine/group"/>
+          </component>
+          <component name="upnpsharing_build" filter="s60" long-name="UPnP Sharing Build" introduced="^2">
+            <!-- move exports content into one of above components -->
+            <unit bldFile="/sf/mw/dlnasrv/upnpsharing/group"/>
+          </component>
+        </collection>
+        <collection name="upnpmpxplugins" long-name="UPnP MPX Plugins" level="plugin">
+          <component name="upnpplaybackplugins" filter="s60" long-name="UPnP Playback Plugins" introduced="^2" plugin="Y">
+            <unit bldFile="/sf/mw/dlnasrv/upnpmpxplugins/upnpplaybackplugins/group"/>
+          </component>
+          <component name="upnpmpxplugins_build" filter="s60" long-name="UPnP MPX Plugins Build" introduced="^2">
+            <!-- move exports content into other component? -->
+            <unit bldFile="/sf/mw/dlnasrv/upnpmpxplugins/group"/>
+          </component>
+        </collection>
+        <collection name="upnpharvester" long-name="UPnP Harvester" level="ctrl">
+          <component name="upnpharvester_common" filter="s60" long-name="UPnP Harvester Common" introduced="^2" deprecated="^3">
+            <!-- need to merge or #include these to a single bld.inf -->
+            <unit bldFile="/sf/mw/dlnasrv/upnpharvester/common/cmlibrary/group"/>
+            <unit bldFile="/sf/mw/dlnasrv/upnpharvester/common/cmsettings/group"/>
+            <unit bldFile="/sf/mw/dlnasrv/upnpharvester/common/cmsqlwrapper/group"/>
+            <unit bldFile="/sf/mw/dlnasrv/upnpharvester/common/dbmanager/group"/>
+          </component>
+          <component name="cdssync" filter="s60" long-name="CDS Sync" introduced="^2" deprecated="^3">
+            <unit bldFile="/sf/mw/dlnasrv/upnpharvester/cdssync/common"/>
+          </component>
+          <component name="mdhserver" filter="s60" long-name="Metadata Harvester Server" introduced="^2" deprecated="^3">
+            <unit bldFile="/sf/mw/dlnasrv/upnpharvester/mdhserver/group"/>
+          </component>
+          <component name="upnpharvester_build" filter="s60" long-name="UPnP Harvester Build" introduced="^2" deprecated="^3">
+            <!-- could just make the whole collection one component and move down a dir. Or move the exports here into the other component -->
+            <unit bldFile="/sf/mw/dlnasrv/upnpharvester/group"/>
+          </component>
+        </collection>
+        <collection name="homesync" long-name="Home Sync" level="plugin">
+          <component name="contentmanager" filter="s60" long-name="Content Manager" introduced="^2" deprecated="^3">
+            <unit bldFile="/sf/mw/dlnasrv/homesync/group"/>
+            <!-- move bld.inf into contentmanager dir -->
+          </component>
+        </collection>
+        <collection name="homemedia" long-name="Home Media" level="framework">
+          <!-- collection is really just a component. Move down a directory -->
+          <component name="homemedia_build" filter="s60" long-name="Home Media" introduced="^2" deprecated="^3">
+            <unit bldFile="/sf/mw/dlnasrv/homemedia/group"/>
+          </component>
+        </collection>
+        <collection name="dlnasrv_info" long-name="DLNA Services Info" level="plugin">
+          <component name="dlnasrv_plat" filter="s60" long-name="DLNA Services Platform Interfaces" class="api">
+            <unit bldFile="/sf/mw/dlnasrv/dlnasrv_plat/group"/>
+          </component>
+          <component name="dlnasrv_build" filter="s60" long-name="DLNA Services Build">
+            <!-- need to #include upnpplatformvar.hrh from each #included bld.inf, then this can be removed  -->
+            <unit bldFile="/sf/mw/dlnasrv/group"/>
+          </component>
+          <component name="dlnasrv_api_test" filter="s60,api_test" long-name="DLNA Services API Tests" purpose="development">
+            <unit bldFile="/sf/mw/dlnasrv/tsrc/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
 </SystemDefinition>
--- a/symbian3/mw/helix/package_definition.xml	Mon Feb 01 16:11:43 2010 +0000
+++ b/symbian3/mw/helix/package_definition.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -76,7 +76,14 @@
 <SystemDefinition name="Symbian^3" schema="2.0.1">
   <systemModel>
     <layer name="mw" long-name="Middleware" levels="generic specific">
-      <block name="helix" level="generic" long-name="../../../../mw/helix/package_definition.xml"/>
+      <block name="helix" level="generic" long-name="Helix" levels="plugin framework server generic specific">
+        <collection name="helix_ren" long-name="Helix Engine" level="framework">
+          <!-- what does "ren" stand for? -->
+          <component name="helix_stub" filter="s60" long-name="Helix Stub" introduced="^2" class="api">
+            <unit bldFile="/sf/mw/helix/helix_ren/helix_stub/group"/>
+          </component>
+        </collection>
+      </block>
     </layer>
   </systemModel>
 </SystemDefinition>
--- a/symbian3/mw/mmmw/package_definition.xml	Mon Feb 01 16:11:43 2010 +0000
+++ b/symbian3/mw/mmmw/package_definition.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -1,146 +1,150 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE SystemDefinition [
- <!ELEMENT SystemDefinition (systemModel?,SystemBuild?)>
- <!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (block*|collection*)*>
- <!ATTLIST layer
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED>
- <!ELEMENT block (subblock*|collection*)*>
- <!ATTLIST block
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED
-  level NMTOKEN #IMPLIED
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT subblock (collection)*>
- <!ATTLIST subblock
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT collection (component)*>
- <!ATTLIST collection
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  level NMTOKEN #IMPLIED>
- <!ELEMENT component (unit)*>
- <!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>
- <!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>
- <!ELEMENT SystemBuild (option*|target+|targetList+|list+|configuration+)*>
- <!ATTLIST SystemBuild schema CDATA #REQUIRED>
- <!ELEMENT list (ref+)>
- <!ATTLIST list
-  name ID #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT ref EMPTY>
- <!ATTLIST ref item CDATA #REQUIRED>
- <!ELEMENT targetList EMPTY>
- <!ATTLIST targetList
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  target IDREFS #REQUIRED>
- <!ELEMENT target EMPTY>
- <!ATTLIST target
-  name ID #REQUIRED
-  abldTarget CDATA #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT option EMPTY>
- <!ATTLIST option
-  name ID #REQUIRED
-  abldOption CDATA #REQUIRED
-  description CDATA #REQUIRED
-  enable (Y|N) #REQUIRED>
- <!ELEMENT configuration (listRef+|ref+|task+)*>
- <!ATTLIST configuration
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  filter CDATA #REQUIRED>
- <!ELEMENT task (listRef*,(buildLayer|specialInstructions))>
- <!ELEMENT listRef EMPTY>
- <!ATTLIST listRef list CDATA #REQUIRED>
- <!ELEMENT buildLayer EMPTY>
- <!ATTLIST buildLayer
-  command CDATA #REQUIRED
-  targetList IDREFS #IMPLIED
-  unitParallel (Y|N) #REQUIRED
-  targetParallel (Y|N) 'N'>
- <!ELEMENT specialInstructions EMPTY>
- <!ATTLIST specialInstructions
-  name CDATA #REQUIRED
-  cwd CDATA #REQUIRED
-  root CDATA #IMPLIED
-  command CDATA #REQUIRED>
-]>
-<SystemDefinition schema="2.0.1" name="Symbian^3">
-<systemModel>
-<layer name="mw" long-name="Middleware" levels="generic specific">
-<block name="mmmw" level="generic" long-name="Multimedia Middleware" levels="plugin framework server generic specific">
-<collection name="mmmiddlewarefws" long-name="Multimedia Middleware Frameworks" level="server">
-<component name="mmfw" long-name="Multimedia Framework" introduced="7.0s" purpose="mandatory">
-<unit bldFile="/sf/mw/mmmw/mmmiddlewarefws/mmfw/group" mrp="/sf/mw/mmmw/mmmiddlewarefws/mmfw/group/multimedia_mmf.mrp"/>
-</component>
-</collection>
-<collection name="mmmiddlewareplugins" long-name="Multimedia Middleware Plugins" level="framework">
-<component name="mmfwplugins" long-name="Multimedia Framework Plugins" introduced="7.0s" purpose="optional" plugin="Y">
-<unit bldFile="/sf/mw/mmmw/mmmiddlewarefws/mmfw/group_plugin" mrp="/sf/mw/mmmw/mmmiddlewarefws/mmfw/group_plugin/multimedia_mmf_plugin.mrp"/>
-</component>
-</collection>
-<collection name="mmfwtest" long-name="Multimedia Framework Test" level="server">
-<component name="mmfunittest" long-name="MMF Unit Tests" introduced="7.0s" purpose="development">
-<unit mrp="/sf/mw/mmmw/mmfwtest/mmfunittest/group/multimedia_unittest_mmf_source.mrp"/>
-</component>
-<component name="mmfintegrationtest" long-name="MMF Integration Tests" introduced="7.0s" purpose="development">
-<unit mrp="/sf/mw/mmmw/mmfwtest/mmfintegrationtest/group/multimedia_inttest_mmf_source.mrp"/>
-</component>
-<component name="mmfcharacterisationvalidation" long-name="MMF Characterisation Validation" introduced="9.3" purpose="development">
-<unit bldFile="/sf/mw/mmmw/mmfwtest/mmfcharacterisationvalidation/group" mrp="/sf/mw/mmmw/mmfwtest/mmfcharacterisationvalidation/group/multimedia_mmf_char.mrp"/>
-</component>
-</collection>
-<collection name="mmvalidationsuite" long-name="Multimedia Validation Suite" level="specific">
-<component name="mmvalidationsuiteapp" long-name="Multimedia Validation Suite Application" introduced="tb91" purpose="development">
-<unit bldFile="/sf/mw/mmmw/mmvalidationsuite/mmvalidationsuiteapp/group" mrp="/sf/mw/mmmw/mmvalidationsuite/mmvalidationsuiteapp/group/multimedia_mvs_app.mrp"/>
-</component>
-<component name="mmvalidationsuiteagents" long-name="Multimedia Validation Suite Agents" introduced="tb91" purpose="development">
-<unit bldFile="/sf/mw/mmmw/mmvalidationsuite/mmvalidationsuiteagents/group" mrp="/sf/mw/mmmw/mmvalidationsuite/mmvalidationsuiteagents/group/multimedia_mvs_agents.mrp"/>
-</component>
-<component name="mvsintegrationtest" long-name="MVS Integration Tests" introduced="tb91" purpose="development">
-<unit mrp="/sf/mw/mmmw/mmvalidationsuite/mvsintegrationtest/group/multimedia_inttest_mvs_source.mrp"/>
-</component>
-</collection>
-<collection name="mmmw_info" long-name="Multimedia Middleware Info" level="specific">
-<component name="mmmw_metadata" long-name="Multimedia Middleware Metadata" introduced="tb91" purpose="development" class="config PC">
-<unit mrp="/sf/mw/mmmw/mmmw_info/mmmw_metadata/mmmw_metadata.mrp"/>
-</component>
-</collection>
-<collection name="s60">
-<component name="mmmw">
-<unit bldFile="/sf/mw/mmmw/group" mrp=""/>
-</component>
-</collection>
-</block>
-</layer>
-</systemModel>
-</SystemDefinition>
\ No newline at end of file
+<!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="mw" long-name="Middleware" levels="generic specific">
+      <block name="mmmw" level="generic" long-name="Multimedia Middleware" levels="plugin framework server generic specific">
+        <collection name="mmfenh" long-name="MMF Enhancements" level="generic">
+          <component name="advancedaudiocontroller" filter="s60" long-name="Advanced Audio Controllers" plugin="Y">
+            <unit bldFile="/sf/mw/mmmw/mmfenh/advancedaudiocontroller/group"/>
+          </component>
+          <component name="audiooutputcontrolutility" filter="s60" long-name="Audio Output Control Utility">
+            <unit bldFile="/sf/mw/mmmw/mmfenh/audiooutputcontrolutility/group"/>
+          </component>
+          <component name="configurationcomponentsfactory" filter="s60" long-name="Configuration Components Factory">
+            <unit bldFile="/sf/mw/mmmw/mmfenh/configurationcomponentsfactory/group"/>
+          </component>
+          <component name="enhancedaudioplayerutility" filter="s60" long-name="Enhanced Audio Player Utility">
+            <unit bldFile="/sf/mw/mmmw/mmfenh/enhancedaudioplayerutility/group"/>
+          </component>
+          <component name="enhancedmediaclient" filter="s60" long-name="Enhanced Media Client">
+            <unit bldFile="/sf/mw/mmmw/mmfenh/enhancedmediaclient/group"/>
+          </component>
+          <component name="profilesettingsmonitor" filter="s60" long-name="Profile Settings Monitor">
+            <unit bldFile="/sf/mw/mmmw/mmfenh/profilesettingsmonitor/group"/>
+          </component>
+          <component name="progressivedownload" filter="s60" long-name="Progressive Download">
+            <unit bldFile="/sf/mw/mmmw/mmfenh/progressivedownload/group"/>
+          </component>
+          <component name="mmfenh_test" filter="s60,module_test,pref_test" long-name="MMF Enhancements Tests" purpose="development">
+            <unit bldFile="/sf/mw/mmmw/mmfenh/advancedaudiocontroller/tsrc/advancedaudiocontrollertestmodule/group"/>
+          </component>
+        </collection>
+        <collection name="mm_fw" long-name="Multimedia Frameworks" level="framework">
+          <!-- Id needs to be unique, mmfw already in use -->
+          <!-- Placeholder for OpenAX AL and other stuff -->
+        </collection>
+        <collection name="mmserv" long-name="Multimedia Services" level="specific">
+          <component name="audioeffectsui" filter="s60" long-name="Audio Effects UI">
+            <unit bldFile="/sf/mw/mmmw/mmserv/audioeffectsui/group"/>
+          </component>
+          <component name="callaudiocontrol" filter="s60" long-name="Call Audio Control">
+            <unit bldFile="/sf/mw/mmmw/mmserv/callaudiocontrol/group"/>
+          </component>
+          <component name="metadatautility" filter="s60" long-name="Metadata Utility">
+            <unit bldFile="/sf/mw/mmmw/mmserv/metadatautility/group"/>
+          </component>
+          <component name="radioutility" filter="s60" long-name="Radio Utility">
+            <unit bldFile="/sf/mw/mmmw/mmserv/radioutility/group"/>
+          </component>
+          <component name="thumbnailengine" filter="s60" long-name="Thumbnail Engine" introduced="^2">
+            <unit bldFile="/sf/mw/mmmw/mmserv/thumbnailengine/group"/>
+          </component>
+          <component name="tms" filter="s60" long-name="Telephony Multimedia Service" introduced="^3">
+            <unit bldFile="/sf/mw/mmmw/mmserv/tms/group"/>
+          </component>
+          <component name="voipaudioservices" filter="s60" long-name="VoIP Audio Services">
+            <unit bldFile="/sf/mw/mmmw/mmserv/voipaudioservices/group"/>
+          </component>
+        </collection>
+        <collection name="mmmw_info" long-name="Multimedia Middleware Info" level="specific">
+          <component name="mmmw_test" filter="s60,api_test,pref_test" long-name="Multimedia Middleware Tests" purpose="development">
+            <unit bldFile="/sf/mw/mmmw/tsrc/group"/>
+          </component>
+          <component name="mmmw_api_test" filter="s60,api_test" long-name="Multimedia Middleware API Tests" purpose="development">
+            <unit bldFile="/sf/mw/mmmw/mmmw_plat/telephony_multimedia_service_api/tsrc/group"/>
+          </component>
+          <component name="mmmw_plat" filter="s60" long-name="Multimedia Middleware Platform Interfaces" class="api">
+            <unit bldFile="/sf/mw/mmmw/mmmw_plat/group"/>
+          </component>
+          <component name="mmmw_metadata" long-name="Multimedia Middleware Metadata" introduced="^2" purpose="development" class="config PC">
+            <unit mrp="/sf/mw/mmmw/mmmw_info/mmmw_metadata/mmmw_metadata.mrp"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/symbian3/mw/mmmw/package_definition_3.0.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -0,0 +1,124 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<SystemDefinition schema="3.0.0">
+  <package id="mmmw" name="Multimedia Middleware" levels="plugin framework server generic specific">
+    <collection id="radioutility" name="Radio Utility" level="generic">
+      <component id="radioserver" filter="s60" name="Radio Server">
+        <unit bldFile="radioutility/radioserver/group"/>
+        <!-- <unit bldFile="radioutility/radioserver/server/group"/> -->
+        <!-- <unit bldFile="radioutility/radioserver/session/group"/> -->
+      </component>
+      <component id="radio_utility" filter="s60" name="Radio Utility">
+        <unit bldFile="radioutility/radio_utility/group"/>
+      </component>
+      <component id="fmpresetutility" filter="s60" name="FM Preset Utility">
+        <unit bldFile="radioutility/fmpresetutility/group"/>
+      </component>
+      <component id="radioutility_build" filter="s60" name="Radio Utility Build">
+          <!-- should remove included bld.infs from here -->
+        <unit bldFile="radioutility/group"/>
+      </component>
+    </collection>
+    <collection id="audioeffectsui" name="Audio Effects UI" level="specific">
+      <component id="equalizer" filter="s60" name="Equalizer">
+        <unit bldFile="audioeffectsui/equalizer/group"/>
+      </component>
+    </collection>
+    <collection id="audioenhancements" name="Audio Enhancements" level="generic">
+      <component id="enhancedaudioplayerutility" filter="s60" name="Enhanced Audio Player Utility">
+        <unit bldFile="audioenhancements/enhancedaudioplayerutility/group"/>
+        <!-- should the rest of the bld.infs be #included? -->
+        <!-- <unit bldFile="audioenhancements/enhancedaudioplayerutility/audioplayer/group"/> -->
+        <!-- <unit bldFile="audioenhancements/enhancedaudioplayerutility/audiostreaming/group"/> -->
+        <!-- <unit bldFile="audioenhancements/enhancedaudioplayerutility/s60audiosource/group"/> -->
+        <!-- <unit bldFile="audioenhancements/enhancedaudioplayerutility/s60audiosourcefactory/group"/> -->
+        <!-- <unit bldFile="audioenhancements/enhancedaudioplayerutility/s60audioutility/group"/> -->
+      </component>
+      <component id="progressivedownload" filter="s60" name="Progressive Download">
+        <unit bldFile="audioenhancements/progressivedownload/group"/>
+        <!-- <unit bldFile="audioenhancements/progressivedownload/progressivedownloadsource/group"/> -->
+        <!-- <unit bldFile="audioenhancements/progressivedownload/progressivedownloadutility/group"/> -->
+      </component>
+      <component id="enhancedmediaclient" filter="s60" name="Enhanced Media Client">
+        <unit bldFile="audioenhancements/enhancedmediaclient/group"/>
+      </component>
+      <component id="profilesettingsmonitor" filter="s60" name="Profile Settings Monitor">
+        <unit bldFile="audioenhancements/profilesettingsmonitor/group"/>
+      </component>
+      <component id="voipaudioservices" filter="s60" name="VoIP Audio Services">
+        <unit bldFile="audioenhancements/voipaudioservices/group"/>
+      </component>
+      <component id="configurationcomponentsfactory" filter="s60" name="Configuration Components Factory">
+        <unit bldFile="audioenhancements/configurationcomponentsfactory/group"/>
+      </component>
+      <component id="audiooutputcontrolutility" filter="s60" name="Audio Output Control Utility">
+        <unit bldFile="audioenhancements/audiooutputcontrolutility/group"/>
+      </component>
+      <component id="callaudiocontrol" filter="s60" name="Call Audio Control">
+        <unit bldFile="audioenhancements/callaudiocontrol/group"/>
+      </component>
+    </collection>
+    <collection id="metadatautility" name="Metadata Utility" level="generic">
+      <component id="extparserlib3gp_stub" filter="s60" name="3GP Extension Parser Library">
+        <unit bldFile="metadatautility/3gpextparserlib_stub/group"/>
+      </component>
+      <component id="metadatautility_build" filter="s60" name="Metadata Utility Build">
+        <unit bldFile="metadatautility/group"/>
+      </component>
+    </collection>
+    <collection id="advancedaudiocontroller" name="Advanced Audio Controller" level="plugin">
+      <component id="audiocontrollerpluginsvariant" filter="s60" name="Audio Controller Plugins Variant" class="plugin">
+        <unit bldFile="advancedaudiocontroller/audiocontrollerpluginsvariant/group"/>
+                <!-- do the rest of these need to be #included? -->
+        <!-- <unit bldFile="advancedaudiocontroller/audiocontrollerpluginsvariant/3gpaudioplaycontroller/group"/> -->
+        <!-- <unit bldFile="advancedaudiocontroller/audiocontrollerpluginsvariant/3gpaudiorecordcontroller/group"/> -->
+        <!-- <unit bldFile="advancedaudiocontroller/audiocontrollerpluginsvariant/3gpdatasourceadapter/group"/> -->
+        <!-- <unit bldFile="advancedaudiocontroller/audiocontrollerpluginsvariant/aacaudioplaycontroller/group"/> -->
+        <!-- <unit bldFile="advancedaudiocontroller/audiocontrollerpluginsvariant/advancedaudiocontroller/group"/> -->
+        <!-- <unit bldFile="advancedaudiocontroller/audiocontrollerpluginsvariant/advancedaudiocontrollerutility/group"/> -->
+        <!-- <unit bldFile="advancedaudiocontroller/audiocontrollerpluginsvariant/amraudioplaycontroller/group"/> -->
+        <!-- <unit bldFile="advancedaudiocontroller/audiocontrollerpluginsvariant/amraudiorecordcontroller/group"/> -->
+        <!-- <unit bldFile="advancedaudiocontroller/audiocontrollerpluginsvariant/awbaudioplaycontroller/group"/> -->
+        <!-- <unit bldFile="advancedaudiocontroller/audiocontrollerpluginsvariant/datasourceadapter/group"/> -->
+        <!-- <unit bldFile="advancedaudiocontroller/audiocontrollerpluginsvariant/devsoundaudioinput/group"/> -->
+        <!-- <unit bldFile="advancedaudiocontroller/audiocontrollerpluginsvariant/devsoundaudiooutput/group"/> -->
+        <!-- <unit bldFile="advancedaudiocontroller/audiocontrollerpluginsvariant/fileaudiooutput/group"/> -->
+        <!-- <unit bldFile="advancedaudiocontroller/audiocontrollerpluginsvariant/hxaudiorecognizer/group"/> -->
+        <!-- <unit bldFile="advancedaudiocontroller/audiocontrollerpluginsvariant/metadatawrite/group"/> -->
+        <!-- <unit bldFile="advancedaudiocontroller/audiocontrollerpluginsvariant/mp3audioplaycontroller/group"/> -->
+      </component>
+      <component id="wavplaycontrollerplugin" filter="s60" name="WAV Play Controller Plugin" class="plugin">
+        <unit bldFile="advancedaudiocontroller/wavplaycontrollerplugin/group"/>
+      </component>
+      <component id="advancedaudiocontroller_test" filter="s60" name="Advanced Audio Controller Test" purpose="development">
+        <!-- <unit bldFile="advancedaudiocontroller/tsrc/advancedaudiocontrollertestmodule/group"/> -->
+      </component>
+    </collection>
+    <collection id="thumbnailengine" name="Thumbnail Engine" level="server">
+      <component id="tneengine" filter="s60" name="Thumbnail Engine Build" introduced="^2">
+        <unit bldFile="thumbnailengine/group"/>
+      </component>
+    </collection>
+    <collection id="mm_fw" name="Multimedia Framework" level="framework">
+      <component id="helix_stub" filter="s60" name="Helix Stub" introduced="^2">
+        <unit bldFile="mmfw/helix_stub/group"/>
+      </component>
+    </collection>
+    <collection id="mmmw_info" name="Multimedia Middleware Info" level="specific">
+      <component id="mmmw_test" filter="s60" name="Multimedia Middleware Test" purpose="development">
+        <!-- <unit bldFile="tsrc/group"/> -->
+      </component>
+      <component id="mmmw_plat" filter="s60" name="Multimedia Middleware Platform Interfaces" class="api">
+        <unit bldFile="mmmw_plat/audio_metadata_reader_api/tsrc/group"/>
+        <unit bldFile="mmmw_plat/audio_output_control_utility_api/tsrc/group"/>
+        <unit bldFile="mmmw_plat/call_audio_control_api/tsrc/group"/>
+        <unit bldFile="mmmw_plat/enhanced_media_client_api/tsrc/group"/>
+        <unit bldFile="mmmw_plat/group"/>
+        <unit bldFile="mmmw_plat/radio_utilities_api/tsrc/group"/>
+        <unit bldFile="mmmw_plat/voip_audio_services_api/tsrc/group"/>
+      </component>
+      <component id="mmmw_metadata" name="Multimedia Middleware Metadata" class="config" introduced="^2" purpose="development" target="desktop">
+        <unit mrp="mmmw_info/mmmw_metadata/mmmw_metadata.mrp"/>
+      </component>
+    </collection>
+  </package>
+</SystemDefinition>
--- a/symbian3/mw/opensrv/package_definition.xml	Mon Feb 01 16:11:43 2010 +0000
+++ b/symbian3/mw/opensrv/package_definition.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -1,109 +1,124 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE SystemDefinition [
- <!ELEMENT SystemDefinition (systemModel?,SystemBuild?)>
- <!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (block*|collection*)*>
- <!ATTLIST layer
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED>
- <!ELEMENT block (subblock*|collection*)*>
- <!ATTLIST block
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED
-  level NMTOKEN #IMPLIED
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT subblock (collection)*>
- <!ATTLIST subblock
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT collection (component)*>
- <!ATTLIST collection
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  level NMTOKEN #IMPLIED>
- <!ELEMENT component (unit)*>
- <!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>
- <!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>
- <!ELEMENT SystemBuild (option*|target+|targetList+|list+|configuration+)*>
- <!ATTLIST SystemBuild schema CDATA #REQUIRED>
- <!ELEMENT list (ref+)>
- <!ATTLIST list
-  name ID #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT ref EMPTY>
- <!ATTLIST ref item CDATA #REQUIRED>
- <!ELEMENT targetList EMPTY>
- <!ATTLIST targetList
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  target IDREFS #REQUIRED>
- <!ELEMENT target EMPTY>
- <!ATTLIST target
-  name ID #REQUIRED
-  abldTarget CDATA #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT option EMPTY>
- <!ATTLIST option
-  name ID #REQUIRED
-  abldOption CDATA #REQUIRED
-  description CDATA #REQUIRED
-  enable (Y|N) #REQUIRED>
- <!ELEMENT configuration (listRef+|ref+|task+)*>
- <!ATTLIST configuration
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  filter CDATA #REQUIRED>
- <!ELEMENT task (listRef*,(buildLayer|specialInstructions))>
- <!ELEMENT listRef EMPTY>
- <!ATTLIST listRef list CDATA #REQUIRED>
- <!ELEMENT buildLayer EMPTY>
- <!ATTLIST buildLayer
-  command CDATA #REQUIRED
-  targetList IDREFS #IMPLIED
-  unitParallel (Y|N) #REQUIRED
-  targetParallel (Y|N) 'N'>
- <!ELEMENT specialInstructions EMPTY>
- <!ATTLIST specialInstructions
-  name CDATA #REQUIRED
-  cwd CDATA #REQUIRED
-  root CDATA #IMPLIED
-  command CDATA #REQUIRED>
-]>
-<SystemDefinition schema="2.0.1" name="Symbian^3">
-<systemModel>
-<layer name="mw">
-<block name="opensrv">
-<collection name="s60">
-<component name="opensrv">
-<unit bldFile="/sf/mw/opensrv/group" mrp=""/>
-</component>
-</collection>
-</block>
-</layer>
-</systemModel>
+<!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="mw" long-name="Middleware" levels="generic specific">
+      <block name="opensrv" level="specific" long-name="Open Services" levels="prt lib server eng">
+        <collection name="loudmouth" long-name="Loudmouth" level="prt">
+          <component name="loudmouth_build" filter="s60" long-name="Loudmouth Build" introduced="^2">
+            <unit bldFile="/sf/mw/opensrv/loudmouth/group"/>
+          </component>
+          <component name="loudmouth_test" filter="s60" long-name="Loudmouth Test" purpose="development" introduced="^2" class="placeholder">
+            <!-- <unit bldFile="loudmouth/tsrc/group"/> -->
+          </component>
+        </collection>
+        <collection name="libtelepathy" long-name="Telepathy Library" level="lib">
+          <component name="libtelepathy_build" filter="s60" long-name="Telepathy Library Build" introduced="^2">
+            <unit bldFile="/sf/mw/opensrv/libtelepathy/group"/>
+          </component>
+          <component name="libtelepathy_test" filter="s60" long-name="Telepathy Library Test" purpose="development" introduced="^2" class="placeholder">
+            <!-- <unit bldFile="libtelepathy/tsrc/group"/> -->
+          </component>
+        </collection>
+        <collection name="telepathygabble" long-name="Telepathy Gabble" level="eng">
+          <component name="telepathygabble_build" filter="s60" long-name="Telepathy Gabble Build" introduced="^2">
+            <unit bldFile="/sf/mw/opensrv/telepathygabble/group"/>
+          </component>
+        </collection>
+        <collection name="isolationserver" long-name="Isolation Server" level="server">
+          <component name="messagequeue" filter="s60" long-name="Message Queue" introduced="^2">
+            <unit bldFile="/sf/mw/opensrv/isolationserver/messagequeue/group"/>
+          </component>
+          <component name="isoserver" filter="s60" long-name="ISO Server" introduced="^2">
+            <unit bldFile="/sf/mw/opensrv/isolationserver/isoserver/group"/>
+          </component>
+          <component name="isolationserver_test" filter="s60" long-name="Isloation Server Test" purpose="development" introduced="^2" class="placeholder">
+            <!-- <unit bldFile="isolationserver/tsrc/group"/> -->
+          </component>
+          <component name="isolationserver_build" filter="s60" long-name="Isloation Server Build" introduced="^2">
+            <unit bldFile="/sf/mw/opensrv/isolationserver/group"/>
+          </component>
+        </collection>
+        <collection name="opensrv_info" long-name="Open Services Info" level="eng">
+          <component name="opensrv_plat" filter="s60" long-name="Open Services Platform Interfaces" introduced="^2" class="api">
+            <unit bldFile="/sf/mw/opensrv/opensrv_plat/group"/>
+            <!-- <unit bldFile="opensrv_plat/messagequeue_api/tsrc/group"/> -->
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
 </SystemDefinition>
--- a/symbian3/mw/phonesrv/package_definition.xml	Mon Feb 01 16:11:43 2010 +0000
+++ b/symbian3/mw/phonesrv/package_definition.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -1,175 +1,199 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE SystemDefinition [
- <!ELEMENT SystemDefinition (systemModel?,SystemBuild?)>
- <!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (block*|collection*)*>
- <!ATTLIST layer
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED>
- <!ELEMENT block (subblock*|collection*)*>
- <!ATTLIST block
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED
-  level NMTOKEN #IMPLIED
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT subblock (collection)*>
- <!ATTLIST subblock
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT collection (component)*>
- <!ATTLIST collection
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  level NMTOKEN #IMPLIED>
- <!ELEMENT component (unit)*>
- <!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>
- <!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>
- <!ELEMENT SystemBuild (option*|target+|targetList+|list+|configuration+)*>
- <!ATTLIST SystemBuild schema CDATA #REQUIRED>
- <!ELEMENT list (ref+)>
- <!ATTLIST list
-  name ID #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT ref EMPTY>
- <!ATTLIST ref item CDATA #REQUIRED>
- <!ELEMENT targetList EMPTY>
- <!ATTLIST targetList
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  target IDREFS #REQUIRED>
- <!ELEMENT target EMPTY>
- <!ATTLIST target
-  name ID #REQUIRED
-  abldTarget CDATA #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT option EMPTY>
- <!ATTLIST option
-  name ID #REQUIRED
-  abldOption CDATA #REQUIRED
-  description CDATA #REQUIRED
-  enable (Y|N) #REQUIRED>
- <!ELEMENT configuration (listRef+|ref+|task+)*>
- <!ATTLIST configuration
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  filter CDATA #REQUIRED>
- <!ELEMENT task (listRef*,(buildLayer|specialInstructions))>
- <!ELEMENT listRef EMPTY>
- <!ATTLIST listRef list CDATA #REQUIRED>
- <!ELEMENT buildLayer EMPTY>
- <!ATTLIST buildLayer
-  command CDATA #REQUIRED
-  targetList IDREFS #IMPLIED
-  unitParallel (Y|N) #REQUIRED
-  targetParallel (Y|N) 'N'>
- <!ELEMENT specialInstructions EMPTY>
- <!ATTLIST specialInstructions
-  name CDATA #REQUIRED
-  cwd CDATA #REQUIRED
-  root CDATA #IMPLIED
-  command CDATA #REQUIRED>
-]>
-<SystemDefinition schema="2.0.1" name="Symbian^3">
-<systemModel>
-<layer name="mw">
-<block name="phonesrv">
-<collection name="s60">
-<component name="phonesrv_plat">
-<unit bldFile="/sf/mw/phonesrv/phonesrv_plat/group" mrp=""/>
-</component>
-<component name="phonesrv_pub">
-<unit bldFile="/sf/mw/phonesrv/phonesrv_pub/group" mrp=""/>
-</component>
-<component name="CbsServer">
-<unit bldFile="/sf/mw/phonesrv/cbs/CbsServer/group" mrp=""/>
-</component>
-<component name="cbsui">
-<unit bldFile="/sf/mw/phonesrv/cbs/cbsui/group" mrp=""/>
-</component>
-<component name="convergedcallengine">
-<unit bldFile="/sf/mw/phonesrv/convergedcallengine/group" mrp=""/>
-</component>
-<component name="networkhandlingengine">
-<unit bldFile="/sf/mw/phonesrv/networkhandling/networkhandlingengine/group" mrp=""/>
-</component>
-<component name="aiwdialdata">
-<unit bldFile="/sf/mw/phonesrv/phoneclientserver/aiwdialdata/group" mrp=""/>
-</component>
-<component name="CallUI">
-<unit bldFile="/sf/mw/phonesrv/phoneclientserver/CallUI/group" mrp=""/>
-</component>
-<component name="dialutils">
-<unit bldFile="/sf/mw/phonesrv/phoneclientserver/dialutils/group" mrp=""/>
-</component>
-<component name="EnPolicy">
-<unit bldFile="/sf/mw/phonesrv/phoneclientserver/EnPolicy/group" mrp=""/>
-</component>
-<component name="phoneclient">
-<unit bldFile="/sf/mw/phonesrv/phoneclientserver/phoneclient/group" mrp=""/>
-</component>
-<component name="phoneserver">
-<unit bldFile="/sf/mw/phonesrv/phoneclientserver/phoneserver/group" mrp=""/>
-</component>
-<component name="SatServer">
-<unit bldFile="/sf/mw/phonesrv/satengine/SatServer/group" mrp=""/>
-</component>
-<component name="satapp">
-<unit bldFile="/sf/mw/phonesrv/satui/satapp/group" mrp=""/>
-</component>
-<component name="satplugin">
-<unit bldFile="/sf/mw/phonesrv/satui/satplugin/group" mrp=""/>
-</component>
-<component name="phoneparser">
-<unit bldFile="/sf/mw/phonesrv/telutils/phoneparser/group" mrp=""/>
-</component>
-<component name="telephonyservice">
-<unit bldFile="/sf/mw/phonesrv/telutils/telephonyservice/group" mrp=""/>
-</component>
-<component name="telephonysettings">
-<unit bldFile="/sf/mw/phonesrv/cellular/telephonysettings/group" mrp=""/>
-</component>
-<component name="sssettings">
-<unit bldFile="/sf/mw/phonesrv/cellular/sssettings/group" mrp=""/>
-</component>
-<component name="psetnotesui">
-<unit bldFile="/sf/mw/phonesrv/cellular/psetnotesui/group" mrp=""/>
-</component>
-<component name="servicerequest">
-<unit bldFile="/sf/mw/phonesrv/cellular/servicerequest/group" mrp=""/>
-</component>
-<component name="phonecmdhnlr">
-<unit bldFile="/sf/mw/phonesrv/phonecmdhandler/phonecmdhnlr/group" mrp=""/>
-</component>
-<component name="vmbxengine">
-<unit bldFile="/sf/mw/phonesrv/engines/vmbxengine/group" mrp=""/>
-</component>
-</collection>
-</block>
-</layer>
-</systemModel>
+<!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="mw" long-name="Middleware" levels="generic specific">
+      <block name="phonesrv" level="specific" long-name="Telephony and SIM Services" levels="plugin framework server generic specific">
+        <collection name="phonecmdhandler" long-name="Phone Command Handler" level="generic">
+          <component name="phonecmdhnlr" filter="s60" long-name="Phone Command Handler">
+            <unit bldFile="/sf/mw/phonesrv/phonecmdhandler/phonecmdhnlr/group"/>
+          </component>
+        </collection>
+        <collection name="cbs" long-name="Cellular Baseband Services" level="plugin">
+          <component name="cbsserver" filter="s60" long-name="CBS Server">
+            <unit bldFile="/sf/mw/phonesrv/cbs/cbsserver/group"/>
+          </component>
+          <component name="cbsui" filter="s60" long-name="CBS UI">
+            <unit bldFile="/sf/mw/phonesrv/cbs/cbsui/group"/>
+          </component>
+        </collection>
+        <collection name="convergedcallengine" long-name="Converged Call Engine" level="framework">
+          <component name="callprovider" filter="s60" long-name="Call Provider">
+            <unit bldFile="/sf/mw/phonesrv/convergedcallengine/callprovider/group"/>
+          </component>
+          <component name="cce" filter="s60" long-name="CCE">
+            <unit bldFile="/sf/mw/phonesrv/convergedcallengine/cce/group"/>
+          </component>
+          <component name="spsettings" filter="s60" long-name="Service Provider Settings">
+            <unit bldFile="/sf/mw/phonesrv/convergedcallengine/spsettings/group"/>
+            <!-- include the rest in the above? -->
+            <!-- <unit bldFile="convergedcallengine/spsettings/tsrc/public/basic/group"/> -->
+            <!-- <unit bldFile="convergedcallengine/spsettings/tsrc/public/basic/spsettingsut/group"/> -->
+          </component>
+          <component name="cenrepdatabase" filter="s60" long-name="CCE Cenrep Database">
+            <unit bldFile="/sf/mw/phonesrv/convergedcallengine/cenrepdatabase/group"/>
+          </component>
+          <component name="serviceselector" filter="s60" long-name="Service Selector">
+            <unit bldFile="/sf/mw/phonesrv/convergedcallengine/serviceselector/group"/>
+          </component>
+          <component name="csplugin" filter="s60" long-name="CS Plugin" plugin="Y">
+            <!--  should spell out CS in name -->
+            <unit bldFile="/sf/mw/phonesrv/convergedcallengine/csplugin/group"/>
+          </component>
+        </collection>
+        <collection name="networkhandling" long-name="Network Handling" level="plugin">
+          <component name="networkhandlingengine" filter="s60" long-name="Network Handling Engine">
+            <unit bldFile="/sf/mw/phonesrv/networkhandling/networkhandlingengine/group"/>
+          </component>
+        </collection>
+        <collection name="phoneclientserver" long-name="Phone Client/Server" level="server">
+          <component name="enpolicy" filter="s60" long-name="Emergency Number Policy">
+            <unit bldFile="/sf/mw/phonesrv/phoneclientserver/enpolicy/group"/>
+          </component>
+          <component name="aiwdialdata" filter="s60" long-name="AIW Dial Data">
+            <unit bldFile="/sf/mw/phonesrv/phoneclientserver/aiwdialdata/group"/>
+          </component>
+          <component name="dialutils" filter="s60" long-name="Dial Utils">
+            <unit bldFile="/sf/mw/phonesrv/phoneclientserver/dialutils/group"/>
+          </component>
+          <component name="phoneclient" filter="s60" long-name="Phone Client">
+            <unit bldFile="/sf/mw/phonesrv/phoneclientserver/phoneclient/group"/>
+          </component>
+          <component name="phoneserver" filter="s60" long-name="Phone Server">
+            <unit bldFile="/sf/mw/phonesrv/phoneclientserver/phoneserver/group"/>
+          </component>
+          <component name="callui" filter="s60" long-name="Call UI">
+            <unit bldFile="/sf/mw/phonesrv/phoneclientserver/callui/group"/>
+          </component>
+        </collection>
+        <collection name="satengine" long-name="SAT Engine" level="generic">
+          <component name="satserver" filter="s60" long-name="SAT Server">
+            <unit bldFile="/sf/mw/phonesrv/satengine/satserver/group"/>
+          </component>
+        </collection>
+        <collection name="satui" long-name="SIM Application Toolkit UI" level="specific">
+          <component name="satapp" filter="s60" long-name="SAT Application">
+            <unit bldFile="/sf/mw/phonesrv/satui/satapp/group"/>
+          </component>
+          <component name="satplugin" filter="s60" long-name="SAT Plugin" plugin="Y">
+            <unit bldFile="/sf/mw/phonesrv/satui/satplugin/group"/>
+          </component>
+        </collection>
+        <collection name="telutils" long-name="Telephony Utils" level="generic">
+          <component name="phoneparser" filter="s60" long-name="Phone Parser">
+            <unit bldFile="/sf/mw/phonesrv/telutils/phoneparser/group"/>
+          </component>
+          <component name="telephonyservice" filter="s60" long-name="Telephony Service">
+            <unit bldFile="/sf/mw/phonesrv/telutils/telephonyservice/group"/>
+          </component>
+        </collection>
+        <collection name="cellular" long-name="Cellular" level="server">
+          <component name="telephonysettings" filter="s60" long-name="Telephony Settings">
+            <unit bldFile="/sf/mw/phonesrv/cellular/telephonysettings/group"/>
+          </component>
+          <component name="sssettings" filter="s60" long-name="Supplementary Service Settings">
+            <unit bldFile="/sf/mw/phonesrv/cellular/sssettings/group"/>
+          </component>
+          <component name="psetnotesui" filter="s60" long-name="Phone Settings Notes UI">
+            <unit bldFile="/sf/mw/phonesrv/cellular/psetnotesui/group"/>
+          </component>
+          <component name="servicerequest" filter="s60" long-name="Service Request">
+            <unit bldFile="/sf/mw/phonesrv/cellular/servicerequest/group"/>
+          </component>
+        </collection>
+        <collection name="engines" long-name="Telephony Engines" level="specific">
+          <component name="vmbxengine" filter="s60" long-name="Voice Mailbox Engine">
+            <unit bldFile="/sf/mw/phonesrv/engines/vmbxengine/group"/>
+          </component>
+        </collection>
+        <collection name="phonesrv_info" long-name="Telephony and SIM Services Info" level="specific">
+          <component name="phonesrv_plat" filter="s60" long-name="Telephony and SIM Services Platform Interfaces" class="api">
+            <unit bldFile="/sf/mw/phonesrv/phonesrv_plat/group"/>
+            <!-- include the rest in the above? -->
+            <!-- <unit bldFile="phonesrv_plat/call_information_api/tsrc/group"/> -->
+            <!-- <unit bldFile="phonesrv_plat/call_information_mediator_api/tsrc/ut_callinfos/group"/> -->
+            <!-- <unit bldFile="phonesrv_plat/phone_client_emergency_call_api/tsrc/group"/> -->
+            <!-- <unit bldFile="phonesrv_plat/sat_client_api/tsrc/group"/> -->
+            <!-- <unit bldFile="phonesrv_plat/sat_refresh_api/tsrc/group"/> -->
+          </component>
+          <component name="phonesrv_pub" filter="s60" long-name="Telephony and SIM Services Public Interfaces" class="api">
+            <unit bldFile="/sf/mw/phonesrv/phonesrv_pub/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
 </SystemDefinition>
--- a/symbian3/mw/platformtools/package_definition.xml	Mon Feb 01 16:11:43 2010 +0000
+++ b/symbian3/mw/platformtools/package_definition.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -1,109 +1,93 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE SystemDefinition [
- <!ELEMENT SystemDefinition (systemModel?,SystemBuild?)>
- <!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (block*|collection*)*>
- <!ATTLIST layer
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED>
- <!ELEMENT block (subblock*|collection*)*>
- <!ATTLIST block
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED
-  level NMTOKEN #IMPLIED
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT subblock (collection)*>
- <!ATTLIST subblock
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT collection (component)*>
- <!ATTLIST collection
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  level NMTOKEN #IMPLIED>
- <!ELEMENT component (unit)*>
- <!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>
- <!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>
- <!ELEMENT SystemBuild (option*|target+|targetList+|list+|configuration+)*>
- <!ATTLIST SystemBuild schema CDATA #REQUIRED>
- <!ELEMENT list (ref+)>
- <!ATTLIST list
-  name ID #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT ref EMPTY>
- <!ATTLIST ref item CDATA #REQUIRED>
- <!ELEMENT targetList EMPTY>
- <!ATTLIST targetList
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  target IDREFS #REQUIRED>
- <!ELEMENT target EMPTY>
- <!ATTLIST target
-  name ID #REQUIRED
-  abldTarget CDATA #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT option EMPTY>
- <!ATTLIST option
-  name ID #REQUIRED
-  abldOption CDATA #REQUIRED
-  description CDATA #REQUIRED
-  enable (Y|N) #REQUIRED>
- <!ELEMENT configuration (listRef+|ref+|task+)*>
- <!ATTLIST configuration
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  filter CDATA #REQUIRED>
- <!ELEMENT task (listRef*,(buildLayer|specialInstructions))>
- <!ELEMENT listRef EMPTY>
- <!ATTLIST listRef list CDATA #REQUIRED>
- <!ELEMENT buildLayer EMPTY>
- <!ATTLIST buildLayer
-  command CDATA #REQUIRED
-  targetList IDREFS #IMPLIED
-  unitParallel (Y|N) #REQUIRED
-  targetParallel (Y|N) 'N'>
- <!ELEMENT specialInstructions EMPTY>
- <!ATTLIST specialInstructions
-  name CDATA #REQUIRED
-  cwd CDATA #REQUIRED
-  root CDATA #IMPLIED
-  command CDATA #REQUIRED>
-]>
-<SystemDefinition schema="2.0.1" name="Symbian^3">
-<systemModel>
-<layer name="mw">
-<block name="platformtools">
-<collection name="s60">
-<component name="platformtools">
-<unit bldFile="/sf/mw/platformtools/group" mrp=""/>
-</component>
-</collection>
-</block>
-</layer>
-</systemModel>
+<!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="mw" long-name="Middleware" levels="generic specific">
+      <block name="platformtools" level="generic" long-name="Platform Tools">
+        <collection name="gfxconversion" long-name="Graphics Conversion">
+          <component name="bmconv_s60" filter="s60" long-name="S60 Bitmap Converter">
+            <!-- component need to be moved to appropriate location -->
+            <unit bldFile="/sf/tools/platformtools/gfxconversion/bmconv_s60/group"/>
+          </component>
+          <component name="mifconv" filter="s60" long-name="Multi Icon File Converter">
+            <!-- component need to be moved to appropriate location -->
+            <unit bldFile="/sf/tools/platformtools/gfxconversion/mifconv/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
 </SystemDefinition>
--- a/symbian3/mw/remoteconn/package_definition.xml	Mon Feb 01 16:11:43 2010 +0000
+++ b/symbian3/mw/remoteconn/package_definition.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -1,180 +1,133 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE SystemDefinition [
- <!ELEMENT SystemDefinition (systemModel?,SystemBuild?)>
- <!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (block*|collection*)*>
- <!ATTLIST layer
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED>
- <!ELEMENT block (subblock*|collection*)*>
- <!ATTLIST block
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED
-  level NMTOKEN #IMPLIED
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT subblock (collection)*>
- <!ATTLIST subblock
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT collection (component)*>
- <!ATTLIST collection
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  level NMTOKEN #IMPLIED>
- <!ELEMENT component (unit)*>
- <!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>
- <!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>
- <!ELEMENT SystemBuild (option*|target+|targetList+|list+|configuration+)*>
- <!ATTLIST SystemBuild schema CDATA #REQUIRED>
- <!ELEMENT list (ref+)>
- <!ATTLIST list
-  name ID #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT ref EMPTY>
- <!ATTLIST ref item CDATA #REQUIRED>
- <!ELEMENT targetList EMPTY>
- <!ATTLIST targetList
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  target IDREFS #REQUIRED>
- <!ELEMENT target EMPTY>
- <!ATTLIST target
-  name ID #REQUIRED
-  abldTarget CDATA #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT option EMPTY>
- <!ATTLIST option
-  name ID #REQUIRED
-  abldOption CDATA #REQUIRED
-  description CDATA #REQUIRED
-  enable (Y|N) #REQUIRED>
- <!ELEMENT configuration (listRef+|ref+|task+)*>
- <!ATTLIST configuration
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  filter CDATA #REQUIRED>
- <!ELEMENT task (listRef*,(buildLayer|specialInstructions))>
- <!ELEMENT listRef EMPTY>
- <!ATTLIST listRef list CDATA #REQUIRED>
- <!ELEMENT buildLayer EMPTY>
- <!ATTLIST buildLayer
-  command CDATA #REQUIRED
-  targetList IDREFS #IMPLIED
-  unitParallel (Y|N) #REQUIRED
-  targetParallel (Y|N) 'N'>
- <!ELEMENT specialInstructions EMPTY>
- <!ATTLIST specialInstructions
-  name CDATA #REQUIRED
-  cwd CDATA #REQUIRED
-  root CDATA #IMPLIED
-  command CDATA #REQUIRED>
-]>
-<SystemDefinition schema="2.0.1" name="Symbian^3">
-<systemModel>
-<layer name="mw" long-name="Middleware" levels="generic specific">
-<block name="remoteconn" level="generic" long-name="Remote Connectivity" levels="plugin framework server generic specific">
-<collection name="remoteconn_info" long-name="Remote Connectivity Info" level="specific">
-<component name="remoteconn_metadata" long-name="Remote Connectivity Metadata" introduced="tb91" purpose="development" class="config PC">
-<unit mrp="/sf/mw/remoteconn/remoteconn_info/remoteconn_metadata/remoteconn_metadata.mrp"/>
-</component>
-</collection>
-<collection name="usbfunctiondrivers" long-name="USB Function Drivers" level="server">
-<component name="massstoragemgr" long-name="Mass Storage Manager" introduced="tb92" purpose="optional">
-<unit bldFile="/sf/mw/remoteconn/usbfunctiondrivers/massstoragemgr/group" mrp="/sf/mw/remoteconn/usbfunctiondrivers/massstoragemgr/group/connectivity_usbms.mrp"/>
-</component>
-</collection>
-<collection name="connectivitytransports" long-name="Connectivity Transports" level="plugin">
-<component name="plpremotelink" long-name="PLP Remote Link" deprecated="9.0" purpose="optional">
-<unit bldFile="/sf/mw/remoteconn/connectivitytransports/plpremotelink/group" mrp="/sf/mw/remoteconn/connectivitytransports/plpremotelink/group/connectivity_legacy_plp_plpremotelink.mrp"/>
-</component>
-<component name="plpvariant" long-name="PLP Variant" deprecated="9.0" purpose="optional">
-<unit bldFile="/sf/mw/remoteconn/connectivitytransports/plpvariant/group" mrp="/sf/mw/remoteconn/connectivitytransports/plpvariant/group/connectivity_legacy_plp_plpvariant.mrp"/>
-</component>
-</collection>
-<collection name="mtptransports" long-name="MTP Transports" level="plugin">
-<component name="mtpusbtransport" long-name="MTP USB Transport" introduced="tb91" purpose="optional" plugin="Y">
-<unit bldFile="/sf/mw/remoteconn/mtptransports/mtpusbtransport/group" mrp="/sf/mw/remoteconn/mtptransports/mtpusbtransport/group/mtp_usbsic.mrp"/>
-</component>
-<component name="mtpptpiptransport" long-name="MTP PTP-IP Transport" introduced="tb92" purpose="optional" plugin="Y">
-<unit bldFile="/sf/mw/remoteconn/mtptransports/mtpptpiptransport/group" mrp="/sf/mw/remoteconn/mtptransports/mtpptpiptransport/group/mtp_ptpip.mrp"/>
-</component>
-</collection>
-<collection name="mtpfws" long-name="MTP Frameworks" level="framework">
-<component name="mtpfw" long-name="MTP Framework" introduced="tb91" purpose="optional">
-<unit bldFile="/sf/mw/remoteconn/mtpfws/mtpfw/group" mrp="/sf/mw/remoteconn/mtpfws/mtpfw/group/mtp_framework.mrp"/>
-</component>
-<component name="mtpintegrationtest" long-name="MTP Integration Test" introduced="tb91" purpose="development">
-<unit bldFile="/sf/mw/remoteconn/mtpfws/mtpintegrationtest/group" mrp="/sf/mw/remoteconn/mtpfws/mtpintegrationtest/group/mtp_test.mrp"/>
-</component>
-</collection>
-<collection name="mtpdataproviders" long-name="MTP Data Providers" level="generic">
-<component name="mtpfileandfolderdp" long-name="MTP File and Folder Provider" introduced="tb91" purpose="optional" plugin="Y">
-<unit bldFile="/sf/mw/remoteconn/mtpdataproviders/mtpfileandfolderdp/group" mrp="/sf/mw/remoteconn/mtpdataproviders/mtpfileandfolderdp/group/mtp_filedp.mrp"/>
-</component>
-<component name="mtpbackupandrestoredp" long-name="Backup and Restore Provider" introduced="tb92" purpose="optional" plugin="Y">
-<unit bldFile="/sf/mw/remoteconn/mtpdataproviders/mtpbackupandrestoredp/group" mrp="/sf/mw/remoteconn/mtpdataproviders/mtpbackupandrestoredp/group/mtp_backupnrestoredp.mrp"/>
-</component>
-</collection>
-<collection name="backupandrestore" long-name="Backup and Restore" level="specific">
-<component name="backupengine" long-name="Backup Engine" introduced="9.0" purpose="optional">
-<unit bldFile="/sf/mw/remoteconn/backupandrestore/backupengine/group" mrp="/sf/mw/remoteconn/backupandrestore/backupengine/group/connectivity_backupengine.mrp"/>
-</component>
-<component name="backuptest" long-name="Backup Test" introduced="tb91" purpose="development">
-<unit bldFile="/sf/mw/remoteconn/backupandrestore/backuptest/group" mrp="/sf/mw/remoteconn/backupandrestore/backuptest/group/connectivity_backuptest.mrp"/>
-</component>
-</collection>
-<collection name="connectivitypcside" long-name="Connectivity PC Side" level="generic">
-<component name="chatscripts" long-name="Chat Scripts" purpose="development">
-<unit bldFile="/sf/mw/remoteconn/connectivitypcside/chatscripts/group" mrp="/sf/mw/remoteconn/connectivitypcside/chatscripts/group/testtools_chatscripts.mrp"/>
-</component>
-</collection>
-<collection name="connectivitydevicefws" long-name="Connectivity Device Frameworks" level="framework">
-<component name="connectivityfw" long-name="Connectivity Framework" introduced="7.0s" deprecated="tb91" purpose="optional">
-<unit bldFile="/sf/mw/remoteconn/connectivitydevicefws/connectivityfw/group" mrp="/sf/mw/remoteconn/connectivitydevicefws/connectivityfw/group/connectivity_framework.mrp"/>
-</component>
-<component name="connectivityservices" long-name="Connectivity Services" introduced="7.0s" deprecated="tb91" purpose="optional">
-<unit bldFile="/sf/mw/remoteconn/connectivitydevicefws/connectivityservices/group" mrp="/sf/mw/remoteconn/connectivitydevicefws/connectivityservices/group/connectivity_services.mrp"/>
-</component>
-</collection>
-<collection name="obex" long-name="OBEX" level="generic">
-<component name="obexprotocol" long-name="OBEX Protocol" introduced="9.1" purpose="optional">
-<unit bldFile="/sf/mw/remoteconn/obex/obexprotocol/group" mrp="/sf/mw/remoteconn/obex/obexprotocol/group/obex.mrp"/>
-</component>
-<component name="obexextensionapi" long-name="OBEX Extension API" introduced="9.2" purpose="optional">
-<unit bldFile="/sf/mw/remoteconn/obex/obexextensionapi/group" mrp="/sf/mw/remoteconn/obex/obexextensionapi/group/obex_extensionapis.mrp"/>
-</component>
-</collection>
-<collection name="s60">
-<component name="remoteconn">
-<unit bldFile="/sf/mw/remoteconn/group" mrp=""/>
-</component>
-</collection>
-</block>
-</layer>
-</systemModel>
-</SystemDefinition>
\ No newline at end of file
+<!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="mw" long-name="Middleware" levels="generic specific">
+      <block name="remoteconn" level="generic" long-name="Remote Connectivity" levels="plugin framework server generic specific">
+        <collection name="connectivitymodules" long-name="Connectivity Modules" level="framework">
+          <component name="secon" filter="s60" long-name="Service Controllers">
+            <unit bldFile="/sf/mw/remoteconn/connectivitymodules/secon/group"/>
+          </component>
+        </collection>
+        <collection name="remoteconn_info" long-name="Remote Connectivity Info" level="specific">
+          <component name="remoteconn_plat" filter="s60" long-name="Remote Connectivity Platform Interfaces" class="api">
+            <unit bldFile="/sf/mw/remoteconn/remoteconn_plat/group"/>
+          </component>
+          <component name="remoteconn_metadata" long-name="Remote Connectivity Metadata" introduced="^2" purpose="development" class="config PC">
+            <unit mrp="/sf/mw/remoteconn/remoteconn_info/remoteconn_metadata/remoteconn_metadata.mrp"/>
+          </component>
+        </collection>
+        <collection name="mtptransports" long-name="MTP Transports" level="plugin">
+          <component name="mtpusbtransport" long-name="MTP USB Transport" introduced="^2" purpose="optional" plugin="Y">
+            <unit bldFile="/sf/mw/remoteconn/mtptransports/mtpusbtransport/group" mrp="/sf/mw/remoteconn/mtptransports/mtpusbtransport/group/mtp_usbsic.mrp"/>
+          </component>
+          <component name="mtpptpiptransport" long-name="MTP PTP-IP Transport" introduced="^3" purpose="optional" plugin="Y">
+            <unit bldFile="/sf/mw/remoteconn/mtptransports/mtpptpiptransport/group" mrp="/sf/mw/remoteconn/mtptransports/mtpptpiptransport/group/mtp_ptpip.mrp"/>
+          </component>
+          <component name="mtpcontroller" long-name="MTP Controller" introduced="^3" purpose="optional" plugin="Y">
+            <unit bldFile="/sf/mw/remoteconn/mtptransports/mtpcontroller/group" mrp="/sf/mw/remoteconn/mtptransports/mtpcontroller/group/mtpcontroller.mrp"/>
+          </component>
+        </collection>
+        <collection name="mtpfws" long-name="MTP Frameworks" level="framework">
+          <component name="mtpfw" long-name="MTP Framework" introduced="^2" purpose="optional">
+            <unit bldFile="/sf/mw/remoteconn/mtpfws/mtpfw/group" mrp="/sf/mw/remoteconn/mtpfws/mtpfw/group/mtp_framework.mrp"/>
+          </component>
+        </collection>
+        <collection name="mtpdataproviders" long-name="MTP Data Providers" level="generic">
+          <component name="mtpfileandfolderdp" long-name="MTP File and Folder Provider" introduced="^2" purpose="optional" plugin="Y">
+            <unit bldFile="/sf/mw/remoteconn/mtpdataproviders/mtpfileandfolderdp/group" mrp="/sf/mw/remoteconn/mtpdataproviders/mtpfileandfolderdp/group/mtp_filedp.mrp"/>
+          </component>
+        </collection>
+        <collection name="backupandrestore" long-name="Backup and Restore" level="specific">
+          <component name="backupengine" long-name="Backup Engine" introduced="9.0" purpose="optional">
+            <unit bldFile="/sf/mw/remoteconn/backupandrestore/backupengine/group" mrp="/sf/mw/remoteconn/backupandrestore/backupengine/group/connectivity_backupengine.mrp"/>
+          </component>
+          <component name="backuptest" long-name="Backup Test" introduced="^2" purpose="development">
+            <unit bldFile="/sf/mw/remoteconn/backupandrestore/backuptest/group" mrp="/sf/mw/remoteconn/backupandrestore/backuptest/group/connectivity_backuptest.mrp"/>
+          </component>
+        </collection>
+        <collection name="obex" long-name="OBEX" level="generic">
+          <component name="obexprotocol" long-name="OBEX Protocol" introduced="9.1" purpose="optional">
+            <unit bldFile="/sf/mw/remoteconn/obex/obexprotocol/group" mrp="/sf/mw/remoteconn/obex/obexprotocol/group/obex.mrp"/>
+          </component>
+          <component name="obexextensionapi" long-name="OBEX Extension API" introduced="9.2" purpose="optional">
+            <unit bldFile="/sf/mw/remoteconn/obex/obexextensionapi/group" mrp="/sf/mw/remoteconn/obex/obexextensionapi/group/obex_extensionapis.mrp"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/mw/remotemgmt/package_definition.xml	Mon Feb 01 16:11:43 2010 +0000
+++ b/symbian3/mw/remotemgmt/package_definition.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -1,109 +1,184 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE SystemDefinition [
- <!ELEMENT SystemDefinition (systemModel?,SystemBuild?)>
- <!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (block*|collection*)*>
- <!ATTLIST layer
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED>
- <!ELEMENT block (subblock*|collection*)*>
- <!ATTLIST block
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED
-  level NMTOKEN #IMPLIED
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT subblock (collection)*>
- <!ATTLIST subblock
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT collection (component)*>
- <!ATTLIST collection
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  level NMTOKEN #IMPLIED>
- <!ELEMENT component (unit)*>
- <!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>
- <!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>
- <!ELEMENT SystemBuild (option*|target+|targetList+|list+|configuration+)*>
- <!ATTLIST SystemBuild schema CDATA #REQUIRED>
- <!ELEMENT list (ref+)>
- <!ATTLIST list
-  name ID #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT ref EMPTY>
- <!ATTLIST ref item CDATA #REQUIRED>
- <!ELEMENT targetList EMPTY>
- <!ATTLIST targetList
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  target IDREFS #REQUIRED>
- <!ELEMENT target EMPTY>
- <!ATTLIST target
-  name ID #REQUIRED
-  abldTarget CDATA #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT option EMPTY>
- <!ATTLIST option
-  name ID #REQUIRED
-  abldOption CDATA #REQUIRED
-  description CDATA #REQUIRED
-  enable (Y|N) #REQUIRED>
- <!ELEMENT configuration (listRef+|ref+|task+)*>
- <!ATTLIST configuration
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  filter CDATA #REQUIRED>
- <!ELEMENT task (listRef*,(buildLayer|specialInstructions))>
- <!ELEMENT listRef EMPTY>
- <!ATTLIST listRef list CDATA #REQUIRED>
- <!ELEMENT buildLayer EMPTY>
- <!ATTLIST buildLayer
-  command CDATA #REQUIRED
-  targetList IDREFS #IMPLIED
-  unitParallel (Y|N) #REQUIRED
-  targetParallel (Y|N) 'N'>
- <!ELEMENT specialInstructions EMPTY>
- <!ATTLIST specialInstructions
-  name CDATA #REQUIRED
-  cwd CDATA #REQUIRED
-  root CDATA #IMPLIED
-  command CDATA #REQUIRED>
-]>
-<SystemDefinition schema="2.0.1" name="Symbian^3">
-<systemModel>
-<layer name="mw">
-<block name="remotemgmt">
-<collection name="s60">
-<component name="remotemgmt">
-<unit bldFile="/sf/mw/remotemgmt/group" mrp=""/>
-</component>
-</collection>
-</block>
-</layer>
-</systemModel>
+<!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="mw" long-name="Middleware" levels="generic specific">
+      <block name="remotemgmt" level="specific" long-name="Remote Management" levels="plugin framework server generic specific">
+        <collection name="policymanagement" long-name="Policy Management" level="generic">
+          <component name="pmdmadapter" filter="s60" long-name="PM DM Adapter" plugin="Y">
+            <unit bldFile="/sf/mw/remotemgmt/policymanagement/pmdmadapter/group"/>
+          </component>
+          <component name="dmutilserver" filter="s60" long-name="DM Util Server">
+            <unit bldFile="/sf/mw/remotemgmt/policymanagement/dmutilserver/group"/>
+          </component>
+          <component name="policyengine" filter="s60" long-name="Policy Engine">
+            <unit bldFile="/sf/mw/remotemgmt/policymanagement/policyengine/group"/>
+          </component>
+          <component name="policymanagement_build" filter="s60" long-name="Policy Management Build">
+            <!--  need to distribute exports, etc into the other components and remove this-->
+            <unit bldFile="/sf/mw/remotemgmt/policymanagement/group"/>
+          </component>
+        </collection>
+        <collection name="syncmlfw" long-name="SyncML Framework" level="server">
+          <component name="syncmlfw_build" filter="s60" long-name="SyncML Framework Build">
+            <!--  need to break this up into components. Too convoluted a structure to be in a single bld.inf-->
+            <unit bldFile="/sf/mw/remotemgmt/syncmlfw/group"/>
+          </component>
+        </collection>
+        <collection name="terminalsecurity" long-name="Terminal Security" level="specific">
+          <component name="scp" filter="s60" long-name="Security Code Proxy">
+            <!-- can only have one unit, need to have these #included from a single bld.inf -->
+            <unit bldFile="/sf/mw/remotemgmt/terminalsecurity/scp/scpclient/group"/>
+            <unit bldFile="/sf/mw/remotemgmt/terminalsecurity/scp/scpdatabase/group"/>
+            <unit bldFile="/sf/mw/remotemgmt/terminalsecurity/scp/scpserver/group"/>
+            <unit bldFile="/sf/mw/remotemgmt/terminalsecurity/scp/scppatternplugin/group"/>
+            <unit bldFile="/sf/mw/remotemgmt/terminalsecurity/scp/scphistoryplugin/group"/>
+            <unit bldFile="/sf/mw/remotemgmt/terminalsecurity/scp/scptimestampplugin/group"/>
+            <unit/>
+            <unit/>
+          </component>
+          <component name="terminalsecurity_client" filter="s60" long-name="Terminal Control Client">
+            <unit bldFile="/sf/mw/remotemgmt/terminalsecurity/client/group"/>
+          </component>
+          <component name="terminalsecurity_server" filter="s60" long-name="Terminal Control Server">
+            <unit bldFile="/sf/mw/remotemgmt/terminalsecurity/server/group"/>
+          </component>
+          <component name="tcadapter" filter="s60" long-name="Terminal Control Adapter">
+            <unit bldFile="/sf/mw/remotemgmt/terminalsecurity/tcadapter/bld"/>
+          </component>
+          <component name="terminalsecurity_build" filter="s60" long-name="Terminal Security Build">
+            <!--  need to distribute exports, etc into the other components and remove this-->
+            <unit bldFile="/sf/mw/remotemgmt/terminalsecurity/group"/>
+          </component>
+        </collection>
+        <collection name="omaprovisioning" long-name="OMA Provisioning" level="specific">
+          <component name="pnputil" filter="s60" long-name="PnP Util">
+            <unit bldFile="/sf/mw/remotemgmt/omaprovisioning/pnputil/group"/>
+          </component>
+          <component name="provisioning" filter="s60" long-name="Provisioning">
+            <unit bldFile="/sf/mw/remotemgmt/omaprovisioning/provisioning/group"/>
+          </component>
+        </collection>
+        <collection name="devicediagnosticsfw" long-name="Device Diagnostics Framework" level="framework">
+          <component name="diagframework" filter="s60" long-name="Diagnostics Framework">
+            <unit bldFile="/sf/mw/remotemgmt/devicediagnosticsfw/diagframework/group"/>
+          </component>
+          <component name="diagpluginbase" filter="s60" long-name="Diagnostics Plugin Base">
+            <unit bldFile="/sf/mw/remotemgmt/devicediagnosticsfw/diagpluginbase/group"/>
+          </component>
+          <component name="diagresultsdb" filter="s60" long-name="Diagnostics Results Database">
+            <!--  can only have one unit, merge or split into two components -->
+            <unit bldFile="/sf/mw/remotemgmt/devicediagnosticsfw/diagresultsdb/client/group"/>
+            <unit bldFile="/sf/mw/remotemgmt/devicediagnosticsfw/diagresultsdb/server/group"/>
+          </component>
+          <component name="devicediagnosticsfw_build" filter="s60" long-name="Device Diagnostics Framework Build">
+            <!--  need to distribute exports, etc into the other components and remove this-->
+            <unit bldFile="/sf/mw/remotemgmt/devicediagnosticsfw/group"/>
+          </component>
+        </collection>
+        <collection name="dcmofw" long-name="Device Capability Management Object Framework" level="framework">
+          <component name="dcmoclient" filter="s60" long-name="DCMO Client">
+            <unit bldFile="/sf/mw/remotemgmt/dcmofw/dcmoclient/group"/>
+          </component>
+          <component name="dcmoserver" filter="s60" long-name="DCMO Server">
+            <unit bldFile="/sf/mw/remotemgmt/dcmofw/dcmoserver/group"/>
+          </component>
+          <component name="dcmocustcmd" filter="s60" long-name="DCMO Custom Commands">
+            <unit bldFile="/sf/mw/remotemgmt/dcmofw/dcmocustcmd/group"/>
+          </component>
+          <component name="dcmofw_build" filter="s60" long-name="DCMO Build">
+            <!--  need to distribute exports, etc into the other components and remove this-->
+            <unit bldFile="/sf/mw/remotemgmt/dcmofw/group"/>
+          </component>
+        </collection>
+        <collection name="fotaapplication" long-name="FOTA Application" level="generic">
+          <!-- need to break up into components after resolving the #ifdefs -->
+          <component name="fotaapplication_build" filter="s60" long-name="FOTA Application Build">
+            <unit bldFile="/sf/mw/remotemgmt/fotaapplication/fotaserver/fotastartupextplg/group"/>
+          </component>
+        </collection>
+        <collection name="remotemgmt_info" long-name="Remote Management Info" level="specific">
+          <component name="remotemgmt_plat" filter="s60" long-name="Remote Management Platform Interfaces" class="api">
+            <unit bldFile="/sf/mw/remotemgmt/remotemgmt_plat/group"/>
+          </component>
+          <component name="remotemgmt_pub" filter="s60" long-name="Remote Management Public Interfaces" class="api">
+            <unit bldFile="/sf/mw/remotemgmt/remotemgmt_pub/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
 </SystemDefinition>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/symbian3/mw/remotemgmt/package_definition_3.0.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -0,0 +1,185 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<SystemDefinition schema="3.0.0">
+  <package id="remotemgmt" name="Remote Management" levels="plugin framework server generic specific">
+    <collection id="omaprovisioning" name="OMA Provisioning" level="specific">
+      <component id="pnputil" filter="s60" name="PnP Util">
+        <unit bldFile="omaprovisioning/pnputil/group"/>
+        <!-- should the test bld.inf be #included? -->
+        <!-- <unit bldFile="omaprovisioning/pnputil/tsrc/moduletest/group"/> -->
+      </component>
+      <component id="provisioning" filter="s60" name="Provisioning">
+        <unit bldFile="omaprovisioning/provisioning/group"/>
+        <!-- should the test bld.inf be #included? -->
+        <!-- <unit bldFile="omaprovisioning/provisioning/tsrc/moduletest/group"/> -->
+      </component>
+    </collection>
+    <collection id="policymanagement" name="Policy Management" level="generic">
+      <component id="pmdmadapter" filter="s60" name="PM DM Adapter" class="plugin">
+        <unit bldFile="policymanagement/pmdmadapter/group"/>
+      </component>
+      <component id="dmutilserver" filter="s60" name="DM Util Server">
+        <unit bldFile="policymanagement/dmutilserver/group"/>
+      </component>
+      <component id="policyengine" filter="s60" name="Policy Engine">
+        <unit bldFile="policymanagement/policyengine/group"/>
+      </component>
+      <component id="policymanagement_build" filter="s60" name="Policy Management Build">
+      	<!--  should un#include above units-->
+        <unit bldFile="policymanagement/group"/>
+      </component>
+    </collection>
+    <collection id="syncmlfw" name="SyncML Framework" level="server">
+      <component id="syncmlfw_common" filter="s60" name="SyncML Framework Common">
+      	<!-- can only have one unit, need to have these #included from a single bld.inf -->
+        <unit bldFile="syncmlfw/common/alerthandler/bld"/>
+        <unit bldFile="syncmlfw/common/alertqueue/bld"/>
+        <unit bldFile="syncmlfw/common/debug/bld"/>
+        <unit bldFile="syncmlfw/common/historylog/bld"/>
+        <unit bldFile="syncmlfw/common/http/bld"/>
+        <unit bldFile="syncmlfw/common/inc"/>
+        <unit bldFile="syncmlfw/common/inc/modifiedheaders"/>
+        <unit bldFile="syncmlfw/common/inc/policy"/>
+        <unit bldFile="syncmlfw/common/inc/symbianheaders"/>
+        <unit bldFile="syncmlfw/common/notifiers/inc"/>
+        <unit bldFile="syncmlfw/common/obex/obexclient/bld"/>
+        <unit bldFile="syncmlfw/common/obex/obexcommserver/bld"/>
+        <unit bldFile="syncmlfw/common/obex/obexdmplugin/bld"/>
+        <unit bldFile="syncmlfw/common/obex/obexdsplugin/bld"/>
+        <unit bldFile="syncmlfw/common/obex/obexserverbinding/bld"/>
+        <unit bldFile="syncmlfw/common/sosserver/bld"/>
+        <unit bldFile="syncmlfw/common/sosserver_clientapi/bld"/>
+        <unit bldFile="syncmlfw/common/sosserver_privateapi/bld"/>
+        <unit bldFile="syncmlfw/common/sosserver_transporthandler/bld"/>
+        <unit bldFile="syncmlfw/common/syncagent/bld"/>
+        <unit bldFile="syncmlfw/common/transport/bld"/>
+        <unit bldFile="syncmlfw/common/wbxml/bld"/>
+        <unit bldFile="syncmlfw/common/xml/bld"/>
+      </component>
+      <component id="ds" filter="s60" name="Data Sync">
+      	<!-- can only have one unit, need to have these #included from a single bld.inf -->
+        <unit bldFile="syncmlfw/ds/adapterlog/bld"/>
+        <unit bldFile="syncmlfw/ds/adapters/dataproviderbase/bld"/>
+        <unit bldFile="syncmlfw/ds/agentlog/bld"/>
+        <unit bldFile="syncmlfw/ds/alerthandler/bld"/>
+        <unit bldFile="syncmlfw/ds/dsutils/changefinder/bld"/>
+        <unit bldFile="syncmlfw/ds/dsutils/dbcaps/bld"/>
+        <unit bldFile="syncmlfw/ds/dsutils/filter/bld"/>
+        <unit bldFile="syncmlfw/ds/dsutils/filterutils/bld"/>
+        <unit bldFile="syncmlfw/ds/dsutils/profileutil/bld"/>
+        <unit bldFile="syncmlfw/ds/dsutils/storeformat/bld"/>
+        <unit bldFile="syncmlfw/ds/hostserver/dshostclient/bld"/>
+        <unit bldFile="syncmlfw/ds/hostserver/dshostserverbase/bld"/>
+        <unit bldFile="syncmlfw/ds/hostserver/dshostservers/bld"/>
+        <unit bldFile="syncmlfw/ds/inc"/>
+        <unit bldFile="syncmlfw/ds/netmon/bld"/>
+        <!-- <unit bldFile="syncmlfw/ds/ota/bld"/> -->
+        <unit bldFile="syncmlfw/ds/provisioningadapter/bld"/>
+        <unit bldFile="syncmlfw/ds/settings/bld"/>
+        <unit bldFile="syncmlfw/ds/syncagent/bld"/>
+        <unit bldFile="syncmlfw/ds/wappushalert/bld"/>
+      </component>
+      <component id="dm" filter="s60" name="Device Management">
+      	<!-- can only have one unit, need to have these #included from a single bld.inf -->
+        <unit bldFile="syncmlfw/dm/bld"/>
+        <unit bldFile="syncmlfw/dm/callbackserver/bld"/>
+        <unit bldFile="syncmlfw/dm/dmutils/bld"/>
+        <unit bldFile="syncmlfw/dm/hostserver/dmhostserverbase/bld"/>
+        <unit bldFile="syncmlfw/dm/hostserver/dmhostservers/bld"/>
+        <unit bldFile="syncmlfw/dm/provisioningadapter/bld"/>
+        <unit bldFile="syncmlfw/dm/settings/bld"/>
+        <unit bldFile="syncmlfw/dm/syncagent/bld"/>
+        <unit bldFile="syncmlfw/dm/treedbclient/bld"/>
+        <unit bldFile="syncmlfw/dm/treedbhandler/bld"/>
+        <unit bldFile="syncmlfw/dm/treemodule/bld"/>
+        <!-- <unit bldFile="syncmlfw/dm/tsrc/group"/> -->
+        <unit bldFile="syncmlfw/dm/wappushalert/bld"/>
+      </component>
+      <component id="syncmlnotifier" filter="s60" name="SyncML Notifier">
+        <unit bldFile="syncmlfw/syncmlnotifier/group"/>
+      </component>
+      <component id="syncservice" filter="s60" name="Sync Service">
+        <unit bldFile="syncmlfw/syncservice/group"/>
+      </component>
+      <component id="syncmlfw_build" filter="s60" name="SyncML Framework Build">
+      	<!-- should un#include the above as necessary -->
+        <unit bldFile="syncmlfw/group"/>
+      </component>
+    </collection>
+    <collection id="terminalsecurity" name="Terminal Security" level="specific">
+      <component id="scp" filter="s60" name="Security Code Proxy">
+      	<!-- can only have one unit, need to have these #included from a single bld.inf -->
+        <unit bldFile="terminalsecurity/scp/scpclient/group"/>
+        <unit bldFile="terminalsecurity/scp/scphistoryplugin/group"/>
+        <unit bldFile="terminalsecurity/scp/scppatternplugin/group"/>
+        <unit bldFile="terminalsecurity/scp/scpserver/group"/>
+        <unit bldFile="terminalsecurity/scp/scptimestampplugin/group"/>
+      </component>
+      <component id="terminalsecurity_client" filter="s60" name="Terminal Control Client">
+        <unit bldFile="terminalsecurity/client/group"/>
+      </component>
+      <component id="terminalsecurity_server" filter="s60" name="Terminal Control Server">
+        <unit bldFile="terminalsecurity/server/group"/>
+      </component>
+      <component id="tcadapter" filter="s60" name="Terminal Control Adapter">
+        <unit bldFile="terminalsecurity/tcadapter/bld"/>
+      </component>
+      <component id="terminalsecurity_build" filter="s60" name="Terminal Security Build">
+        <unit bldFile="terminalsecurity/group"/>
+      </component>
+    </collection>
+    <collection id="devicediagnosticsfw" name="Device Diagnostics Framework" level="framework">
+      <component id="diagframework" filter="s60" name="Diagnostics Framework">
+        <unit bldFile="devicediagnosticsfw/diagframework/group"/>
+      </component>
+      <component id="diagpluginbase" filter="s60" name="Diagnostics Plugin Base">
+        <unit bldFile="devicediagnosticsfw/diagpluginbase/group"/>
+      </component>
+      <component id="diagresultsdb" filter="s60" name="Diagnostics Results Database">
+     	<!--  can only have one unit, merge or split into two components -->
+        <unit bldFile="devicediagnosticsfw/diagresultsdb/client/group"/>
+        <unit bldFile="devicediagnosticsfw/diagresultsdb/server/group"/>
+      </component>
+      <component id="devicediagnosticsfw_build" filter="s60" name="Device Diagnostics Framework Build">
+        <unit bldFile="devicediagnosticsfw/group"/>
+      </component>
+    </collection>
+    <collection id="fotaapplication" name="FOTA Application" level="generic">
+      <component id="fotaserver" filter="s60" name="FOTA Server">
+		<!-- can only have one unit, need to put the configuration in the appropriate bld.inf -->
+        <unit bldFile="fotaapplication/fotaserver/fotastartupextplg/group"/>
+        <unit bldFile="fotaapplication/fotaserver/group"/>
+        <!-- <unit bldFile="fotaapplication/fotaserver/fmsclient/group"/> -->
+        <!-- <unit bldFile="fotaapplication/fotaserver/fmserver/group"/> -->
+        <!-- <unit bldFile="fotaapplication/fotaserver/fotarfsplugin/group"/> -->
+      </component>
+      <component id="fotaapp" filter="s60" name="FOTA Application">
+		<!-- should be able to get rid of this by configuring the above component -->
+        <unit bldFile="fotaapplication/group"/>
+      </component>
+    </collection>
+    <collection id="remotemgmt_info" name="Remote Management Info" level="specific">
+      <component id="remotemgmt_pub" filter="s60" name="Remote Management Public Interfaces" class="api">
+        <unit bldFile="remotemgmt_pub/group"/>
+      </component>
+      <component id="remotemgmt_plat" filter="s60" name="Remote Management Platform Interfaces" class="api">
+        <unit bldFile="remotemgmt_plat/group"/>
+        	<!--  can these be #included in the above one? -->
+        <!-- <unit bldFile="remotemgmt_plat/common_agent_util_and_definitions_api/tsrc/group"/> -->
+        <!-- <unit bldFile="remotemgmt_plat/data_synchronization_plugin_api/tsrc/group"/> -->
+        <!-- <unit bldFile="remotemgmt_plat/dm_tree_apis/tsrc/group"/> -->
+        <!-- <unit bldFile="remotemgmt_plat/dm_utils_api/tsrc/group"/> -->
+        <!-- <unit bldFile="remotemgmt_plat/fota_engine_api/tsrc/group"/> -->
+        <!-- <unit bldFile="remotemgmt_plat/oma_ds_extensions_api/tsrc/group"/> -->
+        <!-- <unit bldFile="remotemgmt_plat/oma_provisioning_engine_api/tsrc/group"/> -->
+        <!-- <unit bldFile="remotemgmt_plat/pnpms_utils_api/tsrc/group"/> -->
+        <!-- <unit bldFile="remotemgmt_plat/policy_management_certificate_api/tsrc/group"/> -->
+        <!-- <unit bldFile="remotemgmt_plat/policy_management_request_api/tsrc/group"/> -->
+        <!-- <unit bldFile="remotemgmt_plat/scp_server_api/tsrc/group"/> -->
+        <!-- <unit bldFile="remotemgmt_plat/setting_enforcement_info_api/tsrc/group"/> -->
+        <!-- <unit bldFile="remotemgmt_plat/syncml_alert_api/tsrc/group"/> -->
+        <!-- <unit bldFile="remotemgmt_plat/syncml_client_api/tsrc/group"/> -->
+        <!-- <unit bldFile="remotemgmt_plat/terminal_security_device_lock_api/tsrc/group"/> -->
+      </component>
+    </collection>
+  </package>
+</SystemDefinition>
--- a/symbian3/mw/remotestorage/package_definition.xml	Mon Feb 01 16:11:43 2010 +0000
+++ b/symbian3/mw/remotestorage/package_definition.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -1,109 +1,121 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE SystemDefinition [
- <!ELEMENT SystemDefinition (systemModel?,SystemBuild?)>
- <!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (block*|collection*)*>
- <!ATTLIST layer
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED>
- <!ELEMENT block (subblock*|collection*)*>
- <!ATTLIST block
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED
-  level NMTOKEN #IMPLIED
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT subblock (collection)*>
- <!ATTLIST subblock
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT collection (component)*>
- <!ATTLIST collection
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  level NMTOKEN #IMPLIED>
- <!ELEMENT component (unit)*>
- <!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>
- <!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>
- <!ELEMENT SystemBuild (option*|target+|targetList+|list+|configuration+)*>
- <!ATTLIST SystemBuild schema CDATA #REQUIRED>
- <!ELEMENT list (ref+)>
- <!ATTLIST list
-  name ID #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT ref EMPTY>
- <!ATTLIST ref item CDATA #REQUIRED>
- <!ELEMENT targetList EMPTY>
- <!ATTLIST targetList
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  target IDREFS #REQUIRED>
- <!ELEMENT target EMPTY>
- <!ATTLIST target
-  name ID #REQUIRED
-  abldTarget CDATA #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT option EMPTY>
- <!ATTLIST option
-  name ID #REQUIRED
-  abldOption CDATA #REQUIRED
-  description CDATA #REQUIRED
-  enable (Y|N) #REQUIRED>
- <!ELEMENT configuration (listRef+|ref+|task+)*>
- <!ATTLIST configuration
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  filter CDATA #REQUIRED>
- <!ELEMENT task (listRef*,(buildLayer|specialInstructions))>
- <!ELEMENT listRef EMPTY>
- <!ATTLIST listRef list CDATA #REQUIRED>
- <!ELEMENT buildLayer EMPTY>
- <!ATTLIST buildLayer
-  command CDATA #REQUIRED
-  targetList IDREFS #IMPLIED
-  unitParallel (Y|N) #REQUIRED
-  targetParallel (Y|N) 'N'>
- <!ELEMENT specialInstructions EMPTY>
- <!ATTLIST specialInstructions
-  name CDATA #REQUIRED
-  cwd CDATA #REQUIRED
-  root CDATA #IMPLIED
-  command CDATA #REQUIRED>
-]>
-<SystemDefinition schema="2.0.1" name="Symbian^3">
-<systemModel>
-<layer name="mw">
-<block name="remotestorage">
-<collection name="s60">
-<component name="remotestorage">
-<unit bldFile="/sf/mw/remotestorage/group" mrp=""/>
-</component>
-</collection>
-</block>
-</layer>
-</systemModel>
+<!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="mw" long-name="Middleware" levels="generic specific">
+      <block name="remotestorage" level="generic" long-name="Remote Storage" levels="framework if">
+        <collection name="remotestoragefw" long-name="Remote Storage Framework" level="framework">
+          <component name="mountstore" filter="s60" long-name="RSFW Mount Store">
+            <unit bldFile="/sf/mw/remotestorage/remotestoragefw/mountstore/group"/>
+          </component>
+          <component name="rsfwnotifierplugins" filter="s60" long-name="RSFW Notifier Plugins" plugin="Y">
+            <unit bldFile="/sf/mw/remotestorage/remotestoragefw/rsfwnotifierplugins/group"/>
+          </component>
+          <component name="remotefileengine" filter="s60" long-name="Remote File Engine">
+            <unit bldFile="/sf/mw/remotestorage/remotestoragefw/remotefileengine/group"/>
+          </component>
+          <component name="mountmanager" filter="s60" long-name="RSFW Mount Manager">
+            <unit bldFile="/sf/mw/remotestorage/remotestoragefw/mountmanager/group"/>
+          </component>
+          <component name="webdavaccessplugin" filter="s60" long-name="WebDAV Access Plugin" plugin="Y">
+            <unit bldFile="/sf/mw/remotestorage/remotestoragefw/webdavaccessplugin/group"/>
+          </component>
+          <component name="remotefilesystemplugin" filter="s60" long-name="Remote Filesystem Plugin" plugin="Y">
+            <unit bldFile="/sf/mw/remotestorage/remotestoragefw/remotefilesystemplugin/group"/>
+          </component>
+          <component name="remotestoragegsplugin" filter="s60" long-name="RS GS Plugin" plugin="Y">
+            <!-- uncomment the unit when configuration is in place, it's currently #included from remotestoragefw_build -->
+            <!-- <unit bldFile="remotestoragefw/gsplugin/group"/>-->
+          </component>
+          <component name="remotedriveconfigurationbiocontrol" filter="s60" long-name="Remote Drive Configuration BIO Control">
+            <!-- uncomment the unit when configuration is in place, it's currently #included from remotestoragefw_build -->
+            <!--   <unit bldFile="remotestoragefw/remotedriveconfigurationbiocontrol/group"/>-->
+          </component>
+          <component name="remotestoragefw_build" filter="s60" long-name="Remote Storage Framework Build">
+            <!-- move exports to other components.
+				This is needed for #includes of configured component until congigiration is in place -->
+            <unit bldFile="/sf/mw/remotestorage/remotestoragefw/group"/>
+          </component>
+        </collection>
+        <collection name="remotestorage_info" long-name="Remote Storage Info" level="if">
+          <component name="rsfw_plat" filter="s60" long-name="Remote Storage Platform Interfaces" class="api">
+            <unit bldFile="/sf/mw/remotestorage/rsfw_plat/rsfw_access_protocol_plugin_api/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
 </SystemDefinition>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/symbian3/mw/remotestorage/package_definition_3.0.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<SystemDefinition schema="3.0.0">
+  <package id="remotestorage" name="Remote Storage" levels="framework if">
+    <collection id="remotestoragefw" name="Remote Storage Framework" level="framework">
+      <component id="mountstore" filter="s60" name="RSFW Mount Store">
+        <unit bldFile="remotestoragefw/mountstore/group"/>
+      </component>
+      <component id="rsfwnotifierplugins" filter="s60" name="RSFW Notifier Plugins" class="plugin">
+        <unit bldFile="remotestoragefw/rsfwnotifierplugins/group"/>
+      </component>
+      <component id="remotefileengine" filter="s60" name="Remote File Engine">
+        <unit bldFile="remotestoragefw/remotefileengine/group"/>
+      </component>
+      <component id="mountmanager" filter="s60" name="RSFW Mount Manager">
+        <unit bldFile="remotestoragefw/mountmanager/group"/>
+			<!-- does the test bld.inf need to be included in the above one? -->
+        <!-- <unit bldFile="remotestoragefw/mountmanager/tsrc/public/basic/group"/> -->
+      </component>
+      <component id="webdavaccessplugin" filter="s60" name="WebDAV Access Plugin" class="plugin">
+        <unit bldFile="remotestoragefw/webdavaccessplugin/group"/>
+      </component>
+      <component id="remotefilesystemplugin" filter="s60" name="Remote Filesystem Plugin" class="plugin">
+        <unit bldFile="remotestoragefw/remotefilesystemplugin/group"/>
+      </component>
+      <component id="remotestoragegsplugin" filter="s60" name="RS GS Plugin" class="plugin">
+        <unit bldFile="remotestoragefw/gsplugin/group"/>
+      </component>
+      <component id="remotedriveconfigurationbiocontrol" filter="s60" name="Remote Drive Configuration BIO Control">
+        <unit bldFile="remotestoragefw/remotedriveconfigurationbiocontrol/group"/>
+      </component>
+      <component id="remotestoragefw_build" filter="s60" name="Remote Storage Framework Build">
+			<!-- consider distributing exports to other components and removing this one -->
+        <unit bldFile="remotestoragefw/group"/>
+      </component>
+    </collection>
+    <collection id="remotestorage_info" name="Remote Storage Info" level="if">
+      <component id="rsfw_plat" filter="s60" class="api" name="Remote Storage Platform Interfaces">
+        <unit bldFile="rsfw_plat/rsfw_access_protocol_plugin_api/group"/>
+      </component>
+    </collection>
+  </package>
+</SystemDefinition>
--- a/symbian3/mw/securitysrv/package_definition.xml	Mon Feb 01 16:11:43 2010 +0000
+++ b/symbian3/mw/securitysrv/package_definition.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -1,122 +1,210 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE SystemDefinition [
- <!ELEMENT SystemDefinition (systemModel?,SystemBuild?)>
- <!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (block*|collection*)*>
- <!ATTLIST layer
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED>
- <!ELEMENT block (subblock*|collection*)*>
- <!ATTLIST block
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED
-  level NMTOKEN #IMPLIED
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT subblock (collection)*>
- <!ATTLIST subblock
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT collection (component)*>
- <!ATTLIST collection
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  level NMTOKEN #IMPLIED>
- <!ELEMENT component (unit)*>
- <!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>
- <!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>
- <!ELEMENT SystemBuild (option*|target+|targetList+|list+|configuration+)*>
- <!ATTLIST SystemBuild schema CDATA #REQUIRED>
- <!ELEMENT list (ref+)>
- <!ATTLIST list
-  name ID #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT ref EMPTY>
- <!ATTLIST ref item CDATA #REQUIRED>
- <!ELEMENT targetList EMPTY>
- <!ATTLIST targetList
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  target IDREFS #REQUIRED>
- <!ELEMENT target EMPTY>
- <!ATTLIST target
-  name ID #REQUIRED
-  abldTarget CDATA #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT option EMPTY>
- <!ATTLIST option
-  name ID #REQUIRED
-  abldOption CDATA #REQUIRED
-  description CDATA #REQUIRED
-  enable (Y|N) #REQUIRED>
- <!ELEMENT configuration (listRef+|ref+|task+)*>
- <!ATTLIST configuration
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  filter CDATA #REQUIRED>
- <!ELEMENT task (listRef*,(buildLayer|specialInstructions))>
- <!ELEMENT listRef EMPTY>
- <!ATTLIST listRef list CDATA #REQUIRED>
- <!ELEMENT buildLayer EMPTY>
- <!ATTLIST buildLayer
-  command CDATA #REQUIRED
-  targetList IDREFS #IMPLIED
-  unitParallel (Y|N) #REQUIRED
-  targetParallel (Y|N) 'N'>
- <!ELEMENT specialInstructions EMPTY>
- <!ATTLIST specialInstructions
-  name CDATA #REQUIRED
-  cwd CDATA #REQUIRED
-  root CDATA #IMPLIED
-  command CDATA #REQUIRED>
-]>
-<SystemDefinition schema="2.0.1" name="Symbian^3">
-<systemModel>
-<layer name="mw" long-name="Middleware" levels="generic specific">
-<block name="securitysrv" level="generic" long-name="Security Services" levels="plugin framework server generic specific">
-<collection name="pkiutilities" long-name="PKI Utilities" level="plugin">
-<component name="ocsp" long-name="Online Certificate Status Protocol" introduced="tb91" purpose="optional">
-<unit bldFile="/sf/mw/securitysrv/pkiutilities/ocsp/group" mrp="/sf/mw/securitysrv/pkiutilities/ocsp/group/securitysrv_ocsp.mrp"/>
-</component>
-</collection>
-<collection name="securitysrv_info" long-name="Security Services Info" level="specific">
-<component name="securitysrv_metadata" long-name="Security Services Metadata" introduced="tb91" purpose="development" class="config PC">
-<unit mrp="/sf/mw/securitysrv/securitysrv_info/securitysrv_metadata/securitysrv_metadata.mrp"/>
-</component>
-</collection>
-<collection name="s60">
-<component name="sedo_securitysrv_pkiutilities_Certificates">
-<unit bldFile="/sf/mw/securitysrv/pkiutilities/Certificates/group" mrp=""/>
-</component>
-<component name="securitysrv">
-<unit bldFile="/sf/mw/securitysrv/group" mrp=""/>
-</component>
-</collection>
-</block>
-</layer>
-</systemModel>
-</SystemDefinition>
\ No newline at end of file
+<!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="mw" long-name="Middleware" levels="generic specific">
+      <block name="securitysrv" level="generic" long-name="Security Services" levels="plugin framework server generic specific">
+        <collection name="cms" long-name="Certificate Management Service" level="server">
+          <!-- collection is really a component. Need to move down a directory-->
+          <component name="cms_build" filter="s60" long-name="CMS" introduced="^3">
+            <unit bldFile="/sf/mw/securitysrv/cms/group"/>
+          </component>
+        </collection>
+        <collection name="pkiutilities" long-name="PKI Utilities" level="plugin">
+          <component name="x509certnameparser" filter="s60" long-name="X.509 Certificate Name Parser">
+            <unit bldFile="/sf/mw/securitysrv/pkiutilities/x509certnameparser/group"/>
+          </component>
+          <component name="pkcs12" filter="s60" long-name="PKCS #12">
+            <unit bldFile="/sf/mw/securitysrv/pkiutilities/pkcs12/group"/>
+          </component>
+          <component name="certmanui" filter="s60" long-name="Certificate Management UI">
+            <unit bldFile="/sf/mw/securitysrv/pkiutilities/certmanui/group"/>
+          </component>
+          <component name="ctsecuritydialogs" filter="s60" long-name="Crypto Token Security Dialogs">
+            <unit bldFile="/sf/mw/securitysrv/pkiutilities/ctsecuritydialogs/group"/>
+          </component>
+          <component name="certsaver" filter="s60" long-name="Certificate Saver">
+            <unit bldFile="/sf/mw/securitysrv/pkiutilities/certsaver/group"/>
+          </component>
+          <component name="secmodui" filter="s60" long-name="Security Module UI">
+            <unit bldFile="/sf/mw/securitysrv/pkiutilities/secmodui/group"/>
+          </component>
+          <component name="devicetoken" filter="s60" long-name="Device Token">
+            <unit bldFile="/sf/mw/securitysrv/pkiutilities/devicetoken/group"/>
+          </component>
+          <component name="certificates" filter="s60" long-name="Certificates">
+            <unit bldFile="/sf/mw/securitysrv/pkiutilities/certificates/group" filter="sf_build"/>
+          </component>
+          <component name="pkiutilities_build" filter="s60" long-name="PKI Utilities Build">
+            <!-- need to split this into the above components -->
+            <unit bldFile="/sf/mw/securitysrv/pkiutilities/group"/>
+          </component>
+          <component name="ocsp" long-name="Online Certificate Status Protocol" introduced="^2" purpose="optional">
+            <unit bldFile="/sf/mw/securitysrv/pkiutilities/ocsp/group" mrp="/sf/mw/securitysrv/pkiutilities/ocsp/group/securitysrv_ocsp.mrp"/>
+          </component>
+        </collection>
+        <collection name="wim" long-name="Wireless Identity Module " level="framework">
+          <!-- collection is really a component. Need to move down a directory-->
+          <component name="wim_build" filter="s60" long-name="WIM Build">
+            <unit bldFile="/sf/mw/securitysrv/wim/group"/>
+          </component>
+        </collection>
+        <collection name="remotelock" long-name="Remote Lock" level="generic">
+          <!-- collection is really a component. Need to move down a directory-->
+          <component name="remotelock_build" filter="s60" long-name="Remote Lock Build">
+            <unit bldFile="/sf/mw/securitysrv/remotelock/group"/>
+          </component>
+        </collection>
+        <collection name="securitydialogs" long-name="Security Dialogs" level="specific">
+          <component name="keylockpolicyapi" filter="s60" long-name="Keylock Policy API">
+            <unit bldFile="/sf/mw/securitysrv/securitydialogs/keylockpolicyapi/group"/>
+          </component>
+          <component name="autolock" long-name="Autolock" filter="s60">
+            <unit bldFile="/sf/mw/securitysrv/securitydialogs/autolock/group"/>
+          </component>
+          <component name="secui" filter="s60" long-name="Security UI">
+            <unit bldFile="/sf/mw/securitysrv/securitydialogs/secui/group"/>
+          </component>
+          <component name="securitynotifier" filter="s60" long-name="Security Notifier">
+            <unit bldFile="/sf/mw/securitysrv/securitydialogs/securitynotifier/group"/>
+          </component>
+          <component name="lockclient" filter="s60" long-name="Lock Client" introduced="^3">
+            <unit bldFile="/sf/mw/securitysrv/securitydialogs/lockclient/group"/>
+          </component>
+          <component name="lockapp" filter="s60" long-name="Lock Application" introduced="^3">
+            <unit bldFile="/sf/mw/securitysrv/securitydialogs/lockapp/group"/>
+          </component>
+          <component name="simlockui" filter="s60" long-name="SIM Lock UI" introduced="^3">
+            <unit bldFile="/sf/mw/securitysrv/securitydialogs/simlockui/group"/>
+          </component>
+        </collection>
+        <collection name="boottimeintegritycheck" long-name="Boot Time Integrity Check" level="plugin">
+          <!-- collection is really a component. Need to move down a directory-->
+          <component name="boottimeintegritycheck_build" filter="s60" long-name="Boot Time Integrity Check Build">
+            <unit bldFile="/sf/mw/securitysrv/boottimeintegritycheck/group"/>
+          </component>
+        </collection>
+        <collection name="gba" long-name="Generic Bootstrapping Architecture" level="server">
+          <component name="uicc" filter="s60" long-name="UICC" introduced="^2" plugin="Y">
+            <unit bldFile="/sf/mw/securitysrv/gba/uicc/group"/>
+          </component>
+          <component name="gbaserver" filter="s60" long-name="GBA Server" introduced="^2">
+            <unit bldFile="/sf/mw/securitysrv/gba/gbaserver/group"/>
+          </component>
+          <component name="gbaapi" filter="s60" long-name="GBA API" introduced="^2">
+            <unit bldFile="/sf/mw/securitysrv/gba/gbaapi/group"/>
+          </component>
+          <component name="gbafilter" filter="s60" long-name="GBA HTTP Filter" introduced="^2" plugin="Y">
+            <unit bldFile="/sf/mw/securitysrv/gba/gbafilter/group"/>
+          </component>
+          <component name="gba_build" filter="s60" long-name="Generic Boot Architecture Build" introduced="^2">
+            <!-- need to split this into the above components, or remove #includes and make this GBA ROM  -->
+            <unit bldFile="/sf/mw/securitysrv/gba/group"/>
+          </component>
+        </collection>
+        <collection name="devencdiskutils" long-name="Device Encryption Disk Utils" level="server">
+          <component name="devenccommonutils" filter="s60" long-name="Device Encryption Common Utils" introduced="^3">
+            <unit bldFile="/sf/mw/securitysrv/devencdiskutils/DevEncCommonUtils/group"/>
+          </component>
+          <component name="devencrfsplugin" filter="s60" long-name="Device Encryption RFS Plugin" introduced="^3" plugin="Y">
+            <unit bldFile="/sf/mw/securitysrv/devencdiskutils/DevEncRfsPlugin/group"/>
+          </component>
+          <component name="pk5recognizer" filter="s60" long-name="Device Encryption Pk5 Recognizer" introduced="^3" plugin="Y">
+            <unit bldFile="/sf/mw/securitysrv/devencdiskutils/Pk5Recognizer/group"/>
+          </component>
+          <component name="devencstarter" filter="s60" long-name="Device Encryption Starter" introduced="^3" plugin="Y">
+            <unit bldFile="/sf/mw/securitysrv/devencdiskutils/DevEncStarter/group"/>
+          </component>
+          <component name="devencdiskutils" filter="s60" long-name="Device Encryption Disk Utils Build" introduced="^3">
+            <!-- need to split this into the above components, or remove #includes and make this a ROM  component-->
+            <unit bldFile="/sf/mw/securitysrv/devencdiskutils/group"/>
+          </component>
+        </collection>
+        <collection name="securitysrv_info" long-name="Security Services Info" level="specific">
+          <component name="secsrv_plat" long-name="Security Services Platform Interfaces" filter="s60" class="api">
+            <unit bldFile="/sf/mw/securitysrv/secsrv_plat/group"/>
+          </component>
+          <component name="securitysrv_test" filter="s60,api_test" purpose="development" long-name="Security Services Test">
+            <unit bldFile="/sf/mw/securitysrv/tsrc/group"/>
+          </component>
+          <component name="securitysrv_metadata" long-name="Security Services Metadata" introduced="^2" purpose="development" class="config PC">
+            <unit mrp="/sf/mw/securitysrv/securitysrv_info/securitysrv_metadata/securitysrv_metadata.mrp"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/symbian3/mw/securitysrv/package_definition_3.0.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -0,0 +1,116 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<SystemDefinition schema="3.0.0">
+  <package id="securitysrv" name="Security Services" levels="plugin framework server generic specific">
+    <collection id="gba" name="Generic Bootstrapping Architecture" level="server">
+      <component id="uicc" filter="s60" name="UICC" class="plugin" introduced="^2">
+        <unit bldFile="gba/uicc/group"/>
+      </component>
+      <component id="bootstrap" filter="s60" name="Bootstrap" introduced="^2">
+        <unit bldFile="gba/bootstrap/group"/>
+      </component>
+      <component id="gbaserver" filter="s60" name="GBA Server" introduced="^2">
+        <unit bldFile="gba/gbaserver/group"/>
+      </component>
+      <component id="gbaapi" filter="s60" name="GBA API" introduced="^2">
+        <unit bldFile="gba/gbaapi/group"/>
+      </component>
+      <component id="gbafilter" filter="s60" name="GBA HTTP Filter" class="plugin" introduced="^2">
+        <unit bldFile="gba/gbafilter/group"/>
+      </component>
+      <component id="gba_build" filter="s60" name="Generic Boot Architecture Build" introduced="^2">
+        <unit bldFile="gba/group"/>
+      </component>
+    </collection>
+    <collection id="wim" name="Wireless Identity Module " level="framework">
+      <component id="swimreader" filter="s60" name="SWIM Reader"/>
+      <component id="scard" filter="s60" name="Smart Card"/>
+      <component id="wimutil" filter="s60" name="WIM Utils"/>
+      <component id="wimserver" filter="s60" name="WIM Server"/>
+      <component id="wimclient" filter="s60" name="WIM Client"/>
+      <component id="wimplugin" filter="s60" name="WIM Plugin" class="plugin"/>
+      <component id="wim_build" filter="s60" name="WIM Build">
+           <!-- need to distribute bld.inf to empty components or collapse into a single component -->
+        <unit bldFile="wim/group"/>
+      </component>
+    </collection>
+    <collection id="pkiutilities" name="PKI Utilities" level="plugin">
+      <component id="x509certnameparser" filter="s60" name="X.509 Certificate Name Parser">
+        <unit bldFile="pkiutilities/x509certnameparser/group"/>
+      </component>
+      <component id="pkcs12" filter="s60" name="PKCS #12">
+        <unit bldFile="pkiutilities/pkcs12/group"/>
+      </component>
+      <component id="certmanui" filter="s60" name="Certificate Management UI">
+        <unit bldFile="pkiutilities/certmanui/group"/>
+      </component>
+      <component id="ctsecuritydialogs" filter="s60" name="Crypto Token Security Dialogs">
+        <unit bldFile="pkiutilities/ctsecuritydialogs/group"/>
+      </component>
+      <component id="certsaver" filter="s60" name="Certificate Saver">
+        <unit bldFile="pkiutilities/certsaver/group"/>
+      </component>
+      <component id="secmodui" filter="s60" name="Security Module UI">
+        <unit bldFile="pkiutilities/secmodui/group"/>
+      </component>
+      <component id="devicetoken" filter="s60" name="Device Token">
+        <unit bldFile="pkiutilities/devicetoken/group"/>
+      </component>
+      <component id="certificates" filter="s60" name="Certificates">
+        <unit bldFile="pkiutilities/certificates/group"/>
+      </component>
+      <component id="pkiutilities_build" filter="s60" name="PKI Utilities Build">
+        <unit bldFile="pkiutilities/group"/>
+      </component>
+     <component id="ocsp" name="Online Certificate Status Protocol" introduced="^2" purpose="optional">
+       <unit bldFile="pkiutilities/ocsp/group" mrp="pkiutilities/ocsp/group/securitysrv_ocsp.mrp"/>
+      </component>
+    </collection>
+    <collection id="remotelock" name="Remote Lock" level="generic">
+      <component id="remotelocksettings" filter="s60" name="Remote Lock Settings"/>
+      <component id="remotelockengine" filter="s60" name="Remote Lock Engine"/>
+      <component id="remotelock_build" filter="s60" name="Remote Lock Build">
+           <!-- need to distribute bld.inf to empty components or collapse into a single component -->
+        <unit bldFile="remotelock/group"/>
+      </component>
+    </collection>
+    <collection id="boottimeintegritycheck" name="Boot Time Integrity Check" level="plugin">
+      <component id="trkdummy" filter="s60" name="Trk Dummy">
+        <!-- <unit bldFile="boottimeintegritycheck/trkdummy/group"/> -->
+      </component>
+      <component id="boottimeintegritycheck_build" filter="s60" name="Boot Time Integrity Check Build">
+        <unit bldFile="boottimeintegritycheck/group"/>
+      </component>
+    </collection>
+    <collection id="securitydialogs" name="Security Dialogs" level="specific">
+      <component id="keylockpolicyapi" filter="s60" name="Keylock Policy API">
+        <unit bldFile="securitydialogs/keylockpolicyapi/group"/>
+      </component>
+      <component id="autolock" name="Autolock" filter="s60">
+        <unit bldFile="securitydialogs/autolock/group"/>
+      </component>
+      <component id="secui" filter="s60" name="Security UI">
+        <unit bldFile="securitydialogs/secui/group"/>
+      </component>
+      <component id="securitynotifier" filter="s60" name="Security Notifier">
+        <unit bldFile="securitydialogs/securitynotifier/group"/>
+      </component>
+      <component id="securityobserver" filter="s60" name="Security Observer">
+        <unit bldFile="securitydialogs/securityobserver/group"/>
+      </component>
+    </collection>
+    <collection id="securitysrv_info" name="Security Services Info" level="specific">
+      <component id="secsrv_plat" name="Security Services Platform Interfaces" filter="s60" class="api">
+        <unit bldFile="secsrv_plat/group"/>
+        <!-- <unit bldFile="secsrv_plat/devicelock_access_api/group"/> -->
+        <!-- <unit bldFile="secsrv_plat/keyguard_access_api/group"/> -->
+        <!-- <unit bldFile="secsrv_plat/lockapp_server_api/group"/> -->
+      </component>
+      <component id="securitysrv_test" filter="s60" purpose="development" name="Security Services Test">
+        <!-- <unit bldFile="tsrc/group"/> -->
+      </component>
+      <component id="securitysrv_metadata" name="Security Services Metadata" class="config" introduced="^2" purpose="development" target="desktop">
+        <unit mrp="securitysrv_info/securitysrv_metadata/securitysrv_metadata.mrp"/>
+      </component>
+    </collection>
+  </package>
+</SystemDefinition>
--- a/symbian3/mw/serviceapi/package_definition.xml	Mon Feb 01 16:11:43 2010 +0000
+++ b/symbian3/mw/serviceapi/package_definition.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -1,109 +1,126 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE SystemDefinition [
- <!ELEMENT SystemDefinition (systemModel?,SystemBuild?)>
- <!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (block*|collection*)*>
- <!ATTLIST layer
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED>
- <!ELEMENT block (subblock*|collection*)*>
- <!ATTLIST block
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED
-  level NMTOKEN #IMPLIED
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT subblock (collection)*>
- <!ATTLIST subblock
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT collection (component)*>
- <!ATTLIST collection
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  level NMTOKEN #IMPLIED>
- <!ELEMENT component (unit)*>
- <!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>
- <!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>
- <!ELEMENT SystemBuild (option*|target+|targetList+|list+|configuration+)*>
- <!ATTLIST SystemBuild schema CDATA #REQUIRED>
- <!ELEMENT list (ref+)>
- <!ATTLIST list
-  name ID #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT ref EMPTY>
- <!ATTLIST ref item CDATA #REQUIRED>
- <!ELEMENT targetList EMPTY>
- <!ATTLIST targetList
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  target IDREFS #REQUIRED>
- <!ELEMENT target EMPTY>
- <!ATTLIST target
-  name ID #REQUIRED
-  abldTarget CDATA #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT option EMPTY>
- <!ATTLIST option
-  name ID #REQUIRED
-  abldOption CDATA #REQUIRED
-  description CDATA #REQUIRED
-  enable (Y|N) #REQUIRED>
- <!ELEMENT configuration (listRef+|ref+|task+)*>
- <!ATTLIST configuration
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  filter CDATA #REQUIRED>
- <!ELEMENT task (listRef*,(buildLayer|specialInstructions))>
- <!ELEMENT listRef EMPTY>
- <!ATTLIST listRef list CDATA #REQUIRED>
- <!ELEMENT buildLayer EMPTY>
- <!ATTLIST buildLayer
-  command CDATA #REQUIRED
-  targetList IDREFS #IMPLIED
-  unitParallel (Y|N) #REQUIRED
-  targetParallel (Y|N) 'N'>
- <!ELEMENT specialInstructions EMPTY>
- <!ATTLIST specialInstructions
-  name CDATA #REQUIRED
-  cwd CDATA #REQUIRED
-  root CDATA #IMPLIED
-  command CDATA #REQUIRED>
-]>
-<SystemDefinition schema="2.0.1" name="Symbian^3">
-<systemModel>
-<layer name="mw">
-<block name="serviceapi">
-<collection name="s60">
-<component name="serviceapi">
-<unit bldFile="/sf/mw/serviceapi/group" mrp=""/>
-</component>
-</collection>
-</block>
-</layer>
-</systemModel>
+<!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="mw" long-name="Middleware" levels="generic specific">
+      <block name="serviceapi" level="specific" long-name="Service API" levels="os mw1 mw2 app">
+        <!-- should break up this collection into something meaningful -->
+        <collection name="serviceproviders" long-name="Service Providers" level="mw1">
+          <component name="sapi_contacts_vpbk" long-name="Contacts Phonebook SAPI" filter="s60" plugin="Y">
+            <unit bldFile="/sf/mw/serviceapi/serviceproviders/sapi_contacts_vpbk/group"/>
+          </component>
+          <component name="sapi_location" long-name="Location SAPI" filter="s60" plugin="Y">
+            <unit bldFile="/sf/mw/serviceapi/serviceproviders/sapi_location/group"/>
+          </component>
+          <component name="sapi_mediamanagement" long-name="Media Management SAPI" filter="s60" plugin="Y">
+            <unit bldFile="/sf/mw/serviceapi/serviceproviders/sapi_mediamanagement/group"/>
+          </component>
+          <component name="sapi_landmarks" long-name="Landmarks SAPI" filter="s60" plugin="Y">
+            <unit bldFile="/sf/mw/serviceapi/serviceproviders/sapi_landmarks/group"/>
+          </component>
+          <component name="sapi_messaging" long-name="Messaging SAPI" filter="s60" plugin="Y">
+            <unit bldFile="/sf/mw/serviceapi/serviceproviders/sapi_messaging/group"/>
+          </component>
+          <component name="sapi_applicationmanager" long-name="Application Manager SAPI" filter="s60" plugin="Y">
+            <unit bldFile="/sf/mw/serviceapi/serviceproviders/sapi_applicationmanager/group"/>
+          </component>
+          <component name="sapi_calendar" long-name="Calendar SAPI" filter="s60" plugin="Y">
+            <unit bldFile="/sf/mw/serviceapi/serviceproviders/sapi_calendar/group"/>
+          </component>
+          <component name="sapi_logging" long-name="Logging SAPI" filter="s60" plugin="Y">
+            <unit bldFile="/sf/mw/serviceapi/serviceproviders/sapi_logging/group"/>
+          </component>
+          <component name="sapi_sensor" long-name="Sensor SAPI" filter="s60" plugin="Y">
+            <unit bldFile="/sf/mw/serviceapi/serviceproviders/sapi_sensor/group"/>
+          </component>
+          <component name="sapi_sysinfo" long-name="Sysinfo SAPI" filter="s60" plugin="Y">
+            <unit bldFile="/sf/mw/serviceapi/serviceproviders/sapi_sysinfo/group"/>
+          </component>
+          <component name="sapi_serviceregistry" long-name="Service Registry SAPI" filter="s60" plugin="Y">
+            <unit bldFile="/sf/mw/serviceapi/serviceproviders/sapi_serviceregistry/group"/>
+          </component>
+          <component name="jsapi" long-name="Javascript API" filter="s60" plugin="Y">
+            <unit bldFile="/sf/mw/serviceapi/serviceproviders/jsapi/group"/>
+          </component>
+          <component name="serviceproviders_build" filter="s60" long-name="Service API Build">
+            <!--  distribute the exports or make this a ROM component by removing the #includes -->
+            <unit bldFile="/sf/mw/serviceapi/serviceproviders/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
 </SystemDefinition>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/symbian3/mw/serviceapi/package_definition_3.0.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<SystemDefinition schema="3.0.0">
+  <package id="serviceapi" name="Service API" levels="os mw1 mw2 app">
+  	<!-- should break up this collection into something meaningful -->
+    <collection id="serviceproviders" name="Service Providers" level="mw1">
+      <component id="sapi_applicationmanager" name="Application Manager SAPI" filter="s60" class="plugin">
+        <unit bldFile="serviceproviders/sapi_applicationmanager/group"/>
+			<!-- should test bld.inf be #included? -->
+        <!-- <unit bldFile="serviceproviders/sapi_applicationmanager/tsrc/dev/cruntimetest/group"/> -->
+      </component>
+      <component id="sapi_calendar" name="Calendar SAPI" filter="s60" class="plugin">
+        <unit bldFile="serviceproviders/sapi_calendar/group"/>
+			<!-- should test bld.inf be #included? -->
+        <!-- <unit bldFile="serviceproviders/sapi_calendar/tsrc/testing/tcalprovider_combined/group"/> -->
+      </component>
+      <component id="sapi_contacts_vpbk" name="Contacts Phonebook SAPI"  filter="s60" class="plugin">
+        <unit bldFile="serviceproviders/sapi_contacts_vpbk/group"/>
+      </component>
+      <component id="sapi_landmarks" name="Landmarks SAPI" filter="s60" class="plugin">
+        <unit bldFile="serviceproviders/sapi_landmarks/group"/>
+			<!-- should test bld.infs be #included? -->
+        <!-- <unit bldFile="serviceproviders/sapi_landmarks/tsrc/testing/tlandmarkstest/group"/> -->
+        <!-- <unit bldFile="serviceproviders/sapi_landmarks/tsrc/dev/group"/> -->
+        <!-- <unit bldFile="serviceproviders/sapi_landmarks/tsrc/testing/tlandmarksprovidertest/group"/> -->
+        <!-- <unit bldFile="serviceproviders/sapi_landmarks/tsrc/dev/landmarks_inputparams/group"/> -->
+      </component>
+      <component id="sapi_location" name="Location SAPI"  filter="s60" class="plugin">
+        <unit bldFile="serviceproviders/sapi_location/group"/>
+			<!-- should test bld.infs be #included? -->
+        <!-- <unit bldFile="serviceproviders/sapi_location/tsrc/testing/performance/pgetloc/group"/> -->
+        <!-- <unit bldFile="serviceproviders/sapi_location/tsrc/testing/performance/pgetlocopts/group"/> -->
+        <!-- <unit bldFile="serviceproviders/sapi_location/tsrc/testing/performance/pgetlocasync/group"/> -->
+        <!-- <unit bldFile="serviceproviders/sapi_location/tsrc/testing/performance/pgetbearing/group"/> -->
+        <!-- <unit bldFile="serviceproviders/sapi_location/tsrc/dev/group"/> -->
+        <!-- <unit bldFile="serviceproviders/sapi_location/tsrc/testing/performance/pgetdistance/group"/> -->
+        <!-- <unit bldFile="serviceproviders/sapi_location/tsrc/testing/group"/> -->
+        <!-- <unit bldFile="serviceproviders/sapi_location/tsrc/testing/performance/pmove/group"/> -->
+      </component>
+      <component id="sapi_logging" name="Logging SAPI"  filter="s60" class="plugin">
+        <unit bldFile="serviceproviders/sapi_logging/group"/>
+        <!-- <unit bldFile="serviceproviders/sapi_logging/tsrc/dev/group"/> -->
+      </component>
+      <component id="sapi_mediamanagement" name="Media Management SAPI" filter="s60" class="plugin">
+        <unit bldFile="serviceproviders/sapi_mediamanagement/group"/>
+			<!-- should test bld.infs be #included? -->
+        <!-- <unit bldFile="serviceproviders/sapi_mediamanagement/tsrc/dev/taiwmediamgmttest/group"/> -->
+        <!-- <unit bldFile="serviceproviders/sapi_mediamanagement/tsrc/testing/performance/runtime_perf/group"/> -->
+        <!-- <unit bldFile="serviceproviders/sapi_mediamanagement/tsrc/testing/performance/s60_perf/group"/> -->
+      </component>
+      <component id="sapi_messaging" name="Messaging SAPI" filter="s60" class="plugin">
+        <unit bldFile="serviceproviders/sapi_messaging/group"/>
+			<!-- should test bld.infs be #included? -->
+        <!-- <unit bldFile="serviceproviders/sapi_messaging/tsrc/testing/performance/notify/group"/> -->
+        <!-- <unit bldFile="serviceproviders/sapi_messaging/tsrc/testing/performance/status/group"/> -->
+        <!-- <unit bldFile="serviceproviders/sapi_messaging/tsrc/testing/performance/delete/group"/> -->
+        <!-- <unit bldFile="serviceproviders/sapi_messaging/tsrc/testing/performance/getlist/group"/> -->
+        <!-- <unit bldFile="serviceproviders/sapi_messaging/tsrc/testing/performance/s60_getlist/group"/> -->
+        <!-- <unit bldFile="serviceproviders/sapi_messaging/tsrc/testing/performance/s60_asyncsend/group"/> -->
+        <!-- <unit bldFile="serviceproviders/sapi_messaging/tsrc/testing/performance/s60_notify/group"/> -->
+        <!-- <unit bldFile="serviceproviders/sapi_messaging/tsrc/testing/performance/send/group"/> -->
+        <!-- <unit bldFile="serviceproviders/sapi_messaging/tsrc/testing/performance/s60_status/group"/> -->
+        <!-- <unit bldFile="serviceproviders/sapi_messaging/tsrc/testing/tmessagingprovidertest/group"/> -->
+        <!-- <unit bldFile="serviceproviders/sapi_messaging/tsrc/testing/performance/s60_delete/group"/> -->
+        <!-- <unit bldFile="serviceproviders/sapi_messaging/tsrc/testing/performance/s60_send/group"/> -->
+        <!-- <unit bldFile="serviceproviders/sapi_messaging/tsrc/testing/performance/asyncsend/group"/> -->
+      </component>
+      <component id="sapi_sensor" name="Sensor SAPI" filter="s60" class="plugin">
+        <unit bldFile="serviceproviders/sapi_sensor/group"/>
+      </component>
+      <component id="sapi_sysinfo" name="Sysinfo SAPI" filter="s60" class="plugin">
+        <unit bldFile="serviceproviders/sapi_sysinfo/group"/>
+      </component>
+      <component id="sapi_serviceregistry" name="Service Registry SAPI" filter="s60" class="plugin">
+        <unit bldFile="serviceproviders/sapi_serviceregistry/group"/>
+			<!-- should test bld.infs be #included? -->
+        <!-- <unit bldFile="serviceproviders/sapi_serviceregistry/tsrc/dev/group"/> -->
+      </component>
+    </collection>
+    <collection id="serviceapi_info" name="Service API Info" level="app">
+      <component id="serviceproviders_build" filter="s60" name="Service API Build">
+      	<!--  can the exports be distributed? -->
+        <unit bldFile="serviceproviders/group"/>
+      </component>
+      <component id="serviceapi_test" filter="s60" name="Service API Test" purpose="development">
+		<!-- Does this need to exist? -->
+        <!-- <unit bldFile="tsrc/group"/> -->
+      </component>
+    </collection>
+  </package>
+</SystemDefinition>
--- a/symbian3/mw/serviceapifw/package_definition.xml	Mon Feb 01 16:11:43 2010 +0000
+++ b/symbian3/mw/serviceapifw/package_definition.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -1,109 +1,111 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE SystemDefinition [
- <!ELEMENT SystemDefinition (systemModel?,SystemBuild?)>
- <!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (block*|collection*)*>
- <!ATTLIST layer
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED>
- <!ELEMENT block (subblock*|collection*)*>
- <!ATTLIST block
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED
-  level NMTOKEN #IMPLIED
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT subblock (collection)*>
- <!ATTLIST subblock
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT collection (component)*>
- <!ATTLIST collection
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  level NMTOKEN #IMPLIED>
- <!ELEMENT component (unit)*>
- <!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>
- <!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>
- <!ELEMENT SystemBuild (option*|target+|targetList+|list+|configuration+)*>
- <!ATTLIST SystemBuild schema CDATA #REQUIRED>
- <!ELEMENT list (ref+)>
- <!ATTLIST list
-  name ID #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT ref EMPTY>
- <!ATTLIST ref item CDATA #REQUIRED>
- <!ELEMENT targetList EMPTY>
- <!ATTLIST targetList
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  target IDREFS #REQUIRED>
- <!ELEMENT target EMPTY>
- <!ATTLIST target
-  name ID #REQUIRED
-  abldTarget CDATA #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT option EMPTY>
- <!ATTLIST option
-  name ID #REQUIRED
-  abldOption CDATA #REQUIRED
-  description CDATA #REQUIRED
-  enable (Y|N) #REQUIRED>
- <!ELEMENT configuration (listRef+|ref+|task+)*>
- <!ATTLIST configuration
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  filter CDATA #REQUIRED>
- <!ELEMENT task (listRef*,(buildLayer|specialInstructions))>
- <!ELEMENT listRef EMPTY>
- <!ATTLIST listRef list CDATA #REQUIRED>
- <!ELEMENT buildLayer EMPTY>
- <!ATTLIST buildLayer
-  command CDATA #REQUIRED
-  targetList IDREFS #IMPLIED
-  unitParallel (Y|N) #REQUIRED
-  targetParallel (Y|N) 'N'>
- <!ELEMENT specialInstructions EMPTY>
- <!ATTLIST specialInstructions
-  name CDATA #REQUIRED
-  cwd CDATA #REQUIRED
-  root CDATA #IMPLIED
-  command CDATA #REQUIRED>
-]>
-<SystemDefinition schema="2.0.1" name="Symbian^3">
-<systemModel>
-<layer name="mw">
-<block name="serviceapifw">
-<collection name="s60">
-<component name="serviceapifw">
-<unit bldFile="/sf/mw/serviceapifw/group" mrp=""/>
-</component>
-</collection>
-</block>
-</layer>
-</systemModel>
+<!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="mw" long-name="Middleware" levels="generic specific">
+      <block name="serviceapifw" level="specific" long-name="Service API Framework" levels="plugin framework server generic specific">
+        <collection name="rtsecuritymanager" long-name="Runtime Security Manager" level="server">
+          <component name="rtsecuritymanagerutil" filter="s60" long-name="Runtime Security Manager Util">
+            <unit bldFile="/sf/mw/serviceapifw/rtsecuritymanager/rtsecuritymanagerutil/group"/>
+          </component>
+          <component name="rtsecuritymanagerserver" filter="s60" long-name="Runtime Security Manager Server">
+            <unit bldFile="/sf/mw/serviceapifw/rtsecuritymanager/rtsecuritymanagerserver/group"/>
+          </component>
+          <component name="rtsecuritymanagerclient" filter="s60" long-name="Runtime Security Manager Client">
+            <unit bldFile="/sf/mw/serviceapifw/rtsecuritymanager/rtsecuritymanagerclient/group"/>
+          </component>
+          <component name="rtsecuritymanager_build" filter="s60" long-name="Runtime Security Manager Build">
+            <!-- Move the export to the appropriate components, or make this a ROM component by removing the #includes -->
+            <unit bldFile="/sf/mw/serviceapifw/rtsecuritymanager/group"/>
+          </component>
+        </collection>
+        <collection name="languageinterworkingfw" long-name="Language Interworking Framework" level="framework">
+          <component name="lifwservicehandler" filter="s60" long-name="Service Handler">
+            <unit bldFile="/sf/mw/serviceapifw/languageinterworkingfw/servicehandler/group"/>
+          </component>
+        </collection>
+        <collection name="serviceapifw_info" long-name="Service API Framework Info" level="specific">
+          <component name="serviceapifw_plat" filter="s60" long-name="Service API Framework Platform Interfaces" class="api">
+            <unit bldFile="/sf/mw/serviceapifw/serviceapifw_plat/group"/>
+          </component>
+          <component name="serviceapifw_pub" filter="s60" long-name="Service API Framework Public Interfaces" class="api">
+            <unit bldFile="/sf/mw/serviceapifw/serviceapifw_pub/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
 </SystemDefinition>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/symbian3/mw/serviceapifw/package_definition_3.0.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<SystemDefinition schema="3.0.0">
+  <package id="serviceapifw" name="Service API Framework" levels="plugin framework server generic specific">
+    <collection id="languageinterworkingfw" name="Language Interworking Framework" level="framework">
+      <component id="lifwservicehandler" filter="s60" name="Service Handler">
+        <unit bldFile="languageinterworkingfw/servicehandler/group"/>
+      </component>
+    </collection>
+    <collection id="rtsecuritymanager" name="Runtime Security Manager" level="server">
+      <component id="rtsecuritymanagerutil" filter="s60" name="Runtime Security Manager Util">
+        <unit bldFile="rtsecuritymanager/rtsecuritymanagerutil/group"/>
+      </component>
+      <component id="rtsecuritymanagerserver" filter="s60" name="Runtime Security Manager Server">
+        <unit bldFile="rtsecuritymanager/rtsecuritymanagerserver/group"/>
+      </component>
+      <component id="rtsecuritymanagerclient" filter="s60" name="Runtime Security Manager Client">
+        <unit bldFile="rtsecuritymanager/rtsecuritymanagerclient/group"/>
+      </component>
+      <component id="rtsecuritymanager_build" filter="s60" name="Runtime Security Manager Build">
+		<!-- consider moving the exports to the appropriate components -->
+        <unit bldFile="rtsecuritymanager/group"/>
+      </component>
+    </collection>
+    <collection id="serviceapifw_info" name="Service API Framework Info" level="specific">
+      <component id="serviceapifw_pub" filter="s60" name="Service API Framework Public Interfaces" class="api">
+        <unit bldFile="serviceapifw_pub/group"/>
+      </component>
+      <component id="serviceapifw_plat" filter="s60" name="Service API Framework Platform Interfaces" class="api">
+        <unit bldFile="serviceapifw_plat/group"/>
+		<!-- these should be #included from the above bld.inf -->
+        <unit bldFile="serviceapifw_plat/liw_criteria_api/tsrc/group"/>
+        <unit bldFile="serviceapifw_plat/rtsecuritymanager_client_api/tsrc/group"/>
+        <!-- <unit bldFile="serviceapifw_plat/rtsecuritymanager_common_api/tsrc/group"/> -->
+        <!-- <unit bldFile="serviceapifw_plat/rtsecuritymanager_utility_api/tsrc/group"/> -->
+      </component>
+    </collection>
+  </package>
+</SystemDefinition>
--- a/symbian3/mw/srvdiscovery/package_definition.xml	Mon Feb 01 16:11:43 2010 +0000
+++ b/symbian3/mw/srvdiscovery/package_definition.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -1,119 +1,101 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE SystemDefinition [
- <!ELEMENT SystemDefinition (systemModel?,SystemBuild?)>
- <!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (block*|collection*)*>
- <!ATTLIST layer
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED>
- <!ELEMENT block (subblock*|collection*)*>
- <!ATTLIST block
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED
-  level NMTOKEN #IMPLIED
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT subblock (collection)*>
- <!ATTLIST subblock
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT collection (component)*>
- <!ATTLIST collection
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  level NMTOKEN #IMPLIED>
- <!ELEMENT component (unit)*>
- <!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>
- <!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>
- <!ELEMENT SystemBuild (option*|target+|targetList+|list+|configuration+)*>
- <!ATTLIST SystemBuild schema CDATA #REQUIRED>
- <!ELEMENT list (ref+)>
- <!ATTLIST list
-  name ID #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT ref EMPTY>
- <!ATTLIST ref item CDATA #REQUIRED>
- <!ELEMENT targetList EMPTY>
- <!ATTLIST targetList
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  target IDREFS #REQUIRED>
- <!ELEMENT target EMPTY>
- <!ATTLIST target
-  name ID #REQUIRED
-  abldTarget CDATA #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT option EMPTY>
- <!ATTLIST option
-  name ID #REQUIRED
-  abldOption CDATA #REQUIRED
-  description CDATA #REQUIRED
-  enable (Y|N) #REQUIRED>
- <!ELEMENT configuration (listRef+|ref+|task+)*>
- <!ATTLIST configuration
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  filter CDATA #REQUIRED>
- <!ELEMENT task (listRef*,(buildLayer|specialInstructions))>
- <!ELEMENT listRef EMPTY>
- <!ATTLIST listRef list CDATA #REQUIRED>
- <!ELEMENT buildLayer EMPTY>
- <!ATTLIST buildLayer
-  command CDATA #REQUIRED
-  targetList IDREFS #IMPLIED
-  unitParallel (Y|N) #REQUIRED
-  targetParallel (Y|N) 'N'>
- <!ELEMENT specialInstructions EMPTY>
- <!ATTLIST specialInstructions
-  name CDATA #REQUIRED
-  cwd CDATA #REQUIRED
-  root CDATA #IMPLIED
-  command CDATA #REQUIRED>
-]>
-<SystemDefinition schema="2.0.1" name="Symbian^3">
-<systemModel>
-<layer name="mw" long-name="Middleware" levels="generic specific">
-<block name="srvdiscovery" level="generic" long-name="Service Discovery and Usage" levels="plugin framework server generic specific">
-<collection name="servicediscoveryandcontrol" long-name="Service Discovery and Control" level="framework">
-<component name="servicediscoveryfw" long-name="Service Discovery Framework" introduced="tb92" purpose="optional">
-<unit bldFile="/sf/mw/srvdiscovery/servicediscoveryandcontrol/pnp/group" mrp="/sf/mw/srvdiscovery/servicediscoveryandcontrol/pnp/group/servicediscoveryframework.mrp"/>
-</component>
-</collection>
-<collection name="srvdiscovery_info" long-name="Service Discovery and Usage Info" level="specific">
-<component name="srvdiscovery_metadata" long-name="Service Discovery and Usage Metadata" introduced="tb91" purpose="development" class="config PC">
-<unit mrp="/sf/mw/srvdiscovery/srvdiscovery_info/srvdiscovery_metadata/srvdiscovery_metadata.mrp"/>
-</component>
-</collection>
-<collection name="s60">
-<component name="upnp">
-<unit bldFile="/sf/mw/srvdiscovery/upnp/group" mrp=""/>
-</component>
-</collection>
-</block>
-</layer>
-</systemModel>
-</SystemDefinition>
\ No newline at end of file
+<!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="mw" long-name="Middleware" levels="generic specific">
+      <block name="srvdiscovery" level="generic" long-name="Service Discovery and Usage" levels="plugin framework server generic specific">
+        <collection name="servicediscoveryandcontrol" long-name="Service Discovery and Control" level="framework">
+          <component name="servicediscoveryfw" long-name="Service Discovery Framework" introduced="^3" purpose="optional">
+            <unit bldFile="/sf/mw/srvdiscovery/servicediscoveryandcontrol/pnp/group" mrp="/sf/mw/srvdiscovery/servicediscoveryandcontrol/pnp/group/servicediscoveryframework.mrp"/>
+          </component>
+        </collection>
+        <collection name="upnp" long-name="UPnP" level="server">
+          <component name="upnpstack_plat" long-name="UPnP Stack Platform Interfaces" introduced="^3" purpose="optional" class="api">
+            <unit bldFile="/sf/mw/srvdiscovery/servicediscoveryandcontrol/upnpstack_plat/group"/>
+          </component>
+          <component name="upnpstack" long-name="UPnP Stack" introduced="^3" purpose="optional">
+            <unit bldFile="/sf/mw/srvdiscovery/servicediscoveryandcontrol/upnpstack/group"/>
+          </component>
+        </collection>
+        <collection name="srvdiscovery_info" long-name="Service Discovery and Usage Info" level="specific">
+          <component name="srvdiscovery_metadata" long-name="Service Discovery and Usage Metadata" introduced="^2" purpose="development" class="config PC">
+            <unit mrp="/sf/mw/srvdiscovery/srvdiscovery_info/srvdiscovery_metadata/srvdiscovery_metadata.mrp"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/symbian3/mw/srvdiscovery/package_definition_3.0.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<SystemDefinition schema="3.0.0">
+  <package id="srvdiscovery" name="Service Discovery and Usage" levels="plugin framework server generic specific">
+    <collection id="servicediscoveryandcontrol" name="Service Discovery and Control" level="framework">
+      <component id="servicediscoveryfw" name="Service Discovery Framework" introduced="^3" purpose="optional">
+        <unit bldFile="servicediscoveryandcontrol/pnp/group" mrp="servicediscoveryandcontrol/pnp/group/servicediscoveryframework.mrp"/>
+      </component>
+    </collection>
+    <collection id="srvdiscovery_info" name="Service Discovery and Usage Info" level="specific">
+      <component id="srvdiscovery_metadata" name="Service Discovery and Usage Metadata" class="config" introduced="^2" purpose="development" target="desktop">
+        <unit mrp="srvdiscovery_info/srvdiscovery_metadata/srvdiscovery_metadata.mrp"/>
+      </component>
+    </collection>
+  </package>
+</SystemDefinition>
--- a/symbian3/mw/svgt/package_definition.xml	Mon Feb 01 16:11:43 2010 +0000
+++ b/symbian3/mw/svgt/package_definition.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -1,109 +1,97 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE SystemDefinition [
- <!ELEMENT SystemDefinition (systemModel?,SystemBuild?)>
- <!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (block*|collection*)*>
- <!ATTLIST layer
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED>
- <!ELEMENT block (subblock*|collection*)*>
- <!ATTLIST block
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED
-  level NMTOKEN #IMPLIED
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT subblock (collection)*>
- <!ATTLIST subblock
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT collection (component)*>
- <!ATTLIST collection
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  level NMTOKEN #IMPLIED>
- <!ELEMENT component (unit)*>
- <!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>
- <!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>
- <!ELEMENT SystemBuild (option*|target+|targetList+|list+|configuration+)*>
- <!ATTLIST SystemBuild schema CDATA #REQUIRED>
- <!ELEMENT list (ref+)>
- <!ATTLIST list
-  name ID #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT ref EMPTY>
- <!ATTLIST ref item CDATA #REQUIRED>
- <!ELEMENT targetList EMPTY>
- <!ATTLIST targetList
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  target IDREFS #REQUIRED>
- <!ELEMENT target EMPTY>
- <!ATTLIST target
-  name ID #REQUIRED
-  abldTarget CDATA #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT option EMPTY>
- <!ATTLIST option
-  name ID #REQUIRED
-  abldOption CDATA #REQUIRED
-  description CDATA #REQUIRED
-  enable (Y|N) #REQUIRED>
- <!ELEMENT configuration (listRef+|ref+|task+)*>
- <!ATTLIST configuration
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  filter CDATA #REQUIRED>
- <!ELEMENT task (listRef*,(buildLayer|specialInstructions))>
- <!ELEMENT listRef EMPTY>
- <!ATTLIST listRef list CDATA #REQUIRED>
- <!ELEMENT buildLayer EMPTY>
- <!ATTLIST buildLayer
-  command CDATA #REQUIRED
-  targetList IDREFS #IMPLIED
-  unitParallel (Y|N) #REQUIRED
-  targetParallel (Y|N) 'N'>
- <!ELEMENT specialInstructions EMPTY>
- <!ATTLIST specialInstructions
-  name CDATA #REQUIRED
-  cwd CDATA #REQUIRED
-  root CDATA #IMPLIED
-  command CDATA #REQUIRED>
-]>
-<SystemDefinition schema="2.0.1" name="Symbian^3">
-<systemModel>
-<layer name="mw">
-<block name="svgt">
-<collection name="s60">
-<component name="svgt">
-<unit bldFile="/sf/mw/svgt/group" mrp=""/>
-</component>
-</collection>
-</block>
-</layer>
-</systemModel>
+<!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="mw" long-name="Middleware" levels="generic specific">
+      <block name="svgt" level="generic" long-name="SVG Tiny" levels="util ui">
+        <collection name="svgt_info" long-name="SVG Tiny Info" level="ui">
+          <component name="svgt_plat" filter="s60" long-name="SVG Tiny Platform Interfaces" introduced="9.2" class="api">
+            <unit bldFile="/sf/mw/svgt/svgt_plat/group"/>
+          </component>
+        </collection>
+        <collection name="svgtopt" long-name="SVG-T Engine" level="util">
+          <component name="svgtopt_build" filter="s60" long-name="SVG Engine" introduced="9.2">
+            <!-- component is at collection level. Needs to be moved down a directory -->
+            <unit bldFile="/sf/mw/svgt/svgtopt/group"/>
+          </component>
+          <component name="svgtplugin" filter="s60" long-name="SVG Plugin" introduced="9.2" plugin="Y">
+            <unit bldFile="/sf/mw/svgt/svgtopt/svgtplugin/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
 </SystemDefinition>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/symbian3/mw/svgt/package_definition_3.0.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<SystemDefinition schema="3.0.0">
+  <package id="svgt" name="SVG Tiny" levels="util ui">
+    <collection id="svgt_info" name="SVG Tiny Info" level="ui">
+      <component id="svgt_plat" filter="s60" name="SVG Tiny Platform Interfaces" class="api" introduced="9.2">
+        <unit bldFile="svgt_plat/group"/>
+      </component>
+    </collection>
+    <collection id="svgtopt" name="SVG-T Engine" level="util">
+      <component id="svgtopt_build" filter="s60" name="SVG Engine" introduced="9.2">
+        <unit bldFile="svgtopt/group"/>
+      </component>
+      <component id="nvgdecoder" filter="s60" name="NVG Decoder" introduced="9.2">
+		<!-- extract relevant parts of above bld.inf or remove this component -->
+      </component>
+      <component id="svgengineji" filter="s60" name="SVG Engine Java Interface" introduced="9.2">
+		<!-- extract relevant parts of above bld.inf or remove this component -->
+      </component>
+      <component id="svgtplugin" filter="s60" name="SVG Plugin" class="plugin" introduced="9.2">
+        <unit bldFile="svgtopt/svgtplugin/group"/>
+      </component>
+    </collection>
+  </package>
+</SystemDefinition>
--- a/symbian3/mw/uiaccelerator/package_definition.xml	Mon Feb 01 16:11:43 2010 +0000
+++ b/symbian3/mw/uiaccelerator/package_definition.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -1,109 +1,97 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE SystemDefinition [
- <!ELEMENT SystemDefinition (systemModel?,SystemBuild?)>
- <!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (block*|collection*)*>
- <!ATTLIST layer
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED>
- <!ELEMENT block (subblock*|collection*)*>
- <!ATTLIST block
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED
-  level NMTOKEN #IMPLIED
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT subblock (collection)*>
- <!ATTLIST subblock
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT collection (component)*>
- <!ATTLIST collection
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  level NMTOKEN #IMPLIED>
- <!ELEMENT component (unit)*>
- <!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>
- <!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>
- <!ELEMENT SystemBuild (option*|target+|targetList+|list+|configuration+)*>
- <!ATTLIST SystemBuild schema CDATA #REQUIRED>
- <!ELEMENT list (ref+)>
- <!ATTLIST list
-  name ID #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT ref EMPTY>
- <!ATTLIST ref item CDATA #REQUIRED>
- <!ELEMENT targetList EMPTY>
- <!ATTLIST targetList
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  target IDREFS #REQUIRED>
- <!ELEMENT target EMPTY>
- <!ATTLIST target
-  name ID #REQUIRED
-  abldTarget CDATA #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT option EMPTY>
- <!ATTLIST option
-  name ID #REQUIRED
-  abldOption CDATA #REQUIRED
-  description CDATA #REQUIRED
-  enable (Y|N) #REQUIRED>
- <!ELEMENT configuration (listRef+|ref+|task+)*>
- <!ATTLIST configuration
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  filter CDATA #REQUIRED>
- <!ELEMENT task (listRef*,(buildLayer|specialInstructions))>
- <!ELEMENT listRef EMPTY>
- <!ATTLIST listRef list CDATA #REQUIRED>
- <!ELEMENT buildLayer EMPTY>
- <!ATTLIST buildLayer
-  command CDATA #REQUIRED
-  targetList IDREFS #IMPLIED
-  unitParallel (Y|N) #REQUIRED
-  targetParallel (Y|N) 'N'>
- <!ELEMENT specialInstructions EMPTY>
- <!ATTLIST specialInstructions
-  name CDATA #REQUIRED
-  cwd CDATA #REQUIRED
-  root CDATA #IMPLIED
-  command CDATA #REQUIRED>
-]>
-<SystemDefinition schema="2.0.1" name="Symbian^3">
-<systemModel>
-<layer name="mw">
-<block name="uiaccelerator">
-<collection name="s60">
-<component name="uiaccelerator">
-<unit bldFile="/sf/mw/uiaccelerator/group" mrp=""/>
-</component>
-</collection>
-</block>
-</layer>
-</systemModel>
+<!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="mw" long-name="Middleware" levels="generic specific">
+      <block name="uiaccelerator" level="generic" long-name="UI Accelerator" levels="plugin framework server ex if">
+        <collection name="uiaccelerator_info" long-name="UI Accelerator Info" level="if">
+          <component name="uiaccelerator_plat" filter="s60" long-name="UI Accelerator Platform Interfaces" class="api">
+            <unit bldFile="/sf/mw/uiaccelerator/uiaccelerator_plat/group"/>
+          </component>
+        </collection>
+        <collection name="uiacceltk" long-name="UI Accelerator Toolkit" level="framework">
+          <component name="hitchcock" filter="s60" long-name="Hitchcock">
+            <unit bldFile="/sf/mw/uiaccelerator/uiacceltk/hitchcock/group"/>
+          </component>
+          <component name="uiacceltk_build" filter="s60" long-name="UI Accelerator Toolkit Build">
+            <!-- move into the other component, or  remove the #include and make this UI Accelerator Toolkit ROM-->
+            <unit bldFile="/sf/mw/uiaccelerator/uiacceltk/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
 </SystemDefinition>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/symbian3/mw/uiaccelerator/package_definition_3.0.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<SystemDefinition schema="3.0.0">
+  <package id="uiaccelerator" name="UI Accelerator" levels="plugin framework server ex if">
+    <collection id="uiacceltk" name="UI Accelerator Toolkit" level="framework">
+      <component id="hitchcock" filter="s60" name="Hitchcock">
+        <unit bldFile="uiacceltk/hitchcock/group"/>
+		<!-- are the following needed? if so, 'include from above -->
+        <!-- <unit bldFile="uiacceltk/hitchcock/coretoolkit/group"/> -->
+        <!-- <unit bldFile="uiacceltk/hitchcock/plugins/alftranseffect/alftranseffectplugin/group"/> -->
+        <!-- <unit bldFile="uiacceltk/hitchcock/tracer/group"/> -->
+        <!-- <unit bldFile="uiacceltk/hitchcock/tracer/traceextclient/group"/> -->
+        <!-- <unit bldFile="uiacceltk/hitchcock/tracer/traceextplugin/group"/> -->
+      </component>
+      <component id="widgeteditors" filter="s60" name="Widget Editors">
+        <unit bldFile="uiacceltk/widgeteditors/group"/>
+      </component>
+      <component id="uiacceltk_build" filter="s60" name="UI Accelerator Toolkit Build">
+		<!-- consider distributing into other components -->
+        <unit bldFile="uiacceltk/group"/>
+      </component>
+    </collection>
+    <collection id="uiaccelexampleapps" name="UI Accelerator Example Apps" level="ex">
+		<!-- are these unbuilt components? -->
+      <component id="alfexanalogdialer" filter="s60" name="Accelerated LAF Example Analog Dialer" purpose="development">
+        <!-- <unit bldFile="uiaccelexampleapps/alfexanalogdialer/group"/> -->
+      </component>
+      <component id="alfexstickers" filter="s60" name="Accelerated LAF Example Stickers" purpose="development">
+        <!-- <unit bldFile="uiaccelexampleapps/alfexstickers/group"/> -->
+      </component>
+    </collection>
+    <collection id="uiaccelerator_info" name="UI Accelerator Info" level="if">
+      <component id="uiaccelerator_inc" filter="s60">
+		<!-- is this needed? -->
+        <!-- <unit bldFile="inc/group"/> -->
+      </component>
+      <component id="uiaccelerator_plat" filter="s60" name="UI Accelerator Platform Interfaces" class="api">
+        <unit bldFile="uiaccelerator_plat/group"/>
+		<!-- Can only have one bld.inf: include the test bld.infs from the above one if needed -->
+        <unit bldFile="uiaccelerator_plat/alf_client_server_api/tsrc/group"/>
+        <unit bldFile="uiaccelerator_plat/alf_core_toolkit_api/tsrc/group"/>
+        <unit bldFile="uiaccelerator_plat/alf_editors_api/tsrc/group"/>
+        <unit bldFile="uiaccelerator_plat/alf_extended_visual_api/tsrc/group"/>
+        <unit bldFile="uiaccelerator_plat/alf_extension_api/tsrc/group"/>
+        <unit bldFile="uiaccelerator_plat/alf_tracing_api/tsrc/group"/>
+        <unit bldFile="uiaccelerator_plat/alf_visual_api/tsrc/group"/>
+      </component>
+    </collection>
+  </package>
+</SystemDefinition>
--- a/symbian3/mw/uiresources/package_definition.xml	Mon Feb 01 16:11:43 2010 +0000
+++ b/symbian3/mw/uiresources/package_definition.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -1,109 +1,173 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE SystemDefinition [
- <!ELEMENT SystemDefinition (systemModel?,SystemBuild?)>
- <!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (block*|collection*)*>
- <!ATTLIST layer
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED>
- <!ELEMENT block (subblock*|collection*)*>
- <!ATTLIST block
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED
-  level NMTOKEN #IMPLIED
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT subblock (collection)*>
- <!ATTLIST subblock
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT collection (component)*>
- <!ATTLIST collection
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  level NMTOKEN #IMPLIED>
- <!ELEMENT component (unit)*>
- <!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>
- <!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>
- <!ELEMENT SystemBuild (option*|target+|targetList+|list+|configuration+)*>
- <!ATTLIST SystemBuild schema CDATA #REQUIRED>
- <!ELEMENT list (ref+)>
- <!ATTLIST list
-  name ID #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT ref EMPTY>
- <!ATTLIST ref item CDATA #REQUIRED>
- <!ELEMENT targetList EMPTY>
- <!ATTLIST targetList
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  target IDREFS #REQUIRED>
- <!ELEMENT target EMPTY>
- <!ATTLIST target
-  name ID #REQUIRED
-  abldTarget CDATA #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT option EMPTY>
- <!ATTLIST option
-  name ID #REQUIRED
-  abldOption CDATA #REQUIRED
-  description CDATA #REQUIRED
-  enable (Y|N) #REQUIRED>
- <!ELEMENT configuration (listRef+|ref+|task+)*>
- <!ATTLIST configuration
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  filter CDATA #REQUIRED>
- <!ELEMENT task (listRef*,(buildLayer|specialInstructions))>
- <!ELEMENT listRef EMPTY>
- <!ATTLIST listRef list CDATA #REQUIRED>
- <!ELEMENT buildLayer EMPTY>
- <!ATTLIST buildLayer
-  command CDATA #REQUIRED
-  targetList IDREFS #IMPLIED
-  unitParallel (Y|N) #REQUIRED
-  targetParallel (Y|N) 'N'>
- <!ELEMENT specialInstructions EMPTY>
- <!ATTLIST specialInstructions
-  name CDATA #REQUIRED
-  cwd CDATA #REQUIRED
-  root CDATA #IMPLIED
-  command CDATA #REQUIRED>
-]>
-<SystemDefinition schema="2.0.1" name="Symbian^3">
-<systemModel>
-<layer name="mw">
-<block name="uiresources">
-<collection name="s60">
-<component name="uiresources">
-<unit bldFile="/sf/mw/uiresources/group" mrp=""/>
-</component>
-</collection>
-</block>
-</layer>
-</systemModel>
+<!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="mw" long-name="Middleware" levels="generic specific">
+      <block name="uiresources" level="generic" long-name="UI Resources" levels="compile plugin framework server generic data">
+        <collection name="uiresources_info" long-name="UI Resources Info" level="data">
+          <component name="uiresources_plat" filter="s60" long-name="UI Resources Platform Interfaces" class="api">
+            <unit bldFile="/sf/mw/uiresources/uiresources_plat/group"/>
+          </component>
+          <component name="uiresources_pub" filter="s60" long-name="UI Resources Public Interfaces" class="api">
+            <unit bldFile="/sf/mw/uiresources/uiresources_pub/group"/>
+          </component>
+          <component name="uiresources_test" filter="s60,api_test" long-name="UI Resources Tests" purpose="development">
+            <unit bldFile="/sf/mw/uiresources/tsrc/group" filter="uiresources_api_all"/>
+          </component>
+          <!-- are these custom filters needed? -->
+          <component name="uiresources_test_pat" filter="s60,api_test" long-name="UI Resources Platform API Tests" purpose="development">
+            <!-- can only have one unit. Need to #include from a common one -->
+            <unit bldFile="/sf/mw/uiresources/uiresources_plat/cdl_api/tsrc/group" filter="cdl_api"/>
+            <unit bldFile="/sf/mw/uiresources/uiresources_plat/extended_fonts_api/tsrc/group" filter="extended_fonts_api"/>
+            <unit bldFile="/sf/mw/uiresources/uiresources_plat/extended_skins_api/tsrc/group" filter="extended_skins_api"/>
+            <unit bldFile="/sf/mw/uiresources/uiresources_plat/graphic_configuration_api/tsrc/group" filter="graphic_configuration_api"/>
+            <unit bldFile="/sf/mw/uiresources/uiresources_plat/layout_data_api/tsrc/group" filter="layout_data_api"/>
+            <unit bldFile="/sf/mw/uiresources/uiresources_plat/layout_system_private_api/tsrc/group" filter="layout_system_private_api"/>
+          </component>
+          <component name="uiresources_test_pat" filter="s60,api_test" long-name="UI Resources Public API Tests" purpose="development">
+            <!-- can only have one unit. Need to #include from a common one -->
+            <unit bldFile="/sf/mw/uiresources/uiresources_plat/skins_image_attributes_api/tsrc/group" filter="skins_image_attributes_api"/>
+            <unit bldFile="/sf/mw/uiresources/uiresources_pub/font_definition_api/tsrc/group" filter="font_definition_api"/>
+            <unit bldFile="/sf/mw/uiresources/uiresources_pub/graphics_api/tsrc/group" filter="graphics_api"/>
+            <unit bldFile="/sf/mw/uiresources/uiresources_pub/pictograph_api/tsrc/group" filter="pictograph_api"/>
+            <unit bldFile="/sf/mw/uiresources/uiresources_pub/skins_api/tsrc/group" filter="skins_api"/>
+          </component>
+        </collection>
+        <collection name="uigraphics" long-name="UI Graphics" level="generic">
+          <component name="bitmaps2" filter="s60" long-name="Bitmaps 2" class="config">
+            <unit bldFile="/sf/mw/uiresources/uigraphics/bitmaps2/group"/>
+          </component>
+          <component name="icons" filter="s60" long-name="Icons" class="config">
+            <unit bldFile="/sf/mw/uiresources/uigraphics/icons/group"/>
+          </component>
+          <component name="variatedbitmaps" filter="s60" long-name="Variated Bitmaps" class="config">
+            <unit bldFile="/sf/mw/uiresources/uigraphics/variatedbitmaps/group"/>
+          </component>
+          <component name="aknicon" filter="s60" long-name="Avkon Icon Framework">
+            <unit bldFile="/sf/mw/uiresources/uigraphics/aknicon/group"/>
+          </component>
+        </collection>
+        <collection name="layouts" long-name="Layouts" level="plugin">
+          <component name="cdl" filter="s60" long-name="Customization Definition Language">
+            <!-- can only have one unit. Need to #include them or split into multiple components -->
+            <unit bldFile="/sf/mw/uiresources/layouts/cdl/cdlengine/group"/>
+            <unit bldFile="/sf/mw/uiresources/layouts/cdl/cdlserver/group"/>
+          </component>
+          <component name="aknlayout2" filter="s60" long-name="Avkon Layout 2">
+            <unit bldFile="/sf/mw/uiresources/layouts/aknlayout2/group"/>
+          </component>
+        </collection>
+        <collection name="skins" long-name="Skins" level="data">
+          <component name="aknskincontent" filter="s60" long-name="Avkon Skin Content" class="config">
+            <unit bldFile="/sf/mw/uiresources/skins/aknskincontent/group"/>
+          </component>
+          <component name="aknskins" filter="s60" long-name="Avkon Skin Compiler">
+            <unit bldFile="/sf/mw/uiresources/skins/aknskins/group"/>
+          </component>
+        </collection>
+        <collection name="pictographs" long-name="Pictographs" level="data">
+          <component name="aknpictograph" filter="s60" long-name="Avkon Pictograph">
+            <unit bldFile="/sf/mw/uiresources/pictographs/aknpictograph/group"/>
+          </component>
+        </collection>
+        <collection name="locales" long-name="Locales" level="framework">
+          <component name="locales_build" filter="s60" long-name="Locales Build">
+            <unit bldFile="/sf/mw/uiresources/locales/loce32"/>
+          </component>
+        </collection>
+        <collection name="uiconfig" long-name="UI Config" level="server">
+          <component name="s60config" filter="s60" long-name="S60 UI Config">
+            <unit bldFile="/sf/mw/uiresources/uiconfig/s60config/group"/>
+          </component>
+        </collection>
+        <collection name="fontsupport" long-name="Font Support" level="generic">
+          <component name="fontprovider" filter="s60" long-name="Font Provider">
+            <unit bldFile="/sf/mw/uiresources/fontsupport/fontprovider/group"/>
+          </component>
+          <component name="fontutils" filter="s60" long-name="Font Utils">
+            <unit bldFile="/sf/mw/uiresources/fontsupport/fontutils/group"/>
+          </component>
+        </collection>
+        <collection name="helpthemes" long-name="Help Themes" level="data">
+          <!-- collection is really a component. Need to move down a directory -->
+          <component name="helpthemes_build" filter="s60" long-name="Help Themes Build" class="config">
+            <unit bldFile="/sf/mw/uiresources/helpthemes/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
 </SystemDefinition>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/symbian3/mw/uiresources/package_definition_3.0.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -0,0 +1,127 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<SystemDefinition schema="3.0.0">
+  <package id="uiresources" name="UI Resources" levels="compile plugin framework server generic data">
+    <collection id="uiresources_info" name="UI Resources Info" level="data">
+      <component id="uiresources_plat" filter="s60" name="UI Resources Platform Interfaces" class="api">
+      	<!-- can only have one unit, need to include these from main one -->
+        <unit bldFile="uiresources_plat/group"/>
+        <unit bldFile="uiresources_plat/cdl_api/tsrc/group"/>
+        <unit bldFile="uiresources_plat/extended_fonts_api/tsrc/group"/>
+        <unit bldFile="uiresources_plat/extended_skins_api/tsrc/group"/>
+        <unit bldFile="uiresources_plat/graphic_configuration_api/tsrc/group"/>
+        <unit bldFile="uiresources_plat/layout_data_api/tsrc/group"/>
+        <unit bldFile="uiresources_plat/layout_system_private_api/tsrc/group"/>
+        <unit bldFile="uiresources_plat/skins_image_attributes_api/tsrc/group"/>
+      </component>
+      <component id="uiresources_pub" filter="s60" name="UI Resources Public Interfaces" class="api">
+      	<!-- can only have one unit, need to include these from main one -->
+        <unit bldFile="uiresources_pub/group"/>
+        <unit bldFile="uiresources_pub/font_definition_api/tsrc/group"/>
+        <unit bldFile="uiresources_pub/graphics_api/tsrc/group"/>
+        <unit bldFile="uiresources_pub/pictograph_api/tsrc/group"/>
+        <unit bldFile="uiresources_pub/scalable_icons_api/tsrc/group"/>
+        <unit bldFile="uiresources_pub/skins_api/tsrc/group"/>
+      </component>
+    </collection>
+    <collection id="uigraphics" name="UI Graphics" level="generic">
+      <component id="bitmaps2" filter="s60" name="Bitmaps 2" class="config">
+        <unit bldFile="uigraphics/bitmaps2/group"/>
+      </component>
+      <component id="icons" filter="s60" class="config" name="Icons">
+        <unit bldFile="uigraphics/icons/group"/>
+      </component>
+      <component id="variatedbitmaps" filter="s60" name="Variated Bitmaps" class="config">
+        <unit bldFile="uigraphics/variatedbitmaps/group"/>
+      </component>
+      <component id="aknicon" filter="s60" name="Avkon Icon Framework">
+        <unit bldFile="uigraphics/aknicon/group"/>
+      </component>
+      <component id="palette" filter="s60" name="Palette Utils">
+      	<!-- should this really be commented out? why? -->
+        <!-- <unit bldFile="uigraphics/palette/group"/> -->
+      </component>
+    </collection>
+    <collection id="layouts" name="Layouts" level="plugin">
+      <component id="cdl" filter="s60" name="Customization Definition Language">
+      	<!-- can only have one unti. Need to #include them or split into multiple components -->
+        <unit bldFile="layouts/cdl/cdlengine/group"/>
+        <unit bldFile="layouts/cdl/cdlserver/group"/>
+        <!-- <unit bldFile="layouts/cdl/cdlutils/cdlexplorer/group"/> -->
+      </component>
+      <component id="aknlayout2" filter="s60" name="Avkon Layout 2">
+        <unit bldFile="layouts/aknlayout2/group"/>
+        <!-- need to do something with all these commented-out units -->
+        <!-- <unit bldFile="layouts/aknlayout2/generated"/> -->
+        <!-- <unit bldFile="layouts/aknlayout2/generated/nhd_akn_app"/> -->
+        <!-- <unit bldFile="layouts/aknlayout2/generated/nhd_uiaccel"/> -->
+        <!-- <unit bldFile="layouts/aknlayout2/generated/qhd_touch_akn_app"/> -->
+        <!-- <unit bldFile="layouts/aknlayout2/generated/qhd_touch_uiaccel"/> -->
+        <!-- <unit bldFile="layouts/aknlayout2/generated/qvga2_akn_app"/> -->
+        <!-- <unit bldFile="layouts/aknlayout2/generated/qvga2_uiaccel"/> -->
+        <!-- <unit bldFile="layouts/aknlayout2/generated/qvga_akn_app"/> -->
+        <!-- <unit bldFile="layouts/aknlayout2/generated/qvga_uiaccel"/> -->
+        <!-- <unit bldFile="layouts/aknlayout2/generated/vga3_akn_app"/> -->
+        <!-- <unit bldFile="layouts/aknlayout2/generated/vga3_uiaccel"/> -->
+        <!-- <unit bldFile="layouts/aknlayout2/generated/vga_akn_app"/> -->
+        <!-- <unit bldFile="layouts/aknlayout2/generated/vga_touch_akn_app"/> -->
+        <!-- <unit bldFile="layouts/aknlayout2/generated/vga_uiaccel"/> -->
+      </component>
+    </collection>
+    <collection id="skins" name="Skins" level="data">
+      <component id="aknskincontent" filter="s60" name="Avkon Skin Content" class="config">
+        <unit bldFile="skins/aknskincontent/group"/>
+        <!-- <unit bldFile="skins/aknskincontent/srcdata/scalableseries60skin/mifindexdll"/> -->
+      </component>
+      <component id="aknskins" filter="s60" name="Avkon Skin Compiler">
+        <unit bldFile="skins/aknskins/group"/>
+      </component>
+    </collection>
+    <collection id="pictographs" name="Pictographs" level="data">
+      <component id="aknpictograph" filter="s60" name="Avkon Pictograph">
+        <unit bldFile="pictographs/aknpictograph/group"/>
+        <!-- <unit bldFile="pictographs/aknpictograph/tools/aknpictobitmapbuilder/group"/> -->
+      </component>
+    </collection>
+    <collection id="locales" name="Locales" level="framework">
+      <component id="locales_build" filter="s60" name="Locales Build">
+        <unit bldFile="locales/loce32"/>
+      </component>
+    </collection>
+    <collection id="uiconfig" name="UI Config" level="server">
+      <component id="s60config" filter="s60" name="S60 UI Config">
+        <unit bldFile="uiconfig/s60config/group"/>
+      </component>
+    </collection>
+    <collection id="fontsupport" name="Font Support" level="generic">
+      <component id="fontprovider" filter="s60" name="Font Provider">
+        <unit bldFile="fontsupport/fontprovider/group"/>
+      </component>
+      <component id="fontutils" filter="s60" name="Font Utils">
+        <unit bldFile="fontsupport/fontutils/group"/>
+      </component>
+    </collection>
+    <collection id="helpthemes" name="Help Themes" level="data">
+      <component id="helpthemes_build" filter="s60" name="Help Themes Build" class="config">
+        <unit bldFile="helpthemes/group"/>
+      </component>
+    </collection>
+    <collection id="aknlayoutcompiler" name="Avkon Layout Compiler" level="compile">
+      <component id="aknlayoutcompiler_build" filter="s60" name="Avkon Layout Compiler Build">
+      	<!-- to be moved here -->
+        <unit bldFile="../uitools/aknlayoutcompiler/group"/>
+      </component>
+    </collection>
+    <collection id="cdlcompiler" name="CDL Compiler" level="compile">
+      <component id="cdlcompiler_build" filter="s60" name="CDL Compiler Build">
+      	<!-- to be moved here -->
+        <unit bldFile="../uitools/cdlcompiler/group"/>
+      </component>
+    </collection>
+    <collection id="cdlcompilertoolkit" name="CDL Compiler Toolkit" level="compile">
+      <component id="cdlcompilertoolkit_build" filter="s60" name="CDL Compiler Toolkit Build">
+      	<!-- to be moved here -->
+        <unit bldFile="../uitools/cdlcompilertoolkit/group"/>
+      </component>
+    </collection>
+  </package>
+</SystemDefinition>
--- a/symbian3/mw/uitools/package_definition.xml	Mon Feb 01 16:11:43 2010 +0000
+++ b/symbian3/mw/uitools/package_definition.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -1,109 +1,134 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE SystemDefinition [
- <!ELEMENT SystemDefinition (systemModel?,SystemBuild?)>
- <!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (block*|collection*)*>
- <!ATTLIST layer
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED>
- <!ELEMENT block (subblock*|collection*)*>
- <!ATTLIST block
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED
-  level NMTOKEN #IMPLIED
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT subblock (collection)*>
- <!ATTLIST subblock
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT collection (component)*>
- <!ATTLIST collection
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  level NMTOKEN #IMPLIED>
- <!ELEMENT component (unit)*>
- <!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>
- <!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>
- <!ELEMENT SystemBuild (option*|target+|targetList+|list+|configuration+)*>
- <!ATTLIST SystemBuild schema CDATA #REQUIRED>
- <!ELEMENT list (ref+)>
- <!ATTLIST list
-  name ID #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT ref EMPTY>
- <!ATTLIST ref item CDATA #REQUIRED>
- <!ELEMENT targetList EMPTY>
- <!ATTLIST targetList
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  target IDREFS #REQUIRED>
- <!ELEMENT target EMPTY>
- <!ATTLIST target
-  name ID #REQUIRED
-  abldTarget CDATA #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT option EMPTY>
- <!ATTLIST option
-  name ID #REQUIRED
-  abldOption CDATA #REQUIRED
-  description CDATA #REQUIRED
-  enable (Y|N) #REQUIRED>
- <!ELEMENT configuration (listRef+|ref+|task+)*>
- <!ATTLIST configuration
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  filter CDATA #REQUIRED>
- <!ELEMENT task (listRef*,(buildLayer|specialInstructions))>
- <!ELEMENT listRef EMPTY>
- <!ATTLIST listRef list CDATA #REQUIRED>
- <!ELEMENT buildLayer EMPTY>
- <!ATTLIST buildLayer
-  command CDATA #REQUIRED
-  targetList IDREFS #IMPLIED
-  unitParallel (Y|N) #REQUIRED
-  targetParallel (Y|N) 'N'>
- <!ELEMENT specialInstructions EMPTY>
- <!ATTLIST specialInstructions
-  name CDATA #REQUIRED
-  cwd CDATA #REQUIRED
-  root CDATA #IMPLIED
-  command CDATA #REQUIRED>
-]>
-<SystemDefinition schema="2.0.1" name="Symbian^3">
-<systemModel>
-<layer name="mw">
-<block name="uitools">
-<collection name="s60">
-<component name="uitools">
-<unit bldFile="/sf/mw/uitools/group" mrp=""/>
-</component>
-</collection>
-</block>
-</layer>
-</systemModel>
+<!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="mw" long-name="Middleware" levels="generic specific">
+      <block name="uitools" level="specific" long-name="UI Tools" levels="compile encode tool if">
+        <collection name="cdlcompilertoolkit" long-name="CDL Compiler Toolkit" level="compile">
+          <!-- collection is actually a component. Needs to be moved down a directory -->
+          <component name="cdlcompilertoolkit_build" filter="s60" long-name="CDL Compiler Toolkit Build">
+            <unit bldFile="/sf/mw/uitools/cdlcompilertoolkit/group"/>
+          </component>
+        </collection>
+        <collection name="cdlcompiler" long-name="CDL Compiler" level="compile">
+          <!-- collection is actually a component. Needs to be moved down a directory -->
+          <component name="cdlcompiler_build" filter="s60" long-name="CDL Compiler Build">
+            <unit bldFile="/sf/mw/uitools/cdlcompiler/group"/>
+          </component>
+        </collection>
+        <collection name="gfxtools" long-name="Graphics Tools" level="tool">
+          <component name="gditools" filter="s60" long-name="GDI Tools" class="PC">
+            <unit bldFile="/sf/mw/uitools/gfxtools/gditools/group"/>
+          </component>
+          <component name="color" filter="s60" long-name="Bitmap Colour Palette" class="PC">
+            <unit bldFile="/sf/mw/uitools/gfxtools/color/group"/>
+          </component>
+        </collection>
+        <collection name="aknlayoutcompiler" long-name="Avkon Layout Compiler" level="compile">
+          <!-- collection is actually a component. Needs to be moved down a directory -->
+          <component name="aknlayoutcompiler_build" filter="s60" long-name="Avkon Layout Compiler Build">
+            <unit bldFile="/sf/mw/uitools/aknlayoutcompiler/group"/>
+          </component>
+        </collection>
+        <collection name="skincompiler" long-name="Skin Compiler" level="compile">
+          <component name="aknskindesccompiler" filter="s60" long-name="Avkon Skin Descriptor Compiler">
+            <unit bldFile="/sf/mw/uitools/skincompiler/AknSkinDescCompiler/group"/>
+          </component>
+        </collection>
+        <collection name="reszip" long-name="Resource Zip" level="encode">
+          <!-- collection is actually a component. Needs to be moved down a directory -->
+          <component name="reszip_build" filter="s60" long-name="Resource Zip Build">
+            <unit bldFile="/sf/mw/uitools/reszip/group"/>
+          </component>
+        </collection>
+        <collection name="toollibraries" long-name="Tool Libraries" level="tool"/>
+        <collection name="svgtencoder" long-name="SVGT Encoder" level="encode">
+          <component name="svgtenc" filter="s60" long-name="Standalone SVGT Encoder" class="PC">
+            <unit bldFile="/sf/mw/uitools/svgtencoder/svgtenc/standalone/group"/>
+          </component>
+        </collection>
+        <collection name="uitools_info" long-name="UI Tools Info" level="if">
+          <component name="uitools_plat" filter="s60" long-name="UI Tools Platform Interfaces" class="api">
+            <unit bldFile="/sf/mw/uitools/uitools_plat/group"/>
+          </component>
+          <component name="uitools_pub" filter="s60" long-name="UI Tools Public Interfaces" class="api">
+            <unit bldFile="/sf/mw/uitools/uitools_pub/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
 </SystemDefinition>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/symbian3/mw/uitools/package_definition_3.0.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<SystemDefinition schema="3.0.0">
+  <package id="uitools" name="UI Tools" levels="compile encode tool if">
+    <collection id="gfxtools" name="Graphics Tools" level="tool">
+      <component id="gditools" filter="s60" name="GDI Tools" target="desktop">
+        <unit bldFile="gfxtools/gditools/group"/>
+      </component>
+      <component id="color" filter="s60" name="Bitmap Colour Palette" target="desktop">
+        <unit bldFile="gfxtools/color/group"/>
+      </component>
+    </collection>
+    <collection id="reszip" name="Resource Zip" level="encode">
+      <component id="reszip_build" filter="s60" name="Resource Zip Build">
+        <unit bldFile="reszip/group"/>
+      </component>
+    </collection>
+    <collection id="toollibraries" name="Tool Libraries" level="tool"/>
+    <collection id="svgtencoder" name="SVGT Encoder" level="encode">
+      <component id="svgtenc" filter="s60" name="SVGT Encoder" target="desktop">
+        <unit bldFile="svgtencoder/svgtenc/standalone/group"/>
+      </component>
+    </collection>
+    <collection id="uitools_info" name="UI Tools Info" level="if">
+      <component id="uitools_plat" filter="s60" name="UI Tools Platform Interfaces" class="api">
+        <unit bldFile="uitools_plat/group"/>
+      </component>
+      <component id="uitools_pub" filter="s60" name="UI Tools Public Interfaces" class="api">
+        <unit bldFile="uitools_pub/group"/>
+      </component>
+    </collection>
+  </package>
+</SystemDefinition>
--- a/symbian3/mw/usbservices/package_definition.xml	Mon Feb 01 16:11:43 2010 +0000
+++ b/symbian3/mw/usbservices/package_definition.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -1,109 +1,152 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE SystemDefinition [
- <!ELEMENT SystemDefinition (systemModel?,SystemBuild?)>
- <!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (block*|collection*)*>
- <!ATTLIST layer
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED>
- <!ELEMENT block (subblock*|collection*)*>
- <!ATTLIST block
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED
-  level NMTOKEN #IMPLIED
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT subblock (collection)*>
- <!ATTLIST subblock
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT collection (component)*>
- <!ATTLIST collection
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  level NMTOKEN #IMPLIED>
- <!ELEMENT component (unit)*>
- <!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>
- <!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>
- <!ELEMENT SystemBuild (option*|target+|targetList+|list+|configuration+)*>
- <!ATTLIST SystemBuild schema CDATA #REQUIRED>
- <!ELEMENT list (ref+)>
- <!ATTLIST list
-  name ID #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT ref EMPTY>
- <!ATTLIST ref item CDATA #REQUIRED>
- <!ELEMENT targetList EMPTY>
- <!ATTLIST targetList
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  target IDREFS #REQUIRED>
- <!ELEMENT target EMPTY>
- <!ATTLIST target
-  name ID #REQUIRED
-  abldTarget CDATA #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT option EMPTY>
- <!ATTLIST option
-  name ID #REQUIRED
-  abldOption CDATA #REQUIRED
-  description CDATA #REQUIRED
-  enable (Y|N) #REQUIRED>
- <!ELEMENT configuration (listRef+|ref+|task+)*>
- <!ATTLIST configuration
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  filter CDATA #REQUIRED>
- <!ELEMENT task (listRef*,(buildLayer|specialInstructions))>
- <!ELEMENT listRef EMPTY>
- <!ATTLIST listRef list CDATA #REQUIRED>
- <!ELEMENT buildLayer EMPTY>
- <!ATTLIST buildLayer
-  command CDATA #REQUIRED
-  targetList IDREFS #IMPLIED
-  unitParallel (Y|N) #REQUIRED
-  targetParallel (Y|N) 'N'>
- <!ELEMENT specialInstructions EMPTY>
- <!ATTLIST specialInstructions
-  name CDATA #REQUIRED
-  cwd CDATA #REQUIRED
-  root CDATA #IMPLIED
-  command CDATA #REQUIRED>
-]>
-<SystemDefinition schema="2.0.1" name="Symbian^3">
-<systemModel>
-<layer name="mw">
-<block name="usbservices">
-<collection name="s60">
-<component name="usbservices">
-<unit bldFile="/sf/mw/usbservices/group" mrp=""/>
-</component>
-</collection>
-</block>
-</layer>
-</systemModel>
+<!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="mw" long-name="Middleware" levels="generic specific">
+      <block name="usbservices" level="generic" long-name="USB Services" levels="framework server generic specific plugin">
+        <collection name="usbservices_info" long-name="USB Services Info" level="plugin">
+          <component name="usbservices_plat" filter="s60" long-name="USB Services Platform Interfaces" class="api">
+            <unit bldFile="/sf/mw/usbservices/usbservices_plat/group"/>
+          </component>
+          <component name="usbservices_test" filter="s60,api_test" long-name="USB Services Tests">
+            <unit bldFile="/sf/mw/usbservices/tsrc/group"/>
+          </component>
+        </collection>
+        <collection name="usbengines" long-name="USB Engines" level="generic">
+          <component name="usbotgwatcher" filter="s60" long-name="USB OTG Watcher">
+            <unit bldFile="/sf/mw/usbservices/usbengines/usbotgwatcher/group"/>
+          </component>
+          <component name="usbwatcher" filter="s60" long-name="USB Watcher">
+            <unit bldFile="/sf/mw/usbservices/usbengines/usbwatcher/group"/>
+          </component>
+          <component name="usblocodplugin" filter="s60" long-name="USB Local Connectivity Domain Plugin" plugin="Y">
+            <unit bldFile="/sf/mw/usbservices/usbengines/usblocodplugin/group"/>
+          </component>
+          <component name="usbdevcon" filter="s60" long-name="USB Device Control">
+            <unit bldFile="/sf/mw/usbservices/usbengines/usbdevcon/group"/>
+          </component>
+          <component name="usbremotepersonality" filter="s60" long-name="USB Remote Personality">
+            <unit bldFile="/sf/mw/usbservices/usbengines/usbremotepersonality/group"/>
+          </component>
+        </collection>
+        <collection name="usbclasses" long-name="USB Classes" level="framework">
+          <component name="usbobexclasscontroller" filter="s60" long-name="USB OBEX Class Controller" plugin="Y">
+            <unit bldFile="/sf/mw/usbservices/usbclasses/usbobexclasscontroller/group"/>
+          </component>
+          <component name="usbbasicpersonality" filter="s60" long-name="USB Basic Personality" plugin="Y">
+            <unit bldFile="/sf/mw/usbservices/usbclasses/usbbasicpersonality/group"/>
+          </component>
+          <component name="usbmscpersonality" filter="s60" long-name="USB MSC Personality" plugin="Y">
+            <unit bldFile="/sf/mw/usbservices/usbclasses/usbmscpersonality/group"/>
+          </component>
+          <!--	commented out in bld.inf. Should this be deleted?     
+  <component id="ptpstack" filter="s60" name="Picture Transfer Protocol Stack">
+        <unit bldFile="usbclasses/ptpstack/group"/>
+      </component>
+      <component id="sicdusbplugin" filter="s60" name="SICD USB Plugin" class="plugin">
+        <unit bldFile="usbclasses/sicdusbplugin/group"/>
+      </component>
+      <component id="ptpserver" filter="s60" name="Picture Transfer Protocol Server">
+        <unit bldFile="usbclasses/ptpserver/group"/>
+      </component>-->
+          <component name="pictbridgeengine" filter="s60" long-name="PictBridge Engine">
+            <unit bldFile="/sf/mw/usbservices/usbclasses/pictbridgeengine/group"/>
+          </component>
+          <component name="usbphoneasmodem" filter="s60" long-name="USB Phone as Modem" introduced="^3">
+            <unit bldFile="/sf/mw/usbservices/usbclasses/usbphoneasmodem/group"/>
+          </component>
+        </collection>
+        <collection name="usbuis" long-name="USB UIs" level="specific">
+          <component name="usbui" filter="s60" long-name="USB UI">
+            <unit bldFile="/sf/mw/usbservices/usbuis/usbui/group"/>
+          </component>
+          <component name="usbuinotif" filter="s60" long-name="USB UI Notifiers">
+            <unit bldFile="/sf/mw/usbservices/usbuis/usbuinotif/group"/>
+          </component>
+          <component name="imageprintuiprovider" filter="s60" long-name="ImagePrint UI Provider" plugin="Y">
+            <unit bldFile="/sf/mw/usbservices/usbuis/imageprintuiprovider/group"/>
+          </component>
+          <component name="usbimageprintui" filter="s60" long-name="ImagePrint UI">
+            <unit bldFile="/sf/mw/usbservices/usbuis/imageprintui/group"/>
+          </component>
+          <component name="rndisui" filter="s60" long-name="Remote NDIS UI" introduced="^3">
+            <unit bldFile="/sf/mw/usbservices/usbuis/rndisui/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
 </SystemDefinition>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/symbian3/mw/usbservices/package_definition_3.0.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<SystemDefinition schema="3.0.0">
+  <package id="usbservices" name="USB Services" levels="framework server generic specific plugin">
+    <collection id="usbclasses" name="USB Classes" level="framework">
+      <component id="usbobexclasscontroller" filter="s60" name="USB OBEX Class Controller" class="plugin">
+        <unit bldFile="usbclasses/usbobexclasscontroller/group"/>
+        <!-- <unit bldFile="usbclasses/usbobexclasscontroller/tsrc/group"/> -->
+      </component>
+      <component id="usbbasicpersonality" filter="s60" name="USB Basic Personality"  class="plugin">
+        <unit bldFile="usbclasses/usbbasicpersonality/group"/>
+      </component>
+      <component id="usbmscpersonality" filter="s60" name="USB MSC Personality" class="plugin">
+        <unit bldFile="usbclasses/usbmscpersonality/group"/>
+      </component>
+      <component id="ptpstack" filter="s60" name="Picture Transfer Protocol Stack">
+        <unit bldFile="usbclasses/ptpstack/group"/>
+      </component>
+      <component id="sicdusbplugin" filter="s60" name="SICD USB Plugin" class="plugin">
+        <unit bldFile="usbclasses/sicdusbplugin/group"/>
+      </component>
+      <component id="ptpserver" filter="s60" name="Picture Transfer Protocol Server">
+        <unit bldFile="usbclasses/ptpserver/group"/>
+        <!-- <unit bldFile="usbclasses/ptpserver/ptpclasscontroller/group"/> -->
+      </component>
+      <component id="pictbridgeengine" filter="s60" name="PictBridge Engine">
+        <unit bldFile="usbclasses/pictbridgeengine/group"/>
+      </component>
+    </collection>
+    <collection id="usbengines" name="USB Engines" level="generic">
+      <component id="usbwatcher" filter="s60" name="USB Watcher">
+        <unit bldFile="usbengines/usbwatcher/group"/>
+      </component>
+      <component id="usblocodplugin" filter="s60" name="USB Local Connectivity Domain Plugin" class="plugin">
+        <unit bldFile="usbengines/usblocodplugin/group"/>
+        <!-- <unit bldFile="usbengines/usblocodplugin/tsrc/group"/> -->
+      </component>
+      <component id="usbdevcon" filter="s60" name="USB Device Control">
+        <unit bldFile="usbengines/usbdevcon/group"/>
+      </component>
+      <component id="usbremotepersonality" filter="s60" name="USB Remote Personality">
+        <unit bldFile="usbengines/usbremotepersonality/group"/>
+      </component>
+    </collection>
+    <collection id="usbuis" name="USB UIs" level="specific">
+      <component id="usbui" filter="s60" name="USB UI">
+        <unit bldFile="usbuis/usbui/group"/>
+        <!-- <unit bldFile="usbuis/usbui/tsrc/usbuiapitest/group"/> -->
+      </component>
+      <component id="usbuinotif" filter="s60" name="USB UI Notifiers">
+        <unit bldFile="usbuis/usbuinotif/group"/>
+        <!-- <unit bldFile="usbuis/usbuinotif/tsrc/usbuinotifapitest/group"/> -->
+      </component>
+      <component id="imageprintuiprovider" filter="s60" name="ImagePrint UI Provider" class="plugin">
+        <unit bldFile="usbuis/imageprintuiprovider/group"/>
+      </component>
+      <component id="usbimageprintui" filter="s60" name="ImagePrint UI">
+        <unit bldFile="usbuis/imageprintui/group"/>
+      </component>
+    </collection>
+  </package>
+</SystemDefinition>
--- a/symbian3/mw/videoutils/package_definition.xml	Mon Feb 01 16:11:43 2010 +0000
+++ b/symbian3/mw/videoutils/package_definition.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -1,109 +1,107 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE SystemDefinition [
- <!ELEMENT SystemDefinition (systemModel?,SystemBuild?)>
- <!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (block*|collection*)*>
- <!ATTLIST layer
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED>
- <!ELEMENT block (subblock*|collection*)*>
- <!ATTLIST block
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED
-  level NMTOKEN #IMPLIED
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT subblock (collection)*>
- <!ATTLIST subblock
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT collection (component)*>
- <!ATTLIST collection
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  level NMTOKEN #IMPLIED>
- <!ELEMENT component (unit)*>
- <!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>
- <!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>
- <!ELEMENT SystemBuild (option*|target+|targetList+|list+|configuration+)*>
- <!ATTLIST SystemBuild schema CDATA #REQUIRED>
- <!ELEMENT list (ref+)>
- <!ATTLIST list
-  name ID #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT ref EMPTY>
- <!ATTLIST ref item CDATA #REQUIRED>
- <!ELEMENT targetList EMPTY>
- <!ATTLIST targetList
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  target IDREFS #REQUIRED>
- <!ELEMENT target EMPTY>
- <!ATTLIST target
-  name ID #REQUIRED
-  abldTarget CDATA #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT option EMPTY>
- <!ATTLIST option
-  name ID #REQUIRED
-  abldOption CDATA #REQUIRED
-  description CDATA #REQUIRED
-  enable (Y|N) #REQUIRED>
- <!ELEMENT configuration (listRef+|ref+|task+)*>
- <!ATTLIST configuration
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  filter CDATA #REQUIRED>
- <!ELEMENT task (listRef*,(buildLayer|specialInstructions))>
- <!ELEMENT listRef EMPTY>
- <!ATTLIST listRef list CDATA #REQUIRED>
- <!ELEMENT buildLayer EMPTY>
- <!ATTLIST buildLayer
-  command CDATA #REQUIRED
-  targetList IDREFS #IMPLIED
-  unitParallel (Y|N) #REQUIRED
-  targetParallel (Y|N) 'N'>
- <!ELEMENT specialInstructions EMPTY>
- <!ATTLIST specialInstructions
-  name CDATA #REQUIRED
-  cwd CDATA #REQUIRED
-  root CDATA #IMPLIED
-  command CDATA #REQUIRED>
-]>
-<SystemDefinition schema="2.0.1" name="Symbian^3">
-<systemModel>
-<layer name="mw">
-<block name="videoutils">
-<collection name="s60">
-<component name="videoutils">
-<unit bldFile="/sf/mw/videoutils/group" mrp=""/>
-</component>
-</collection>
-</block>
-</layer>
-</systemModel>
+<!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="mw" long-name="Middleware" levels="generic specific">
+      <block name="videoutils" level="specific" long-name="Video Utils" levels="eng util if">
+        <collection name="videoscheduler" long-name="Video Scheduler" level="util">
+          <component name="schedulerclient" filter="s60" long-name="Video Scheduler Client">
+            <unit bldFile="/sf/mw/videoutils/videoscheduler/schedulerclient/group"/>
+          </component>
+          <component name="schedulerserver" filter="s60" long-name="Video Scheduler Server">
+            <unit bldFile="/sf/mw/videoutils/videoscheduler/schedulerserver/group"/>
+          </component>
+        </collection>
+        <collection name="videoconnutility" long-name="Video Connection Utility" level="util">
+          <component name="connutilpsworker" filter="s60" long-name="Connection Utility Publish and Subscribe Worker">
+            <unit bldFile="/sf/mw/videoutils/videoconnutility/connutilpsworker/group"/>
+          </component>
+          <component name="video_connutility" filter="s60" long-name="Video Connection Utility">
+            <unit bldFile="/sf/mw/videoutils/videoconnutility/connutility/group"/>
+          </component>
+        </collection>
+        <collection name="videoutils_info" long-name="Video Utils Info" level="if">
+          <component name="videoutils_plat" filter="s60" long-name="Video Utils Platform Interfaces" class="api">
+            <unit bldFile="/sf/mw/videoutils/videoutils_plat/group"/>
+          </component>
+          <component name="videoutils_test" filter="s60,api_test" long-name="Video Utils Tests">
+            <unit bldFile="/sf/mw/videoutils/tsrc/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
 </SystemDefinition>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/symbian3/mw/videoutils/package_definition_3.0.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<SystemDefinition schema="3.0.0">
+  <package id="videoutils" name="Video Utils" levels="eng util if">
+    <collection id="dvrengine" name="DVR Engine" level="eng">
+      <component id="commonrecordingengine" filter="s60" name="Common Recording Engine">
+     		<!--  can only have one unit, #include the others from the main nit -->
+        <unit bldFile="dvrengine/commonrecordingengine/group"/>
+        <unit bldFile="dvrengine/commonrecordingengine/dvrrtpcliphandler/group"/>
+        <unit bldFile="dvrengine/commonrecordingengine/dvrrtpcliprecognizer/group"/>
+        <unit bldFile="dvrengine/commonrecordingengine/dvrrtputils/group"/>
+      </component>
+      <component id="commonrecordingengineclient" filter="s60" name="Common Recording Engine Client">
+        <unit bldFile="dvrengine/commonrecordingengineclient/group"/>
+      </component>
+      <component id="dvrengine_build" filter="s60" name="DVR Engine Build">
+      	<!-- should split this into the bld.infs above -->
+        <unit bldFile="dvrengine/group"/>
+      </component>
+    </collection>
+    <collection id="videoconnutility" name="Video Connection Utility" level="util">
+      <component id="connutilpsworker" filter="s60" name="Connection Utility Publish and Subscribe Worker">
+        <unit bldFile="videoconnutility/connutilpsworker/group"/>
+      </component>
+      <component id="videoconnutility_build" filter="s60" name="Video Connection Utility Build">
+        <unit bldFile="videoconnutility/group"/>
+      </component>
+    </collection>
+    <collection id="videoscheduler" name="Video Scheduler" level="util">
+      <component id="schedulerclient" filter="s60" name="Video Scheduler Client">
+        <unit bldFile="videoscheduler/schedulerclient/group"/>
+      </component>
+      <component id="schedulerserver" filter="s60" name="Video Scheduler Server">
+        <unit bldFile="videoscheduler/schedulerserver/group"/>
+      </component>
+      <component id="videoscheduler_build" filter="s60" name="Video Scheduler Build">
+      	<!-- is this needed at all? Can the system include just be put in the above bld.infs? -->
+        <unit bldFile="videoscheduler/group"/>
+      </component>
+    </collection>
+    <collection id="videoutils_info" name="Video Utils Info" level="if">
+      <component id="videoutils_plat" filter="s60" name="Video Utils Platform Interfaces" class="api">
+        <unit bldFile="videoutils_plat/group"/>
+        	<!-- do these test units  need to be #included in the above bld.inf? -->
+        <!-- <unit bldFile="videoutils_plat/videoconnutility_api/tsrc/group"/> -->
+        <!-- <unit bldFile="videoutils_plat/videoconnutility_api/tsrc/vcxconnutiltestexe/group"/> -->
+        <!-- <unit bldFile="videoutils_plat/videoconnutility_api/tsrc/vcxtestcommon/group"/> -->
+        <!-- <unit bldFile="videoutils_plat/videoconnutility_api/tsrc/vcxtestutilmodule/group"/> -->
+        <!-- <unit bldFile="videoutils_plat/videoscheduler_api/tsrc/group"/> -->
+      </component>
+      <component id="videoutils_build" filter="s60" name="Video Utils Build">
+      	<!--  can this be split up into the above components?? -->
+        <unit bldFile="group"/>
+      </component>
+    </collection>
+  </package>
+</SystemDefinition>
--- a/symbian3/mw/vpnclient/package_definition.xml	Mon Feb 01 16:11:43 2010 +0000
+++ b/symbian3/mw/vpnclient/package_definition.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -1,109 +1,207 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE SystemDefinition [
- <!ELEMENT SystemDefinition (systemModel?,SystemBuild?)>
- <!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (block*|collection*)*>
- <!ATTLIST layer
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED>
- <!ELEMENT block (subblock*|collection*)*>
- <!ATTLIST block
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED
-  level NMTOKEN #IMPLIED
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT subblock (collection)*>
- <!ATTLIST subblock
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT collection (component)*>
- <!ATTLIST collection
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  level NMTOKEN #IMPLIED>
- <!ELEMENT component (unit)*>
- <!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>
- <!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>
- <!ELEMENT SystemBuild (option*|target+|targetList+|list+|configuration+)*>
- <!ATTLIST SystemBuild schema CDATA #REQUIRED>
- <!ELEMENT list (ref+)>
- <!ATTLIST list
-  name ID #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT ref EMPTY>
- <!ATTLIST ref item CDATA #REQUIRED>
- <!ELEMENT targetList EMPTY>
- <!ATTLIST targetList
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  target IDREFS #REQUIRED>
- <!ELEMENT target EMPTY>
- <!ATTLIST target
-  name ID #REQUIRED
-  abldTarget CDATA #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT option EMPTY>
- <!ATTLIST option
-  name ID #REQUIRED
-  abldOption CDATA #REQUIRED
-  description CDATA #REQUIRED
-  enable (Y|N) #REQUIRED>
- <!ELEMENT configuration (listRef+|ref+|task+)*>
- <!ATTLIST configuration
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  filter CDATA #REQUIRED>
- <!ELEMENT task (listRef*,(buildLayer|specialInstructions))>
- <!ELEMENT listRef EMPTY>
- <!ATTLIST listRef list CDATA #REQUIRED>
- <!ELEMENT buildLayer EMPTY>
- <!ATTLIST buildLayer
-  command CDATA #REQUIRED
-  targetList IDREFS #IMPLIED
-  unitParallel (Y|N) #REQUIRED
-  targetParallel (Y|N) 'N'>
- <!ELEMENT specialInstructions EMPTY>
- <!ATTLIST specialInstructions
-  name CDATA #REQUIRED
-  cwd CDATA #REQUIRED
-  root CDATA #IMPLIED
-  command CDATA #REQUIRED>
-]>
-<SystemDefinition schema="2.0.1" name="Symbian^3">
-<systemModel>
-<layer name="mw">
-<block name="vpnclient">
-<collection name="s60">
-<component name="vpnclient">
-<unit bldFile="/sf/mw/vpnclient/group" mrp=""/>
-</component>
-</collection>
-</block>
-</layer>
-</systemModel>
+<!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="mw" long-name="Middleware" levels="generic specific">
+      <block name="vpnclient" level="specific" long-name="VPN Client" levels="engine ui api">
+        <!-- is the !oem_build filter needed? -->
+        <collection name="vpnapiimpl" long-name="VPN API Implementation" level="api">
+          <component name="vpnapi" filter="s60" long-name="VPN API">
+            <unit bldFile="/sf/mw/vpnclient/vpnapiimpl/group" filter="!oem_build"/>
+          </component>
+        </collection>
+        <collection name="vpnengine" long-name="VPN Engine" level="engine">
+          <!-- too many components in this collection.
+    		Probably best to group the binaries together into larger components
+    		or maybe split the collection into more reasonable groups  -->
+          <component name="eventmediatorapi" filter="s60" long-name="Event Mediator API">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/eventmediatorapi/group" filter="!oem_build"/>
+          </component>
+          <component name="eventviewer" filter="s60" long-name="Event Viewer">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/eventviewer/group" filter="!oem_build"/>
+          </component>
+          <component name="vpnins" filter="s60" long-name="VPN Installer">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/vpnins/group" filter="!oem_build"/>
+          </component>
+          <component name="ikepolparser" filter="s60" long-name="IKE Policy Parser">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/ikepolparser/group" filter="!oem_build"/>
+          </component>
+          <component name="utlbase64" filter="s60" long-name="Base64 Utilities">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/utlbase64/group" filter="!oem_build"/>
+          </component>
+          <component name="utlcrypto" filter="s60" long-name="Crypto Utilities">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/utlcrypto/group" filter="!oem_build"/>
+          </component>
+          <component name="utlxml" filter="s60" long-name="XML Utilities">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/utlxml/group" filter="!oem_build"/>
+          </component>
+          <component name="utlpkcs10" filter="s60" long-name="PKCS#10 Utilities">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/utlpkcs10/group" filter="!oem_build"/>
+          </component>
+          <component name="pkiserviceapi" filter="s60" long-name="PKI Service API">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/pkiserviceapi/group" filter="!oem_build"/>
+          </component>
+          <component name="ikecert" filter="s60" long-name="IKE Certificate Management">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/ikecert/group" filter="!oem_build"/>
+          </component>
+          <component name="kmdapi" filter="s60" long-name="Key Management Daemon API">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/kmdapi/group" filter="!oem_build"/>
+          </component>
+          <component name="kmdserver" filter="s60" long-name="Key Management Daemon Server">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/kmdserver/group" filter="!oem_build"/>
+          </component>
+          <component name="ikeutils" filter="s60" long-name="Internet Key Exchange Utils">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/ikeutils/group" filter="!oem_build"/>
+          </component>
+          <component name="ikev1lib" filter="s60" long-name="IKEv1 Library">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/ikev1lib/group" filter="!oem_build"/>
+          </component>
+          <component name="ikev2lib" filter="s60" long-name="IKEv2 Library">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/ikev2lib/group" filter="!oem_build"/>
+          </component>
+          <component name="vpnipsecpolparser" filter="s60" long-name="VPN IPsec Policy Parser">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/vpnipsecpolparser/group" filter="!oem_build"/>
+          </component>
+          <component name="sit" filter="s60" long-name="Socket Interaction Thread">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/sit/group" filter="!oem_build"/>
+          </component>
+          <component name="vpntcwrapper" filter="s60" long-name="VPN Terminal Control Wrapper">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/vpntcwrapper/group" filter="!oem_build"/>
+          </component>
+          <component name="eventmediator" filter="s60" long-name="Event Mediator">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/eventmediator/group" filter="!oem_build"/>
+          </component>
+          <component name="pkiservice" filter="s60" long-name="PKI Service">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/pkiservice/group" filter="!oem_build"/>
+          </component>
+          <component name="vpnconnagt" filter="s60" long-name="VPN Connection Agent">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/vpnconnagt/group" filter="!oem_build"/>
+          </component>
+          <component name="vpnmanager" filter="s60" long-name="VPN Manager">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/vpnmanager/group" filter="!oem_build"/>
+          </component>
+          <component name="vpncleaner" filter="s60" long-name="VPN Cleaner">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/vpncleaner/group" filter="!oem_build"/>
+          </component>
+          <component name="utlpkcs12" filter="s60" long-name="PKCS#12 Utilities">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/utlpkcs12/group" filter="!oem_build"/>
+          </component>
+          <component name="dmadengine" filter="s60" long-name="DM Adapter Engine">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/dmadengine/group" filter="!oem_build"/>
+          </component>
+          <component name="dmadipsecvpn" filter="s60" long-name="IPsec VPN DM Adapter" plugin="Y">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/dmadipsecvpn/group" filter="!oem_build"/>
+          </component>
+          <component name="dmadpki" filter="s60" long-name="PKI DM Adapter" plugin="Y">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/dmadpki/group" filter="!oem_build"/>
+          </component>
+          <component name="ikesocket" filter="s60" long-name="IKE Socket" introduced="^3">
+            <unit bldFile="/sf/mw/vpnclient/vpnengine/ikesocketplugin/group" filter="!oem_build"/>
+          </component>
+        </collection>
+        <collection name="vpnui" long-name="VPN UI" level="ui">
+          <component name="vpnecomnotifier" filter="s60" long-name="VPN ECOM Notifier" plugin="Y">
+            <unit bldFile="/sf/mw/vpnclient/vpnui/vpnecomnotifier/group" filter="!oem_build"/>
+          </component>
+          <component name="vpndialogmanager" filter="s60" long-name="VPN Dialog Manager">
+            <unit bldFile="/sf/mw/vpnclient/vpnui/vpndialogmanager/group" filter="!oem_build"/>
+          </component>
+          <component name="vpnmanagementui" filter="s60" long-name="VPN Management UI" plugin="Y">
+            <unit bldFile="/sf/mw/vpnclient/vpnui/vpnmanagementui/group" filter="!oem_build"/>
+          </component>
+          <component name="vpnpolins" filter="s60" long-name="VPN Policy Installer">
+            <unit bldFile="/sf/mw/vpnclient/vpnui/vpnpolins/group" filter="!oem_build"/>
+          </component>
+          <component name="vpnpolicyrecognizer" filter="s60" long-name="VPN Policy Recognizer" plugin="Y">
+            <unit bldFile="/sf/mw/vpnclient/vpnui/vpnpolicyrecognizer/group" filter="!oem_build"/>
+          </component>
+        </collection>
+        <collection name="vpnclient_info" long-name="VPN Client Info" level="api">
+          <component name="vpnclient_help" filter="s60" long-name="VPN Client Help">
+            <unit bldFile="/sf/mw/vpnclient/help/group" filter="!oem_build"/>
+          </component>
+          <component name="vpnclient_build" filter="s60" long-name="VPN Client Build">
+            <!-- should split this up into the other components and remove this-->
+            <unit bldFile="/sf/mw/vpnclient/group" filter="!oem_build"/>
+          </component>
+          <component name="vpnc_plat" filter="s60" long-name="VPN Client Platform Interfaces" class="api">
+            <unit bldFile="/sf/mw/vpnclient/vpnc_plat/vpnapi/group" filter="!oem_build"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
 </SystemDefinition>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/symbian3/mw/vpnclient/package_definition_3.0.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -0,0 +1,167 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<SystemDefinition schema="3.0.0">
+  <package id="vpnclient" name="VPN Client" levels="engine ui api">
+    <collection id="vpnengine" name="VPN Engine" level="engine">
+    	<!-- too many components in this collection.
+    		Probably best to group the binaries together into larger components
+    		or maybe split the collection into more reasonable groups  -->
+      <component id="eventmediatorapi" filter="s60" name="Event Mediator API">
+        <unit bldFile="vpnengine/eventmediatorapi/group"/>
+      </component>
+      <component id="eventviewer" filter="s60" name="Event Viewer">
+        <unit bldFile="vpnengine/eventviewer/group"/>
+      </component>
+      <component id="vpnins" filter="s60" name="VPN Installer">
+        <unit bldFile="vpnengine/vpnins/group"/>
+      </component>
+      <component id="acuagenttransport" filter="s60" name="ACU Agent Transport">
+        <unit bldFile="vpnengine/acuagenttransport/group"/>
+      </component>
+      <component id="acupluginlib" filter="s60" name="ACU Plugin Library">
+        <unit bldFile="vpnengine/acupluginlib/group"/>
+      </component>
+      <component id="ikepolparser" filter="s60" name="IKE Policy Parser">
+        <unit bldFile="vpnengine/ikepolparser/group"/>
+      </component>
+      <component id="utlbase64" filter="s60" name="Base64 Utilities">
+        <unit bldFile="vpnengine/utlbase64/group"/>
+      </component>
+      <component id="utlcrypto" filter="s60" name="Crypto Utilities">
+        <unit bldFile="vpnengine/utlcrypto/group"/>
+      </component>
+      <component id="utlxml" filter="s60" name="XML Utilities">
+        <unit bldFile="vpnengine/utlxml/group"/>
+      </component>
+      <component id="utlpkcs10" filter="s60" name="PKCS#10 Utilities">
+        <unit bldFile="vpnengine/utlpkcs10/group"/>
+      </component>
+      <component id="pkiserviceapi" filter="s60" name="PKI Service API">
+        <unit bldFile="vpnengine/pkiserviceapi/group"/>
+      </component>
+      <component id="acuagentcrypto" filter="s60" name="ACU Agent Crypto">
+        <unit bldFile="vpnengine/acuagentcrypto/group"/>
+      </component>
+      <component id="vpnextapi" filter="s60" name="VPN Extension API">
+        <unit bldFile="vpnengine/vpnextapi/group"/>
+      </component>
+      <component id="ikecert" filter="s60" name="IKE Certificate Management">
+        <unit bldFile="vpnengine/ikecert/group"/>
+      </component>
+      <component id="kmdapi" filter="s60" name="Key Management Daemon API">
+        <unit bldFile="vpnengine/kmdapi/group"/>
+      </component>
+      <component id="kmdserver" filter="s60" name="Key Management Daemon Server">
+        <unit bldFile="vpnengine/kmdserver/group"/>
+      </component>
+      <component id="ikeutils" filter="s60" name="Internet Key Exchange Utils">
+        <unit bldFile="vpnengine/ikeutils/group"/>
+      </component>
+      <component id="ikev1lib" filter="s60" name="IKEv1 Library">
+        <unit bldFile="vpnengine/ikev1lib/group"/>
+      </component>
+      <component id="ikev2lib" filter="s60" name="IKEv2 Library">
+        <unit bldFile="vpnengine/ikev2lib/group"/>
+      </component>
+      <component id="acuagentmessage" filter="s60" name="ACU Agent Message">
+        <unit bldFile="vpnengine/acuagentmessage/group"/>
+      </component>
+      <component id="acuagent" filter="s60" name="Automatic Content Update Agent">
+        <unit bldFile="vpnengine/acuagent/group"/>
+      </component>
+      <component id="vpnawapi" filter="s60" name="VPN ACU Wrapper API">
+        <unit bldFile="vpnengine/vpnawapi/group"/>
+      </component>
+      <component id="vpnipsecpolparser" filter="s60" name="VPN IPsec Policy Parser">
+        <unit bldFile="vpnengine/vpnipsecpolparser/group"/>
+      </component>
+      <component id="sit" filter="s60" name="Socket Interaction Thread">
+        <unit bldFile="vpnengine/sit/group"/>
+      </component>
+      <component id="acuins" filter="s60" name="ACU Installer">
+        <unit bldFile="vpnengine/acuins/group"/>
+      </component>
+      <component id="vpntcwrapper" filter="s60" name="VPN Terminal Control Wrapper">
+        <unit bldFile="vpnengine/vpntcwrapper/group"/>
+      </component>
+      <component id="eventmediator" filter="s60" name="Event Mediator">
+        <unit bldFile="vpnengine/eventmediator/group"/>
+      </component>
+      <component id="ipsecacuplugin" filter="s60" name="IPsec ACU Plugin" class="plugin">
+        <unit bldFile="vpnengine/ipsecacuplugin/group"/>
+      </component>
+      <component id="pkiservice" filter="s60" name="PKI Service">
+        <unit bldFile="vpnengine/pkiservice/group"/>
+      </component>
+      <component id="vpnconnagt" filter="s60" name="VPN Connection Agent">
+        <unit bldFile="vpnengine/vpnconnagt/group"/>
+      </component>
+      <component id="vpnmanager" filter="s60" name="VPN Manager">
+        <unit bldFile="vpnengine/vpnmanager/group"/>
+      </component>
+      <component id="vpncleaner" filter="s60" name="VPN Cleaner">
+        <unit bldFile="vpnengine/vpncleaner/group"/>
+      </component>
+      <component id="utlpkcs12" filter="s60" name="PKCS#12 Utilities">
+        <unit bldFile="vpnengine/utlpkcs12/group"/>
+      </component>
+      <component id="dmadengine" filter="s60" name="DM Adapter Engine">
+        <unit bldFile="vpnengine/dmadengine/group"/>
+      </component>
+      <component id="dmadipsecvpn" filter="s60" name="IPsec VPN DM Adapter" class="plugin">
+        <unit bldFile="vpnengine/dmadipsecvpn/group"/>
+      </component>
+      <component id="dmadpki" filter="s60" name="PKI DM Adapter" class="plugin">
+        <unit bldFile="vpnengine/dmadpki/group"/>
+      </component>
+      <component id="ikesocketplugin" filter="s60" name="IKE Socket Plugin" class="plugin">
+        <unit bldFile="vpnengine/ikesocketplugin/group"/>
+      </component>
+      <component id="vpnnif" filter="s60" name="VPN NIF"/>
+    </collection>
+    <collection id="vpnui" name="VPN UI" level="ui">
+      <component id="vpnecomnotifier" filter="s60" name="VPN ECOM Notifier" class="plugin">
+        <unit bldFile="vpnui/vpnecomnotifier/group"/>
+      </component>
+      <component id="vpndialogmanager" filter="s60" name="VPN Dialog Manager">
+        <unit bldFile="vpnui/vpndialogmanager/group"/>
+      </component>
+      <component id="vpnmanagementui" filter="s60" name="VPN Management UI" class="plugin">
+        <unit bldFile="vpnui/vpnmanagementui/group"/>
+      </component>
+      <component id="vpnpolins" filter="s60" name="VPN Policy Installer">
+        <unit bldFile="vpnui/vpnpolins/group"/>
+      </component>
+      <component id="vpnpolicyrecognizer" filter="s60" name="VPN Policy Recognizer" class="plugin">
+        <unit bldFile="vpnui/vpnpolicyrecognizer/group"/>
+      </component>
+    </collection>
+    <collection id="vpnapiimpl" name="VPN API Implementation" level="api">
+      <component id="vpnapi" filter="s60" name="VPN API">
+        <unit bldFile="vpnapiimpl/group"/>
+      </component>
+    </collection>
+    <collection id="vpnclient_sis" name="VPN Client SIS" level="api">
+      <component id="ce_sis" filter="s60" name="CE SIS">
+        <unit bldFile="vpnclient_sis/ce_sis/group"/>
+      </component>
+      <component id="stub_sis" filter="s60" name="Stub SIS">
+        <unit bldFile="vpnclient_sis/stub_sis/group"/>
+      </component>
+      <component id="vpnclient_sis_build" filter="s60" name="VPN Client SIS Build">
+        <unit bldFile="vpnclient_sis/group"/>
+      </component>
+    </collection>
+    <collection id="vpnclient_info" name="VPN Client Info" level="api">
+      <component id="vpnclient_help" filter="s60" name="VPN Client Help">
+        <unit bldFile="help/group"/>
+      </component>
+      <component id="vpnclient_build" filter="s60" name="VPN Client Build">
+      	<!-- should split this up into the other components-->
+        <unit bldFile="group"/>
+      </component>
+      <component id="vpnc_plat" filter="s60" class="api" name="VPN Client Platform Interfaces">
+        <unit bldFile="vpnc_plat/vpnapi/group"/>
+      </component>
+    </collection>
+  </package>
+</SystemDefinition>
--- a/symbian3/mw/web/package_definition.xml	Mon Feb 01 16:11:43 2010 +0000
+++ b/symbian3/mw/web/package_definition.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -1,109 +1,248 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE SystemDefinition [
- <!ELEMENT SystemDefinition (systemModel?,SystemBuild?)>
- <!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (block*|collection*)*>
- <!ATTLIST layer
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED>
- <!ELEMENT block (subblock*|collection*)*>
- <!ATTLIST block
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED
-  level NMTOKEN #IMPLIED
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT subblock (collection)*>
- <!ATTLIST subblock
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT collection (component)*>
- <!ATTLIST collection
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  level NMTOKEN #IMPLIED>
- <!ELEMENT component (unit)*>
- <!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>
- <!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>
- <!ELEMENT SystemBuild (option*|target+|targetList+|list+|configuration+)*>
- <!ATTLIST SystemBuild schema CDATA #REQUIRED>
- <!ELEMENT list (ref+)>
- <!ATTLIST list
-  name ID #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT ref EMPTY>
- <!ATTLIST ref item CDATA #REQUIRED>
- <!ELEMENT targetList EMPTY>
- <!ATTLIST targetList
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  target IDREFS #REQUIRED>
- <!ELEMENT target EMPTY>
- <!ATTLIST target
-  name ID #REQUIRED
-  abldTarget CDATA #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT option EMPTY>
- <!ATTLIST option
-  name ID #REQUIRED
-  abldOption CDATA #REQUIRED
-  description CDATA #REQUIRED
-  enable (Y|N) #REQUIRED>
- <!ELEMENT configuration (listRef+|ref+|task+)*>
- <!ATTLIST configuration
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  filter CDATA #REQUIRED>
- <!ELEMENT task (listRef*,(buildLayer|specialInstructions))>
- <!ELEMENT listRef EMPTY>
- <!ATTLIST listRef list CDATA #REQUIRED>
- <!ELEMENT buildLayer EMPTY>
- <!ATTLIST buildLayer
-  command CDATA #REQUIRED
-  targetList IDREFS #IMPLIED
-  unitParallel (Y|N) #REQUIRED
-  targetParallel (Y|N) 'N'>
- <!ELEMENT specialInstructions EMPTY>
- <!ATTLIST specialInstructions
-  name CDATA #REQUIRED
-  cwd CDATA #REQUIRED
-  root CDATA #IMPLIED
-  command CDATA #REQUIRED>
-]>
-<SystemDefinition schema="2.0.1" name="Symbian^3">
-<systemModel>
-<layer name="mw">
-<block name="web">
-<collection name="s60">
-<component name="web">
-<unit bldFile="/sf/mw/web/group" mrp=""/>
-</component>
-</collection>
-</block>
-</layer>
-</systemModel>
+<!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="mw" long-name="Middleware" levels="generic specific">
+      <block name="web" level="specific" long-name="Web" levels="plugin utils server generic specific">
+        <collection name="web_info" long-name="Web Info" level="specific">
+          <component name="web_plat" filter="s60" long-name="Web Platform Interfaces" class="api">
+            <unit bldFile="/sf/mw/web/web_plat/group"/>
+          </component>
+          <component name="web_pub" filter="s60" long-name="Web Public Interfaces" class="api">
+            <unit bldFile="/sf/mw/web/web_pub/group"/>
+          </component>
+          <component name="web_build" filter="s60" long-name="Web Build">
+            <!-- when configuration is in place, the #ifdef is no longer needed and this component can be removed -->
+            <unit bldFile="/sf/mw/web/group"/>
+          </component>
+        </collection>
+        <collection name="browserutilities" long-name="Browser Utilities" level="utils">
+          <component name="browserdialogsprovider" filter="s60" long-name="Browser Dialogs Provider">
+            <unit bldFile="/sf/mw/web/browserutilities/browserdialogsprovider/group"/>
+          </component>
+          <component name="recenturlstore" filter="s60" long-name="Recent URL Store">
+            <unit bldFile="/sf/mw/web/browserutilities/recenturlstore/group"/>
+          </component>
+          <component name="xmlparser" filter="s60" long-name="XML Interface">
+            <unit bldFile="/sf/mw/web/browserutilities/xmlparser/group"/>
+          </component>
+          <component name="cxmllibrary" filter="s60" long-name="XML Parser Implementation">
+            <unit bldFile="/sf/mw/web/browserutilities/cxmllibrary/group"/>
+          </component>
+          <component name="downloadmgr" filter="s60" long-name="Download Manager">
+            <unit bldFile="/sf/mw/web/browserutilities/downloadmgr/group"/>
+          </component>
+          <component name="connectionmanager" filter="s60" long-name="Connection Manager">
+            <unit bldFile="/sf/mw/web/browserutilities/connectionmanager/group"/>
+          </component>
+          <component name="browsertelservice" filter="s60" long-name="Browser Telephony Service">
+            <unit bldFile="/sf/mw/web/browserutilities/browsertelservice/group"/>
+          </component>
+          <component name="favouritesengine" filter="s60" long-name="Favourites Engine">
+            <unit bldFile="/sf/mw/web/browserutilities/favouritesengine/group"/>
+          </component>
+          <component name="feedsengine" filter="s60" long-name="Feeds Engine">
+            <unit bldFile="/sf/mw/web/browserutilities/feedsengine/group"/>
+          </component>
+          <component name="multipartparser" filter="s60" long-name="Multipart Parser">
+            <!-- uncomment the unit when configuration is in place, it's currently #included from browserutilities_build -->
+            <!-- <unit bldFile="browserutilities/multipartparser/group"/> -->
+          </component>
+          <component name="schemehandler" filter="s60" long-name="Scheme Handler">
+            <unit bldFile="/sf/mw/web/browserutilities/schemehandler/group"/>
+          </component>
+          <component name="webutils" filter="s60" long-name="Web Utils">
+            <unit bldFile="/sf/mw/web/browserutilities/webutils/group"/>
+          </component>
+          <component name="aiwbrowserprovider" filter="s60" long-name="AIW Browser Provider" plugin="Y">
+            <unit bldFile="/sf/mw/web/browserutilities/aiwbrowserprovider/group"/>
+          </component>
+          <component name="browserutilities_build" filter="s60" long-name="Browser Utilities Build">
+            <!-- when configuration is in place, the #ifdef is no longer needed and this component can be removed -->
+            <unit bldFile="/sf/mw/web/browserutilities/group"/>
+          </component>
+        </collection>
+        <collection name="webengine" long-name="Web Engine" level="server">
+          <component name="osswebengine" filter="s60" long-name="OSS Web Engine">
+            <!-- can only have one unit. Either split into multiple components or #include from a single main bld.inf -->
+            <unit bldFile="/sf/mw/web/webengine/osswebengine/cache/group"/>
+            <unit bldFile="/sf/mw/web/webengine/osswebengine/memorymanager/group"/>
+            <unit bldFile="/sf/mw/web/webengine/osswebengine/npscript/group"/>
+            <unit bldFile="/sf/mw/web/webengine/osswebengine/webkit/s60/group"/>
+            <unit bldFile="/sf/mw/web/webengine/osswebengine/webkit/s60/group/javascriptcore"/>
+          </component>
+          <component name="webkitutils" filter="s60" long-name="WebKit Utils">
+            <unit bldFile="/sf/mw/web/webengine/webkitutils/group"/>
+          </component>
+          <component name="pagescaler" filter="s60" long-name="Page Scaler">
+            <unit bldFile="/sf/mw/web/webengine/pagescaler/group"/>
+          </component>
+          <component name="webwidgetinstaller" filter="s60" long-name="Widget Installer">
+            <unit bldFile="/sf/mw/web/webengine/widgetinstaller/group"/>
+          </component>
+          <component name="widgetregistry" filter="s60" long-name="Widget Registry">
+            <unit bldFile="/sf/mw/web/webengine/widgetregistry/group"/>
+          </component>
+          <component name="wmlengine" filter="s60" long-name="WML Engine">
+            <unit bldFile="/sf/mw/web/webengine/wmlengine/group"/>
+          </component>
+          <component name="device" filter="s60" long-name="Device">
+            <!-- this needs a more meaningful name -->
+            <unit bldFile="/sf/mw/web/webengine/device/group"/>
+          </component>
+          <component name="widgetengine" filter="s60" long-name="Widget Engine">
+            <unit bldFile="/sf/mw/web/webengine/widgetengine/group"/>
+          </component>
+          <component name="web_memoryplugin" long-name="Memory Plugin" filter="s60" plugin="Y">
+            <unit bldFile="/sf/mw/web/webengine/memoryplugin/group"/>
+          </component>
+          <component name="widgetmemoryplugin" filter="s60" long-name="Widget Memory Plugin" plugin="Y">
+            <unit bldFile="/sf/mw/web/webengine/widgetmemoryplugin/group"/>
+          </component>
+          <component name="widgetbackuprestore" filter="s60" long-name="Widget Backup and Restore">
+            <unit bldFile="/sf/mw/web/webengine/widgetbackuprestore/group"/>
+          </component>
+          <component name="browserrecognizers" filter="s60" long-name="Browser Recognizers" plugin="Y">
+            <unit bldFile="/sf/mw/web/webengine/browserrecognizers/group"/>
+          </component>
+          <component name="wrtharvester" filter="s60" long-name="Web Runtime Harvester" plugin="Y">
+            <unit bldFile="/sf/mw/web/webengine/wrtharvester/group"/>
+          </component>
+        </collection>
+        <collection name="codhandler" long-name="Content Object Descriptor Handler" level="specific">
+          <component name="codeng" filter="s60" long-name="COD Engine">
+            <unit bldFile="/sf/mw/web/codhandler/codeng/group"/>
+          </component>
+          <component name="codui" filter="s60" long-name="COD UI">
+            <unit bldFile="/sf/mw/web/codhandler/codui/group"/>
+          </component>
+          <component name="codrecog" filter="s60" long-name="COD Recogniser" plugin="Y">
+            <unit bldFile="/sf/mw/web/codhandler/codrecog/group"/>
+          </component>
+          <component name="codviewer" filter="s60" long-name="COD Viewer">
+            <unit bldFile="/sf/mw/web/codhandler/codviewer/group"/>
+          </component>
+          <component name="ddrecog" filter="s60" long-name="Download Descriptor Recogniser" plugin="Y">
+            <unit bldFile="/sf/mw/web/codhandler/ddrecog/group"/>
+          </component>
+          <component name="ddviewer" filter="s60" long-name="Download Descriptor Viewer">
+            <unit bldFile="/sf/mw/web/codhandler/ddviewer/group"/>
+          </component>
+          <component name="coddownload" filter="s60" long-name="COD Download">
+            <unit bldFile="/sf/mw/web/codhandler/coddownload/group"/>
+          </component>
+          <component name="roapapp" filter="s60" long-name="ROAP Application">
+            <unit bldFile="/sf/mw/web/codhandler/roapapp/group"/>
+          </component>
+          <component name="codhandler_build" filter="s60" long-name="COD Handler Build">
+            <!-- Exports need to go into another component or make this self-contained.
+      		#included .hrh file needs to be #included in each of the other components -->
+            <unit bldFile="/sf/mw/web/codhandler/group"/>
+          </component>
+        </collection>
+        <collection name="widgets" long-name="Web Widget Framework" level="generic">
+          <!-- the following units can be uncommented when configuration is put in place -->
+          <component name="widgetrecognizer" filter="s60" long-name="Widget Recognizer" plugin="Y">
+            <!--<unit bldFile="widgets/widgetrecognizer/group"/>-->
+          </component>
+          <component name="widgetinstaller" filter="s60" long-name="Widget Installer UI" plugin="Y">
+            <!--<unit bldFile="widgets/widgetinstaller/group"/>-->
+          </component>
+          <component name="widgetlauncher" filter="s60" long-name="Widget Launcher">
+            <unit bldFile="/sf/mw/web/widgets/widgetlauncher/group"/>
+          </component>
+          <component name="widgetapp" filter="s60" long-name="Widget UI">
+            <!--<unit bldFile="widgets/widgetapp/group"/>-->
+          </component>
+          <component name="widgetsidchecker" filter="s60" long-name="Widget SID Checker" introduced="^3">
+            <!--<unit bldFile="widgets/widgetsidchecker/group"/>-->
+          </component>
+          <component name="widgetpreinstaller" filter="s60" long-name="Widget Pre-Installer">
+            <!--<unit bldFile="widgets/widgetpreinstaller/group"/>-->
+          </component>
+          <component name="widgetstartup" filter="s60" long-name="Widget Startup">
+            <!--<unit bldFile="widgets/widgetstartup/group"/>-->
+          </component>
+          <component name="widgets_build" filter="s60" long-name="Widgets Build">
+            <!-- when configuration is in place, the #ifdef is no longer needed and this component can be removed 
+      		#included .hrh file needs to be #included in each of the other components -->
+            <unit bldFile="/sf/mw/web/widgets/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
 </SystemDefinition>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/symbian3/mw/web/package_definition_3.0.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -0,0 +1,180 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<SystemDefinition schema="3.0.0">
+  <package id="web" name="Web" levels="plugin utils server generic specific">
+    <collection id="web_info" name="Web Info" level="specific">
+      <component id="web_pub" filter="s60" name="Web Public Interfaces" class="api">
+        <unit bldFile="web_pub/group"/>
+        <!-- can these be #included in the above bld.inf?  --> 
+        <!-- <unit bldFile="web_pub/browser_control_api/tsrc/group"/> -->
+        <!-- <unit bldFile="web_pub/download_mgr_client_api/tsrc/group"/> -->
+        <!-- <unit bldFile="web_pub/favourites_engine_api/tsrc/group"/> -->
+      </component>
+      <component id="web_build" filter="s60" name="Web Build">
+      	<!-- if the #ifdef can be moved out of here, this can be removed -->
+        <unit bldFile="group"/>
+      </component>
+      <component id="web_plat" filter="s60" name="Web Platform Interfaces" class="api">
+        <unit bldFile="web_plat/group"/>
+      </component>
+    </collection>
+    <collection id="browserutilities" name="Browser Utilities" level="utils">
+      <component id="browserdialogsprovider" filter="s60" name="Browser Dialogs Provider">
+        <unit bldFile="browserutilities/browserdialogsprovider/group"/>
+      </component>
+      <component id="recenturlstore" filter="s60" name="Recent URL Store">
+        <unit bldFile="browserutilities/recenturlstore/group"/>
+      </component>
+      <component id="xmlparser" filter="s60" name="XML Interface">
+        <unit bldFile="browserutilities/xmlparser/group"/>
+      </component>
+      <component id="cxmllibrary" filter="s60" name="XML Parser Implementation">
+        <unit bldFile="browserutilities/cxmllibrary/group"/>
+      </component>
+      <component id="downloadmgr" filter="s60" name="Download Manager">
+        <unit bldFile="browserutilities/downloadmgr/group"/>
+      </component>
+      <component id="connectionmanager" filter="s60" name="Connection Manager">
+        <unit bldFile="browserutilities/connectionmanager/group"/>
+      </component>
+      <component id="browsertelservice" filter="s60" name="Browser Telephony Service">
+        <unit bldFile="browserutilities/browsertelservice/group"/>
+      </component>
+      <component id="favouritesengine" filter="s60" name="Favourites Engine">
+        <unit bldFile="browserutilities/favouritesengine/group"/>
+      </component>
+      <component id="feedsengine" filter="s60" name="Feeds Engine">
+        <unit bldFile="browserutilities/feedsengine/group"/>
+        	<!--  should this test be #included in the above bld.inf? -->
+        <!-- <unit bldFile="browserutilities/feedsengine/feedsserver/reconizer/group"/> -->
+      </component>
+      <component id="multipartparser" filter="s60" name="Multipart Parser">
+        <unit bldFile="browserutilities/multipartparser/group"/>
+      </component>
+      <component id="schemehandler" filter="s60" name="Scheme Handler">
+        <unit bldFile="browserutilities/schemehandler/group"/>
+      </component>
+      <component id="webutils" filter="s60" name="Web Utils">
+        <unit bldFile="browserutilities/webutils/group"/>
+        	<!--  should this test be #included in the above bld.inf? -->
+        <!-- <unit bldFile="browserutilities/webutils/tsrc/public/adv/group"/> -->
+      </component>
+      <component id="aiwbrowserprovider" filter="s60" name="AIW Browser Provider" class="plugin">
+        <unit bldFile="browserutilities/aiwbrowserprovider/group"/>
+      </component>
+      <component id="browserutilities_build" filter="s60" name="Browser Utilities Build">
+      	<!-- this can be removed if the #ifdef is moved into the multipart bld.inf -->
+        <unit bldFile="browserutilities/group"/>
+      </component>
+    </collection>
+    <collection id="webengine" name="Web Engine" level="server">
+      <component id="osswebengine" filter="s60" name="OSS Web Engine">
+      	<!-- can only have one unit. Either split into multiple components or #include from a single main bld.inf -->
+        <unit bldFile="webengine/osswebengine/cache/group"/>
+        <unit bldFile="webengine/osswebengine/memorymanager/group"/>
+        <unit bldFile="webengine/osswebengine/npscript/group"/>
+        <unit bldFile="webengine/osswebengine/webkit/s60/group"/>
+        <unit bldFile="webengine/osswebengine/webkit/s60/group/javascriptcore"/>
+        <!-- <unit bldFile="webengine/osswebengine/webkit/s60/webview/webview_api_test/group"/> -->
+        <!-- <unit bldFile="webengine/osswebengine/webkit/s60/webview/webview_api_test/tsrc/group"/> -->
+      </component>
+      <component id="webkitutils" filter="s60" name="WebKit Utils">
+        <unit bldFile="webengine/webkitutils/group"/>
+      </component>
+      <component id="pagescaler" filter="s60" name="Page Scaler">
+        <unit bldFile="webengine/pagescaler/group"/>
+      </component>
+      <component id="webwidgetinstaller" filter="s60" name="Widget Installer">
+        <unit bldFile="webengine/widgetinstaller/group"/>
+      </component>
+      <component id="widgetregistry" filter="s60" name="Widget Registry">
+        <unit bldFile="webengine/widgetregistry/group"/>
+        	<!--  should this test be #included in the above bld.inf? -->
+        <!-- <unit bldFile="webengine/widgetregistry/tsrc/public/basic/group"/> -->
+      </component>
+      <component id="wmlengine" filter="s60" name="WML Engine">
+        <unit bldFile="webengine/wmlengine/group"/>
+      </component>
+      <component id="device" filter="s60" name="Device">
+     		<!-- this needs a more meaningful name -->
+        <unit bldFile="webengine/device/group"/>
+      </component>
+      <component id="widgetengine" filter="s60" name="Widget Engine">
+        <unit bldFile="webengine/widgetengine/group"/>
+      </component>
+      <!--Component manually removed as empty and name conflicts with another component-->
+      <component id="web_memoryplugin" name="Memory Plugin" filter="s60" class="plugin">
+       <unit bldFile="webengine/memoryplugin/group"/>
+     </component>
+      <component id="widgetmemoryplugin" filter="s60" name="Widget Memory Plugin" class="plugin">
+        <unit bldFile="webengine/widgetmemoryplugin/group"/>
+      </component>
+      <component id="widgetbackuprestore" filter="s60" name="Widget Backup and Restore">
+        <unit bldFile="webengine/widgetbackuprestore/group"/>
+      </component>
+      <component id="browserrecognizers" filter="s60" name="Browser Recognizers" class="plugin">
+        <unit bldFile="webengine/browserrecognizers/group"/>
+      </component>
+      <component id="wrtharvester" filter="s60" name="Web Runtime Harvester" class="plugin">
+        <unit bldFile="webengine/wrtharvester/group"/>
+      </component>
+      <component id="webengine_build" filter="s60" name="Web Engine Build">
+      	<!--  should be able to break this up into the above bld.infs  -->
+        <unit bldFile="webengine/group"/>
+      </component>
+    </collection>
+    <collection id="codhandler" name="Content Object Descriptor Handler" level="specific">
+      <component id="codeng" filter="s60" name="COD Engine">
+        <unit bldFile="codhandler/codeng/group"/>
+      </component>
+      <component id="codui" filter="s60" name="COD UI">
+        <unit bldFile="codhandler/codui/group"/>
+      </component>
+      <component id="codrecog" filter="s60" name="COD Recogniser" class="plugin">
+        <unit bldFile="codhandler/codrecog/group"/>
+      </component>
+      <component id="codviewer" filter="s60" name="COD Viewer">
+        <unit bldFile="codhandler/codviewer/group"/>
+      </component>
+      <component id="ddrecog" filter="s60" name="Download Descriptor Recogniser" class="plugin">
+        <unit bldFile="codhandler/ddrecog/group"/>
+      </component>
+      <component id="ddviewer" filter="s60" name="Download Descriptor Viewer">
+        <unit bldFile="codhandler/ddviewer/group"/>
+      </component>
+      <component id="coddownload" filter="s60" name="COD Download">
+        <unit bldFile="codhandler/coddownload/group"/>
+      </component>
+      <component id="roapapp" filter="s60" name="ROAP Application">
+        <unit bldFile="codhandler/roapapp/group"/>
+      </component>
+      <component id="codhandler_build" filter="s60" name="COD Handler Build">
+      	<!-- is there another component these exports can go into? -->
+        <unit bldFile="codhandler/group"/>
+      </component>
+    </collection>
+    <collection id="widgets" name="Web Widget Framework" level="generic">
+      <component id="widgetrecognizer" filter="s60" name="Widget Recognizer" class="plugin">
+        <unit bldFile="widgets/widgetrecognizer/group"/>
+      </component>
+      <component id="widgetinstaller" filter="s60" name="Widget Installer UI" class="plugin">
+        <unit bldFile="widgets/widgetinstaller/group"/>
+      </component>
+      <component id="widgetlauncher" filter="s60" name="Widget Launcher">
+        <unit bldFile="widgets/widgetlauncher/group"/>
+      </component>
+      <component id="widgetapp" filter="s60" name="Widget UI">
+        <unit bldFile="widgets/widgetapp/group"/>
+      </component>
+      <component id="widgetpreinstaller" filter="s60" name="Widget Pre-Installer">
+        <unit bldFile="widgets/widgetpreinstaller/group"/>
+      </component>
+      <component id="widgetstartup" filter="s60" name="Widget Startup">
+        <unit bldFile="widgets/widgetstartup/group"/>
+      </component>
+      <component id="widgets_build" filter="s60" name="Widgets Build">
+      	<!--  can this be broken up into the above components? -->
+        <unit bldFile="widgets/group"/>
+      </component>
+    </collection>
+  </package>
+</SystemDefinition>
--- a/symbian3/mw/websrv/package_definition.xml	Mon Feb 01 16:11:43 2010 +0000
+++ b/symbian3/mw/websrv/package_definition.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -1,109 +1,183 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE SystemDefinition [
- <!ELEMENT SystemDefinition (systemModel?,SystemBuild?)>
- <!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (block*|collection*)*>
- <!ATTLIST layer
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED>
- <!ELEMENT block (subblock*|collection*)*>
- <!ATTLIST block
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED
-  level NMTOKEN #IMPLIED
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT subblock (collection)*>
- <!ATTLIST subblock
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT collection (component)*>
- <!ATTLIST collection
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  level NMTOKEN #IMPLIED>
- <!ELEMENT component (unit)*>
- <!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>
- <!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>
- <!ELEMENT SystemBuild (option*|target+|targetList+|list+|configuration+)*>
- <!ATTLIST SystemBuild schema CDATA #REQUIRED>
- <!ELEMENT list (ref+)>
- <!ATTLIST list
-  name ID #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT ref EMPTY>
- <!ATTLIST ref item CDATA #REQUIRED>
- <!ELEMENT targetList EMPTY>
- <!ATTLIST targetList
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  target IDREFS #REQUIRED>
- <!ELEMENT target EMPTY>
- <!ATTLIST target
-  name ID #REQUIRED
-  abldTarget CDATA #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT option EMPTY>
- <!ATTLIST option
-  name ID #REQUIRED
-  abldOption CDATA #REQUIRED
-  description CDATA #REQUIRED
-  enable (Y|N) #REQUIRED>
- <!ELEMENT configuration (listRef+|ref+|task+)*>
- <!ATTLIST configuration
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  filter CDATA #REQUIRED>
- <!ELEMENT task (listRef*,(buildLayer|specialInstructions))>
- <!ELEMENT listRef EMPTY>
- <!ATTLIST listRef list CDATA #REQUIRED>
- <!ELEMENT buildLayer EMPTY>
- <!ATTLIST buildLayer
-  command CDATA #REQUIRED
-  targetList IDREFS #IMPLIED
-  unitParallel (Y|N) #REQUIRED
-  targetParallel (Y|N) 'N'>
- <!ELEMENT specialInstructions EMPTY>
- <!ATTLIST specialInstructions
-  name CDATA #REQUIRED
-  cwd CDATA #REQUIRED
-  root CDATA #IMPLIED
-  command CDATA #REQUIRED>
-]>
-<SystemDefinition schema="2.0.1" name="Symbian^3">
-<systemModel>
-<layer name="mw">
-<block name="websrv">
-<collection name="s60">
-<component name="websrv">
-<unit bldFile="/sf/mw/websrv/group" mrp=""/>
-</component>
-</collection>
-</block>
-</layer>
-</systemModel>
+<!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="mw" long-name="Middleware" levels="generic specific">
+      <block name="websrv" level="generic" long-name="Web Services" levels="plugin framework server generic specific">
+        <collection name="webservices" long-name="Web Services Framework" level="generic">
+          <!-- consider breaking this collection into more meaningful subsets -->
+          <component name="wsnotifierplugins" filter="s60" long-name="WS Notifier Plugins" plugin="Y">
+            <unit bldFile="/sf/mw/websrv/webservices/wsnotifierplugins/group"/>
+          </component>
+          <component name="wslogger" filter="s60" long-name="WS Logger">
+            <unit bldFile="/sf/mw/websrv/webservices/wslogger/group"/>
+          </component>
+          <component name="wsxml" filter="s60" long-name="WS XML Extensions">
+            <unit bldFile="/sf/mw/websrv/webservices/wsxml/group"/>
+          </component>
+          <component name="wsutils" filter="s60" long-name="WS Utils">
+            <unit bldFile="/sf/mw/websrv/webservices/wsutils/group"/>
+          </component>
+          <component name="wsfragment" filter="s60" long-name="WS Fragment">
+            <unit bldFile="/sf/mw/websrv/webservices/wsfragment/group"/>
+          </component>
+          <component name="wsdescription" filter="s60" long-name="WS Service Description">
+            <unit bldFile="/sf/mw/websrv/webservices/wsdescription/group"/>
+          </component>
+          <component name="wsconnection" filter="s60" long-name="WS Service Connection">
+            <unit bldFile="/sf/mw/websrv/webservices/wsconnection/group"/>
+          </component>
+          <component name="wsmessages" filter="s60" long-name="WS Messages">
+            <unit bldFile="/sf/mw/websrv/webservices/wsmessages/group"/>
+          </component>
+          <component name="wscredentialmanager" filter="s60" long-name="WS Credential Manager">
+            <unit bldFile="/sf/mw/websrv/webservices/wscredentialmanager/group"/>
+          </component>
+          <component name="wsframework" filter="s60" long-name="WS Framework">
+            <unit bldFile="/sf/mw/websrv/webservices/wsframework/group"/>
+          </component>
+          <component name="wshttpchanneltransportplugin" filter="s60" long-name="WS HTTP Channel Transport Plugin" plugin="Y">
+            <unit bldFile="/sf/mw/websrv/webservices/wshttpchanneltransportplugin/group"/>
+          </component>
+          <component name="wsconnectionagent" filter="s60" long-name="WS Connection Agent">
+            <unit bldFile="/sf/mw/websrv/webservices/wsconnectionagent/group"/>
+          </component>
+          <component name="wsprovider" filter="s60" long-name="WS Provider">
+            <unit bldFile="/sf/mw/websrv/webservices/wsprovider/group"/>
+          </component>
+          <component name="wshostletconnection" filter="s60" long-name="WS Hostlet Connection">
+            <unit bldFile="/sf/mw/websrv/webservices/wshostletconnection/group"/>
+          </component>
+          <component name="wsmanager" filter="s60" long-name="WS Service Manager">
+            <unit bldFile="/sf/mw/websrv/webservices/wsmanager/group"/>
+          </component>
+          <component name="wsidentitymanager" filter="s60" long-name="WS Identity Manager">
+            <unit bldFile="/sf/mw/websrv/webservices/wsidentitymanager/group"/>
+          </component>
+          <component name="idwsfplugin" filter="s60" long-name="ID-WSF Plugin" plugin="Y">
+            <unit bldFile="/sf/mw/websrv/webservices/idwsfplugin/group"/>
+          </component>
+          <component name="wsibasicplugin" filter="s60" long-name="WS-I Basic Plugin" plugin="Y">
+            <unit bldFile="/sf/mw/websrv/webservices/wsibasicplugin/group"/>
+          </component>
+          <component name="wsrestplugin" filter="s60" long-name="WS REST Plugin" plugin="Y">
+            <unit bldFile="/sf/mw/websrv/webservices/wsrestplugin/group"/>
+          </component>
+          <component name="idwsfsecuritymechanism" filter="s60" long-name="ID-WSF Security Mechanism">
+            <unit bldFile="/sf/mw/websrv/webservices/idwsfsecuritymechanism/group"/>
+          </component>
+          <component name="wspasswordtransforms" filter="s60" long-name="WS Password Transforms">
+            <unit bldFile="/sf/mw/websrv/webservices/wspasswordtransforms/group"/>
+          </component>
+          <component name="wscore" filter="s60" long-name="WS Core Service Manager">
+            <unit bldFile="/sf/mw/websrv/webservices/wscore/group"/>
+          </component>
+          <component name="wslocaltransportplugin" filter="s60" long-name="WS Local Transport Plugin" plugin="Y">
+            <unit bldFile="/sf/mw/websrv/webservices/wslocaltransportplugin/group"/>
+          </component>
+          <component name="wshostlettransportplugin" filter="s60" long-name="WS Hostlet Transport Plugin" plugin="Y">
+            <unit bldFile="/sf/mw/websrv/webservices/wshostlettransportplugin/group"/>
+          </component>
+          <component name="wsstar" filter="s60" long-name="WS Star">
+            <!-- can only have one unit. Need to split into separate components or #include from a single bld.inf -->
+            <unit bldFile="/sf/mw/websrv/webservices/wsstar/wsstarpolicy/group"/>
+            <unit bldFile="/sf/mw/websrv/webservices/wsstar/wsstarplugin/group"/>
+            <unit bldFile="/sf/mw/websrv/webservices/wsstar/wsstarmessagehandlers/group"/>
+          </component>
+          <component name="wsoviplugin" filter="s60" long-name="WS Ovi Plugin">
+            <unit bldFile="/sf/mw/websrv/webservices/wsoviplugin/group"/>
+          </component>
+          <component name="wsoviplugin" filter="s60" long-name="WS Ovi Plugin">
+            <unit bldFile="/sf/mw/websrv/webservices/wsoviplugin/group"/>
+          </component>
+          <component name="webservices_build" filter="s60" long-name="Web Services Build">
+            <!-- need to split into self-contained components -->
+            <unit bldFile="/sf/mw/websrv/webservices/group"/>
+          </component>
+        </collection>
+        <collection name="websrv_info" long-name="Web Services Info" level="specific">
+          <component name="websrv_bld" filter="s60" long-name="Web Services Build">
+            <!-- need to include common .hrh in each unit -->
+            <unit bldFile="/sf/mw/websrv/group"/>
+          </component>
+          <component name="websrv_pub" filter="s60" long-name="Web Services Public Interfaces" class="api">
+            <unit bldFile="/sf/mw/websrv/websrv_pub/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
 </SystemDefinition>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/symbian3/mw/websrv/package_definition_3.0.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -0,0 +1,127 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<SystemDefinition schema="3.0.0">
+  <package id="websrv" name="Web Services" levels="plugin framework server generic specific">
+    <collection id="webservices" name="Web Services Framework" level="generic">
+    	<!-- consider breaking this collection into more meaningful subsets -->
+      <component id="wsnotifierplugins" filter="s60" name="WS Notifier Plugins" class="plugin">
+        <unit bldFile="webservices/wsnotifierplugins/group"/>
+      </component>
+      <component id="wslogger" filter="s60" name="WS Logger">
+        <unit bldFile="webservices/wslogger/group"/>
+      </component>
+      <component id="wsxml" filter="s60" name="WS XML Extensions">
+        <unit bldFile="webservices/wsxml/group"/>
+      </component>
+      <component id="wsutils" filter="s60" name="WS Utils">
+        <unit bldFile="webservices/wsutils/group"/>
+      </component>
+      <component id="wsfragment" filter="s60" name="WS Fragment">
+        <unit bldFile="webservices/wsfragment/group"/>
+      </component>
+      <component id="wsdescription" filter="s60" name="WS Service Description">
+        <unit bldFile="webservices/wsdescription/group"/>
+      </component>
+      <component id="wshttpchanneltransportplugin" filter="s60" name="WS HTTP Channel Transport Plugin" class="plugin">
+        <unit bldFile="webservices/wshttpchanneltransportplugin/group"/>
+      </component>
+      <component id="wsconnection" filter="s60" name="WS Service Connection">
+        <unit bldFile="webservices/wsconnection/group"/>
+      </component>
+      <component id="wshostletconnection" filter="s60" name="WS Hostlet Connection">
+        <unit bldFile="webservices/wshostletconnection/group"/>
+      </component>
+      <component id="wscredentialmanager" filter="s60" name="WS Credential Manager">
+        <unit bldFile="webservices/wscredentialmanager/group"/>
+      </component>
+      <component id="wsmanager" filter="s60" name="WS Service Manager">
+        <unit bldFile="webservices/wsmanager/group"/>
+      </component>
+      <component id="wsidentitymanager" filter="s60" name="WS Identity Manager">
+        <unit bldFile="webservices/wsidentitymanager/group"/>
+      </component>
+      <component id="wsframework" filter="s60" name="WS Framework">
+        <unit bldFile="webservices/wsframework/group"/>
+      </component>
+      <component id="wsmessages" filter="s60" name="WS Messages">
+        <unit bldFile="webservices/wsmessages/group"/>
+      </component>
+      <component id="wsconnectionagent" filter="s60" name="WS Connection Agent">
+        <unit bldFile="webservices/wsconnectionagent/group"/>
+      </component>
+      <component id="idwsfplugin" filter="s60" name="ID-WSF Plugin" class="plugin">
+        <unit bldFile="webservices/idwsfplugin/group"/>
+      </component>
+      <component id="wsibasicplugin" filter="s60" name="WS-I Basic Plugin" class="plugin">
+        <unit bldFile="webservices/wsibasicplugin/group"/>
+      </component>
+      <component id="wsrestplugin" filter="s60" name="WS REST Plugin" class="plugin">
+        <unit bldFile="webservices/wsrestplugin/group"/>
+      </component>
+      <component id="idwsfsecuritymechanism" filter="s60" name="ID-WSF Security Mechanism">
+        <unit bldFile="webservices/idwsfsecuritymechanism/group"/>
+      </component>
+      <component id="wspasswordtransforms" filter="s60" name="WS Password Transforms">
+        <unit bldFile="webservices/wspasswordtransforms/group"/>
+      </component>
+      <component id="wscore" filter="s60" name="WS Core Service Manager">
+        <unit bldFile="webservices/wscore/group"/>
+      </component>
+      <component id="wsprovider" filter="s60" name="WS Provider">
+        <unit bldFile="webservices/wsprovider/group"/>
+      </component>
+      <component id="wslocaltransportplugin" filter="s60" name="WS Local Transport Plugin" class="plugin">
+        <unit bldFile="webservices/wslocaltransportplugin/group"/>
+      </component>
+      <component id="wshostlettransportplugin" filter="s60" name="WS Hostlet Transport Plugin" class="plugin">
+        <unit bldFile="webservices/wshostlettransportplugin/group"/>
+      </component>
+      <component id="wsstar" filter="s60" name="WS Star">
+        <!-- <unit bldFile="webservices/wsstar/group"/> -->
+      </component>
+      <component id="wsoviplugin" filter="s60" name="WS Ovi Plugin">
+        <unit bldFile="webservices/wsoviplugin/group"/>
+      </component>
+      <component id="webservices_build" filter="s60" name="Web Services Build">
+        <unit bldFile="webservices/group"/>
+      </component>
+    </collection>
+    <collection id="websrv_info" name="Web Services Info" level="specific">
+      <component id="websrv_pub" filter="s60" name="Web Services Public Interfaces" class="api">
+        <unit bldFile="websrv_pub/group"/>
+        	<!-- should these be #included? -->
+        <!-- <unit bldFile="websrv_pub/hostlet_connection_api/tsrc/bc/hostconn/group"/> -->
+        <!-- <unit bldFile="websrv_pub/hostlet_connection_api/tsrc/group"/> -->
+        <!-- <unit bldFile="websrv_pub/hostlet_connection_api/tsrc/hostconn/group"/> -->
+        <!-- <unit bldFile="websrv_pub/hostlet_connection_api/tsrc/hostconntester/group"/> -->
+        <!-- <unit bldFile="websrv_pub/web_service_connection_api/tsrc/bc/connection/group"/> -->
+        <!-- <unit bldFile="websrv_pub/web_service_connection_api/tsrc/bc/senutils/group"/> -->
+        <!-- <unit bldFile="websrv_pub/web_service_connection_api/tsrc/connection/group"/> -->
+        <!-- <unit bldFile="websrv_pub/web_service_connection_api/tsrc/group"/> -->
+        <!-- <unit bldFile="websrv_pub/web_service_connection_api/tsrc/senconnectiontester/group"/> -->
+        <!-- <unit bldFile="websrv_pub/web_service_connection_api/tsrc/senconnectiontimeoutstester/group"/> -->
+        <!-- <unit bldFile="websrv_pub/web_service_connection_api/tsrc/senlayeredpropertiestester/group"/> -->
+        <!-- <unit bldFile="websrv_pub/web_service_connection_api/tsrc/senutils/group"/> -->
+        <!-- <unit bldFile="websrv_pub/web_service_connection_api/tsrc/senutilstestcases/group"/> -->
+        <!-- <unit bldFile="websrv_pub/web_service_connection_api/tsrc/wspolicytester/group"/> -->
+        <!-- <unit bldFile="websrv_pub/web_service_connection_api/tsrc/wsstarmessagehandlertester/group"/> -->
+        <!-- <unit bldFile="websrv_pub/web_service_description_api/tsrc/bc/senservdesc/group"/> -->
+        <!-- <unit bldFile="websrv_pub/web_service_description_api/tsrc/group"/> -->
+        <!-- <unit bldFile="websrv_pub/web_service_description_api/tsrc/senservdesc/group"/> -->
+        <!-- <unit bldFile="websrv_pub/web_service_description_api/tsrc/senservdesctester/group"/> -->
+        <!-- <unit bldFile="websrv_pub/web_service_manager_api/tsrc/bc/senservicemanager/group"/> -->
+        <!-- <unit bldFile="websrv_pub/web_service_manager_api/tsrc/group"/> -->
+        <!-- <unit bldFile="websrv_pub/web_service_manager_api/tsrc/senservicemanager/group"/> -->
+        <!-- <unit bldFile="websrv_pub/web_service_manager_api/tsrc/senservicemanagertester/group"/> -->
+        <!-- <unit bldFile="websrv_pub/web_service_messaging_api/tsrc/bc/newsoapclasses/group"/> -->
+        <!-- <unit bldFile="websrv_pub/web_service_messaging_api/tsrc/group"/> -->
+        <!-- <unit bldFile="websrv_pub/web_service_messaging_api/tsrc/newsoapclasses/group"/> -->
+        <!-- <unit bldFile="websrv_pub/web_service_messaging_api/tsrc/newsoapclassestester/group"/> -->
+        <!-- <unit bldFile="websrv_pub/xml_extensions_api/tsrc/group"/> -->
+        <!-- <unit bldFile="websrv_pub/xml_extensions_api/tsrc/senxml/group"/> -->
+        <!-- <unit bldFile="websrv_pub/xml_extensions_api/tsrc/senxmltester/group"/> -->
+        <!-- <unit bldFile="websrv_pub/xml_fragment_api/tsrc/group"/> -->
+        <!-- <unit bldFile="websrv_pub/xml_fragment_api/tsrc/senfragmenttester/group"/> -->
+      </component>
+    </collection>
+  </package>
+</SystemDefinition>
--- a/symbian3/mw/wirelessacc/package_definition.xml	Mon Feb 01 16:11:43 2010 +0000
+++ b/symbian3/mw/wirelessacc/package_definition.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -1,109 +1,130 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE SystemDefinition [
- <!ELEMENT SystemDefinition (systemModel?,SystemBuild?)>
- <!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (block*|collection*)*>
- <!ATTLIST layer
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED>
- <!ELEMENT block (subblock*|collection*)*>
- <!ATTLIST block
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED
-  level NMTOKEN #IMPLIED
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT subblock (collection)*>
- <!ATTLIST subblock
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT collection (component)*>
- <!ATTLIST collection
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  level NMTOKEN #IMPLIED>
- <!ELEMENT component (unit)*>
- <!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>
- <!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>
- <!ELEMENT SystemBuild (option*|target+|targetList+|list+|configuration+)*>
- <!ATTLIST SystemBuild schema CDATA #REQUIRED>
- <!ELEMENT list (ref+)>
- <!ATTLIST list
-  name ID #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT ref EMPTY>
- <!ATTLIST ref item CDATA #REQUIRED>
- <!ELEMENT targetList EMPTY>
- <!ATTLIST targetList
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  target IDREFS #REQUIRED>
- <!ELEMENT target EMPTY>
- <!ATTLIST target
-  name ID #REQUIRED
-  abldTarget CDATA #REQUIRED
-  description CDATA #REQUIRED>
- <!ELEMENT option EMPTY>
- <!ATTLIST option
-  name ID #REQUIRED
-  abldOption CDATA #REQUIRED
-  description CDATA #REQUIRED
-  enable (Y|N) #REQUIRED>
- <!ELEMENT configuration (listRef+|ref+|task+)*>
- <!ATTLIST configuration
-  name ID #REQUIRED
-  description CDATA #REQUIRED
-  filter CDATA #REQUIRED>
- <!ELEMENT task (listRef*,(buildLayer|specialInstructions))>
- <!ELEMENT listRef EMPTY>
- <!ATTLIST listRef list CDATA #REQUIRED>
- <!ELEMENT buildLayer EMPTY>
- <!ATTLIST buildLayer
-  command CDATA #REQUIRED
-  targetList IDREFS #IMPLIED
-  unitParallel (Y|N) #REQUIRED
-  targetParallel (Y|N) 'N'>
- <!ELEMENT specialInstructions EMPTY>
- <!ATTLIST specialInstructions
-  name CDATA #REQUIRED
-  cwd CDATA #REQUIRED
-  root CDATA #IMPLIED
-  command CDATA #REQUIRED>
-]>
-<SystemDefinition schema="2.0.1" name="Symbian^3">
-<systemModel>
-<layer name="mw">
-<block name="wirelessacc">
-<collection name="s60">
-<component name="wirelessacc">
-<unit bldFile="/sf/mw/wirelessacc/group" mrp=""/>
-</component>
-</collection>
-</block>
-</layer>
-</systemModel>
+<!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="mw" long-name="Middleware" levels="generic specific">
+      <block name="wirelessacc" level="specific" long-name="Wireless Access" levels="framework generic ui">
+        <collection name="hotspotfw" long-name="HotSpot Framework" level="framework">
+          <component name="hsserver" filter="s60" long-name="HotSpot Server" class="placeholder">
+            <!-- needs bld.inf extracted from the hotspotfw/group one, or this component should be removed-->
+          </component>
+          <component name="hsclient" filter="s60" long-name="HotSpot Client" class="placeholder">
+            <!-- needs bld.inf extracted from the hotspotfw/group one, or this component should be removed-->
+          </component>
+          <component name="internetconnectivitytestservice" filter="s60" long-name="Internet Connectivity Test Service" class="placeholder">
+            <!-- needs bld.inf un-#included from hotspotfw/group/bld.inf, or this component should be removed-->
+            <!-- <unit bldFile="hotspotfw/internetconnectivitytestservice/group"/> -->
+          </component>
+          <component name="ictsdialogs" filter="s60" long-name="Internet Connectivity Test Service Dialogs" deprecated="^3" class="placeholder">
+            <!-- needs bld.inf un-#included from hotspotfw/group/bld.inf, or this component should be removed-->
+            <!-- <unit bldFile="hotspotfw/ictsdialogs/group"/> -->
+          </component>
+          <component name="hspluginforagent" filter="s60" long-name="HotSpot Plugin for Agent" plugin="Y" class="placeholder">
+            <!-- needs bld.inf un-#included from hotspotfw/group/bld.inf, or this component should be removed-->
+            <!-- <unit bldFile="hotspotfw/hspluginforagent/group"/> -->
+          </component>
+          <component name="hsbrowser" filter="s60" long-name="HotSpot Browser" class="placeholder">
+            <!-- needs bld.inf un-#included from hotspotfw/group/bld.inf, or this component should be removed-->
+            <!-- <unit bldFile="hotspotfw/hsbrowser/group"/> -->
+          </component>
+          <component name="hotspotfw_build" filter="s60" long-name="Hotspot Framework Build">
+            <!--  should break up this bld.inf into the above components, or collapse them all into a single component -->
+            <unit bldFile="/sf/mw/wirelessacc/hotspotfw/group"/>
+          </component>
+        </collection>
+        <collection name="wlanutilities" long-name="WLAN Utilities" level="generic">
+          <component name="wlanplugin" filter="s60" long-name="WLAN Plugin" plugin="Y">
+            <unit bldFile="/sf/mw/wirelessacc/wlanutilities/wlanplugin/group"/>
+          </component>
+          <component name="wlansettingsui" filter="s60" long-name="WLAN Settings UI">
+            <unit bldFile="/sf/mw/wirelessacc/wlanutilities/wlansettingsui/group"/>
+          </component>
+          <component name="wlansniffer" filter="s60" long-name="WLAN Sniffer">
+            <unit bldFile="/sf/mw/wirelessacc/wlanutilities/wlansniffer/group"/>
+          </component>
+          <component name="wlanindicatorplugin" filter="s60" long-name="WLAN Indicator Plugin" plugin="Y">
+            <unit bldFile="/sf/mw/wirelessacc/wlanutilities/wlanindicatorplugin/group"/>
+          </component>
+        </collection>
+        <collection name="wirelessacc_info" long-name="Wireless Access Info" level="ui">
+          <component name="hsfw_plat" long-name="HotSpot Framework Platform Interfaces" filter="s60" class="api">
+            <unit bldFile="/sf/mw/wirelessacc/hsfw_plat/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
 </SystemDefinition>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/symbian3/mw/wirelessacc/package_definition_3.0.xml	Tue Feb 02 19:53:24 2010 +0000
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<SystemDefinition schema="3.0.0">
+  <package id="wirelessacc" name="Wireless Access" levels="framework generic ui">
+    <collection id="hotspotfw" name="HotSpot Framework" level="framework">
+      <component id="hsserver" filter="s60" name="HotSpot Server">
+      	<!-- needs bld.inf extracted from the hotspotfw/group one, or this component should be removed-->
+      </component>
+      <component id="hsclient" filter="s60" name="HotSpot Client">
+      	<!-- needs bld.inf extracted from the hotspotfw/group one, or this component should be removed-->
+      </component>
+      <component id="internetconnectivitytestservice" filter="s60" name="Internet Connectivity Test Service">
+      	<!-- needs bld.inf un-#included from hotspotfw/group/bld.inf, or this component should be removed-->
+        <!-- <unit bldFile="hotspotfw/internetconnectivitytestservice/group"/> -->
+      </component>
+      <component id="ictsdialogs" filter="s60" name="Internet Connectivity Test Service Dialogs" deprecated="^3">
+      	<!-- needs bld.inf un-#included from hotspotfw/group/bld.inf, or this component should be removed-->
+        <!-- <unit bldFile="hotspotfw/ictsdialogs/group"/> -->
+      </component>
+      <component id="hspluginforagent" filter="s60" name="HotSpot Plugin for Agent" class="plugin">
+      	<!-- needs bld.inf un-#included from hotspotfw/group/bld.inf, or this component should be removed-->
+        <!-- <unit bldFile="hotspotfw/hspluginforagent/group"/> -->
+      </component>
+      <component id="hsbrowser" filter="s60" name="HotSpot Browser">
+      	<!-- needs bld.inf un-#included from hotspotfw/group/bld.inf, or this component should be removed-->
+        <!-- <unit bldFile="hotspotfw/hsbrowser/group"/> -->
+      </component>
+      <component id="hotspotfw_build" filter="s60" name="Hotspot Framework Build">
+      	<!--  should break up this bld.inf into the above components, or collapse them all into a single component -->
+        <unit bldFile="hotspotfw/group"/>
+      </component>
+    </collection>
+    <collection id="wlanutilities" name="WLAN Utilities" level="generic">
+      <component id="wlanplugin" filter="s60" name="WLAN Plugin" class="plugin">
+        <unit bldFile="wlanutilities/wlanplugin/group"/>
+      </component>
+      <component id="wlansettingsui" filter="s60" name="WLAN Settings UI">
+        <unit bldFile="wlanutilities/wlansettingsui/group"/>
+      </component>
+      <component id="wlansniffer" filter="s60" name="WLAN Sniffer">
+        <unit bldFile="wlanutilities/wlansniffer/group"/>
+      </component>
+      <component id="wlanindicatorplugin" filter="s60" name="WLAN Indicator Plugin" class="plugin">
+        <unit bldFile="wlanutilities/wlanindicatorplugin/group"/>
+      </component>
+    </collection>
+    <collection id="wirelessacc_info" name="Wireless Access Info" level="ui">
+      <component id="hsfw_plat" name="HotSpot Framework Platform Interfaces" filter="s60" class="api">
+        <unit bldFile="hsfw_plat/group"/>
+      </component>
+    </collection>
+  </package>
+</SystemDefinition>