Update the pkgdefs for the remainder of the app layer HighFidelityModel
authorBob Rosenberg <bob.rosenberg@nokia.com>
Thu, 28 Jan 2010 14:49:47 +0000
branchHighFidelityModel
changeset 39 bd4651024dad
parent 38 12159035c0ef
child 40 2894405e4486
Update the pkgdefs for the remainder of the app layer
symbian3/app/commonemail/package_definition_3.0.xml
symbian3/app/contentcontrol/package_definition.xml
symbian3/app/graphicsuis/package_definition.xml
symbian3/app/helps/package_definition.xml
symbian3/app/homescreen/package_definition.xml
symbian3/app/homescreen/package_definition_3.0.xml
symbian3/app/homescreentools/package_definition.xml
symbian3/app/im/package_definition.xml
symbian3/app/iptelephony/package_definition.xml
symbian3/app/location/package_definition.xml
symbian3/app/messaging/package_definition.xml
symbian3/app/mmsharinguis/package_definition.xml
symbian3/app/musicplayer/package_definition.xml
symbian3/app/organizer/package_definition.xml
symbian3/app/phone/package_definition.xml
symbian3/app/photos/package_definition.xml
symbian3/app/printing/package_definition.xml
symbian3/app/profile/package_definition.xml
symbian3/app/radio/package_definition.xml
symbian3/app/rndtools/package_definition.xml
symbian3/app/screensaver/package_definition.xml
symbian3/app/settingsuis/package_definition.xml
symbian3/app/speechsrv/package_definition.xml
symbian3/app/techview/package_definition.xml
symbian3/app/utils/package_definition.xml
symbian3/app/videoplayer/package_definition.xml
symbian3/app/videoplayer/package_definition_3.0.xml
symbian3/app/videotelephony/package_definition.xml
symbian3/app/voicerec/package_definition.xml
symbian3/app/voicerec/package_definition_3.0.xml
symbian3/app/webuis/package_definition.xml
symbian3/app/webuis/package_definition_3.0.xml
symbian3/tools/homescreentools/package_definition.xml
--- a/symbian3/app/commonemail/package_definition_3.0.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/commonemail/package_definition_3.0.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -130,7 +130,7 @@
       </component>
       <component id="widget" filter="s60" name="Email Widget" introduced="^2">
         <meta rel="config">
-        	<condition not-defined="FF_CMAIL_INTEGRATION"/>
+        	<not-defined condition="FF_CMAIL_INTEGRATION"/>
         </meta>      
         <unit bldFile="emailuis/widget/group"/>
       </component>
--- a/symbian3/app/contentcontrol/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/contentcontrol/package_definition.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -1,78 +1,78 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE SystemDefinition [
-<!ELEMENT SystemDefinition ( systemModel )>
-<!ATTLIST SystemDefinition
-  name CDATA #REQUIRED
-  schema CDATA #REQUIRED
->
-<!-- all paths are relative to the environment variable specified by the root attribute, or SOURCEROOT if not.  -->
-
-<!-- System Model Section of DTD -->
-<!ELEMENT systemModel (layer+)>
-
-<!ELEMENT layer (block* | collection*)*>
-<!-- Kernel Services, Base Services, OS Services, Etc -->
-<!ATTLIST layer
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED
->
-
-<!ELEMENT block (subblock* | collection*)*>
- <!-- Generic OS services, Comms Services, etc -->
-<!ATTLIST block
-  levels NMTOKENS #IMPLIED
-  span CDATA #IMPLIED
-  level NMTOKEN #IMPLIED
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
->
-
-<!ELEMENT subblock (collection)*>
-<!-- Cellular Baseband Services, Networking Services, etc -->
-<!ATTLIST subblock
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
->
-
-<!ELEMENT collection (component)*>
-<!-- Screen Driver, Content Handling, etc -->
-<!ATTLIST collection
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  level NMTOKEN #IMPLIED
->
-
-<!ELEMENT component (unit)*>
-<!-- contains units or is a  package or prebuilt -->
-<!ATTLIST component
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED
-  deprecated CDATA #IMPLIED
-  introduced CDATA #IMPLIED
-  contract CDATA #IMPLIED
-  plugin (Y|N) "N"
-  filter CDATA #IMPLIED
-  class NMTOKENS #IMPLIED
-  supports CDATA #IMPLIED
-  purpose ( optional | mandatory | development ) "optional"
->
-
-<!ELEMENT unit EMPTY >
-<!-- must be buildable (bld.inf) -->
-<!-- bldFile  may someday be removed in favour of mrp -->
-<!ATTLIST unit
-  mrp CDATA #IMPLIED
-  filter CDATA #IMPLIED
-  bldFile CDATA #IMPLIED
-  root CDATA #IMPLIED
-  version NMTOKEN #IMPLIED
-  prebuilt NMTOKEN #IMPLIED
-  late (Y|N) #IMPLIED
-  priority CDATA #IMPLIED
->
-]>
+<!DOCTYPE SystemDefinition [
+<!ELEMENT SystemDefinition ( systemModel )>
+<!ATTLIST SystemDefinition
+  name CDATA #REQUIRED
+  schema CDATA #REQUIRED
+>
+<!-- all paths are relative to the environment variable specified by the root attribute, or SOURCEROOT if not.  -->
+
+<!-- System Model Section of DTD -->
+<!ELEMENT systemModel (layer+)>
+
+<!ELEMENT layer (block* | collection*)*>
+<!-- Kernel Services, Base Services, OS Services, Etc -->
+<!ATTLIST layer
+  name CDATA #REQUIRED
+  long-name CDATA #IMPLIED
+  levels NMTOKENS #IMPLIED
+  span CDATA #IMPLIED
+>
+
+<!ELEMENT block (subblock* | collection*)*>
+ <!-- Generic OS services, Comms Services, etc -->
+<!ATTLIST block
+  levels NMTOKENS #IMPLIED
+  span CDATA #IMPLIED
+  level NMTOKEN #IMPLIED
+  name CDATA #REQUIRED
+  long-name CDATA #IMPLIED
+>
+
+<!ELEMENT subblock (collection)*>
+<!-- Cellular Baseband Services, Networking Services, etc -->
+<!ATTLIST subblock
+  name CDATA #REQUIRED
+  long-name CDATA #IMPLIED
+>
+
+<!ELEMENT collection (component)*>
+<!-- Screen Driver, Content Handling, etc -->
+<!ATTLIST collection
+  name CDATA #REQUIRED
+  long-name CDATA #IMPLIED
+  level NMTOKEN #IMPLIED
+>
+
+<!ELEMENT component (unit)*>
+<!-- contains units or is a  package or prebuilt -->
+<!ATTLIST component
+  name CDATA #REQUIRED
+  long-name CDATA #IMPLIED
+  deprecated CDATA #IMPLIED
+  introduced CDATA #IMPLIED
+  contract CDATA #IMPLIED
+  plugin (Y|N) "N"
+  filter CDATA #IMPLIED
+  class NMTOKENS #IMPLIED
+  supports CDATA #IMPLIED
+  purpose ( optional | mandatory | development ) "optional"
+>
+
+<!ELEMENT unit EMPTY >
+<!-- must be buildable (bld.inf) -->
+<!-- bldFile  may someday be removed in favour of mrp -->
+<!ATTLIST unit
+  mrp CDATA #IMPLIED
+  filter CDATA #IMPLIED
+  bldFile CDATA #IMPLIED
+  root CDATA #IMPLIED
+  version NMTOKEN #IMPLIED
+  prebuilt NMTOKEN #IMPLIED
+  late (Y|N) #IMPLIED
+  priority CDATA #IMPLIED
+>
+]>
 <SystemDefinition name="Symbian^3" schema="2.0.1">
   <systemModel>
     <layer name="app" long-name="Applications" levels="services apps">
@@ -99,4 +99,4 @@
       </block>
     </layer>
   </systemModel>
-</SystemDefinition>
\ No newline at end of file
+</SystemDefinition>
--- a/symbian3/app/graphicsuis/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/graphicsuis/package_definition.xml	Thu Jan 28 14:49:47 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="app" long-name="Applications" levels="services apps">
-<block name="graphicsuis" level="services" long-name="Graphics UIs">
-<collection name="s60">
-<component name="graphicsuis">
-<unit bldFile="/sf/app/graphicsuis/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="app" long-name="Applications" levels="services apps">
+      <block name="graphicsuis" level="services" long-name="Graphics UIs" levels="util ui">
+        <collection name="graphicsuis_info" long-name="Graphics UIs Info" level="ui">
+          <component name="graphicsuis_plat" filter="s60" long-name="Graphics UIs Platform Interfaces" class="api">
+            <unit bldFile="/sf/app/graphicsuis/graphicsuis_plat/group"/>
+          </component>
+        </collection>
+        <collection name="svgtviewer" long-name="SVG-T Viewer" level="ui">
+          <component name="svgtviewerplugin" filter="s60" long-name="SVG-T Viewer Plugin">
+            <unit bldFile="/sf/app/graphicsuis/svgtviewer/svgtviewerplugin/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/app/helps/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/helps/package_definition.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -1,120 +1,99 @@
 <?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="app" long-name="Applications" levels="services apps">
-<block name="helps" level="apps" span="2" long-name="Help Apps" levels="eng tools if ui">
-<collection name="helps_info" long-name="Help Apps Info" level="ui">
-<component name="helps_metadata" long-name="Help Apps Metadata" introduced="tb91" purpose="development" class="config PC">
-<unit mrp="/sf/app/helps/helps_info/helps_metadata/helps_metadata.mrp"/>
-</component>
-</collection>
-<!-- MattD 20091102 - Adding to fix build failures -->
-    <collection name="symhelp" long-name="Symbian Help" level="eng">
-      <component name="helpmodel" long-name="Help" introduced="6.0" purpose="optional">
-        <unit bldFile="/sf/app/helps/symhelp/helpmodel/group" mrp="/sf/app/helps/symhelp/helpmodel/group/app-services_hlpmodel.mrp"/>
-      </component>
-    </collection>
-<collection name="s60">
-<component name="helps">
-<unit bldFile="/sf/app/helps/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="app" long-name="Applications" levels="services apps">
+      <block name="helps" level="apps" span="2" long-name="Help Apps" levels="eng tools if ui">
+        <collection name="csxhelp" long-name="Context Sensitive Extended Help" level="if">
+          <!-- this is really a component. Should move it down a directory -->
+          <component name="csxhelp_build" filter="s60" long-name="Context Sensitive Extended Help Build">
+            <unit bldFile="/sf/app/helps/csxhelp/group"/>
+          </component>
+        </collection>
+        <collection name="symhelp" long-name="Symbian Help" level="eng">
+          <component name="helpmodel" long-name="Help" introduced="6.0" purpose="optional">
+            <unit bldFile="/sf/app/helps/symhelp/helpmodel/group" mrp="/sf/app/helps/symhelp/helpmodel/group/app-services_hlpmodel.mrp"/>
+          </component>
+        </collection>
+        <collection name="helps_info" long-name="Help Apps Info" level="ui">
+          <component name="helps_metadata" long-name="Help Apps Metadata" introduced="^2" purpose="development" class="config PC">
+            <unit mrp="/sf/app/helps/helps_info/helps_metadata/helps_metadata.mrp"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/app/homescreen/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/homescreen/package_definition.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -1,109 +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="app" long-name="Applications" levels="services apps">
-<block name="homescreen" level="apps" long-name="Home Screen Apps">
-<collection name="s60">
-<component name="homescreen">
-<unit bldFile="/sf/app/homescreen/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="app" long-name="Applications" levels="services apps">
+      <block name="homescreen" level="apps" long-name="Home Screen Apps" levels="fw apps">
+        <collection name="idlehomescreen" long-name="Idle Home Screen" level="apps">
+          <component name="nativeuicontroller" filter="s60" long-name="Native UI Controller">
+            <unit bldFile="/sf/app/homescreen/idlehomescreen/nativeuicontroller/group"/>
+          </component>
+          <component name="exths" filter="s60" long-name="Active Idle Container" plugin="Y">
+            <!-- why is the ID so different from the name? Is one wrong? -->
+            <unit bldFile="/sf/app/homescreen/idlehomescreen/exths/group"/>
+          </component>
+          <component name="hscontentcontrol" filter="s60" long-name="Home Screen Content Control" introduced="^3">
+            <unit bldFile="/sf/app/homescreen/idlehomescreen/hscontentcontrol/group"/>
+          </component>
+          <component name="hssapiwrapper" filter="s60" long-name="HS SAPI Wrapper" introduced="^3">
+            <!--  can only have one unit. #include from a common bld.inf, or split into two components -->
+            <unit bldFile="/sf/app/homescreen/idlehomescreen/sapiwrapper/cpswrapper/group"/>
+            <unit bldFile="/sf/app/homescreen/idlehomescreen/sapiwrapper/hspswrapper/group"/>
+          </component>
+          <component name="xmluirendering" filter="s60" long-name="XML UI Rendering" introduced="^3">
+            <unit bldFile="/sf/app/homescreen/idlehomescreen/xmluirendering/group"/>
+          </component>
+          <component name="xmluicontroller" filter="s60" long-name="XML UI Controller" introduced="^3">
+            <unit bldFile="/sf/app/homescreen/idlehomescreen/xmluicontroller/group"/>
+          </component>
+          <component name="widgetmanager" filter="s60" long-name="Widget Manager" introduced="^3">
+            <unit bldFile="/sf/app/homescreen/idlehomescreen/widgetmanager/group"/>
+          </component>
+          <component name="idlehomescreen_help" filter="s60" long-name="Idle Home Screen Help">
+            <unit bldFile="/sf/app/homescreen/idlehomescreen/help/group"/>
+          </component>
+          <component name="idlehomescreen_data" filter="s60" long-name="Idle Home Screen Data">
+            <unit bldFile="/sf/app/homescreen/idlehomescreen/data/group"/>
+          </component>
+          <component name="idlehomescreen_build" filter="s60" long-name="Idle Home Screen Build">
+            <!-- can the loc file be moved to another comopnent and this one removed?f -->
+            <unit bldFile="/sf/app/homescreen/idlehomescreen/group"/>
+          </component>
+          <component name="homescreen_test" filter="s60,test" purpose="development" long-name="Home Screen Apps Test">
+            <unit bldFile="/sf/app/homescreen/idlehomescreen/widgetmanager/tsrc/wmunittest/group"/>
+          </component>
+        </collection>
+        <collection name="menufw" long-name="Menu Framework" level="fw">
+          <component name="hierarchynavigator" filter="s60" long-name="Hierarchy Navigator">
+            <unit bldFile="/sf/app/homescreen/menufw/hierarchynavigator/group"/>
+          </component>
+          <component name="menufwui" filter="s60" long-name="Menu Framework UI">
+            <unit bldFile="/sf/app/homescreen/menufw/menufwui/group"/>
+          </component>
+          <component name="menusuites" filter="s60" long-name="Menu Suites">
+            <unit bldFile="/sf/app/homescreen/menufw/menusuites/group"/>
+          </component>
+          <component name="menufw_build" filter="s60" long-name="Menu Framework Build">
+            <!-- can the exports be exported by the other components? -->
+            <unit bldFile="/sf/app/homescreen/menufw/group"/>
+          </component>
+        </collection>
+        <collection name="taskswitcher" long-name="Task Switcher" level="apps">
+          <component name="contextengine" filter="s60" long-name="Context Engine" introduced="^3">
+            <unit bldFile="/sf/app/homescreen/taskswitcher/contextengine/group"/>
+          </component>
+          <component name="taskswitcherui" filter="s60" long-name="Task Switcher UI" introduced="^3">
+            <unit bldFile="/sf/app/homescreen/taskswitcher/taskswitcherui/group"/>
+          </component>
+        </collection>
+        <collection name="homescreen_info" long-name="Home Screen Apps Info" level="apps">
+          <component name="homescreen_plat" filter="s60" long-name="Home Screen Apps Platform Interfaces" class="api">
+            <unit bldFile="/sf/app/homescreen/homescreen_plat/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/app/homescreen/package_definition_3.0.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/homescreen/package_definition_3.0.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -31,7 +31,7 @@
       </component>
       <component id="idlehomescreen_data" filter="s60" name="Idle Home Screen Data">
         <meta rel="config">
-        	<condition not-defined="FF_HOMESCREEN_COMMON_IDLEFW"/>
+        	<defined condition="FF_HOMESCREEN_COMMON_IDLEFW"/>
         		<!-- currently always on, so safe to define here for now -->
         </meta>
         <unit bldFile="idlehomescreen/data/group"/>
@@ -41,7 +41,6 @@
         <unit bldFile="idlehomescreen/group"/>
       </component>
       <component id="homescreen_test" filter="s60,test" purpose="development" name="Home Screen Apps Test">
-      	<!--  why isn't this #included from widgetmanager? -->
         <unit bldFile="idlehomescreen/widgetmanager/tsrc/wmunittest/group"/>
       </component>      
     </collection>
--- a/symbian3/app/homescreentools/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/homescreentools/package_definition.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -1,103 +1,109 @@
 <?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="app" long-name="Applications" levels="services apps">
-<block name="homescreentools" level="services" long-name="Home Screen Tools"/>
-</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="app" long-name="Applications" levels="services apps">
+      <block name="homescreentools" level="services" long-name="Home Screen Tools" levels="tool install">
+        <collection name="dtdinstaller" long-name="DTD Installer" level="install">
+          <!-- collection is really a component. Needs to be moved down a directory -->
+          <!-- this needs to be built first, does build order need to be forced with filters? -->
+          <component name="dtdinstaller_build" filter="s60" long-name="DTD Installer Build" class="tool PC">
+            <unit bldFile="/sf/tools/homescreentools/dtdinstaller/group"/>
+          </component>
+        </collection>
+        <collection name="themeinstaller" long-name="Theme Installer" level="install">
+          <!-- collection is really a component. Needs to be moved down a directory -->
+          <component name="themeinstaller_build" filter="s60" long-name="Theme Installer Build" class="tool PC">
+            <unit bldFile="/sf/tools/homescreentools/themeinstaller/group"/>
+          </component>
+        </collection>
+        <collection name="widgettools" long-name="Widget Tools" level="install">
+          <component name="hspluginpreinstaller" filter="s60" long-name="HS Plugin Preinstaller" introduced="^3" class="tool PC">
+            <unit bldFile="/sf/tools/homescreentools/widgettools/hspluginpreinstaller/group"/>
+          </component>
+          <component name="wrtwidgetpreinstaller" filter="s60" long-name="WRT Widget Preinstaller" introduced="^3" class="tool PC">
+            <unit bldFile="/sf/tools/homescreentools/widgettools/wrtwidgetpreinstaller/group"/>
+          </component>
+        </collection>
+        <collection name="themetool" long-name="Theme Tool" level="tool">
+          <component name="themetool_build" filter="s60" long-name="Theme Tool Build" class="tool PC">
+            <unit bldFile="/sf/tools/homescreentools/themetool/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/app/im/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/im/package_definition.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -1,109 +1,94 @@
 <?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="app" long-name="Applications" levels="services apps">
