Symbian3/SDK/Source/GUID-EBD1242B-6BD9-5ABB-B471-24ABC78A918C.dita
author Dominic Pinkman <dominic.pinkman@nokia.com>
Fri, 11 Jun 2010 12:39:03 +0100
changeset 8 ae94777fff8f
parent 7 51a74ef9ed63
child 13 48780e181b38
permissions -rw-r--r--
Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
8
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 7
diff changeset
     1
<?xml version="1.0" encoding="utf-8"?>
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 7
diff changeset
     2
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 7
diff changeset
     3
<!-- This component and the accompanying materials are made available under the terms of the License 
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 7
diff changeset
     4
"Eclipse Public License v1.0" which accompanies this distribution, 
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 7
diff changeset
     5
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 7
diff changeset
     6
<!-- Initial Contributors:
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 7
diff changeset
     7
    Nokia Corporation - initial contribution.
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 7
diff changeset
     8
Contributors: 
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 7
diff changeset
     9
-->
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 7
diff changeset
    10
<!DOCTYPE concept
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 7
diff changeset
    11
  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 7
diff changeset
    12
<concept xml:lang="en" id="GUID-EBD1242B-6BD9-5ABB-B471-24ABC78A918C"><title>MIME Recognition Framework Overview</title><prolog><metadata><keywords/></metadata></prolog><conbody><p>The MIME (Multipurpose Internet Mail Extension) recognition framework enables data type identification. </p> <p>The MIME recognition framework implements data type recognition using MIME (data) recognizers. The MIME recognizers are ECOM plug-ins. A MIME recognizer reads a small piece of the data. A data type can be recognized by more than one MIME recognizer. The framework uses the concepts of priority and confidence level to determine the data type. </p> <p>The Application Architecture (AppArc) launches the appropriate application using the MIME framework to handle the data. </p> <p>It is not guaranteed that an application will be available to handle a data type, even if it was successfully recognized. </p> <section><title>Purpose</title> <p> </p> <p>MIME type recognition enables devices to identify data type in streams or files and start appropriate application automatically. </p> </section> <section><title>Key concepts and terms</title> <dl><dlentry><dt>MIME</dt> <dd><p>MIME (Multipurpose Internet Mail Extension) is an internet standard system for identifying the type of data in a file or stream. Types can include graphics, photos, audio, video files and formatted text. </p> </dd> </dlentry> <dlentry><dt>Priority</dt> <dd><p>The plug-in developer assigns a priority (EHigh, ENormal or ELow) to the data recognizers. A data type can be handled by more than one application and may therefore be recognized by more than one recognizer. </p> <p>The priority determines the position at which the recognizer is inserted into the recognizer list. The higher priority recognizers are placed at the start of the list. If more than one recognizer recognizes a data type with the same confidence, the recognizer with the higher priority takes precedence. The sequence in which recognizers are invoked by the framework is determined by their priority. High priority recognizers are invoked first. </p> <p>For more details refer to <xref href="GUID-EBE480D9-E377-32F4-9AE5-9C58684BEFF0.dita#GUID-EBE480D9-E377-32F4-9AE5-9C58684BEFF0/GUID-14F65687-821A-3C30-A27F-A8B5F4688094"><apiname>CApaDataRecognizerType::TRecognizerPriority</apiname></xref>. </p> </dd> </dlentry> <dlentry><dt>Recognizer list</dt> <dd><p>The MIME recognition framework maintains a list of MIME recognizers. The recognizer list is constructed based on the data types the MIME recognizers claim to support and is ordered by priority. </p> </dd> </dlentry> <dlentry><dt>Confidence level</dt> <dd><p>A MIME recognizer reads a small piece of data from the start of a file or stream. It attempts to match the data with one of its known types. If the match is complete it returns the associated data type with full confidence (ECertain) and if there is no match it returns no data type with no confidence (ENotRecognized). If there is a partial match it can return a data type with an intermediate confidence level (EPossible, EUnlikely, ENotRecognized). </p> <p>The confidence of MIME recognizers can be expressed in 5 different levels: </p> <ul><li id="GUID-1C6B8B13-6303-5B3E-804E-9798B8CC39F3"><p> <codeph>ECertain</codeph>  </p> </li> <li id="GUID-9BF81FB9-CF0E-59D6-B7F7-5B31D161B760"><p> <codeph>EProbable</codeph>  </p> </li> <li id="GUID-9F2047BD-67C0-57D6-88A7-0B087D99F4BA"><p> <codeph>EPossible</codeph>  </p> </li> <li id="GUID-7A4B066D-9884-5F8E-B455-588DE546EB69"><p> <codeph>EUnlikely</codeph>  </p> </li> <li id="GUID-71651D00-8254-56C4-B26D-DCFB4AA658E5"><p> <codeph>ENotRecognized</codeph>  </p> </li> </ul> <p>By default, the confidence level of the MIME Recognizer is <codeph>ECertain</codeph>. </p> <p>For more details refer <xref href="GUID-EBE480D9-E377-32F4-9AE5-9C58684BEFF0.dita#GUID-EBE480D9-E377-32F4-9AE5-9C58684BEFF0/GUID-3DCAE2B7-E840-3838-83BC-3D7FE73A1757"><apiname>CApaDataRecognizerType::TRecognitionConfidence</apiname></xref>. </p> </dd> </dlentry> </dl> </section> <section><title>Architecture</title> <p>MIME recognizers are <xref href="GUID-9E92EE30-F2E2-5F28-BB2A-391C09EC69D2.dita">ECOM</xref> plugins, located under <filepath>\sys\bin\</filepath>. </p> <fig id="GUID-981203F5-B7D7-54F4-95E5-AFA2D1286BFF"><title>
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 7
diff changeset
    13
             MIME framework architecture 
