symbian3/mw/drm/package_definition.xml
branchHighFidelityModel
changeset 43 35cc8ff825d7
parent 30 0f4f00318d20
child 59 7da3f5055ea5
equal deleted inserted replaced
42:82a6c2dffce1 43:35cc8ff825d7
     1 <?xml version="1.0" encoding="UTF-8"?>
     1 <?xml version="1.0" encoding="UTF-8"?>
     2 <!DOCTYPE SystemDefinition [
     2 <!DOCTYPE SystemDefinition [
     3  <!ELEMENT SystemDefinition (systemModel?,SystemBuild?)>
     3 <!ELEMENT SystemDefinition ( systemModel )>
     4  <!ATTLIST SystemDefinition
     4 <!ATTLIST SystemDefinition
     5   name CDATA #REQUIRED
     5   name CDATA #REQUIRED
     6   schema CDATA #REQUIRED>
     6   schema CDATA #REQUIRED
     7  <!ELEMENT systemModel (layer+)>
     7 >
     8  <!ELEMENT layer (block*|collection*)*>
     8 <!-- all paths are relative to the environment variable specified by the root attribute, or SOURCEROOT if not.  -->
     9  <!ATTLIST layer
     9 
       
    10 <!-- System Model Section of DTD -->
       
    11 <!ELEMENT systemModel (layer+)>
       
    12 
       
    13 <!ELEMENT layer (block* | collection*)*>
       
    14 <!-- Kernel Services, Base Services, OS Services, Etc -->
       
    15 <!ATTLIST layer
    10   name CDATA #REQUIRED
    16   name CDATA #REQUIRED
    11   long-name CDATA #IMPLIED
    17   long-name CDATA #IMPLIED
    12   levels NMTOKENS #IMPLIED
    18   levels NMTOKENS #IMPLIED
    13   span CDATA #IMPLIED>
    19   span CDATA #IMPLIED
    14  <!ELEMENT block (subblock*|collection*)*>
    20 >
    15  <!ATTLIST block
    21 
       
    22 <!ELEMENT block (subblock* | collection*)*>
       
    23  <!-- Generic OS services, Comms Services, etc -->
       
    24 <!ATTLIST block
    16   levels NMTOKENS #IMPLIED
    25   levels NMTOKENS #IMPLIED
    17   span CDATA #IMPLIED
    26   span CDATA #IMPLIED
    18   level NMTOKEN #IMPLIED
    27   level NMTOKEN #IMPLIED
    19   name CDATA #REQUIRED
    28   name CDATA #REQUIRED
    20   long-name CDATA #IMPLIED>
    29   long-name CDATA #IMPLIED
    21  <!ELEMENT subblock (collection)*>
    30 >
    22  <!ATTLIST subblock
    31 
    23   name CDATA #REQUIRED
    32 <!ELEMENT subblock (collection)*>
    24   long-name CDATA #IMPLIED>
    33 <!-- Cellular Baseband Services, Networking Services, etc -->
    25  <!ELEMENT collection (component)*>
    34 <!ATTLIST subblock
    26  <!ATTLIST collection
       
    27   name CDATA #REQUIRED
    35   name CDATA #REQUIRED
    28   long-name CDATA #IMPLIED
    36   long-name CDATA #IMPLIED
    29   level NMTOKEN #IMPLIED>
    37 >
    30  <!ELEMENT component (unit)*>
    38 
    31  <!ATTLIST component
    39 <!ELEMENT collection (component)*>
       
    40 <!-- Screen Driver, Content Handling, etc -->
       
    41 <!ATTLIST collection
       
    42   name CDATA #REQUIRED
       
    43   long-name CDATA #IMPLIED
       
    44   level NMTOKEN #IMPLIED
       
    45 >
       
    46 
       
    47 <!ELEMENT component (unit)*>
       
    48 <!-- contains units or is a  package or prebuilt -->
       
    49 <!ATTLIST component
    32   name CDATA #REQUIRED
    50   name CDATA #REQUIRED
    33   long-name CDATA #IMPLIED
    51   long-name CDATA #IMPLIED
    34   deprecated CDATA #IMPLIED
    52   deprecated CDATA #IMPLIED
    35   introduced CDATA #IMPLIED
    53   introduced CDATA #IMPLIED
    36   contract CDATA #IMPLIED
    54   contract CDATA #IMPLIED
    37   plugin (Y|N) 'N'
    55   plugin (Y|N) "N"
    38   filter CDATA #IMPLIED
    56   filter CDATA #IMPLIED
    39   class NMTOKENS #IMPLIED
    57   class NMTOKENS #IMPLIED
    40   supports CDATA #IMPLIED
    58   supports CDATA #IMPLIED
    41   purpose (optional|mandatory|development) 'optional'>
    59   purpose ( optional | mandatory | development ) "optional"
    42  <!ELEMENT unit EMPTY>
    60 >
    43  <!ATTLIST unit
    61 
       
    62 <!ELEMENT unit EMPTY >
       
    63 <!-- must be buildable (bld.inf) -->
       
    64 <!-- bldFile  may someday be removed in favour of mrp -->
       
    65 <!ATTLIST unit
    44   mrp CDATA #IMPLIED
    66   mrp CDATA #IMPLIED
    45   filter CDATA #IMPLIED
    67   filter CDATA #IMPLIED
    46   bldFile CDATA #IMPLIED
    68   bldFile CDATA #IMPLIED
    47   root CDATA #IMPLIED
    69   root CDATA #IMPLIED
    48   version NMTOKEN #IMPLIED
    70   version NMTOKEN #IMPLIED
    49   prebuilt NMTOKEN #IMPLIED
    71   prebuilt NMTOKEN #IMPLIED
    50   late (Y|N) #IMPLIED
    72   late (Y|N) #IMPLIED
    51   priority CDATA #IMPLIED>
    73   priority CDATA #IMPLIED
    52  <!ELEMENT SystemBuild (option*|target+|targetList+|list+|configuration+)*>
    74 >
    53  <!ATTLIST SystemBuild schema CDATA #REQUIRED>
       
    54  <!ELEMENT list (ref+)>
       
    55  <!ATTLIST list
       
    56   name ID #REQUIRED
       
    57   description CDATA #REQUIRED>
       
    58  <!ELEMENT ref EMPTY>
       
    59  <!ATTLIST ref item CDATA #REQUIRED>
       
    60  <!ELEMENT targetList EMPTY>
       
    61  <!ATTLIST targetList
       
    62   name ID #REQUIRED
       
    63   description CDATA #REQUIRED
       
    64   target IDREFS #REQUIRED>
       
    65  <!ELEMENT target EMPTY>
       
    66  <!ATTLIST target
       
    67   name ID #REQUIRED
       
    68   abldTarget CDATA #REQUIRED
       
    69   description CDATA #REQUIRED>
       
    70  <!ELEMENT option EMPTY>
       
    71  <!ATTLIST option
       
    72   name ID #REQUIRED
       
    73   abldOption CDATA #REQUIRED
       
    74   description CDATA #REQUIRED
       
    75   enable (Y|N) #REQUIRED>
       
    76  <!ELEMENT configuration (listRef+|ref+|task+)*>
       
    77  <!ATTLIST configuration
       
    78   name ID #REQUIRED
       
    79   description CDATA #REQUIRED
       
    80   filter CDATA #REQUIRED>
       
    81  <!ELEMENT task (listRef*,(buildLayer|specialInstructions))>
       
    82  <!ELEMENT listRef EMPTY>
       
    83  <!ATTLIST listRef list CDATA #REQUIRED>
       
    84  <!ELEMENT buildLayer EMPTY>
       
    85  <!ATTLIST buildLayer
       
    86   command CDATA #REQUIRED
       
    87   targetList IDREFS #IMPLIED
       
    88   unitParallel (Y|N) #REQUIRED
       
    89   targetParallel (Y|N) 'N'>
       
    90  <!ELEMENT specialInstructions EMPTY>
       
    91  <!ATTLIST specialInstructions
       
    92   name CDATA #REQUIRED
       
    93   cwd CDATA #REQUIRED
       
    94   root CDATA #IMPLIED
       
    95   command CDATA #REQUIRED>
       
    96 ]>
    75 ]>
    97 <SystemDefinition schema="2.0.1" name="Symbian^3">
    76 <SystemDefinition name="Symbian^3" schema="2.0.1">
    98 <systemModel>
    77   <systemModel>
    99 <layer name="mw">
    78     <layer name="mw" long-name="Middleware" levels="generic specific">
   100 <block name="drm">
    79       <block name="drm" level="generic" long-name="DRM" levels="plugin framework server generic specific">
   101 <collection name="s60">
    80         <collection name="commondrm" long-name="Common DRM" level="generic">
   102 <component name="drm">
    81           <!-- it looks like this collection would be better as a component. If so, move down a directory. Otherwise, split up the bld.inf -->
   103 <unit bldFile="/sf/mw/drm/group" mrp=""/>
    82           <component name="drmencryptor" filter="s60" long-name="DRM Encryptor" class="placeholder">
   104 </component>
    83             <!-- this should have its own bld.inf or be removed as a component -->
   105 </collection>
    84           </component>
   106 </block>
    85           <component name="drmsettingsplugin" filter="s60" long-name="DRM Settings Plugin" plugin="Y" class="placeholder">
   107 </layer>
    86             <!-- this should have its own bld.inf or be removed as a component -->
   108 </systemModel>
    87           </component>
       
    88           <component name="drmrightsmanagerui" filter="s60" long-name="DRM Rights Manager UI">
       
    89             <unit bldFile="/sf/mw/drm/commondrm/drmrightsmanagerui/help/group"/>
       
    90           </component>
       
    91           <component name="drmutility" filter="s60" long-name="DRM Utility">
       
    92             <unit bldFile="/sf/mw/drm/commondrm/drmutility/group"/>
       
    93           </component>
       
    94           <component name="drmserviceapiwrapper" filter="s60" long-name="DRM Service API Wrapper">
       
    95             <unit bldFile="/sf/mw/drm/commondrm/drmserviceapiwrapper/group"/>
       
    96           </component>
       
    97           <component name="drmrightsstoringlocation" filter="s60" long-name="DRM Rights Storing Location">
       
    98             <unit bldFile="/sf/mw/drm/commondrm/drmrightsstoringlocation/group"/>
       
    99           </component>
       
   100           <component name="commondrm_build" filter="s60" long-name="Common DRM Build">
       
   101             <!-- should be split into the above files, or them collapsed into a single component -->
       
   102             <unit bldFile="/sf/mw/drm/commondrm/group"/>
       
   103           </component>
       
   104         </collection>
       
   105         <collection name="omadrm" long-name="OMA DRM" level="server">
       
   106           <!-- collection is really a component. Move down a directory -->
       
   107           <component name="omadrm_build" filter="s60" long-name="OMA DRM Build">
       
   108             <unit bldFile="/sf/mw/drm/omadrm/group"/>
       
   109           </component>
       
   110         </collection>
       
   111         <collection name="wmdrm" long-name="Windows Media DRM" level="framework">
       
   112           <!-- collection is really a component. Move down a directory -->
       
   113           <component name="wmdrm_build" filter="s60" long-name="WM DRM Build">
       
   114             <unit bldFile="/sf/mw/drm/wmdrm/group"/>
       
   115           </component>
       
   116         </collection>
       
   117         <collection name="drm_info" long-name="DRM Info" level="specific">
       
   118           <component name="drm_pub" filter="s60" long-name="DRM Public Interfaces" class="api">
       
   119             <unit bldFile="/sf/mw/drm/drm_pub/group"/>
       
   120           </component>
       
   121           <component name="drm_plat" filter="s60" long-name="DRM Platform Interfaces" class="api">
       
   122             <unit bldFile="/sf/mw/drm/drm_plat/group"/>
       
   123           </component>
       
   124           <component name="drm_api_test" filter="s60,api_test" long-name="DRM Build" purpose="development">
       
   125             <unit bldFile="/sf/mw/drm/tsrc/group"/>
       
   126           </component>
       
   127         </collection>
       
   128       </block>
       
   129     </layer>
       
   130   </systemModel>
   109 </SystemDefinition>
   131 </SystemDefinition>