-<block name="im" level="apps" long-name="Instant Messaging Apps">
-<collection name="s60">
-<component name="im">
-<unit bldFile="/sf/app/im/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="app" long-name="Applications" levels="services apps">
+      <block name="im" level="apps" long-name="Instant Messaging Apps" levels="support prot engine apps">
+        <collection name="wvsettings20" long-name="Wireless Village Settings Engine" level="support">
+          <!-- this is really a component. should move down a directory -->
+          <component name="wvsapsettingsstore" long-name="WV SAP Settings Store" filter="s60" introduced="9.3">
+            <unit bldFile="/sf/app/im/wvsettings20/group"/>
+          </component>
+        </collection>
+        <collection name="im_info" long-name="Instant Messaging Apps Info" level="apps">
+          <component name="im_plat" filter="s60" long-name="Instant Messaging Apps Platform Interfaces" class="api">
+            <unit bldFile="/sf/app/im/im_plat/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/app/iptelephony/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/iptelephony/package_definition.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -1,109 +1,194 @@
 <?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="app" long-name="Applications" levels="services apps">
-<block name="iptelephony" level="apps" long-name="IP Telephony">
-<collection name="s60">
-<component name="iptelephony">
-<unit bldFile="/sf/app/iptelephony/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="app" long-name="Applications" levels="services apps">
+      <block name="iptelephony" level="apps" long-name="IP Telephony" levels="eng plugin util ui">
+        <collection name="iptelcommsconfig" long-name="IP Telephony Comms Config" level="ui">
+          <component name="cscgsplugin" filter="s60" long-name="CSC GS Plugin" introduced="^2" plugin="Y">
+            <unit bldFile="/sf/app/iptelephony/commsconfig/cscgsplugin/group"/>
+          </component>
+          <component name="cscsipvoipcleanupplugin" filter="s60" long-name="CSC SIP VoIP Cleanup Plugin" introduced="^2" plugin="Y">
+            <unit bldFile="/sf/app/iptelephony/commsconfig/cscsipvoipcleanupplugin/group"/>
+          </component>
+          <component name="cscengine" filter="s60" long-name="Connection Service Configurator Engine" introduced="^2">
+            <unit bldFile="/sf/app/iptelephony/commsconfig/cscengine/group"/>
+          </component>
+          <component name="cscsettingsui" filter="s60" long-name="CSC Settings UI" introduced="^2">
+            <unit bldFile="/sf/app/iptelephony/commsconfig/cscsettingsui/group"/>
+          </component>
+          <component name="cscapplicationui" filter="s60" long-name="CSC Application UI" introduced="^2">
+            <unit bldFile="/sf/app/iptelephony/commsconfig/cscapplicationui/group"/>
+          </component>
+          <component name="commsconfig_build" filter="s60" long-name="Comms Config Build" introduced="^2">
+            <!--  consider distributing this into the above components -->
+            <unit bldFile="/sf/app/iptelephony/commsconfig/group"/>
+          </component>
+        </collection>
+        <collection name="convergedconnectionhandler" long-name="Converged Connection Handler" level="eng">
+          <component name="cchserver" filter="s60" long-name="CCH Server" introduced="^2">
+            <unit bldFile="/sf/app/iptelephony/convergedconnectionhandler/cchserver/group"/>
+          </component>
+          <component name="cchclient" filter="s60" long-name="CCH Client" introduced="^2">
+            <unit bldFile="/sf/app/iptelephony/convergedconnectionhandler/cchclient/group"/>
+          </component>
+          <component name="cchclientapi" filter="s60" long-name="CCH Client API" introduced="^2">
+            <unit bldFile="/sf/app/iptelephony/convergedconnectionhandler/cchclientapi/group"/>
+          </component>
+          <component name="convergedconnectionhandler_build" filter="s60" long-name="CCH Build" introduced="^2">
+            <!--  consider distributing this into the above components, or collapse the collection into a single component. 
+      		The latter is a better option since clients and sevrers are rarely separate components -->
+            <unit bldFile="/sf/app/iptelephony/convergedconnectionhandler/group"/>
+          </component>
+        </collection>
+        <collection name="richcallsettingsengine" long-name="Rich Call Settings Engine" level="eng">
+          <component name="rcse2" filter="s60" long-name="Rich Call Settings Engine Build" introduced="^2">
+            <unit bldFile="/sf/app/iptelephony/richcallsettingsengine/rcse2/group"/>
+          </component>
+        </collection>
+        <collection name="sipvoipprovider" long-name="SIP VoIP Provider" level="plugin">
+          <!-- collection is really a component. Should move down a directory -->
+          <component name="svp" filter="s60" long-name="SIP VoIP Provider Build" introduced="^2" plugin="Y">
+            <unit bldFile="/sf/app/iptelephony/sipvoipprovider/group"/>
+          </component>
+        </collection>
+        <collection name="voipplugins" long-name="VoIP Plugins" level="plugin">
+          <component name="sipmxresolver" filter="s60" long-name="SIP MX Resolver" introduced="^2" plugin="Y">
+            <unit bldFile="/sf/app/iptelephony/voipplugins/sipmxresolver/group"/>
+          </component>
+          <component name="sipconnectionprovider" filter="s60" long-name="SIP Connection Provider" introduced="^2" plugin="Y">
+            <unit bldFile="/sf/app/iptelephony/voipplugins/sipconnectionprovider/group"/>
+            <!-- can only have one unit, can the next be #'included from the above? -->
+            <unit bldFile="/sf/app/iptelephony/voipplugins/sipconnectionprovider/ipvoicemailengine/group"/>
+          </component>
+          <component name="ipapputils" filter="s60" long-name="IP App Utils" introduced="^2">
+            <unit bldFile="/sf/app/iptelephony/voipplugins/ipapputils/group"/>
+          </component>
+          <component name="voipadapters" filter="s60" long-name="VoIP Adapters" introduced="^2" plugin="Y">
+            <unit bldFile="/sf/app/iptelephony/voipplugins/voipadapters/group"/>
+          </component>
+          <component name="accountcreationplugin" filter="s60" long-name="Account Creation Plugin" introduced="^2" plugin="Y">
+            <unit bldFile="/sf/app/iptelephony/voipplugins/accountcreationplugin/group"/>
+          </component>
+          <component name="dhcppositionprovider" filter="s60" long-name="DHCP Position Provider" introduced="^2" plugin="Y">
+            <unit bldFile="/sf/app/iptelephony/voipplugins/dhcppositionprovider/group"/>
+          </component>
+          <component name="svtmatching" filter="s60" long-name="SIP VoIP Telephony Matching" introduced="^2" plugin="Y">
+            <unit bldFile="/sf/app/iptelephony/voipplugins/svtmatching/group"/>
+          </component>
+          <component name="svtlogging" filter="s60" long-name="SVT Logging" introduced="^2" plugin="Y">
+            <unit bldFile="/sf/app/iptelephony/voipplugins/svtlogging/group"/>
+          </component>
+          <component name="svtcallmenu" filter="s60" long-name="SVT Call Menu" introduced="^2" plugin="Y">
+            <unit bldFile="/sf/app/iptelephony/voipplugins/svtcallmenu/group"/>
+          </component>
+          <component name="sipimresolver" filter="s60" long-name="SIP IM Resolver" introduced="^3" plugin="Y">
+            <unit bldFile="/sf/app/iptelephony/voipplugins/sipimresolver/group"/>
+          </component>
+        </collection>
+        <collection name="callcontinuity" long-name="Call Continuity" level="util">
+          <component name="vccutils" filter="s60" long-name="VCC Utils" introduced="^2">
+            <unit bldFile="/sf/app/iptelephony/callcontinuity/vccutils/group"/>
+          </component>
+          <component name="nsmldmvccadapter" filter="s60" long-name="SyncML DM VCC Adapter" introduced="^2" plugin="Y">
+            <unit bldFile="/sf/app/iptelephony/callcontinuity/nsmldmvccadapter/group"/>
+          </component>
+          <component name="vccclientprovisioningadapter" filter="s60" long-name="VCC Client Provisioning Adapter" introduced="^2" plugin="Y">
+            <unit bldFile="/sf/app/iptelephony/callcontinuity/vccclientprovisioningadapter/group"/>
+          </component>
+          <component name="vccpropertyhandler" filter="s60" long-name="VCC Property Handler" introduced="^2">
+            <unit bldFile="/sf/app/iptelephony/callcontinuity/vccpropertyhandler/group"/>
+          </component>
+          <component name="vcchotrigger" filter="s60" long-name="VCC HO Trigger" introduced="^2">
+            <unit bldFile="/sf/app/iptelephony/callcontinuity/vcchotrigger/group"/>
+          </component>
+          <component name="vcc" filter="s60" long-name="VoIP Call Continuity" introduced="^2" plugin="Y">
+            <unit bldFile="/sf/app/iptelephony/callcontinuity/vcc/group"/>
+          </component>
+          <component name="callcontinuity_build" filter="s60" long-name="Call Continuity Build" introduced="^2">
+            <!--  consider distributing this into the above components -->
+            <unit bldFile="/sf/app/iptelephony/callcontinuity/group"/>
+          </component>
+        </collection>
+        <collection name="iptelephony_info" long-name="IP Telephony Info" level="ui">
+          <component name="iptel_plat" filter="s60" long-name="IP Telephony Platform Interfaces" introduced="^2" class="api">
+            <unit bldFile="/sf/app/iptelephony/iptel_plat/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/app/location/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/location/package_definition.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -1,109 +1,192 @@
 <?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="app" long-name="Applications" levels="services apps">
-<block name="location" level="apps" long-name="Location Apps">
-<collection name="s60">
-<component name="location">
-<unit bldFile="/sf/app/location/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="app" long-name="Applications" levels="services apps">
+      <block name="location" level="apps" long-name="Location Apps" levels="ui events loc apps">
+        <collection name="basiclocationinfodisplay" long-name="Basic Location Info Display" level="ui">
+          <component name="blid" filter="s60" long-name="Basic Location Info Display Build">
+            <unit bldFile="/sf/app/location/basiclocationinfodisplay/blid/group"/>
+          </component>
+        </collection>
+        <collection name="landmarksui" long-name="Landmarks UI" level="loc">
+          <component name="landmarksui_help" filter="s60" long-name="Landmarks UI Help">
+            <unit bldFile="/sf/app/location/landmarksui/help/group"/>
+          </component>
+          <component name="landmarksui_engine" filter="s60" long-name="Landmarks UI Engine">
+            <unit bldFile="/sf/app/location/landmarksui/engine/group"/>
+          </component>
+          <component name="uicontrols" filter="s60" long-name="Landmarks UI Controls">
+            <unit bldFile="/sf/app/location/landmarksui/uicontrols/group"/>
+          </component>
+          <component name="landmarksui_commonui" filter="s60" long-name="Landmarks Common UI">
+            <unit bldFile="/sf/app/location/landmarksui/commonui/group"/>
+          </component>
+          <component name="landmarksui_app" filter="s60" long-name="Landmarks Application">
+            <unit bldFile="/sf/app/location/landmarksui/app/group"/>
+          </component>
+          <component name="msgviewer" filter="s60" long-name="Landmarks Message Viewer">
+            <unit bldFile="/sf/app/location/landmarksui/msgviewer/group"/>
+          </component>
+          <component name="landmarksui_build" filter="s60" long-name="Landmarks UI Build">
+            <!-- consider distributing this into the other components or collapsing into a single component -->
+            <unit bldFile="/sf/app/location/landmarksui/group"/>
+          </component>
+        </collection>
+        <collection name="eventsui" long-name="Location Events UI" level="events">
+          <component name="eventsui_help" filter="s60" long-name="Events Help">
+            <unit bldFile="/sf/app/location/eventsui/help/group"/>
+          </component>
+          <component name="eventsutils" filter="s60" long-name="Events Utils">
+            <unit bldFile="/sf/app/location/eventsui/eventsutils/group"/>
+          </component>
+          <component name="eventsengine" filter="s60" long-name="Events Engine">
+            <unit bldFile="/sf/app/location/eventsui/eventsengine/group"/>
+          </component>
+          <component name="eventshandlerui" filter="s60" long-name="Events Handler UI">
+            <unit bldFile="/sf/app/location/eventsui/eventshandlerui/group"/>
+          </component>
+          <component name="eventseditor" filter="s60" long-name="Events Editor">
+            <unit bldFile="/sf/app/location/eventsui/eventseditor/group"/>
+          </component>
+          <component name="eventsmgmtui" filter="s60" long-name="Events Management UI">
+            <unit bldFile="/sf/app/location/eventsui/eventsmgmtui/group"/>
+          </component>
+          <component name="eventsui_build" filter="s60" long-name="Events UI Build">
+            <!-- consider distributing this into the other components or collapsing into a single component -->
+            <unit bldFile="/sf/app/location/eventsui/group"/>
+          </component>
+        </collection>
+        <collection name="locationlandmarksrefappfors60" long-name="Location Landmarks Reference App for S60" level="apps">
+          <!-- this is a component, needs to be moved down a directory -->
+          <component name="lmrefapp" filter="s60" long-name="Landmarks Reference Application">
+            <unit bldFile="/sf/app/location/locationlandmarksrefappfors60/group"/>
+          </component>
+        </collection>
+        <collection name="locationlandmarksuirefapp" long-name="Location Landmarks UI Reference App" level="apps">
+          <!-- this is a component, needs to be moved down a directory -->
+          <component name="lmuirefapp" filter="s60" long-name="Landmarks UI Reference Application">
+            <unit bldFile="/sf/app/location/locationlandmarksuirefapp/group"/>
+          </component>
+        </collection>
+        <collection name="locationsatviewrefapp" long-name="Location Satellite View Reference App" level="apps">
+          <!-- this is a component, needs to be moved down a directory -->
+          <component name="satellitereference" filter="s60" long-name="Satellite Info UI Reference Application">
+            <unit bldFile="/sf/app/location/locationsatviewrefapp/group"/>
+          </component>
+        </collection>
+        <collection name="simpsyconfigurator" long-name="Simulation PSY Configurator" level="ui">
+          <!-- this is a component, needs to be moved down a directory -->
+          <component name="simpsyui" filter="s60" long-name="Simulation PSY UI">
+            <unit bldFile="/sf/app/location/simpsyconfigurator/group"/>
+          </component>
+        </collection>
+        <collection name="mapnavproviderrefapp" long-name="Map and Navigation Provider Reference App" level="apps">
+          <!-- this is a component, needs to be moved down a directory -->
+          <component name="mapnavproviderrefapp_build" filter="s60" long-name="Map and Navigation Provider Reference Application">
+            <unit bldFile="/sf/app/location/mapnavproviderrefapp/group"/>
+          </component>
+        </collection>
+        <collection name="locationcentre" long-name="Location Centre" level="loc">
+          <component name="lcutils" long-name="Location Centre Utilities" filter="s60" introduced="^3">
+            <unit bldFile="/sf/app/location/locationcentre/lcutils/group"/>
+          </component>
+          <component name="lcservice" long-name="Location Centre Service Project" filter="s60" introduced="^3">
+            <unit bldFile="/sf/app/location/locationcentre/lcservice/group"/>
+          </component>
+          <component name="lcserver" long-name="Location Centre Server Project" filter="s60" introduced="^3">
+            <unit bldFile="/sf/app/location/locationcentre/lcserver/group"/>
+          </component>
+          <component name="lcapp" long-name="Location Centre Application" filter="s60" introduced="^3">
+            <unit bldFile="/sf/app/location/locationcentre/lcapp/group"/>
+          </component>
+          <component name="locationcentre_build" filter="s60" long-name="Location Centre Build" introduced="^3">
+            <!-- consider distributing this into the other components or collapsing into a single component -->
+            <unit bldFile="/sf/app/location/locationcentre/group"/>
+          </component>
+        </collection>
+        <collection name="location_info" long-name="Location Apps Info" level="loc">
+          <component name="loc_pub" filter="s60" long-name="Location Apps Public Interfaces" class="api">
+            <unit bldFile="/sf/app/location/loc_pub/group"/>
+          </component>
+          <component name="loc_plat" filter="s60" long-name="Location Apps Platform Interfaces" introduced="^3" class="api">
+            <unit bldFile="/sf/app/location/loc_plat/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/app/messaging/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/messaging/package_definition.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -1,143 +1,236 @@
 <?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="app" long-name="Applications" levels="services apps">
