<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE SystemDefinition [
<!ELEMENT SystemDefinition (systemModel)>
<!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>
]>
<SystemDefinition schema="2.0.1" name="Symbian^3">
<systemModel>
<layer name="mw" long-name="Middleware" levels="generic specific">
<block name="inputmethods" level="generic" long-name="Input Methods" levels="plugin engine framework api">
<collection name="inputmethods_pub" long-name="Input Methods Public Interfaces" level="api">
<component name="ptiengine_iti_api" long-name="PTI Engine API" filter="s60" class="api">
<unit bldFile="/sf/mw/inputmethods/inputmethods_pub/ptiengine_iti_api/group"/>
</component>
<component name="optical_character_recognition_api" long-name="Optical Character Recognition API" filter="s60" class="api">
<unit bldFile="/sf/mw/inputmethods/inputmethods_pub/optical_character_recognition_api/group"/>
</component>
<component name="input_language_info_api" long-name="Input Language Info API" filter="s60" class="api">
<unit bldFile="/sf/mw/inputmethods/inputmethods_pub/input_language_info_api/group"/>
</component>
</collection>
<collection name="inputmethods_plat" long-name="Input Methods Platform Interfaces" level="api">
<component name="pen_input_server_api" long-name="Pen Input Server API" filter="s60" class="api">
<unit bldFile="/sf/mw/inputmethods/inputmethods_plat/pen_input_server_api/group" filter="!test"/>
</component>
<component name="ptiengine_hwr_api" long-name="PTI Engine Handwriting Recognition API" filter="s60" class="api">
<unit bldFile="/sf/mw/inputmethods/inputmethods_plat/ptiengine_hwr_api/group" filter="!test"/>
</component>
<component name="aknfep_settings_api" long-name="Avkon FEP Settings API" filter="s60" class="api">
<unit bldFile="/sf/mw/inputmethods/inputmethods_plat/aknfep_settings_api/group"/>
</component>
<component name="aknfep_status_api" long-name="Avkon FEP Status API" filter="s60" class="api">
<unit bldFile="/sf/mw/inputmethods/inputmethods_plat/aknfep_status_api/group"/>
</component>
<component name="ptiengine_key_definations_api" long-name="PTI Engine Key Definitions API" filter="s60" class="api">
<unit bldFile="/sf/mw/inputmethods/inputmethods_plat/ptiengine_key_definations_api/group"/>
</component>
<component name="aknfep_definitions_api" long-name="Avkon FEP Definitions API" filter="s60" class="api">
<unit bldFile="/sf/mw/inputmethods/inputmethods_plat/aknfep_definitions_api/group"/>
</component>
<component name="aknfep_pen_support_api" long-name="Avkon FEP Pen Support API" filter="s60" class="api">
<unit bldFile="/sf/mw/inputmethods/inputmethods_plat/aknfep_pen_support_api/group"/>
</component>
<component name="ptiengine_indic_definitions_api" long-name="PTI Engine Indic Definitions API" filter="s60" class="api">
<unit bldFile="/sf/mw/inputmethods/inputmethods_plat/ptiengine_indic_definitions_api/group"/>
</component>
<component name="aknfep_uiinterface_api" long-name="Avkon FEP UI Interface API" filter="s60" class="api">
<unit bldFile="/sf/mw/inputmethods/inputmethods_plat/aknfep_uiinterface_api/group" filter="!test"/>
</component>
</collection>
<collection name="textinput" long-name="Text Input" level="framework">
<component name="ptienginev2" filter="s60" long-name="Predictive Text Input Engine">
<!--uncomment when configuration is turned on and textinput_build is removed-->
<!-- <unit bldFile="textinput/ptienginev2/group"/>-->
</component>
<component name="akninputlanguage" filter="s60" long-name="Avkon Input Language">
<unit bldFile="/sf/mw/inputmethods/textinput/akninputlanguage/group"/>
</component>
<component name="peninputarc" filter="s60" long-name="Pen Input Arc">
<unit bldFile="/sf/mw/inputmethods/textinput/peninputarc/group"/>
</component>
<component name="peninputcommonctrls" filter="s60" long-name="Pen Input Common Controls">
<unit bldFile="/sf/mw/inputmethods/textinput/peninputcommonctrls/group"/>
</component>
<component name="peninputhwrboxcn" filter="s60" long-name="Chinese Handwriting Recognition Box" plugin="Y">
<unit bldFile="/sf/mw/inputmethods/textinput/peninputhwrboxcn/group"/>
</component>
<component name="peninputvkbcn" filter="s60" long-name="Chinese Virtual Keyboard" plugin="Y">
<unit bldFile="/sf/mw/inputmethods/textinput/peninputvkbcn/group"/>
</component>
<component name="peninputcommonlayout" filter="s60" long-name="Pen Input Common Layout">
<unit bldFile="/sf/mw/inputmethods/textinput/peninputcommonlayout/group"/>
</component>
<component name="peninputgenerichwr" filter="s60" long-name="Pen Input Generic Handwriting Recognition" plugin="Y">
<unit bldFile="/sf/mw/inputmethods/textinput/peninputgenerichwr/group"/>
</component>
<component name="peninputgenericvkb" filter="s60" long-name="Pen Input Generic Virtual Keyboard" plugin="Y">
<unit bldFile="/sf/mw/inputmethods/textinput/peninputgenericvkb/group"/>
</component>
<component name="peninputcommonctrlsjp" filter="s60" long-name="Pen Input Common Controls Japanese">
<unit bldFile="/sf/mw/inputmethods/textinput/peninputcommonctrlsjp/group"/>
</component>
<component name="peninputhwrboxjp" filter="s60" long-name="Japanese Handwriting Recognition Box" plugin="Y">
<unit bldFile="/sf/mw/inputmethods/textinput/peninputhwrboxjp/group"/>
</component>
<component name="peninputvkbjp" filter="s60" long-name="Japanese Virtual Keyboard" plugin="Y">
<unit bldFile="/sf/mw/inputmethods/textinput/peninputvkbjp/group"/>
</component>
<component name="gslangplugin" filter="s60" long-name="GS Language Plugin" plugin="Y">
<unit bldFile="/sf/mw/inputmethods/textinput/GSLangPlugin"/>
</component>
<component name="peninputgenericitut" filter="s60" long-name="Pen Input Generic ITU-T" introduced="^3" plugin="Y">
<unit bldFile="/sf/mw/inputmethods/textinput/peninputgenericitut/group"/>
</component>
<component name="peninputhwrtrui" filter="s60" long-name="Pen Input Handwriting Recognition Training UI" introduced="^3" plugin="Y">
<unit bldFile="/sf/mw/inputmethods/textinput/peninputhwrtrui/group"/>
</component>
<component name="peninputhwrfscn" filter="s60" long-name="Pen Input Chinese Full Screen Handwriting Recognition" introduced="^3" plugin="Y">
<unit bldFile="/sf/mw/inputmethods/textinput/peninputhwrfscn/group"/>
</component>
<component name="peninputvkbkr" filter="s60" long-name="Pen Input Korean Virtual Keyboard" introduced="^3" plugin="Y">
<unit bldFile="/sf/mw/inputmethods/textinput/peninputvkbkr/group"/>
</component>
<component name="peninputfingerhwr" filter="s60" long-name="Pen Input Finger Handwriting Recognition" introduced="^3" plugin="Y">
<unit bldFile="/sf/mw/inputmethods/textinput/peninputfingerhwr/group"/>
</component>
<component name="peninputsplititut" filter="s60" long-name="Pen Input Split ITU-T" introduced="^3" plugin="Y">
<unit bldFile="/sf/mw/inputmethods/textinput/peninputsplititut/group"/>
</component>
<component name="peninputsplitqwerty" filter="s60" long-name="Pen Input Split QWERTY" introduced="^3" plugin="Y">
<unit bldFile="/sf/mw/inputmethods/textinput/peninputsplitqwerty/group"/>
</component>
<component name="textinput_build" filter="s60" long-name="Text Input Build">
<!--needed for #ifdef, can be removed when configuration is implemented -->
<unit bldFile="/sf/mw/inputmethods/textinput/group"/>
</component>
</collection>
<collection name="fep" long-name="FEP" level="engine">
<component name="aknfep" filter="s60" long-name="Avkon FEP" plugin="Y">
<unit bldFile="/sf/mw/inputmethods/fep/aknfep/group"/>
</component>
<component name="frontendprocessor" long-name="Front End Processor" purpose="mandatory">
<unit bldFile="/sf/mw/inputmethods/fep/frontendprocessor/group" mrp="/sf/mw/inputmethods/fep/frontendprocessor/group/app-framework_fepbase.mrp"/>
</component>
</collection>
<collection name="inputmethods_info" long-name="Input Methods Info" level="api">
<component name="inputmethods_metadata" long-name="Input Methods Metadata" introduced="^2" purpose="development" class="config PC">
<unit mrp="/sf/mw/inputmethods/inputmethods_info/inputmethods_metadata/inputmethods_metadata.mrp"/>
</component>
</collection>
</block>
</layer>
</systemModel>
</SystemDefinition>