ae94777fff8f Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 7
diff changeset
    14
          </title> <image href="GUID-497AD33D-F6DC-52D4-85C8-B9E02978ACD4_d0e169416_href.jpg" placement="inline"/></fig> <ul><li id="GUID-17CE2467-5B33-5B07-95A7-CCCF9D66E693"><p>AppArc is the main client of the MIME recognition framework. </p> </li> <li id="GUID-CAEDF3BA-B7AA-5F60-BF9F-CA308CAF7002"><p>Applications that need data type recognition use the MIME recognition framework via AppArc APIs. </p> </li> <li id="GUID-E3763687-3E7D-5D24-BC92-88DE1CC11D2B"><p>The MIME recognition framework delegates the data type identification task to an appropriate MIME recognizer. </p> </li> <li id="GUID-94882AE7-A578-507C-AE2E-6C778B78F52B"><p>The MIME recognizer identifies the data type. </p> </li> <li id="GUID-5F74226E-0EAA-5338-BED9-5A58B54ECC2F"><p>AppArc launches the application for the identified data type. </p> </li> </ul> </section> <section><title>APIs</title> <table id="GUID-6573D858-F2D1-5E0C-B330-951D0324702C"><tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/><thead><row><entry>API</entry> <entry>Description</entry> </row> </thead> <tbody><row><entry><p> <xref href="GUID-EBE480D9-E377-32F4-9AE5-9C58684BEFF0.dita"><apiname>CApaDataRecognizerType</apiname></xref>  </p> </entry> <entry><p>Is the abstract base class for a recognizer. Recognizers need to define and implement a derived class and provide an implementation of the functions.This class contains the MIME APIs related to MIME recognition framework. </p> </entry> </row> <row><entry><p> <xref href="GUID-5EEE8745-F483-33C0-A5B1-AEB5544DE2BA.dita"><apiname>RApaLsSession</apiname></xref>  </p> </entry> <entry><p>A session with the application architecture server. The server provides access to a cached list of the applications on the device. This class contains the AppArc APIs related to MIME recognition framework. </p> </entry> </row> </tbody> </tgroup> </table> </section> <section><title>Typical uses</title> <p>The MIME recognition framework allows the plug-in writers to: </p> <ul><li id="GUID-FEBCF579-E483-58D3-9BEB-A9A50F58F1FA"><p><xref href="GUID-1AAA88BB-19AD-5B8E-993C-11F4B7CD90EB.dita">Write Data(MIME) Recogzisers</xref>  </p> </li> </ul> </section> </conbody></concept>