-<block name="messaging" level="apps" span="2" long-name="Messaging Apps" levels="mail eng base ui">
-<collection name="mobilemessaging" long-name="Mobile Messaging" level="ui">
-<component name="smsmtm" long-name="SMS MTM" purpose="optional" plugin="Y">
-<unit bldFile="/sf/app/messaging/mobilemessaging/smsmtm/group" mrp="/sf/app/messaging/mobilemessaging/smsmtm/group/messaging_sms.mrp"/>
-</component>
-</collection>
-<collection name="mmsengine" long-name="MMS Engine" level="eng">
-<component name="mmssettings" long-name="MMS Settings" introduced="9.2" purpose="optional">
-<unit bldFile="/sf/app/messaging/mmsengine/mmssettings/group" mrp="/sf/app/messaging/mmsengine/mmssettings/group/messaging_mmssettings.mrp"/>
-</component>
-<component name="mmsconf" long-name="MMS Configuration" purpose="optional">
-<unit bldFile="/sf/app/messaging/mmsengine/mmsconf" mrp="/sf/app/messaging/mmsengine/mmsconf/messaging_mmssettings-config.mrp"/>
-</component>
-</collection>
-<collection name="messagingappbase" long-name="Messaging App Base" level="base">
-<component name="smilparser" long-name="SMIL Parser" introduced="7.0s" purpose="optional">
-<unit bldFile="/sf/app/messaging/messagingappbase/smilparser/GROUP" mrp="/sf/app/messaging/messagingappbase/smilparser/GROUP/messaging_gmxml.mrp"/>
-</component>
-<component name="obexmtms" long-name="OBEX MTMs" introduced="7.0s" purpose="optional" plugin="Y">
-<unit bldFile="/sf/app/messaging/messagingappbase/obexmtms/Group" mrp="/sf/app/messaging/messagingappbase/obexmtms/Group/messaging_obex.mrp"/>
-</component>
-</collection>
-<collection name="email" long-name="Email" level="mail">
-<component name="pop3andsmtpmtm" long-name="POP3 and SMTP MTM" purpose="optional" plugin="Y">
-<unit bldFile="/sf/app/messaging/email/pop3andsmtpmtm/group" mrp="/sf/app/messaging/email/pop3andsmtpmtm/group/messaging_email.mrp"/>
-</component>
-<component name="imap4mtm" long-name="IMAP4 MTM" introduced="9.2" purpose="optional" plugin="Y">
-<unit bldFile="/sf/app/messaging/email/imap4mtm/group" mrp="/sf/app/messaging/email/imap4mtm/group/messaging_email_imap.mrp"/>
-</component>
-</collection>
-<collection name="messaging_info" long-name="Messaging Apps Info" level="ui">
-<component name="messaging_metadata" long-name="Messaging Apps Metadata" introduced="tb91" purpose="development" class="config PC">
-<unit mrp="/sf/app/messaging/messaging_info/messaging_metadata/messaging_metadata.mrp"/>
-</component>
-</collection>
-<collection name="s60">
-<component name="messaging">
-<unit bldFile="/sf/app/messaging/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="app" long-name="Applications" levels="services apps">
+      <block name="messaging" level="apps" span="2" long-name="Messaging Apps" levels="mail eng base ui">
+        <collection name="mobilemessaging" long-name="Mobile Messaging" level="ui">
+          <component name="audiomsg" filter="s60" long-name="Audio Message">
+            <unit bldFile="/sf/app/messaging/mobilemessaging/audiomsg/group"/>
+          </component>
+          <component name="msgmedia" filter="s60" long-name="Message Media">
+            <unit bldFile="/sf/app/messaging/mobilemessaging/msgmedia/group"/>
+          </component>
+          <component name="unieditor" filter="s60" long-name="Unified Editor">
+            <unit bldFile="/sf/app/messaging/mobilemessaging/unieditor/group"/>
+          </component>
+          <component name="mmsui" filter="s60" long-name="MMS UI">
+            <unit bldFile="/sf/app/messaging/mobilemessaging/mmsui/group"/>
+          </component>
+          <component name="postcard" filter="s60" long-name="Postcard">
+            <unit bldFile="/sf/app/messaging/mobilemessaging/postcard/group"/>
+          </component>
+          <component name="smilui" filter="s60" long-name="SMIL UI">
+            <unit bldFile="/sf/app/messaging/mobilemessaging/smilui/group"/>
+          </component>
+          <component name="smum" filter="s60" long-name="SMS UI MTM and UI Data MTM" plugin="Y">
+            <unit bldFile="/sf/app/messaging/mobilemessaging/smum/group"/>
+          </component>
+          <component name="smsui" filter="s60" long-name="SMS UI">
+            <unit bldFile="/sf/app/messaging/mobilemessaging/smsui/group"/>
+          </component>
+          <component name="smsmtm" long-name="SMS MTM" purpose="optional" plugin="Y">
+            <unit bldFile="/sf/app/messaging/mobilemessaging/smsmtm/group" mrp="/sf/app/messaging/mobilemessaging/smsmtm/group/messaging_sms.mrp"/>
+          </component>
+        </collection>
+        <collection name="mmsengine" long-name="MMS Engine" level="eng">
+          <component name="mmsconninit" filter="s60" long-name="MMS Connection Initiator" class="placeholder">
+            <!-- <unit bldFile="mmsengine/mmsconninit/bld"/> -->
+          </component>
+          <component name="genutils" filter="s60" long-name="General Utils" class="placeholder">
+            <!-- <unit bldFile="mmsengine/genutils/bld"/> -->
+          </component>
+          <component name="mmsserversettings" filter="s60" long-name="MMS Server Settings" class="placeholder">
+            <!-- <unit bldFile="mmsengine/mmsserversettings/bld"/> -->
+          </component>
+          <component name="mmsmessage" filter="s60" long-name="MMS Message" class="placeholder">
+            <!-- <unit bldFile="mmsengine/mmsmessage/bld"/> -->
+          </component>
+          <component name="mmshttptransport" filter="s60" long-name="MMS HTTP Transport" class="placeholder">
+            <!-- <unit bldFile="mmsengine/mmshttptransport/bld"/> -->
+          </component>
+          <component name="mmscodec" filter="s60" long-name="MMS Codec" class="placeholder">
+            <!-- <unit bldFile="mmsengine/mmscodec/bld"/> -->
+          </component>
+          <component name="mmsserver" filter="s60" long-name="MMS Server" class="placeholder">
+            <!-- <unit bldFile="mmsengine/mmsserver/bld"/> -->
+          </component>
+          <component name="clientmtm" filter="s60" long-name="MMS Client MTM" plugin="Y" class="placeholder">
+            <!-- <unit bldFile="mmsengine/clientmtm/bld"/> -->
+          </component>
+          <component name="mmswatcher" filter="s60" long-name="MMS Watcher" plugin="Y" class="placeholder">
+            <!-- <unit bldFile="mmsengine/mmswatcher/bld"/> -->
+          </component>
+          <component name="mmspushhandler" filter="s60" long-name="MMS Push Handler" plugin="Y" class="placeholder">
+            <!-- <unit bldFile="mmsengine/mmspushhandler/bld"/> -->
+          </component>
+          <component name="applicationadapter" filter="s60" long-name="MMS Application Adapter" class="placeholder">
+            <!-- <unit bldFile="mmsengine/applicationadapter/bld"/> -->
+          </component>
+          <component name="mmscodecclient" filter="s60" long-name="MMS Codec Client" class="placeholder">
+            <!-- <unit bldFile="mmsengine/mmscodecclient/bld"/> -->
+          </component>
+          <component name="mmssettings" long-name="MMS Settings" introduced="9.2" purpose="optional">
+            <unit bldFile="/sf/app/messaging/mmsengine/mmssettings/group" mrp="/sf/app/messaging/mmsengine/mmssettings/group/messaging_mmssettings.mrp"/>
+          </component>
+          <component name="mmsconf" long-name="MMS Configuration" purpose="optional">
+            <unit bldFile="/sf/app/messaging/mmsengine/mmsconf" mrp="/sf/app/messaging/mmsengine/mmsconf/messaging_mmssettings-config.mrp"/>
+          </component>
+          <component name="mmsengine_build" filter="s60" long-name="MMS Engine Build">
+            <!-- this bld.inf should be broken up into the individual other components -->
+            <unit bldFile="/sf/app/messaging/mmsengine/group"/>
+          </component>
+        </collection>
+        <collection name="messagingappbase" long-name="Messaging App Base" level="base">
+          <component name="msgavkon" filter="s60" long-name="Messaging Avkon UI">
+            <unit bldFile="/sf/app/messaging/messagingappbase/msgavkon/group"/>
+          </component>
+          <component name="mce" filter="s60" long-name="Message Center Application">
+            <unit bldFile="/sf/app/messaging/messagingappbase/mce/group"/>
+          </component>
+          <component name="mceextraitems" filter="s60" long-name="Message Center Extra Items">
+            <unit bldFile="/sf/app/messaging/messagingappbase/mceextraitems/group"/>
+          </component>
+          <component name="mcesettings" filter="s60" long-name="Message Center Settings">
+            <unit bldFile="/sf/app/messaging/messagingappbase/mcesettings/group"/>
+          </component>
+          <component name="msgerrorwatcher" filter="s60" long-name="Messaging Error Watcher" plugin="Y">
+            <unit bldFile="/sf/app/messaging/messagingappbase/msgerrorwatcher/group"/>
+          </component>
+          <component name="ncnlist" filter="s60" long-name="New Contacts Note List">
+            <unit bldFile="/sf/app/messaging/messagingappbase/ncnlist/group"/>
+          </component>
+          <component name="schemeplugin" filter="s60" long-name="Scheme Handler Plugin" plugin="Y">
+            <unit bldFile="/sf/app/messaging/messagingappbase/schemeplugin/group"/>
+          </component>
+          <component name="sendui" filter="s60" long-name="Send UI" plugin="Y">
+            <unit bldFile="/sf/app/messaging/messagingappbase/sendui/group"/>
+          </component>
+          <component name="smilengine" filter="s60" long-name="SMIL Engine">
+            <unit bldFile="/sf/app/messaging/messagingappbase/smilengine/group"/>
+          </component>
+          <component name="bium" filter="s60" long-name="BIO UI MTM" plugin="Y">
+            <unit bldFile="/sf/app/messaging/messagingappbase/bium/group"/>
+          </component>
+          <component name="smartmessaging" filter="s60" long-name="Smart Messaging">
+            <unit bldFile="/sf/app/messaging/messagingappbase/smartmessaging/group"/>
+          </component>
+          <component name="msgeditor" filter="s60" long-name="Messaging Editor">
+            <unit bldFile="/sf/app/messaging/messagingappbase/msgeditor/group"/>
+          </component>
+          <component name="smilparser" long-name="SMIL Parser" introduced="7.0s" purpose="optional">
+            <unit bldFile="/sf/app/messaging/messagingappbase/smilparser/GROUP" mrp="/sf/app/messaging/messagingappbase/smilparser/GROUP/messaging_gmxml.mrp"/>
+          </component>
+          <component name="obexmtms" long-name="OBEX MTMs" introduced="7.0s" purpose="optional" plugin="Y">
+            <unit bldFile="/sf/app/messaging/messagingappbase/obexmtms/Group" mrp="/sf/app/messaging/messagingappbase/obexmtms/Group/messaging_obex.mrp"/>
+          </component>
+        </collection>
+        <collection name="email" long-name="Email" level="mail">
+          <!-- use commonemail instead -->
+          <component name="alwaysonlineemailplugin" filter="s60" long-name="Always Online Mail Plugin" deprecated="^3" plugin="Y">
+            <unit bldFile="/sf/app/messaging/email/alwaysonlineemailplugin/group"/>
+          </component>
+          <component name="emailnotificationhandler" filter="s60" long-name="Email Notification Handler" deprecated="^3" plugin="Y">
+            <unit bldFile="/sf/app/messaging/email/emailnotificationhandler/group"/>
+          </component>
+          <component name="imum" filter="s60" long-name="Internet Mail UI MTM" deprecated="^3" plugin="Y">
+            <unit bldFile="/sf/app/messaging/email/imum/group"/>
+          </component>
+          <component name="mail" filter="s60" long-name="Mail Application" deprecated="^3">
+            <unit bldFile="/sf/app/messaging/email/mail/group"/>
+          </component>
+          <component name="pop3andsmtpmtm" long-name="POP3 and SMTP MTM" purpose="optional" deprecated="^3" plugin="Y">
+            <unit bldFile="/sf/app/messaging/email/pop3andsmtpmtm/group" mrp="/sf/app/messaging/email/pop3andsmtpmtm/group/messaging_email.mrp"/>
+          </component>
+          <component name="imap4mtm" long-name="IMAP4 MTM" introduced="9.2" purpose="optional" deprecated="^3" plugin="Y">
+            <unit bldFile="/sf/app/messaging/email/imap4mtm/group" mrp="/sf/app/messaging/email/imap4mtm/group/messaging_email_imap.mrp"/>
+          </component>
+        </collection>
+        <collection name="messaging_info" long-name="Messaging Apps Info" level="ui">
+          <component name="msg_plat" long-name="Messaging Apps Platform APIs" filter="s60" class="api">
+            <unit bldFile="/sf/app/messaging/msg_plat/group"/>
+          </component>
+          <component name="msg_pub" long-name="Messaging Apps Public APIs" filter="s60" class="api">
+            <unit bldFile="/sf/app/messaging/msg_pub/group"/>
+          </component>
+          <component name="messaging_metadata" long-name="Messaging Apps Metadata" introduced="^2" purpose="development" class="config PC">
+            <unit mrp="/sf/app/messaging/messaging_info/messaging_metadata/messaging_metadata.mrp"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/app/mmsharinguis/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/mmsharinguis/package_definition.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -1,109 +1,138 @@
 <?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="app" long-name="Applications" levels="services apps">
-<block name="mmsharinguis" level="services" long-name="Multimedia Sharing UIs">
-<collection name="s60">
-<component name="mmsharinguis">
-<unit bldFile="/sf/app/mmsharinguis/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="app" long-name="Applications" levels="services apps">
+      <block name="mmsharinguis" level="services" long-name="Multimedia Sharing UIs" levels="base plugin if">
+        <collection name="mmsharing" long-name="Multimedia Sharing" level="base">
+          <component name="mmshavailability" filter="s60" long-name="Multimedia Sharing Availability">
+            <unit bldFile="/sf/app/mmsharinguis/mmsharing/mmshavailability/group"/>
+          </component>
+          <component name="mmshindicator" filter="s60" long-name="Multimedia Sharing Indicator">
+            <unit bldFile="/sf/app/mmsharinguis/mmsharing/mmshindicator/group"/>
+          </component>
+          <!-- consider putting client and server in the same component -->
+          <component name="mmshmanagercli" filter="s60" long-name="Multimedia Sharing Manager Client">
+            <unit bldFile="/sf/app/mmsharinguis/mmsharing/mmshmanagercli/group"/>
+          </component>
+          <component name="mmshmanagersrv" filter="s60" long-name="Multimedia Sharing Manager Server">
+            <unit bldFile="/sf/app/mmsharinguis/mmsharing/mmshmanagersrv/group"/>
+          </component>
+          <component name="mmshengine" filter="s60" long-name="Multimedia Sharing Engine">
+            <unit bldFile="/sf/app/mmsharinguis/mmsharing/mmshengine/group"/>
+          </component>
+          <component name="mmshui" filter="s60" long-name="Multimedia Sharing UI">
+            <!-- can only have one unti: need to #include one from the other if it's needed -->
+            <unit bldFile="/sf/app/mmsharinguis/mmsharing/mmshui/group"/>
+            <unit bldFile="/sf/app/mmsharinguis/mmsharing/mmshui/help/group"/>
+          </component>
+          <component name="mmsharing_build" filter="s60" long-name="MM Sharing Build">
+            <unit bldFile="/sf/app/mmsharinguis/mmsharing/group"/>
+          </component>
+        </collection>
+        <collection name="mmshplugins" long-name="Multimedia Sharing Plugins" level="plugin">
+          <component name="mmshaoplugin" filter="s60" long-name="Multimedia Sharing Always Online Plugin" plugin="Y">
+            <unit bldFile="/sf/app/mmsharinguis/mmshplugins/mmshaoplugin/group"/>
+          </component>
+          <component name="mmshaiwplugin" filter="s60" long-name="Multimedia Sharing AIW Plugin" plugin="Y">
+            <unit bldFile="/sf/app/mmsharinguis/mmshplugins/mmshaiwplugin/group"/>
+          </component>
+          <component name="mmshsipcrplugin" filter="s60" long-name="Multimedia Sharing SIP Client Resolver Plugin" plugin="Y">
+            <unit bldFile="/sf/app/mmsharinguis/mmshplugins/mmshsipcrplugin/group"/>
+          </component>
+          <component name="mmshsettingsuiplugin" filter="s60" long-name="Multimedia Sharing Settings UI Plugin" plugin="Y">
+            <unit bldFile="/sf/app/mmsharinguis/mmshplugins/mmshsettingsuiplugin/group"/>
+          </component>
+          <component name="mmshwpadapterplugin" filter="s60" long-name="Multimedia Sharing WAP Provisioning Adapter" plugin="Y">
+            <unit bldFile="/sf/app/mmsharinguis/mmshplugins/mmshwpadapterplugin/group"/>
+          </component>
+        </collection>
+        <collection name="mmsharinguis_info" long-name="Multimedia Sharing UIs Info" level="if">
+          <component name="mmsharinguis_build" filter="s60" long-name="Multimedia Sharing UIs Build">
+            <!--  consider distributing to other components -->
+            <unit bldFile="/sf/app/mmsharinguis/group"/>
+          </component>
+          <component name="mmsharinguis_plat" filter="s60" long-name="Multimedia Sharing UIs Platform Interfaces" class="api">
+            <unit bldFile="/sf/app/mmsharinguis/mmsharinguis_plat/group"/>
+          </component>
+          <component name="mmsharinguis_plat" filter="s60,api_test" long-name="Multimedia Sharing UIs API Tests" class="api">
+            <unit bldFile="/sf/app/mmsharinguis/mmsharinguis_plat/multimedia_sharing_manager_api/tsrc/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/app/musicplayer/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/musicplayer/package_definition.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -1,109 +1,153 @@
 <?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="app" long-name="Applications" levels="services apps">
-<block name="musicplayer" level="apps" long-name="Music Player Apps">
-<collection name="s60">
-<component name="musicplayer">
-<unit bldFile="/sf/app/musicplayer/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="app" long-name="Applications" levels="services apps">
+      <block name="musicplayer" level="apps" long-name="Music Player Apps" levels="plugins support hs app">
+        <!-- custom filter pref_test-->
+        <collection name="mpxmusicplayer" long-name="MPX Music Player" level="app">
+          <component name="mpxmusicplayer_help" filter="s60" long-name="Help">
+            <unit bldFile="/sf/app/musicplayer/mpxmusicplayer/help/group"/>
+          </component>
+          <component name="mpxmusicplayer_commonui" filter="s60" long-name="MPX Common UI">
+            <unit bldFile="/sf/app/musicplayer/mpxmusicplayer/commonui/group"/>
+          </component>
+          <component name="mpx_activeidle" filter="s60" long-name="MPX Active Idle">
+            <unit bldFile="/sf/app/musicplayer/mpxmusicplayer/activeidle/group"/>
+          </component>
+          <component name="mpx_metadatahandler" filter="s60" long-name="MPX Metadata Handler">
+            <unit bldFile="/sf/app/musicplayer/mpxmusicplayer/metadatahandler/group"/>
+          </component>
+          <component name="mediakeyhandler" filter="s60" long-name="MPX Media Key Handler">
+            <unit bldFile="/sf/app/musicplayer/mpxmusicplayer/mediakeyhandler/group"/>
+          </component>
+          <component name="mpxmusicplayer_app" filter="s60" long-name="MPX Application">
+            <unit bldFile="/sf/app/musicplayer/mpxmusicplayer/app/group"/>
+          </component>
+          <component name="mpxmusicplayer_build" filter="s60" long-name="MPX Music Player Build">
+            <!--  can the exports be distributed to the above components?  -->
+            <unit bldFile="/sf/app/musicplayer/mpxmusicplayer/group"/>
+          </component>
+        </collection>
+        <collection name="musichomescreen_multiview" long-name="Music Home Screen Multiview" level="hs">
+          <component name="mpxcollectionpublisher" filter="s60" long-name="MPX Collection Publisher" introduced="^2">
+            <unit bldFile="/sf/app/musicplayer/musichomescreen_multiview/mpxcollectionpublisher/group"/>
+          </component>
+          <component name="musiccontentpublisher" filter="s60" long-name="Music Content Publisher" introduced="^2">
+            <unit bldFile="/sf/app/musicplayer/musichomescreen_multiview/musiccontentpublisher/group"/>
+          </component>
+          <component name="mcpmusicplayer" filter="s60" long-name="Music Player MCP Plugin" introduced="^2" plugin="Y">
+            <unit bldFile="/sf/app/musicplayer/musichomescreen_multiview/mcpmusicplayer/group"/>
+          </component>
+          <component name="musicplayeractionhandlerplugin" filter="s60" long-name="Music Player Action Handler Plugin" introduced="^2" plugin="Y">
+            <unit bldFile="/sf/app/musicplayer/musichomescreen_multiview/musicplayeractionhandlerplugin/group"/>
+          </component>
+          <component name="mpx_data" filter="s60" long-name="MPX Data" introduced="^2">
+            <!-- does this make sense to be a component? should it just be #include from musichomescreen_multiview/group? -->
+            <unit bldFile="/sf/app/musicplayer/musichomescreen_multiview/data/themes/default/group"/>
+          </component>
+          <component name="musichomescreen_build" filter="s60" long-name="Music Homescreen Multiview Build" introduced="^2">
+            <unit bldFile="/sf/app/musicplayer/musichomescreen_multiview/group"/>
+          </component>
+        </collection>
+        <collection name="mpxplugins" long-name="MPX Plugins" level="plugins">
+          <component name="serviceplugins" filter="s60" long-name="MPX Service Plugins" plugin="Y">
+            <unit bldFile="/sf/app/musicplayer/mpxplugins/serviceplugins/group"/>
+          </component>
+          <component name="viewplugins" filter="s60" long-name="MPX View Plugins" plugin="Y">
+            <unit bldFile="/sf/app/musicplayer/mpxplugins/viewplugins/group"/>
+          </component>
+          <component name="mpxplugins_build" filter="s60" long-name="MPX Plugins Build">
+            <!--  can the exports be distributed to the above components?  -->
+            <unit bldFile="/sf/app/musicplayer/mpxplugins/group"/>
+          </component>
+        </collection>
+        <collection name="musicplayer_info" long-name="Music Player Apps Info" level="app">
+          <component name="musicplayer_build" filter="s60" long-name="Music Player Build">
+            <!-- should explicityly #inlcude musicplayerbldvariant.hrh in each component  -->
+            <unit bldFile="/sf/app/musicplayer/group"/>
+          </component>
+          <component name="musicplayer_plat" filter="s60" long-name="Music Player Apps Platform Interfaces" class="api">
+            <unit bldFile="/sf/app/musicplayer/musicplayer_plat/group"/>
+          </component>
+          <component name="musicplayer_test" filter="s60,pref_test,api_test" purpose="development" long-name="Music Player Apps Test">
+            <unit bldFile="/sf/app/musicplayer/tsrc/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/app/organizer/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/organizer/package_definition.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -1,133 +1,269 @@
 <?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="app" long-name="Applications" levels="services apps">
-<block name="organizer" level="apps" span="2" long-name="Organizer Application Suite" levels="support services engine ui app">
-<collection name="pimappservices" long-name="PIM App Services" level="services">
-<component name="calendar" long-name="Calendar" introduced="9.2" purpose="optional">
-<unit bldFile="/sf/app/organizer/pimappservices/calendar/group" mrp="/sf/app/organizer/pimappservices/calendar/group/app-engines_calendar.mrp" version="2"/>
-</component>
-<component name="calendarvcalplugin" long-name="Calendar vCal Plugin" introduced="8.1" purpose="optional" plugin="Y">
-<unit bldFile="/sf/app/organizer/pimappservices/calendarvcalplugin/group" mrp="/sf/app/organizer/pimappservices/calendarvcalplugin/group/app-engines_agnversit2.mrp" version="2"/>
-</component>
-<component name="appenginesdocs" long-name="Application Engines Documentation" purpose="development" class="doc">
-<unit mrp="/sf/app/organizer/pimappservices/appenginesdocs/app-engines_documentation.mrp"/>
-</component>
-</collection>
-<collection name="pimappsupport" long-name="PIM Application Support" level="support">
-<component name="vcardandvcal" long-name="vCard and vCal" introduced="ER5" purpose="optional">
-<unit bldFile="/sf/app/organizer/pimappsupport/vcardandvcal/group" mrp="/sf/app/organizer/pimappsupport/vcardandvcal/group/app-services_versit.mrp"/>
-</component>
-<component name="chinesecalendarconverter" long-name="Chinese Calendar Converter" introduced="6.1" purpose="optional">
-<unit bldFile="/sf/app/organizer/pimappsupport/chinesecalendarconverter/group" mrp="/sf/app/organizer/pimappsupport/chinesecalendarconverter/group/app-services_calcon.mrp"/>
-</component>
-</collection>
-<collection name="organizer_info" long-name="Organizer Application Suite Info" level="app">
-<component name="organizer_metadata" long-name="Organizer Application Suite Metadata" introduced="tb91" purpose="development" class="config PC">
-<unit mrp="/sf/app/organizer/organizer_info/organizer_metadata/organizer_metadata.mrp"/>
-</component>
-</collection>
-<collection name="s60">
-<component name="organizer">
-<unit bldFile="/sf/app/organizer/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="app" long-name="Applications" levels="services apps">
+      <block name="organizer" level="apps" span="2" long-name="Organizer Application Suite" levels="support services engine ui app">
+        <collection name="alarmengines" long-name="Alarm Engines" level="engine">
+          <component name="missedalarmstore" filter="s60" long-name="Missed Alarm Store">
+            <unit bldFile="/sf/app/organizer/alarmengines/missedalarmstore/group"/>
+          </component>
+        </collection>
+        <collection name="calendarengines" long-name="Calendar Engines" level="engine">
+          <component name="versit2" filter="s60" long-name="Versit 2 iCal Parser" introduced="9.2">
+            <unit bldFile="/sf/app/organizer/calendarengines/versit2/group"/>
+          </component>
+          <component name="agnversit2" filter="s60" long-name="Versit 2 Agenda Interface" introduced="9.2" plugin="Y">
+            <unit bldFile="/sf/app/organizer/calendarengines/agnversit2/group"/>
+          </component>
+          <component name="caleninterimutils" filter="s60" long-name="Calendar Interim Utils" introduced="9.1">
+            <unit bldFile="/sf/app/organizer/calendarengines/caleninterimutils/group"/>
+          </component>
+          <component name="calenimp" filter="s60" long-name="Calendar Import Wrapper" introduced="7.0s">
+            <unit bldFile="/sf/app/organizer/calendarengines/calenimp/group"/>
+          </component>
+          <component name="calenlauncher" filter="s60" long-name="Calendar Launcher">
+            <unit bldFile="/sf/app/organizer/calendarengines/calenlauncher/group"/>
+          </component>
+        </collection>
+        <collection name="meetingrequestengines" long-name="Meeting Request Engines" level="engine">
+          <component name="mrmailbox" filter="s60" long-name="Meeting Request Mailbox">
+            <unit bldFile="/sf/app/organizer/meetingrequestengines/mrmailbox/group"/>
+          </component>
+          <component name="mrmailboxutils" filter="s60" long-name="Meeting Request Mailbox Utils" plugin="Y">
+            <unit bldFile="/sf/app/organizer/meetingrequestengines/mrmailboxutils/group"/>
+          </component>
+        </collection>
+        <collection name="searchfw" long-name="Search Framework" level="services">
+          <component name="coresearchfw" filter="s60" long-name="Core Search Framework" introduced="^1">
+            <unit bldFile="/sf/app/organizer/searchfw/coresearchfw/group"/>
+          </component>
+          <component name="searchfw_plugins" filter="s60" long-name="Search Plugins" introduced="^1" plugin="Y">
+            <unit bldFile="/sf/app/organizer/searchfw/plugins/group"/>
+          </component>
+        </collection>
+        <collection name="alarmui" long-name="Alarm UI" level="app">
+          <!-- collection is really a component, should move down a directory -->
+          <component name="alarmui_build" filter="s60" long-name="Alarm UI Build">
+            <unit bldFile="/sf/app/organizer/alarmui/group"/>
+          </component>
+        </collection>
+        <collection name="calendarui" long-name="Calendar UI" level="ui">
+          <component name="calendarui_help" filter="s60" long-name="Calendar UI Help">
+            <unit bldFile="/sf/app/organizer/calendarui/help/group"/>
+          </component>
+          <component name="commonutils" filter="s60" long-name="Calendar Common Utils">
+            <unit bldFile="/sf/app/organizer/calendarui/commonutils/group"/>
+          </component>
+          <component name="globaldata" filter="s60" long-name="Calendar Global Data">
+            <unit bldFile="/sf/app/organizer/calendarui/globaldata/group"/>
+          </component>
+          <component name="settings" filter="s60" long-name="Calendar Settings">
+            <!-- these should be merged into a single bld.inf or split into two components -->
+            <unit bldFile="/sf/app/organizer/calendarui/settings/gsplugin/group"/>
+            <unit bldFile="/sf/app/organizer/calendarui/settings/settingsui/group"/>
+          </component>
+          <component name="customisation" filter="s60" long-name="Calendar Customisation">
+            <unit bldFile="/sf/app/organizer/calendarui/customisation/group"/>
+          </component>
+          <component name="customisationmanager" filter="s60" long-name="Calendar Customisation Manager">
+            <unit bldFile="/sf/app/organizer/calendarui/customisationmanager/group"/>
+          </component>
+          <component name="multicaluidialog" filter="s60" long-name="Multi-Calendar UI Dialog" introduced="^3">
+            <unit bldFile="/sf/app/organizer/calendarui/multicaluidialog/group"/>
+          </component>
+          <component name="views" filter="s60" long-name="Calendar Views">
+            <unit bldFile="/sf/app/organizer/calendarui/views/group"/>
+          </component>
+          <component name="calendarui_controller" filter="s60" long-name="Calendar Controller">
+            <unit bldFile="/sf/app/organizer/calendarui/controller/group"/>
+          </component>
+          <component name="calendarui_editors" filter="s60" long-name="Calendar Editors">
+            <unit bldFile="/sf/app/organizer/calendarui/editors/group"/>
+          </component>
+          <component name="calendarui_application" filter="s60" long-name="Calendar Application">
+            <unit bldFile="/sf/app/organizer/calendarui/application/group"/>
+          </component>
+          <component name="missedalarmindicatorplugin" filter="s60" long-name="Missed Alarm Indicator Plugin" plugin="Y">
+            <unit bldFile="/sf/app/organizer/calendarui/missedalarmindicatorplugin/group"/>
+          </component>
+          <component name="calendarui_server" filter="s60" long-name="Calendar Server">
+            <!-- these should be merged into a single bld.inf or split into two components -->
+            <unit bldFile="/sf/app/organizer/calendarui/server/calensvr/group"/>
+            <unit bldFile="/sf/app/organizer/calendarui/server/calensvrclient/group"/>
+          </component>
+          <component name="regionalplugins" filter="s60" long-name="Calendar Regional Plugins" plugin="Y">
+            <!-- these should be merged into a single bld.inf or split into four components -->
+            <unit bldFile="/sf/app/organizer/calendarui/regionalplugins/calenregionalutil/group"/>
+            <unit bldFile="/sf/app/organizer/calendarui/regionalplugins/lunarchinese/group"/>
+            <unit bldFile="/sf/app/organizer/calendarui/regionalplugins/lunarvietnamese/group"/>
+            <unit bldFile="/sf/app/organizer/calendarui/regionalplugins/thai/group"/>
+          </component>
+          <component name="calenaiwprovider" filter="s60" long-name="Calendar AIW Proivder" introduced="^3" plugin="Y">
+            <unit bldFile="/sf/app/organizer/calendarui/calenaiwprovider/group"/>
+          </component>
+          <component name="calendarui_build" filter="s60" long-name="Calendar UI Build">
+            <!-- split contents into separate components -->
+            <unit bldFile="/sf/app/organizer/calendarui/group"/>
+          </component>
+        </collection>
+        <collection name="meetingui" long-name="Meeting UI" level="ui">
+          <component name="attendeeview" filter="s60" long-name="Attendee View">
+            <unit bldFile="/sf/app/organizer/meetingui/attendeeview/group"/>
+          </component>
+          <component name="agnentryui" filter="s60" long-name="Agenda Entry UI" plugin="Y">
+            <unit bldFile="/sf/app/organizer/meetingui/agnentryui/group"/>
+          </component>
+          <component name="meetingrequestutils" filter="s60" long-name="Meeting Request Utils">
+            <unit bldFile="/sf/app/organizer/meetingui/meetingrequestutils/group"/>
+          </component>
+          <component name="meetingrequestviewers" filter="s60" long-name="Meeting Request Viewers" plugin="Y">
+            <unit bldFile="/sf/app/organizer/meetingui/meetingrequestviewers/group"/>
+          </component>
+          <component name="meetingui_build" filter="s60" long-name="Meeting UI Build">
+            <!-- split contents into separate components -->
+            <unit bldFile="/sf/app/organizer/meetingui/group"/>
+          </component>
+        </collection>
+        <collection name="clock2" long-name="Clock" level="app">
+          <component name="clockengines" filter="s60" long-name="Clock Engines">
+            <unit bldFile="/sf/app/organizer/clock2/clockengines/group"/>
+          </component>
+          <component name="clockui" filter="s60" long-name="Clock UI">
+            <unit bldFile="/sf/app/organizer/clock2/clockui/group"/>
+          </component>
+          <component name="clock2_help" filter="s60" long-name="Clock Help">
+            <unit bldFile="/sf/app/organizer/clock2/help/group"/>
+          </component>
+          <component name="clock2_build" filter="s60" long-name="Clock Build">
+            <!-- split contents into separate components, or just make this one component -->
+            <unit bldFile="/sf/app/organizer/clock2/group"/>
+          </component>
+        </collection>
+        <collection name="notepad" long-name="Notepad" level="ui">
+          <component name="notepad_help" filter="s60" long-name="Notepad Help">
+            <unit bldFile="/sf/app/organizer/notepad/help/group"/>
+          </component>
+          <component name="notepad1" filter="s60" long-name="Notepad Application 1">
+            <unit bldFile="/sf/app/organizer/notepad/notepad1/group"/>
+          </component>
+          <component name="txtrecog" filter="s60" long-name="Text Recognizer" plugin="Y">
+            <unit bldFile="/sf/app/organizer/notepad/txtrecog/group"/>
+          </component>
+        </collection>
+        <collection name="searchui" long-name="Search UI" level="app">
+          <!-- consider making this a single component -->
+          <component name="searchui_help" filter="s60" long-name="Search UI Help">
+            <unit bldFile="/sf/app/organizer/searchui/help/group"/>
+          </component>
+          <component name="searchapp" filter="s60" long-name="Search Application">
+            <unit bldFile="/sf/app/organizer/searchui/searchapp/group"/>
+          </component>
+        </collection>
+        <collection name="pimappservices" long-name="PIM Application Services" level="services">
+          <component name="calendar" long-name="Calendar" introduced="9.2" purpose="optional">
+            <unit bldFile="/sf/app/organizer/pimappservices/calendar/group" mrp="/sf/app/organizer/pimappservices/calendar/group/app-engines_calendar.mrp" version="2"/>
+          </component>
+          <component name="calendarvcalplugin" long-name="Calendar vCal Plugin" introduced="8.1" purpose="optional" plugin="Y">
+            <unit bldFile="/sf/app/organizer/pimappservices/calendarvcalplugin/group" mrp="/sf/app/organizer/pimappservices/calendarvcalplugin/group/app-engines_agnversit2.mrp" version="2"/>
+          </component>
+          <component name="appenginesdocs" long-name="Application Engines Documentation" purpose="development" class="doc">
+            <unit mrp="/sf/app/organizer/pimappservices/appenginesdocs/app-engines_documentation.mrp"/>
+          </component>
+        </collection>
+        <collection name="pimappsupport" long-name="PIM Application Support" level="support">
+          <component name="vcardandvcal" long-name="vCard and vCal" introduced="ER5" purpose="optional">
+            <unit bldFile="/sf/app/organizer/pimappsupport/vcardandvcal/group" mrp="/sf/app/organizer/pimappsupport/vcardandvcal/group/app-services_versit.mrp"/>
+          </component>
+          <component name="chinesecalendarconverter" long-name="Chinese Calendar Converter" introduced="6.1" purpose="optional">
+            <unit bldFile="/sf/app/organizer/pimappsupport/chinesecalendarconverter/group" mrp="/sf/app/organizer/pimappsupport/chinesecalendarconverter/group/app-services_calcon.mrp"/>
+          </component>
+        </collection>
+        <collection name="organizer_info" long-name="Organizer Application Suite Info" level="app">
+          <component name="organizer_pub" filter="s60" long-name="Organizer Application Suite Public Interfaces" class="api">
+            <unit bldFile="/sf/app/organizer/organizer_pub/group"/>
+          </component>
+          <component name="organizer_plat" filter="s60" long-name="Organizer Application Suite Platform Interfaces" class="api">
+            <unit bldFile="/sf/app/organizer/organizer_plat/group"/>
+          </component>
+          <component name="organizer_metadata" long-name="Organizer Application Suite Metadata" introduced="^2" purpose="development" class="config PC">
+            <unit mrp="/sf/app/organizer/organizer_info/organizer_metadata/organizer_metadata.mrp"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/app/phone/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/phone/package_definition.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -1,109 +1,182 @@
 <?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="app" long-name="Applications" levels="services apps">
-<block name="phone" level="apps" span="2" long-name="Phone Apps">
-<collection name="s60">
-<component name="phone">
-<unit bldFile="/sf/app/phone/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="app" long-name="Applications" levels="services apps">
+      <block name="phone" level="apps" span="2" long-name="Phone Apps" levels="engine plugin ui app">
+        <collection name="phoneapp" long-name="Phone Application" level="app">
+          <component name="blacklist" filter="s60" long-name="Phone Blacklist Clearing" plugin="Y">
+            <unit bldFile="/sf/app/phone/phoneapp/blacklist/group"/>
+          </component>
+          <component name="phoneui" filter="s60" long-name="Phone UI">
+            <unit bldFile="/sf/app/phone/phoneapp/phoneui/group"/>
+          </component>
+          <component name="phoneuicontrol" filter="s60" long-name="Phone UI Control">
+            <unit bldFile="/sf/app/phone/phoneapp/phoneuicontrol/group"/>
+          </component>
+          <component name="phoneuistates" filter="s60" long-name="Phone UI States">
+            <unit bldFile="/sf/app/phone/phoneapp/phoneuistates/group"/>
+          </component>
+          <component name="phoneuiutils" filter="s60" long-name="Phone UI Utils">
+            <unit bldFile="/sf/app/phone/phoneapp/phoneuiutils/group"/>
+          </component>
+          <component name="phoneuiview" filter="s60" long-name="Phone UI View">
+            <unit bldFile="/sf/app/phone/phoneapp/phoneuiview/group"/>
+          </component>
+          <component name="phoneuivoipextension" filter="s60" long-name="Phone UI VOIP Extension">
+            <unit bldFile="/sf/app/phone/phoneapp/phoneuivoipextension/group"/>
+          </component>
+          <component name="silenceactionplugin" filter="s60" long-name="Silence Action Plugin" plugin="Y">
+            <unit bldFile="/sf/app/phone/phoneapp/silenceactionplugin/group"/>
+          </component>
+          <component name="phonemediatorcenter" filter="s60" long-name="Phone Mediator Center">
+            <unit bldFile="/sf/app/phone/phoneapp/phonemediatorcenter/group"/>
+          </component>
+          <component name="phoneapp_api_test" filter="s60,api_test" long-name="Phone App API Tests">
+            <unit bldFile="/sf/app/phone/phoneapp/phoneui/tsrc/public/basic/group"/>
+          </component>
+        </collection>
+        <collection name="phoneengine" long-name="Phone Engine" level="engine">
+          <component name="phonecntfinder" filter="s60" long-name="Phone Contact Finder">
+            <unit bldFile="/sf/app/phone/phoneengine/phonecntfinder/group"/>
+          </component>
+          <component name="audiohandling" filter="s60" long-name="Phone Audio Handling">
+            <unit bldFile="/sf/app/phone/phoneengine/audiohandling/group"/>
+          </component>
+          <component name="callhandling" filter="s60" long-name="Call Handling">
+            <unit bldFile="/sf/app/phone/phoneengine/callhandling/group"/>
+          </component>
+          <component name="contacthandling" filter="s60" long-name="Phone Contact Handling">
+            <unit bldFile="/sf/app/phone/phoneengine/contacthandling/group"/>
+          </component>
+          <component name="loghandling" filter="s60" long-name="Phone Log Handling">
+            <unit bldFile="/sf/app/phone/phoneengine/loghandling/group"/>
+          </component>
+          <component name="engineinfo" filter="s60" long-name="Phone Engine Info">
+            <unit bldFile="/sf/app/phone/phoneengine/engineinfo/group"/>
+          </component>
+          <component name="phonemodel" filter="s60" long-name="Phone Model">
+            <unit bldFile="/sf/app/phone/phoneengine/phonemodel/group"/>
+          </component>
+          <component name="servicehandling" filter="s60" long-name="Phone Service Handling">
+            <unit bldFile="/sf/app/phone/phoneengine/servicehandling/group"/>
+          </component>
+        </collection>
+        <collection name="phonesettings" long-name="Phone Settings" level="plugin">
+          <component name="aiwcallimageplugin" filter="s60" long-name="Call Image AIW Plugin" plugin="Y">
+            <unit bldFile="/sf/app/phone/phonesettings/aiwcallimageplugin/group"/>
+          </component>
+          <component name="pslncallimageplugin" filter="s60" long-name="Call Image Personalization Plugin" plugin="Y">
+            <unit bldFile="/sf/app/phone/phonesettings/pslncallimageplugin/group"/>
+          </component>
+        </collection>
+        <collection name="phoneuis" long-name="Phone UIs" level="ui">
+          <component name="dialer" filter="s60" long-name="Dialer">
+            <unit bldFile="/sf/app/phone/phoneuis/dialer/group"/>
+          </component>
+          <component name="bubblemanager" filter="s60" long-name="Phone Bubble Manager">
+            <unit bldFile="/sf/app/phone/phoneuis/bubblemanager/group"/>
+          </component>
+          <component name="connectutil" filter="s60" long-name="Connection Utility" plugin="Y">
+            <unit bldFile="/sf/app/phone/phoneuis/connectutil/group"/>
+          </component>
+          <component name="ussd" filter="s60" long-name="Unstructured Supplementary Services Data">
+            <unit bldFile="/sf/app/phone/phoneuis/ussd/group"/>
+          </component>
+          <component name="vmbx" filter="s60" long-name="Voice Mailbox">
+            <unit bldFile="/sf/app/phone/phoneuis/vmbx/group"/>
+          </component>
+          <component name="telephonydevicemode" filter="s60" long-name="Telephony Device Mode">
+            <unit bldFile="/sf/app/phone/phoneuis/telephonydevicemode/group"/>
+          </component>
+          <component name="phoneuis_api_test" filter="s60,api_test" long-name="Phone UIs API Tests">
+            <unit bldFile="/sf/app/phone/phoneuis/dialer/tsrc/public/basic/group"/>
+          </component>
+        </collection>
+        <collection name="phone_info" long-name="Phone Apps Info" level="app">
+          <component name="phone_plat" filter="s60" long-name="Phone Apps Platform Interfaces" class="api">
+            <unit bldFile="/sf/app/phone/phone_plat/group"/>
+          </component>
+        </collection>
+        <collection name="phoneplugins" long-name="Phone Plugins" level="plugin">
+          <component name="telbranding" filter="s60" long-name="Tel Branding" introduced="^2" plugin="Y">
+            <unit bldFile="/sf/app/phone/phoneplugins/telbranding/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/app/photos/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/photos/package_definition.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -1,109 +1,141 @@
 <?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="app" long-name="Applications" levels="services apps">
-<block name="photos" level="apps" long-name="Photos">
-<collection name="s60">
-<component name="photos">
-<unit bldFile="/sf/app/photos/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="app" long-name="Applications" levels="services apps">
+      <block name="photos" level="apps" long-name="Photos" levels="support fw ui app">
+        <collection name="photosgallery" long-name="Photos Gallery" level="app">
+          <!-- consider splitting this collection into the application itself, and the frameworks behind it -->
+          <component name="photosgallery_help" filter="s60" long-name="Photos Help" introduced="^2">
+            <unit bldFile="/sf/app/photos/photosgallery/help/group"/>
+          </component>
+          <component name="logging" filter="s60" long-name="Photos Logging" introduced="^2">
+            <unit bldFile="/sf/app/photos/photosgallery/logging/group"/>
+          </component>
+          <component name="photosgallery_common" filter="s60" long-name="Photos Common" introduced="^2">
+            <unit bldFile="/sf/app/photos/photosgallery/common/group"/>
+          </component>
+          <component name="photosgallery_commonui" filter="s60" long-name="Photos Common UI" introduced="^2">
+            <unit bldFile="/sf/app/photos/photosgallery/commonui/group"/>
+          </component>
+          <component name="photosgalleryollectionfw" filter="s60" long-name="Photos Collection Framework" introduced="^2">
+            <unit bldFile="/sf/app/photos/photosgallery/collectionframework/group"/>
+          </component>
+          <component name="galleryicons" filter="s60" long-name="Photos Icons" introduced="^2" class="config">
+            <unit bldFile="/sf/app/photos/photosgallery/icons"/>
+          </component>
+          <component name="imageviewer" filter="s60" long-name="Image Viewer" introduced="^3">
+            <!-- this is really a part of controllers component, #include from there instead -->
+            <unit bldFile="/sf/app/photos/photosgallery/controllers/imageviewer/group"/>
+          </component>
+          <component name="photosgalleryviewfw" filter="s60" long-name="View Framework" introduced="^2">
+            <unit bldFile="/sf/app/photos/photosgallery/viewframework/group"/>
+          </component>
+          <component name="controllers" filter="s60" long-name="Photos Controllers" introduced="^2">
+            <unit bldFile="/sf/app/photos/photosgallery/controllers/group"/>
+          </component>
+          <component name="photogallery" filter="s60" long-name="Media Gallery" introduced="^2">
+            <unit bldFile="/sf/app/photos/photosgallery/gallery/group"/>
+          </component>
+          <component name="slideshow" filter="s60" long-name="Slideshow" introduced="^2">
+            <unit bldFile="/sf/app/photos/photosgallery/slideshow/group"/>
+          </component>
+          <component name="contentharvesterplugin" filter="s60" long-name="Gallery Content Harvester Plugin" introduced="^2" plugin="Y">
+            <unit bldFile="/sf/app/photos/photosgallery/contentharvesterplugin/group"/>
+          </component>
+          <component name="photossuite" filter="s60" long-name="Photos Suite" introduced="^2" class="config">
+            <unit bldFile="/sf/app/photos/photosgallery/photossuite/group"/>
+          </component>
+          <component name="memoryplugin" long-name="Memory Plugin" filter="s60" introduced="^2" plugin="Y">
+            <unit bldFile="/sf/app/photos/photosgallery/memoryplugin/group"/>
+          </component>
+          <component name="imgvwr" filter="s60" long-name="Photos Image Viewer" introduced="^3">
+            <unit bldFile="/sf/app/photos/photosgallery/imgvwr/group"/>
+          </component>
+          <component name="photosgallery_build" filter="s60" long-name="Photos Gallery Build" introduced="^2">
+            <!--  need to remove the #included above bld.infs from this  -->
+            <unit bldFile="/sf/app/photos/photosgallery/group"/>
+          </component>
+        </collection>
+        <collection name="photos_info" long-name="Photos Info" level="app">
+          <component name="photos_plat" filter="s60" long-name="Photos Platform Interfaces" introduced="^2" class="api">
+            <unit bldFile="/sf/app/photos/photos_plat/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/app/printing/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/printing/package_definition.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -1,109 +1,98 @@
 <?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="app" long-name="Applications" levels="services apps">
-<block name="printing" level="services" long-name="Printing">
-<collection name="s60">
-<component name="printing">
-<unit bldFile="/sf/app/printing/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="app" long-name="Applications" levels="services apps">
+      <block name="printing" level="services" long-name="Printing" levels="app">
+        <collection name="imageprint" long-name="ImagePrint" level="app">
+          <component name="clog" filter="s60" long-name="ImagePrint Logging" introduced="^2">
+            <unit bldFile="/sf/app/printing/imageprint/clog/group"/>
+          </component>
+          <component name="imageprintengine" filter="s60" long-name="ImagePrint Engine" introduced="^2">
+            <unit bldFile="/sf/app/printing/imageprint/imageprintengine/group"/>
+          </component>
+          <component name="imageprintui" filter="s60" long-name="ImagePrint UI" introduced="^2">
+            <unit bldFile="/sf/app/printing/imageprint/imageprintui/group"/>
+          </component>
+          <component name="imageprint_build" filter="s60" long-name="ImagePrint Build" introduced="^2">
+            <!--  Need to break the IBY includes into the other components, or remove #includes and make this a ROM component -->
+            <unit bldFile="/sf/app/printing/imageprint/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/app/profile/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/profile/package_definition.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -1,109 +1,99 @@
 <?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="app" long-name="Applications" levels="services apps">
-<block name="profile" level="apps" long-name="Profile">
-<collection name="s60">
-<component name="profile">
-<unit bldFile="/sf/app/profile/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="app" long-name="Applications" levels="services apps">
+      <block name="profile" level="apps" long-name="Profiles" levels="app">
+        <collection name="profilesapplication" long-name="Profiles Application" level="app">
+          <component name="profiles" filter="s60" long-name="Profiles">
+            <unit bldFile="/sf/app/profile/profilesapplication/profiles/group"/>
+          </component>
+          <component name="profilesapplication_test" filter="s60,api_test" purpose="development" long-name="Profiles Application Test">
+            <unit bldFile="/sf/app/profile/profilesapplication/tsrc/public/basic/group"/>
+          </component>
+        </collection>
+        <collection name="profile_info" long-name="Profiles Info" level="app">
+          <component name="profile_plat" filter="s60" long-name="Profiles Platform Interfaces" class="api">
+            <unit bldFile="/sf/app/profile/profile_plat/group"/>
+          </component>
+          <component name="profile_help" filter="s60" long-name="Profiles Help">
+            <unit bldFile="/sf/app/profile/help/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/app/radio/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/radio/package_definition.xml	Thu Jan 28 14:49:47 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="app" long-name="Applications" levels="services apps">
-<block name="radio" level="apps" long-name="Radio Apps">
-<collection name="s60">
-<component name="radio">
-<unit bldFile="/sf/app/radio/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="app" long-name="Applications" levels="services apps">
+      <block name="radio" level="apps" long-name="Radio Apps" levels="engine ui">
+        <collection name="fmradio" long-name="FM Radio" level="ui">
+          <component name="activeidleengine" filter="s60" long-name="FM Radio Active Idle Engine">
+            <unit bldFile="/sf/app/radio/fmradio/activeidleengine/group"/>
+          </component>
+          <component name="fmradioengine" filter="s60" long-name="FM Radio Engine">
+            <unit bldFile="/sf/app/radio/fmradio/fmradioengine/group"/>
+          </component>
+          <component name="fmradioactionhandler" filter="s60" long-name="FM Radio Action Handler" plugin="Y">
+            <unit bldFile="/sf/app/radio/fmradio/fmradioactionhandler/group"/>
+          </component>
+          <component name="fmradiomcpplugin" filter="s60" long-name="FM Radio Content Publisher Plugin" plugin="Y">
+            <unit bldFile="/sf/app/radio/fmradio/fmradiomcpplugin/group"/>
+          </component>
+          <component name="fmradio_build" filter="s60" long-name="FM Radio Build">
+            <unit bldFile="/sf/app/radio/fmradio/fmradio/group"/>
+          </component>
+          <component name="fmradio_help" filter="s60" long-name="FM Radio Help">
+            <unit bldFile="/sf/app/radio/fmradio/help/group"/>
+          </component>
+          <component name="fmradio_build" filter="s60" long-name="FM Radio ROM">
+            <!--  remove above #included bld.infs -->
+            <unit bldFile="/sf/app/radio/fmradio/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/app/rndtools/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/rndtools/package_definition.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -1,112 +1,172 @@
 <?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="app" long-name="Applications" levels="services apps">
-<block name="rndtools" level="services" long-name="RD tools">
-<collection name="s60">
-<component name="tools_rndtools_htiui">
-<unit bldFile="/sf/app/rndtools/htiui/group" mrp=""/>
-</component>
-<component name="rndtools">
-<unit bldFile="/sf/app/rndtools/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="app" long-name="Applications" levels="services apps">
+      <block name="rndtools" level="services" long-name="R&amp;D tools" levels="support generic test util">
+        <collection name="creator" long-name="Creator" level="support">
+          <!-- collection is really a component. Should move down a directory -->
+          <component name="creator_build" filter="s60" long-name="Creator Tool" purpose="development" class="tool">
+            <unit bldFile="/sf/app/rndtools/creator/group"/>
+          </component>
+        </collection>
+        <collection name="filebrowser" long-name="File Browser" level="util">
+          <!-- consider collapsing into a single component -->
+          <component name="fileopserver" filter="s60" long-name="File Operations Server" purpose="development" class="tool">
+            <unit bldFile="/sf/app/rndtools/filebrowser/fileopserver/group"/>
+          </component>
+          <component name="fileopclient" filter="s60" long-name="File Operations Client" purpose="development" class="tool">
+            <unit bldFile="/sf/app/rndtools/filebrowser/fileopclient/group"/>
+          </component>
+          <component name="filebrowser_build" filter="s60" long-name="File Browser Application" purpose="development" class="tool">
+            <unit bldFile="/sf/app/rndtools/filebrowser/group"/>
+          </component>
+        </collection>
+        <collection name="launcher" long-name="Launcher" level="util">
+          <!-- collection is really a component. Should move down a directory -->
+          <component name="launcher_build" filter="s60" long-name="Launcher Utility" purpose="development" class="tool">
+            <unit bldFile="/sf/app/rndtools/launcher/group"/>
+          </component>
+        </collection>
+        <collection name="loadgen" long-name="Load Generator" level="test">
+          <!-- collection is really a component. Should move down a directory -->
+          <component name="loadgen_build" filter="s60" long-name="Load Generator Application" purpose="development" class="tool">
+            <unit bldFile="/sf/app/rndtools/loadgen/group"/>
+          </component>
+        </collection>
+        <collection name="perfmon" long-name="Performance Monitor" level="test">
+          <!-- collection is really a component. Should move down a directory -->
+          <component name="perfmon_build" filter="s60" long-name="Performance Monitor Tool" purpose="development" class="tool">
+            <unit bldFile="/sf/app/rndtools/perfmon/group"/>
+          </component>
+        </collection>
+        <collection name="screengrabber" long-name="Screen Grabber" level="util">
+          <!-- collection is really a component. Should move down a directory -->
+          <component name="screengrabber_build" filter="s60" long-name="ScreenGrabber" purpose="development" class="tool">
+            <unit bldFile="/sf/app/rndtools/screengrabber/group"/>
+          </component>
+        </collection>
+        <collection name="stifui" long-name="STIF UI" level="generic">
+          <component name="stifui_stifui" filter="s60" long-name="STIF UI" purpose="development">
+            <unit bldFile="/sf/app/rndtools/stifui/stifui/group"/>
+          </component>
+          <component name="uitestserverstarter" filter="s60" long-name="UI Test Server Starter" purpose="development">
+            <unit bldFile="/sf/app/rndtools/stifui/uitestserverstarter/group"/>
+          </component>
+          <component name="stifui_build" filter="s60" long-name="STIF UI Build" purpose="development">
+            <!-- can this be split up into the other components or made a ROM component? -->
+            <unit bldFile="/sf/app/rndtools/stifui/group"/>
+          </component>
+        </collection>
+        <collection name="memspyui" long-name="Memspy UI" level="generic">
+          <!-- collection is really a component. Should move down a directory -->
+          <component name="memspyui_build" filter="s60" long-name="Memspy UI Application" purpose="development" class="tool">
+            <unit bldFile="/sf/app/rndtools/memspyui/group"/>
+          </component>
+        </collection>
+        <collection name="htiui" long-name="Harmonized Test Interface UI" level="generic">
+          <component name="HtiCommPlugins" filter="s60" long-name="HTI Comm Plugins" purpose="development" plugin="Y">
+            <unit bldFile="/sf/app/rndtools/htiui/HtiCommPlugins/HtiBtCommPlugin/group"/>
+          </component>
+          <component name="HtiServicePlugins" filter="s60" long-name="HTI Service Plugins" purpose="development" plugin="Y">
+            <!-- can only have a single unit. Should #include from a common bld.inf file -->
+            <unit bldFile="/sf/app/rndtools/htiui/HtiServicePlugins/HtiAppServicePlugin/group"/>
+            <unit bldFile="/sf/app/rndtools/htiui/HtiServicePlugins/HtiAudioServicePlugin/group"/>
+            <unit bldFile="/sf/app/rndtools/htiui/HtiServicePlugins/HtiKeyEventServicePlugin/group"/>
+            <unit bldFile="/sf/app/rndtools/htiui/HtiServicePlugins/HtiMessagesServicePlugin/group"/>
+            <unit bldFile="/sf/app/rndtools/htiui/HtiServicePlugins/HtiPIMServicePlugin/group"/>
+            <unit bldFile="/sf/app/rndtools/htiui/HtiServicePlugins/HtiScreenshotServicePlugin/group"/>
+            <unit bldFile="/sf/app/rndtools/htiui/HtiServicePlugins/HtiSysInfoServicePlugin/group"/>
+            <unit bldFile="/sf/app/rndtools/htiui/HtiServicePlugins/HtiFtpBackupFake/group"/>
+          </component>
+          <component name="htidevicereboot" filter="s60" long-name="HTI Device Reboot" purpose="development">
+            <unit bldFile="/sf/app/rndtools/htiui/htidevicereboot/group"/>
+          </component>
+          <component name="htistartupwait" filter="s60" long-name="HTI Startup Wait" purpose="development">
+            <unit bldFile="/sf/app/rndtools/htiui/htistartupwait/group"/>
+          </component>
+          <component name="htiadmin" filter="s60" long-name="HTI Admin" purpose="development">
+            <unit bldFile="/sf/app/rndtools/htiui/htiadmin/group"/>
+          </component>
+          <component name="htiui_build" filter="s60" long-name="HTI UI Build" purpose="development">
+            <!-- can this be split up into the other components or made a ROM component? -->
+            <unit bldFile="/sf/app/rndtools/htiui/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/app/screensaver/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/screensaver/package_definition.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -1,109 +1,103 @@
 <?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="app" long-name="Applications" levels="services apps">
-<block name="screensaver" level="apps" long-name="Screen Saver Apps">
-<collection name="s60">
-<component name="screensaver">
-<unit bldFile="/sf/app/screensaver/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="app" long-name="Applications" levels="services apps">
+      <block name="screensaver" level="apps" long-name="Screen Saver Apps" levels="plugin ui">
+        <!-- is this a user-facing application or a daemon? -->
+        <collection name="scrsaver" long-name="Screen Saver" level="plugin">
+          <component name="scrsaverplugins" filter="s60" long-name="Screen Saver Plugins" plugin="Y">
+            <!-- must have only one component. #include from a common bld.inf, or move up a directory and make scrsaverplugins a collection -->
+            <unit bldFile="/sf/app/screensaver/scrsaver/scrsaverplugins/ScreenSaverAnimPlugin/group/"/>
+            <unit bldFile="/sf/app/screensaver/scrsaver/scrsaverplugins/ScreenSaverGifAnimPlugin/group/"/>
+          </component>
+          <component name="scrsaver_slideshowplugin" filter="s60" long-name="Screen Saver Slideshow Plugin" plugin="Y">
+            <unit bldFile="/sf/app/screensaver/scrsaver/scrsaverplugins/SlideshowPlugin/group"/>
+          </component>
+          <component name="screensaveraiwplugin" filter="s60" long-name="Screen Saver AIW Plugin" plugin="Y">
+            <unit bldFile="/sf/app/screensaver/scrsaver/screensaveraiwplugin/group"/>
+          </component>
+        </collection>
+        <collection name="screensaver_info" long-name="Screen Saver Apps Info" level="ui">
+          <component name="screensaver_build" filter="s60" long-name="Screen Saver Application">
+            <!--the app should be a separate component -->
+            <unit bldFile="/sf/app/screensaver/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/app/settingsuis/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/settingsuis/package_definition.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -1,109 +1,117 @@
 <?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="app" long-name="Applications" levels="services apps">
-<block name="settingsuis" level="services" long-name="Settings UIs">
-<collection name="s60">
-<component name="settingsuis">
-<unit bldFile="/sf/app/settingsuis/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="app" long-name="Applications" levels="services apps">
+      <block name="settingsuis" level="services" long-name="Settings UIs" levels="rsc ui">
+        <collection name="defaultapplicationsettings" long-name="Default Application Settings" level="rsc">
+          <component name="services_db" filter="s60" long-name="Services Database" introduced="^1">
+            <unit bldFile="/sf/app/settingsuis/defaultapplicationsettings/services_db/group"/>
+          </component>
+          <component name="defaultapplicationsettings_server" filter="s60" long-name="Default Application Server" introduced="^1">
+            <unit bldFile="/sf/app/settingsuis/defaultapplicationsettings/server/group"/>
+          </component>
+          <component name="service" filter="s60" long-name="Default Application Service" introduced="^1">
+            <unit bldFile="/sf/app/settingsuis/defaultapplicationsettings/service/group"/>
+          </component>
+          <component name="dasgsplugin" filter="s60" long-name="Default Application Settings GS Plugin" introduced="^1" plugin="Y">
+            <unit bldFile="/sf/app/settingsuis/defaultapplicationsettings/gsplugin/group"/>
+          </component>
+          <component name="defaultapplicationsettings_build" filter="s60" long-name="Default Application Settings Build" introduced="^1">
+            <!-- split the IBYs up into the appropriate components? Make this a ROM component? -->
+            <unit bldFile="/sf/app/settingsuis/defaultapplicationsettings/group"/>
+          </component>
+        </collection>
+        <collection name="systemswuis" long-name="System SW UIs" level="ui">
+          <component name="touchscreencalib" filter="s60" long-name="Touchscreen Calibration" introduced="^1">
+            <unit bldFile="/sf/app/settingsuis/systemswuis/touchscreencalib/group"/>
+          </component>
+        </collection>
+        <collection name="settingsuis_info" long-name="Settings UIs Info" level="ui">
+          <component name="devmngt_plat" filter="s60" long-name="Settings UIs Platform Interfaces" introduced="^1" class="api">
+            <unit bldFile="/sf/app/settingsuis/devmngt_plat/group"/>
+          </component>
+          <component name="devmngt_pub" filter="s60" long-name="Settings UIs Public Interfaces" introduced="^1" class="api">
+            <unit bldFile="/sf/app/settingsuis/devmngt_pub/group"/>
+          </component>
+          <component name="settingsuis_test" filter="s60,test" purpose="development" long-name="Settings UIs Test" introduced="^1">
+            <unit bldFile="/sf/app/settingsuis/devmngt_plat/services_db_api/tsrc/ServicesDbApiTest/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/app/speechsrv/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/speechsrv/package_definition.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -1,109 +1,180 @@
 <?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="app" long-name="Applications" levels="services apps">
-<block name="speechsrv" level="services" long-name="Speech Recognition UIs">
-<collection name="s60">
-<component name="speechsrv">
-<unit bldFile="/sf/app/speechsrv/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="app" long-name="Applications" levels="services apps">
+      <block name="speechsrv" level="services" long-name="Speech Recognition UIs" levels="engine framework ui">
+        <collection name="voiceui" long-name="Voice UI" level="ui">
+          <component name="vcommand" filter="s60" long-name="Voice Commands UI" introduced="^1">
+            <unit bldFile="/sf/app/speechsrv/voiceui/vcommand/group"/>
+          </component>
+          <component name="voiceuivoicerecognition" filter="s60" long-name="Voice UI Recognition" introduced="^1">
+            <unit bldFile="/sf/app/speechsrv/voiceui/voiceuivoicerecognition/group"/>
+          </component>
+          <component name="pbkinfoviewimpl" filter="s60" long-name="Phonebook Info View Implementation" introduced="^1">
+            <unit bldFile="/sf/app/speechsrv/voiceui/pbkinfoviewimpl/group"/>
+          </component>
+          <component name="aiwpbkinfoviewprovider" filter="s60" long-name="AIW Phonebook Info View Provider" introduced="^1" plugin="Y">
+            <unit bldFile="/sf/app/speechsrv/voiceui/aiwpbkinfoviewprovider/group"/>
+          </component>
+          <component name="vccontrolpanelplugin" filter="s60" long-name="Voice Commands Control Panel Plugin" introduced="^1" plugin="Y">
+            <unit bldFile="/sf/app/speechsrv/voiceui/vccontrolpanelplugin/group"/>
+          </component>
+          <component name="voiceui_build" filter="s60" long-name="Voice UI Build" introduced="^1">
+            <!--  can this be put into the other components? -->
+            <unit bldFile="/sf/app/speechsrv/voiceui/group"/>
+          </component>
+        </collection>
+        <collection name="srsf" long-name="Speech Recognition and Synthesis Framework" level="framework">
+          <component name="sispeechrecognitiondata" filter="s60" long-name="SI Speech Recognition Data">
+            <unit bldFile="/sf/app/speechsrv/srsf/sispeechrecognitiondata/group"/>
+          </component>
+          <component name="ttscommon" filter="s60" long-name="TTS Common">
+            <unit bldFile="/sf/app/speechsrv/srsf/ttscommon/group"/>
+          </component>
+          <component name="devtts" filter="s60" long-name="Text to Speech">
+            <unit bldFile="/sf/app/speechsrv/srsf/devtts/group"/>
+          </component>
+          <component name="ttscustomcommands" filter="s60" long-name="TTS Custom Commands">
+            <unit bldFile="/sf/app/speechsrv/srsf/ttscustomcommands/group"/>
+          </component>
+          <component name="ttscontrollerplugin" filter="s60" long-name="TTS Controller Plugin" plugin="Y">
+            <unit bldFile="/sf/app/speechsrv/srsf/ttscontrollerplugin/group"/>
+          </component>
+          <component name="ttsutility" filter="s60" long-name="TTS Utility">
+            <unit bldFile="/sf/app/speechsrv/srsf/ttsutility/group"/>
+          </component>
+          <component name="speechsynthesis" filter="s60" long-name="Speech Synthesis">
+            <!-- can only have one unit. #include these from a common bld.inf -->
+            <unit bldFile="/sf/app/speechsrv/srsf/speechsynthesis/client/group"/>
+            <unit bldFile="/sf/app/speechsrv/srsf/speechsynthesis/server/group"/>
+          </component>
+          <component name="devasr" filter="s60" long-name="Audio Recording and Speech Recognition">
+            <unit bldFile="/sf/app/speechsrv/srsf/devasr/group"/>
+          </component>
+          <component name="sicc" filter="s60" long-name="Speaker Independent Custom Commands">
+            <unit bldFile="/sf/app/speechsrv/srsf/sicc/group"/>
+          </component>
+          <component name="sisrscontrollerplugin" filter="s60" long-name="SI SRS Controller Plugin" plugin="Y">
+            <unit bldFile="/sf/app/speechsrv/srsf/sisrscontrollerplugin/group"/>
+          </component>
+          <component name="siutility" filter="s60" long-name="Speaker Independent Utility">
+            <unit bldFile="/sf/app/speechsrv/srsf/siutility/group"/>
+          </component>
+          <component name="nssvasapi" filter="s60" long-name="NSS VAS API">
+            <unit bldFile="/sf/app/speechsrv/srsf/nssvasapi/group"/>
+          </component>
+          <component name="nssvascontacthdlr" filter="s60" long-name="NSS VAS Contact Handler">
+            <unit bldFile="/sf/app/speechsrv/srsf/nssvascontacthdlr/group"/>
+          </component>
+          <component name="vcommandhandler" filter="s60" long-name="Voice Command Handler">
+            <unit bldFile="/sf/app/speechsrv/srsf/vcommandhandler/group"/>
+          </component>
+          <component name="vuiphandler" filter="s60" long-name="Voice UI Plugin Handler">
+            <unit bldFile="/sf/app/speechsrv/srsf/vuiphandler/group"/>
+          </component>
+          <component name="vcommandexecutor" filter="s60" long-name="Voice Command Executor">
+            <unit bldFile="/sf/app/speechsrv/srsf/vcommandexecutor/group"/>
+          </component>
+          <component name="vcommandexecutorbearer" filter="s60" long-name="Voice Command Executor Bearer">
+            <unit bldFile="/sf/app/speechsrv/srsf/vcommandexecutorbearer/group"/>
+          </component>
+          <component name="vcommandmanager" filter="s60" long-name="Voice Command Manager">
+            <unit bldFile="/sf/app/speechsrv/srsf/vcommandmanager/group"/>
+          </component>
+          <component name="vcexecutorapp" filter="s60" long-name="Voice Command Executor Application">
+            <unit bldFile="/sf/app/speechsrv/srsf/vcexecutorapp/group"/>
+          </component>
+          <component name="profileobserverplugin" filter="s60" long-name="Profile Observer Plugin" plugin="Y">
+            <unit bldFile="/sf/app/speechsrv/srsf/profileobserverplugin/group"/>
+          </component>
+          <component name="srsf_build" filter="s60" long-name="Speech Recognition and Synthesis Framework Build">
+            <!-- should distribute this into the above components -->
+            <unit bldFile="/sf/app/speechsrv/srsf/group"/>
+          </component>
+        </collection>
+        <collection name="speechsrv_info" long-name="Speech Recognition UIs Info" level="ui">
+          <component name="speechsrv_test" filter="s60,test" purpose="development" long-name="Speech Recognition UIs Test">
+            <unit bldFile="/sf/app/speechsrv/tsrc/group"/>
+          </component>
+          <component name="speechsrv_plat" filter="s60" long-name="Speech Recognition UIs Platform Interfaces" class="api">
+            <unit bldFile="/sf/app/speechsrv/speechsrv_plat/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/app/techview/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/techview/package_definition.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -1,130 +1,246 @@
 <?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="app" long-name="Applications" levels="services apps">
-<block name="techview" level="apps" span="2" long-name="Techview" levels="services ui utils apps1 apps2 apps3">
-<collection name="buildverification" long-name="Build Verification" level="services">
-<component name="autosmoketest" long-name="Auto Smoke Test" filter="gt" purpose="development" introduced="9.1">
-<unit bldFile="/sf/app/techview/buildverification/autosmoketest/Group" mrp="/sf/app/techview/buildverification/autosmoketest/Group/testtools_autosmoketest.mrp"/>
-</component>
-<component name="smoketest" long-name="Smoke Test" filter="gt" purpose="development">
-<unit bldFile="/sf/app/techview/buildverification/smoketest/Group" mrp="/sf/app/techview/buildverification/smoketest/Group/testtools_smoketest.mrp"/>
-</component>
-</collection>
-<collection name="networkingutils" long-name="Networking Utils" level="utils">
-<component name="ipadministrationtool" long-name="IP Administration Tool" introduced="7.0" purpose="development">
-<unit mrp="/sf/app/techview/networkingutils/ipadministrationtool/group/networking_ipadm.mrp"/>
-</component>
-<component name="nameresolverutility" long-name="Name Resolver Utility" introduced="7.0s" purpose="development">
-<unit mrp="/sf/app/techview/networkingutils/nameresolverutility/group/networking_nslookup.mrp"/>
-</component>
-</collection>
-<collection name="testapps" long-name="Test Apps" level="utils">
-<component name="rschandler" long-name="Resource Handler" deprecated="tb92" purpose="development">
-<unit mrp="/sf/app/techview/testapps/rschandler/TVResourceHandler/group/Testtools_ResourceHandler_gt.mrp"/>
-</component>
-</collection>
-<collection name="techview_info" long-name="Techview Info" level="apps3">
-<component name="techview_metadata" long-name="Techview Metadata" introduced="tb91" purpose="development" class="config PC">
-<unit mrp="/sf/app/techview/techview_info/techview_metadata/techview_metadata.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="app" long-name="Applications" levels="services apps">
+      <block name="techview" level="apps" span="2" long-name="Techview" levels="services ui utils apps1 apps2 apps3">
+        <collection name="buildverification" long-name="Build Verification" level="services">
+          <component name="autosmoketest" long-name="Auto Smoke Test" filter="gt" purpose="development" introduced="9.1">
+            <unit bldFile="/sf/app/techview/buildverification/autosmoketest/Group" mrp="/sf/app/techview/buildverification/autosmoketest/Group/testtools_autosmoketest.mrp"/>
+          </component>
+          <component name="smoketest" long-name="Smoke Test" filter="gt" purpose="development">
+            <unit bldFile="/sf/app/techview/buildverification/smoketest/Group" mrp="/sf/app/techview/buildverification/smoketest/Group/testtools_smoketest.mrp"/>
+          </component>
+        </collection>
+        <collection name="techviewplat" long-name="Techview Platform" level="services">
+          <component name="techviewuiklaf" long-name="UIKLAF" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/techviewplat/techviewuiklaf/GROUP" mrp="/sf/app/techview/techviewplat/techviewuiklaf/GROUP/techview_uiklaf.mrp" priority="10"/>
+          </component>
+          <component name="eikstdtv" long-name="EIKSTD" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/techviewplat/eikstd/group" mrp="/sf/app/techview/techviewplat/eikstd/group/techview_eikstd.mrp" priority="20"/>
+          </component>
+          <component name="feps" long-name="FEPS" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/techviewplat/feps/group" mrp="/sf/app/techview/techviewplat/feps/group/techview_feps.mrp"/>
+          </component>
+        </collection>
+        <collection name="techviewui" long-name="Techview UI" level="ui">
+          <component name="techviewextras" long-name="Extras" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/techviewui/techviewextras/group" mrp="/sf/app/techview/techviewui/techviewextras/group/techview_extras.mrp"/>
+          </component>
+          <component name="statuspane" long-name="Status Pane" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/techviewui/statuspane/group" mrp="/sf/app/techview/techviewui/statuspane/group/techview_statuspane.mrp"/>
+          </component>
+          <component name="shell" long-name="Shell" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/techviewui/shell/group" mrp="/sf/app/techview/techviewui/shell/group/techview_shell.mrp"/>
+          </component>
+          <component name="startuptv" long-name="Techview Startup" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/techviewui/startup/group" mrp="/sf/app/techview/techviewui/startup/group/techview_startup.mrp"/>
+          </component>
+        </collection>
+        <collection name="controlpanel" long-name="Control Panel" level="ui">
+          <component name="fepsetup" long-name="FEP Setup" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/controlpanel/fepsetup/group" mrp="/sf/app/techview/controlpanel/fepsetup/group/techview_fepsetup.mrp"/>
+          </component>
+          <component name="cctlcolscheme" long-name="Colour Scheme Control" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/controlpanel/cctlcolscheme/group" mrp="/sf/app/techview/controlpanel/cctlcolscheme/group/techview_cctlcolscheme.mrp"/>
+          </component>
+          <component name="soundsetup" long-name="Sound Setup" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/controlpanel/soundsetup/group" mrp="/sf/app/techview/controlpanel/soundsetup/group/techview_soundsetup.mrp"/>
+          </component>
+          <component name="keyclickref" long-name="Key Click Ref" filter="techview" purpose="development" plugin="Y">
+            <unit bldFile="/sf/app/techview/controlpanel/keyclickref/Group" mrp="/sf/app/techview/controlpanel/keyclickref/Group/techview_KeyClickRef.mrp"/>
+          </component>
+        </collection>
+        <collection name="pimapps" long-name="PIM Apps" level="apps3">
+          <component name="contacui" long-name="Contacts UI" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/pimapps/contacui/group" mrp="/sf/app/techview/pimapps/contacui/group/techview_contacui.mrp" priority="30"/>
+          </component>
+          <component name="agenda" long-name="Agenda UI" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/pimapps/agenda/group" mrp="/sf/app/techview/pimapps/agenda/group/techview_agenda.mrp"/>
+          </component>
+          <component name="contactstechview" long-name="Contacts" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/pimapps/contactstechview/group" mrp="/sf/app/techview/pimapps/contactstechview/group/techview_contacts.mrp"/>
+          </component>
+        </collection>
+        <collection name="securityapps" long-name="Security Apps" level="apps3">
+          <component name="secuitv" long-name="Techview Security UI" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/securityapps/secui/group" mrp="/sf/app/techview/securityapps/secui/group/techview_secui.mrp"/>
+          </component>
+          <component name="securityupstechview" long-name="Security UPS Techview" filter="techview" purpose="development" introduced="^3">
+            <unit bldFile="/sf/app/techview/securityapps/securityupstechview/group" mrp="/sf/app/techview/securityapps/securityupstechview/group/security_ups_techview.mrp"/>
+          </component>
+        </collection>
+        <collection name="utilityapps" long-name="Utility Apps" level="apps2">
+          <component name="helptechview" long-name="Help" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/utilityapps/helptechview/group" mrp="/sf/app/techview/utilityapps/helptechview/group/techview_help.mrp"/>
+          </component>
+          <component name="timew" long-name="World Time" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/utilityapps/timew/group" mrp="/sf/app/techview/utilityapps/timew/group/techview_timew.mrp"/>
+          </component>
+          <component name="cpumonitor" long-name="CPU Monitor" filter="techview" purpose="development" introduced="^3">
+            <unit bldFile="/sf/app/techview/utilityapps/cpumonitor/group" mrp="/sf/app/techview/utilityapps/cpumonitor/group/techview_cpumonitor.mrp"/>
+          </component>
+        </collection>
+        <collection name="installationapps" long-name="Installation Apps" level="apps2">
+          <component name="installapp" long-name="Install App" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/installationapps/installapp/group" mrp="/sf/app/techview/installationapps/installapp/group/techview_installapp.mrp"/>
+          </component>
+        </collection>
+        <collection name="messagingapps" long-name="Messaging Apps" level="apps2">
+          <component name="messagingui" long-name="Messaging UI" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/messagingapps/messagingui/Group" mrp="/sf/app/techview/messagingapps/messagingui/Group/techview_messagingui.mrp"/>
+          </component>
+        </collection>
+        <collection name="telephonyapps" long-name="Telephony Apps" level="apps1">
+          <component name="techviewphoneui" long-name="Phone UI" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/telephonyapps/techviewphoneui/group" mrp="/sf/app/techview/telephonyapps/techviewphoneui/group/techview_phoneui.mrp"/>
+          </component>
+        </collection>
+        <collection name="networkingapps" long-name="Networking Apps" level="apps1">
+          <component name="iapstatusapp" long-name="IAP Status App" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/networkingapps/iapstatusapp/group" mrp="/sf/app/techview/networkingapps/iapstatusapp/group/techview_iapstatusapp.mrp"/>
+          </component>
+          <component name="networkingagentnotifier" long-name="Networking Agent Notifier" filter="techview" introduced="7.0s" purpose="development" plugin="Y">
+            <unit bldFile="/sf/app/techview/networkingapps/networkingagentnotifier/group" mrp="/sf/app/techview/networkingapps/networkingagentnotifier/group/techview_networking_agentnotifier.mrp"/>
+          </component>
+          <component name="techviewvpnui" long-name="VPN UI" filter="techview" introduced="7.0" purpose="development">
+            <unit bldFile="/sf/app/techview/networkingapps/techviewvpnui/group" mrp="/sf/app/techview/networkingapps/techviewvpnui/group/techview_networking_vpnui.mrp"/>
+          </component>
+        </collection>
+        <collection name="networkingutils" long-name="Networking Utils" level="utils">
+          <component name="ipadministrationtool" long-name="IP Administration Tool" introduced="7.0" purpose="development" filter="test">
+            <unit mrp="/sf/app/techview/networkingutils/ipadministrationtool/group/networking_ipadm.mrp" bldFile="/sf/app/techview/networkingutils/ipadministrationtool/group"/>
+          </component>
+          <component name="nameresolverutility" long-name="Name Resolver Utility" introduced="7.0s" purpose="development" filter="test">
+            <unit mrp="/sf/app/techview/networkingutils/nameresolverutility/group/networking_nslookup.mrp" bldFile="/sf/app/techview/networkingutils/nameresolverutility/group"/>
+          </component>
+        </collection>
+        <collection name="shortlinkapps" long-name="Shortlink Apps" level="apps1">
+          <component name="techviewusbui" long-name="USB UI" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/shortlinkapps/techviewusbui/group" mrp="/sf/app/techview/shortlinkapps/techviewusbui/group/techview_usbui.mrp"/>
+          </component>
+          <component name="bluetoothui" long-name="Bluetooth UI" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/shortlinkapps/bluetoothui/group" mrp="/sf/app/techview/shortlinkapps/bluetoothui/group/techview_bluetoothui.mrp"/>
+          </component>
+          <component name="reftsp" long-name="Remote Control Reference TSP" filter="techview" introduced="9.1" purpose="development" plugin="Y">
+            <unit bldFile="/sf/app/techview/shortlinkapps/reftsp/group" mrp="/sf/app/techview/shortlinkapps/reftsp/group/bluetooth_remotecontrol_refTSP.mrp"/>
+          </component>
+        </collection>
+        <collection name="testapps" long-name="Test Apps" level="utils">
+          <component name="simpleapp" long-name="Simple App" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/testapps/simpleapp/group" mrp="/sf/app/techview/testapps/simpleapp/group/Techview_SimpleApp.mrp"/>
+          </component>
+          <component name="statdevice" long-name="STAT Device" filter="techview" purpose="development">
+            <unit bldFile="/sf/os/buildtools/toolsandutils/statapi/source/statapi/Techview" mrp="/sf/os/buildtools/toolsandutils/statapi/group/testtools_stat_device_techview.mrp"/>
+          </component>
+          <component name="rschandlerui" long-name="Resource Handler UI" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/testapps/rschandler/TVResourceHandler/group" mrp="/sf/app/techview/testapps/rschandler/TVResourceHandler/group/Testtools_ResourceHandler_techview.mrp"/>
+          </component>
+          <component name="graphicstestutils" long-name="Graphics Test Utils" filter="techview" introduced="9.2" purpose="development">
+            <unit bldFile="/sf/app/techview/testapps/graphicstestutils/group" mrp="/sf/app/techview/testapps/graphicstestutils/group/graphics_testutils.mrp"/>
+          </component>
+          <component name="rschandler" long-name="Resource Handler" deprecated="^3" purpose="development" filter="test">
+            <unit mrp="/sf/app/techview/testapps/rschandler/TVResourceHandler/group/Testtools_ResourceHandler_gt.mrp" bldFile="/sf/app/techview/testapps/rschandler/TVResourceHandler/group"/>
+          </component>
+        </collection>
+        <collection name="avapps" long-name="A/V Apps" level="apps3">
+          <component name="techviewaudio" long-name="Audio" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/avapps/techviewaudio/Group" mrp="/sf/app/techview/avapps/techviewaudio/Group/techview_audio.mrp"/>
+          </component>
+        </collection>
+        <collection name="toolkit" long-name="Toolkit" level="utils">
+          <component name="romkit" long-name="ROM Kit" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/toolkit/romkit/group" mrp="/sf/app/techview/toolkit/romkit/group/techview_romkit.mrp"/>
+          </component>
+          <component name="romimages" long-name="ROM Images" filter="techview" purpose="development">
+            <unit bldFile="/sf/os/deviceplatformrelease/symbianosbld/cedarutils/tb92sfrom_obys" mrp="/sf/os/deviceplatformrelease/symbianosbld/cedarutils/tb92sfrom_obys/reference_roms_tb92.mrp" version="tb92"/>
+          </component>
+          <component name="configfiles" long-name="Configuration Files" filter="techview" purpose="development">
+            <unit mrp="/sf/app/techview/toolkit/configfiles/techview_epoc_ini.mrp"/>
+          </component>
+          <component name="cdborphans" long-name="CDB Orphan File Handler" filter="techview" purpose="development">
+            <unit bldFile="/sf/app/techview/toolkit/cdborphans/group" mrp="/sf/app/techview/toolkit/cdborphans/group/techview_cdb_dummy_orphanheader_checker.mrp"/>
+          </component>
+        </collection>
+        <collection name="techview_info" long-name="Techview Info" level="apps3">
+          <component name="techview_metadata" long-name="Techview Metadata" introduced="^2" purpose="development" class="config PC">
+            <unit mrp="/sf/app/techview/techview_info/techview_metadata/techview_metadata.mrp"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/app/utils/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/utils/package_definition.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -1,109 +1,94 @@
 <?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="app" long-name="Applications" levels="services apps">
-<block name="utils" level="apps" long-name="Utility Apps">
-<collection name="s60">
-<component name="utils">
-<unit bldFile="/sf/app/utils/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="app" long-name="Applications" levels="services apps">
+      <block name="utils" level="apps" long-name="Utility Apps" levels="app">
+        <collection name="extras" long-name="Extras" level="app">
+          <component name="about" filter="s60" long-name="About Application">
+            <unit bldFile="/sf/app/utils/extras/about/group"/>
+          </component>
+          <component name="calcsoft" filter="s60" long-name="Calculator Application">
+            <unit bldFile="/sf/app/utils/extras/calcsoft/group"/>
+          </component>
+          <component name="converter" filter="s60" long-name="Unit Converter">
+            <unit bldFile="/sf/app/utils/extras/converter/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/app/videoplayer/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/videoplayer/package_definition.xml	Thu Jan 28 14:49:47 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="app" long-name="Applications" levels="services apps">
-<block name="videoplayer" level="apps" long-name="Video Player Apps">
-<collection name="s60">
-<component name="videoplayer">
-<unit bldFile="/sf/app/videoplayer/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="app" long-name="Applications" levels="services apps">
+      <block name="videoplayer" level="apps" long-name="Video Player Apps" levels="support apps">
+        <collection name="videofeeds" long-name="Video Feeds" level="apps">
+          <component name="iptv_utils" filter="s60" long-name="Iptv Util" introduced="^3">
+            <unit bldFile="/sf/app/videoplayer/videofeeds/utils/group"/>
+          </component>
+          <component name="viewmessageutility" filter="s60" long-name="View Message Utility" introduced="^3">
+            <unit bldFile="/sf/app/videoplayer/videofeeds/viewmessageutility/group"/>
+          </component>
+          <component name="vcxnotifier" filter="s60" long-name="Video Connection Notifier" introduced="^3" plugin="Y">
+            <unit bldFile="/sf/app/videoplayer/videofeeds/vcxnotifier/group"/>
+          </component>
+          <component name="vccommon" filter="s60" long-name="Video Connection Common" introduced="^3">
+            <unit bldFile="/sf/app/videoplayer/videofeeds/vccommon/group"/>
+          </component>
+          <component name="clientapi" long-name="Server Client" filter="s60" introduced="^3">
+            <unit bldFile="/sf/app/videoplayer/videofeeds/clientapi/group"/>
+          </component>
+          <component name="provisioningprocessor" long-name="Provisioning Processor" filter="s60" introduced="^3">
+            <unit bldFile="/sf/app/videoplayer/videofeeds/provisioningprocessor/group"/>
+          </component>
+          <component name="mrssplugin" long-name="RSS plugin" filter="s60" introduced="^3" plugin="Y">
+            <unit bldFile="/sf/app/videoplayer/videofeeds/mrssplugin/group"/>
+          </component>
+          <component name="videofeeds_server" long-name="Server" filter="s60" introduced="^3">
+            <unit bldFile="/sf/app/videoplayer/videofeeds/server/group"/>
+          </component>
+          <component name="livetvutils" long-name="LiveTV Utils" filter="s60" introduced="^3">
+            <unit bldFile="/sf/app/videoplayer/videofeeds/livetvutils/group"/>
+          </component>
+          <component name="iptvprovisioningrecognizer" long-name="IP TV Provisioning Recognizer" filter="s60" introduced="^3" plugin="Y">
+            <unit bldFile="/sf/app/videoplayer/videofeeds/provisioningrecognizer/group"/>
+          </component>
+          <component name="iptvprovisioningappui" long-name="IP TV Provisioning App UI" filter="s60" introduced="^3">
+            <unit bldFile="/sf/app/videoplayer/videofeeds/provisioningappui/group"/>
+          </component>
+          <component name="iptvomaprovisioning" long-name="IP TV OMA Provisioning" filter="s60" introduced="^3">
+            <unit bldFile="/sf/app/videoplayer/videofeeds/omaprovisioning/group"/>
+          </component>
+          <component name="vcnsuiengine" long-name="VoD UI Engine" filter="s60" introduced="^3">
+            <unit bldFile="/sf/app/videoplayer/videofeeds/vcnsuiengine/group"/>
+          </component>
+          <component name="hgvodui" long-name="Ganes UX2.0 VoD UI" filter="s60" introduced="^3">
+            <unit bldFile="/sf/app/videoplayer/videofeeds/hgvodui/group"/>
+          </component>
+          <component name="hgvodplugin" long-name="Ganes UX2.0 VoD UI Plugin" filter="s60" introduced="^3" plugin="Y">
+            <unit bldFile="/sf/app/videoplayer/videofeeds/hgvodplugin/group"/>
+          </component>
+          <component name="vcnsscheduleview" long-name="Scheduled Download Settings View" filter="s60" introduced="^3">
+            <unit bldFile="/sf/app/videoplayer/videofeeds/vcnsscheduleview/group"/>
+          </component>
+          <component name="vcnsscheduleplugin" long-name="Scheduled Download Settings Plugin" filter="s60" introduced="^3" plugin="Y">
+            <unit bldFile="/sf/app/videoplayer/videofeeds/vcnsscheduleplugin/group"/>
+          </component>
+          <component name="scheduleddlplugin" long-name="Scheduled download plugin" filter="s60" introduced="^3">
+            <unit bldFile="/sf/app/videoplayer/videofeeds/scheduleddlplugin/group"/>
+          </component>
+          <component name="videofeeds_tsrc" long-name="Video Feeds Tests" introduced="^3" filter="test">
+            <!--  can only have one unit. Can thes be #included from any of the above or a common bld.inf?-->
+            <unit bldFile="/sf/app/videoplayer/tsrc/VCXTestCommon/group"/>
+            <unit bldFile="/sf/app/videoplayer/tsrc/VCXTestUtilModule/group"/>
+            <unit bldFile="/sf/app/videoplayer/videofeeds/server/tsrc/IptvTestUtility/group"/>
+            <unit bldFile="/sf/app/videoplayer/tsrc/VCXTestMyVideosCollectionClient/group"/>
+            <unit bldFile="/sf/app/videoplayer/videofeeds/server/tsrc/VCXProvisioningTest/group"/>
+            <unit bldFile="/sf/app/videoplayer/videofeeds/server/tsrc/VCXServiceManagementApiTest/group"/>
+            <unit bldFile="/sf/app/videoplayer/videofeeds/server/tsrc/VCXVodContentApiTest/group"/>
+          </component>
+        </collection>
+        <collection name="videocollection" long-name="Video Collection" level="apps">
+          <component name="mpxmyvideoscollection" filter="s60" long-name="MPX My Videos Collection" introduced="^3">
+            <unit bldFile="/sf/app/videoplayer/videocollection/mpxmyvideoscollection/group"/>
+          </component>
+          <component name="myvideosindicatorplugin" filter="s60" long-name="My Videos Indicator Plugin" introduced="^3" plugin="Y">
+            <unit bldFile="/sf/app/videoplayer/videocollection/myvideosindicatorplugin/group"/>
+          </component>
+          <component name="hgmyvideos" filter="s60" long-name="Huriganes My Videos" introduced="^3">
+            <unit bldFile="/sf/app/videoplayer/videocollection/hgmyvideos/group"/>
+          </component>
+          <component name="hgmyvideosplugin" filter="s60" long-name="Huriganes My VideosPlugin" introduced="^3" plugin="Y">
+            <unit bldFile="/sf/app/videoplayer/videocollection/hgmyvideosplugin/group"/>
+          </component>
+          <component name="mpxmyvideoscollection_tsrc" long-name="MPX My Videos Collection Tests" filter="s60,test" introduced="^3">
+            <!--  can only have one unit. Can thes be #included from any of the above or a common bld.inf?-->
+            <unit bldFile="/sf/app/videoplayer/tsrc/VCXTestCommon/group"/>
+            <unit bldFile="/sf/app/videoplayer/tsrc/VCXTestUtilModule/group"/>
+            <unit bldFile="/sf/app/videoplayer/tsrc/VCXTestMyVideosCollectionClient/group"/>
+            <unit bldFile="/sf/app/videoplayer/videocollection/mpxmyvideoscollection/tsrc/mpxmvcolltest/group"/>
+          </component>
+        </collection>
+        <collection name="videoplayer_homescreenplugins" long-name="Videoplayer Homescreen Plugins" level="support">
+          <component name="videosuiteconf" filter="s60" long-name="Video Suite Configuration" introduced="^3" plugin="Y">
+            <unit bldFile="/sf/app/videoplayer/homescreenplugins/videosuiteconf/group"/>
+          </component>
+          <component name="videoahlplugin" filter="s60" long-name="Video Player Action Handler" introduced="^3" plugin="Y">
+            <unit bldFile="/sf/app/videoplayer/homescreenplugins/videoahlplugin/group"/>
+          </component>
+          <component name="videochplugin" filter="s60" long-name="Video Player Content Harvester " introduced="^3" plugin="Y">
+            <unit bldFile="/sf/app/videoplayer/homescreenplugins/videochplugin/group"/>
+          </component>
+        </collection>
+        <collection name="mediasettings" long-name="Media Settings" level="support">
+          <!--  this is really a component. Should be moved down a directory -->
+          <component name="mediasettings_build" filter="s60" long-name="Media Settings Build">
+            <unit bldFile="/sf/app/videoplayer/mediasettings/group"/>
+          </component>
+          <component name="videoplayer_test" filter="s60" purpose="development" long-name="Video Player Apps Test">
+            <!--  can only have one unit. Can thes be #included from the above or another  bld.inf?-->
+            <unit bldFile="/sf/app/videoplayer/tsrc/VCXTestCommon/group"/>
+            <unit bldFile="/sf/app/videoplayer/tsrc/VCXTestUtilModule/group"/>
+            <unit bldFile="/sf/app/videoplayer/tsrc/VCXTestMyVideosCollectionClient/group"/>
+            <unit bldFile="/sf/app/videoplayer/mediasettings/mediasettingsengine/tsrc/mediasettingsenginetest/group"/>
+            <unit bldFile="/sf/app/videoplayer/mediasettings/videoplayersettingsengine/tsrc/vpsettingsenginetest/group"/>
+          </component>
+        </collection>
+        <collection name="filedetails" long-name="File Details" level="support">
+          <component name="filedetailsplugin" filter="s60" long-name="File Details Plugin" introduced="^3" plugin="Y">
+            <unit bldFile="/sf/app/videoplayer/filedetails/filedetailsplugin/group"/>
+          </component>
+          <component name="filedetailsdialog" filter="s60" long-name="File Details Dialog" introduced="^3">
+            <unit bldFile="/sf/app/videoplayer/filedetails/filedetailsdialog/group"/>
+          </component>
+        </collection>
+        <collection name="videoplayerapp" long-name="Video Player App" level="apps">
+          <component name="lwplayer" long-name="Lightweight Player" filter="s60">
+            <unit bldFile="/sf/app/videoplayer/videoplayerapp/lwplayer/group"/>
+          </component>
+          <component name="mpxvideoplayer" filter="s60" long-name="MPX Video Player" plugin="Y">
+            <unit bldFile="/sf/app/videoplayer/videoplayerapp/lmpxvideoplayer/group"/>
+          </component>
+          <component name="videoplayerlauncher" filter="s60" long-name="Video Player Launcher">
+            <unit bldFile="/sf/app/videoplayer/videoplayerapp/videoplayerlauncher/group"/>
+          </component>
+        </collection>
+        <collection name="videoplayback" long-name="Video Playback Plugins" level="support">
+          <component name="videohelix" long-name="Video Helix" filter="s60" introduced="^3" plugin="Y">
+            <unit bldFile="/sf/app/videoplayer/videoplayback/videohelix/group"/>
+          </component>
+          <component name="videopdlplaybackviewplugin" filter="s60" long-name="Video PDL Playback View Plugin" introduced="^3" plugin="Y">
+            <unit bldFile="/sf/app/videoplayer/videoplayback/videopdlplaybackviewplugin/group"/>
+          </component>
+          <component name="videoplaybackcontrols" filter="s60" long-name="Video Playback Controls" introduced="^3" plugin="Y">
+            <unit bldFile="/sf/app/videoplayer/videoplayback/videoplaybackcontrols/group"/>
+          </component>
+          <component name="videoplaybackviewplugin" filter="s60" long-name="Video Playback View Plugin" introduced="^3" plugin="Y">
+            <unit bldFile="/sf/app/videoplayer/videoplayback/videoplaybackviewplugin/group"/>
+          </component>
+          <component name="videoplaybackviews" filter="s60" long-name="Video Playback Views" introduced="^3" plugin="Y">
+            <unit bldFile="/sf/app/videoplayer/videoplayback/videoplaybackviews/group"/>
+          </component>
+          <component name="videoplayer_tsrc" long-name="Video Player Tests" filter="s60,test" introduced="^3">
+            <!--  can only have one unit. Can thes be #included from any of the above. Why is a videoplayerapp test in here?-->
+            <unit bldFile="/sf/app/videoplayer/videoplayback/videohelix/tsrc/ut_videohelixtest/group"/>
+            <unit bldFile="/sf/app/videoplayer/videoplayback/videoplaybackcontrols/tsrc/videoplaybackcontrols_test/group"/>
+            <unit bldFile="/sf/app/videoplayer/videoplayback/videoplaybackviews/tsrc/ut_userinputhandlertest/group"/>
+            <unit bldFile="/sf/app/videoplayer/videoplayerapp/mpxvideoplayer/tsrc/ut_mpxvideoplayertest/group"/>
+          </component>
+        </collection>
+        <collection name="videoplayer_info" long-name="Video Player Apps Info" level="apps">
+          <component name="videoplayer_plat" filter="s60" long-name="Video Player Apps Platform Interfaces" class="api">
+            <unit bldFile="/sf/app/videoplayer/videoplayer_plat/group"/>
+          </component>
+          <component name="videoplayer_api_test" filter="s60,apit_test" purpose="development" long-name="Video Player API Test">
+            <!--  can only have one unit, #include from a common bld.inf? -->
+            <unit bldFile="/sf/app/videoplayer/videoplayer_plat/video_player_file_details_dialog_api/tsrc/group"/>
+            <unit bldFile="/sf/app/videoplayer/videoplayer_plat/videoplayer_startup_api/tsrc/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/app/videoplayer/package_definition_3.0.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/videoplayer/package_definition_3.0.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -160,7 +160,7 @@
       <component id="videoplayer_plat" filter="s60" name="Video Player Apps Platform Interfaces" class="api">
         <unit bldFile="videoplayer_plat/group"/>
       </component>
-      <component id="videoplayer_api_test" filter="s60,test" purpose="development" name="Video Player API Test">
+      <component id="videoplayer_api_test" filter="s60,apit_test" purpose="development" name="Video Player API Test">
      		<!--  can only have one unit, #include from a common bld.inf? -->
 	      <unit bldFile="videoplayer_plat/video_player_file_details_dialog_api/tsrc/group"/>
 	      <unit bldFile="videoplayer_plat/videoplayer_startup_api/tsrc/group"/>
--- a/symbian3/app/videotelephony/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/videotelephony/package_definition.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -1,127 +1,115 @@
 <?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="app" long-name="Applications" levels="services apps">
-<block name="videotelephony" level="apps" long-name="Video Telephony Apps">
-<collection name="s60">
-<component name="videotelephony_plat">
-<unit bldFile="/sf/app/videotelephony/videotelephony_plat/group" mrp=""/>
-</component>
-<component name="vtprotocolsstub">
-<unit bldFile="/sf/app/videotelephony/vtprotocolsstub/group" mrp=""/>
-</component>
-<component name="DisplaySink">
-<unit bldFile="/sf/app/videotelephony/vtprotocolplugins/DisplaySink/group" mrp=""/>
-</component>
-<component name="VideoSource">
-<unit bldFile="/sf/app/videotelephony/vtprotocolplugins/VideoSource/group" mrp=""/>
-</component>
-<component name="videoteleng">
-<unit bldFile="/sf/app/videotelephony/vtengines/videoteleng/Group" mrp=""/>
-</component>
-<component name="videotelui">
-<unit bldFile="/sf/app/videotelephony/vtuis/videotelui/group" mrp=""/>
-</component>
-<component name="vtmediatorplugin">
-<unit bldFile="/sf/app/videotelephony/vtengines/vtmediatorplugin/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="app" long-name="Applications" levels="services apps">
+      <block name="videotelephony" level="apps" long-name="Video Telephony Apps" levels="engine plugin prot ui">
+        <collection name="vtengines" long-name="Video Telephony Engines" level="engine">
+          <component name="videoteleng" filter="s60" long-name="Video Telephony Engine">
+            <unit bldFile="/sf/app/videotelephony/vtengines/videoteleng/group"/>
+          </component>
+          <component name="vtmediatorplugin" filter="s60" long-name="VT Mediator Plugin" plugin="Y">
+            <unit bldFile="/sf/app/videotelephony/vtengines/vtmediatorplugin/group"/>
+          </component>
+        </collection>
+        <collection name="vtuis" long-name="Video Telephony UIs" level="ui">
+          <component name="videotelui" filter="s60" long-name="Video Telephony UI">
+            <unit bldFile="/sf/app/videotelephony/vtuis/videotelui/group"/>
+          </component>
+        </collection>
+        <collection name="vtprotocolplugins" long-name="VT Protocol Plugins" level="plugin">
+          <component name="displaysink" filter="s60" long-name="Display Sink" introduced="^2">
+            <unit bldFile="/sf/app/videotelephony/vtprotocolplugins/displaysink/group"/>
+          </component>
+          <component name="videosource" filter="s60" long-name="Video Source" introduced="^2">
+            <unit bldFile="/sf/app/videotelephony/vtprotocolplugins/videosource/group"/>
+          </component>
+        </collection>
+        <collection name="vtprotocolsstub" long-name="VT Protocols Stub" level="prot">
+          <!--  this collection is really a component, move down a directory -->
+          <component name="videotelproto" filter="s60" long-name="Video Telephony Protocol">
+            <unit bldFile="/sf/app/videotelephony/vtprotocolsstub/group" filter="sf"/>
+          </component>
+        </collection>
+        <collection name="videotelephony_info" long-name="VT Apps Info" level="ui">
+          <component name="videotelephony_plat" filter="s60" long-name="VT Apps Platform Interfaces" class="api">
+            <unit bldFile="/sf/app/videotelephony/videotelephony_plat/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/app/voicerec/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/voicerec/package_definition.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -1,109 +1,98 @@
 <?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="app" long-name="Applications" levels="services apps">
-<block name="voicerec" level="apps" long-name="Voice Recorder Apps">
-<collection name="s60">
-<component name="voicerec">
-<unit bldFile="/sf/app/voicerec/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="app" long-name="Applications" levels="services apps">
+      <block name="voicerec" level="apps" long-name="Voice Recorder Apps">
+        <!-- custom filter pref_test-->
+        <collection name="voicerecorder" long-name="Voice Recorder">
+          <!--this is really a component, move down a directory -->
+          <component name="voicerecorder_build" filter="s60" long-name="Voice Recorder Build">
+            <unit bldFile="/sf/app/voicerec/voicerecorder/group"/>
+          </component>
+        </collection>
+        <collection name="voicerec_info" long-name="Voice Recorder Apps Info">
+          <component name="voicerec_api_test" filter="s60,api_test,pref_test" purpose="development" long-name="Voice Recorder Apps Test">
+            <unit bldFile="/sf/app/voicerec/tsrc/group"/>
+          </component>
+          <component name="voicerec_plat" filter="s60" long-name="Voice Recorder Apps Platform Interfaces" class="api">
+            <unit bldFile="/sf/app/voicerec/voicerec_plat/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/app/voicerec/package_definition_3.0.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/voicerec/package_definition_3.0.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -1,6 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <SystemDefinition schema="3.0.0">
   <package id="voicerec" name="Voice Recorder Apps">
+  <!-- custom filter pref_test-->
     <collection id="voicerecorder" name="Voice Recorder">
     	<!--this is really a component, move down a directory -->
       <component id="voicerecorder_build" filter="s60" name="Voice Recorder Build">
@@ -8,8 +9,7 @@
       </component>
     </collection>
     <collection id="voicerec_info" name="Voice Recorder Apps Info">
-      <component id="voicerec_api_test" filter="s60,test" purpose="development" name="Voice Recorder Apps Test">
-      	<!-- can this just be #included in voicerec_plat?-->
+      <component id="voicerec_api_test" filter="s60,api_test,pref_test" purpose="development" name="Voice Recorder Apps Test">
         <unit bldFile="tsrc/group"/>
       </component>
       <component id="voicerec_plat" filter="s60" name="Voice Recorder Apps Platform Interfaces" class="api">
--- a/symbian3/app/webuis/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/webuis/package_definition.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -1,109 +1,122 @@
 <?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="app" long-name="Applications" levels="services apps">
-<block name="webuis" level="services" long-name="Web UIs">
-<collection name="s60">
-<component name="webuis">
-<unit bldFile="/sf/app/webuis/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="app" long-name="Applications" levels="services apps">
+      <block name="webuis" level="services" long-name="Web UIs" levels="plugin app">
+        <collection name="browserui" long-name="Browser UI" level="app">
+          <component name="browser" filter="s60" long-name="Browser">
+            <unit bldFile="/sf/app/webuis/browserui/browser/group"/>
+          </component>
+          <component name="operatormenu" filter="s60" long-name="Browser Operator Menu">
+            <unit bldFile="/sf/app/webuis/browserui/operatormenu/group"/>
+          </component>
+          <component name="videoservices" filter="s60" long-name="Browser Video Services">
+            <unit bldFile="/sf/app/webuis/browserui/videoservices/group"/>
+          </component>
+        </collection>
+        <collection name="browserplugins" long-name="Browser Plugins" level="plugin">
+          <component name="browsersysteminfoplugin" filter="s60" long-name="Browser System Info Plugin" plugin="Y">
+            <unit bldFile="/sf/app/webuis/browserplugins/browsersysteminfoplugin/group"/>
+          </component>
+          <component name="browsergpsplugin" filter="s60" long-name="Browser GPS Plugin" plugin="Y">
+            <unit bldFile="/sf/app/webuis/browserplugins/browsergpsplugin/group"/>
+          </component>
+          <component name="browseraudiovideoplugin" filter="s60" long-name="Browser Audio Video Plugin" plugin="Y">
+            <unit bldFile="/sf/app/webuis/browserplugins/browseraudiovideoplugin/group"/>
+          </component>
+          <!--   <component id="browserplugins_build" filter="s60" name="Browser Plugins Build">-->
+          <!-- can the #ifdef in this be handled elsewhere? -->
+          <!-- <unit bldFile="browserplugins/group"/>
+      </component>-->
+        </collection>
+        <collection name="pushmtm" long-name="Push MTM" level="plugin">
+          <component name="pushmtm_help" filter="s60" long-name="Push MTM Help">
+            <unit bldFile="/sf/app/webuis/pushmtm/help/group"/>
+          </component>
+          <component name="plugins" filter="s60" long-name="Push MTM Plugins" plugin="Y">
+            <unit bldFile="/sf/app/webuis/pushmtm/plugins/group"/>
+          </component>
+          <component name="pushmtm_build" filter="s60" long-name="Push MTM Build">
+            <!-- Some content is at collection level and some is at comopnent level. Either make this a single
+			component and move it down a diretcory, or make separate independent components in this collection -->
+            <unit bldFile="/sf/app/webuis/pushmtm/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- a/symbian3/app/webuis/package_definition_3.0.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/app/webuis/package_definition_3.0.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -22,7 +22,6 @@
       <component id="browsergpsplugin" filter="s60" name="Browser GPS Plugin" class="plugin">
       	<meta rel="config">
       		<defined condition="__WEB_WIDGETS"/>
-      		<not-defined condition="__WEB_WIDGETS"/>
       	</meta>
         <unit bldFile="browserplugins/browsergpsplugin/group"/>
       </component>
--- a/symbian3/tools/homescreentools/package_definition.xml	Wed Jan 27 15:59:56 2010 +0000
+++ b/symbian3/tools/homescreentools/package_definition.xml	Thu Jan 28 14:49:47 2010 +0000
@@ -1,46 +1,68 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE SystemDefinition [
- <!ELEMENT SystemDefinition (systemModel?,SystemBuild?)>
- <!ATTLIST SystemDefinition
+<!ELEMENT SystemDefinition ( systemModel )>
+<!ATTLIST SystemDefinition
   name CDATA #REQUIRED
-  schema CDATA #REQUIRED>
- <!ELEMENT systemModel (layer+)>
- <!ELEMENT layer (block*|collection*)*>
- <!ATTLIST layer
+  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*)*>
- <!ATTLIST block
+  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)*>
- <!ATTLIST subblock
-  name CDATA #REQUIRED
-  long-name CDATA #IMPLIED>
- <!ELEMENT collection (component)*>
- <!ATTLIST collection
+  long-name CDATA #IMPLIED
+>
+
+<!ELEMENT subblock (collection)*>
+<!-- Cellular Baseband Services, Networking Services, etc -->
+<!ATTLIST subblock
   name CDATA #REQUIRED
   long-name CDATA #IMPLIED
-  level NMTOKEN #IMPLIED>
- <!ELEMENT component (unit)*>
- <!ATTLIST component
+>
+
+<!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'
+  plugin (Y|N) "N"
   filter CDATA #IMPLIED
   class NMTOKENS #IMPLIED
   supports CDATA #IMPLIED
-  purpose (optional|mandatory|development) 'optional'>
- <!ELEMENT unit EMPTY>
- <!ATTLIST unit
+  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
@@ -48,62 +70,40 @@
   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>
+  priority CDATA #IMPLIED
+>
 ]>
-<SystemDefinition schema="2.0.1" name="Symbian^3">
-<systemModel>
-<layer name="tools">
-<block name="homescreentools">
-<collection name="s60">
-<component name="homescreentools">
-<unit bldFile="/sf/tools/homescreentools/group" mrp=""/>
-</component>
-</collection>
-</block>
-</layer>
-</systemModel>
+<SystemDefinition name="Symbian^3" schema="2.0.1">
+  <systemModel>
+    <layer name="app" long-name="Applications" levels="services apps">
+      <block name="homescreentools" level="services" long-name="Home Screen Tools" levels="tool install">
+        <collection name="dtdinstaller" long-name="DTD Installer" level="install">
+          <!-- collection is really a component. Needs to be moved down a directory -->
+          <!-- this needs to be built first, does build order need to be forced with filters? -->
+          <component name="dtdinstaller_build" filter="s60" long-name="DTD Installer Build" class="tool PC">
+            <unit bldFile="/sf/tools/homescreentools/dtdinstaller/group"/>
+          </component>
+        </collection>
+        <collection name="themeinstaller" long-name="Theme Installer" level="install">
+          <!-- collection is really a component. Needs to be moved down a directory -->
+          <component name="themeinstaller_build" filter="s60" long-name="Theme Installer Build" class="tool PC">
+            <unit bldFile="/sf/tools/homescreentools/themeinstaller/group"/>
+          </component>
+        </collection>
+        <collection name="widgettools" long-name="Widget Tools" level="install">
+          <component name="hspluginpreinstaller" filter="s60" long-name="HS Plugin Preinstaller" introduced="^3" class="tool PC">
+            <unit bldFile="/sf/tools/homescreentools/widgettools/hspluginpreinstaller/group"/>
+          </component>
+          <component name="wrtwidgetpreinstaller" filter="s60" long-name="WRT Widget Preinstaller" introduced="^3" class="tool PC">
+            <unit bldFile="/sf/tools/homescreentools/widgettools/wrtwidgetpreinstaller/group"/>
+          </component>
+        </collection>
+        <collection name="themetool" long-name="Theme Tool" level="tool">
+          <component name="themetool_build" filter="s60" long-name="Theme Tool Build" class="tool PC">
+            <unit bldFile="/sf/tools/homescreentools/themetool/group"/>
+          </component>
+        </collection>
+      </block>
+    </layer>
+  </systemModel>
 </SystemDefinition>