Symbian3/PDK/Source/GUID-0D16866C-F46B-5A2B-B974-324278588A1B.dita
author Graeme Price <GRAEME.PRICE@NOKIA.COM>
Fri, 15 Oct 2010 14:32:18 +0100
changeset 15 307f4279f433
parent 14 578be2adaf3e
permissions -rw-r--r--
Initial contribution of the Adaptation Documentation.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
14
578be2adaf3e Week 32 contribution of PDK documentation content. See release notes for details. Fixes bug Bug 3582
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 5
diff changeset
     1
<?xml version="1.0" encoding="utf-8"?>
578be2adaf3e Week 32 contribution of PDK documentation content. See release notes for details. Fixes bug Bug 3582
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 5
diff changeset
     2
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
578be2adaf3e Week 32 contribution of PDK documentation content. See release notes for details. Fixes bug Bug 3582
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 5
diff changeset
     3
<!-- This component and the accompanying materials are made available under the terms of the License 
578be2adaf3e Week 32 contribution of PDK documentation content. See release notes for details. Fixes bug Bug 3582
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 5
diff changeset
     4
"Eclipse Public License v1.0" which accompanies this distribution, 
578be2adaf3e Week 32 contribution of PDK documentation content. See release notes for details. Fixes bug Bug 3582
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 5
diff changeset
     5
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
578be2adaf3e Week 32 contribution of PDK documentation content. See release notes for details. Fixes bug Bug 3582
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 5
diff changeset
     6
<!-- Initial Contributors:
578be2adaf3e Week 32 contribution of PDK documentation content. See release notes for details. Fixes bug Bug 3582
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 5
diff changeset
     7
    Nokia Corporation - initial contribution.
578be2adaf3e Week 32 contribution of PDK documentation content. See release notes for details. Fixes bug Bug 3582
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 5
diff changeset
     8
Contributors: 
578be2adaf3e Week 32 contribution of PDK documentation content. See release notes for details. Fixes bug Bug 3582
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 5
diff changeset
     9
-->
578be2adaf3e Week 32 contribution of PDK documentation content. See release notes for details. Fixes bug Bug 3582
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 5
diff changeset
    10
<!DOCTYPE concept
578be2adaf3e Week 32 contribution of PDK documentation content. See release notes for details. Fixes bug Bug 3582
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 5
diff changeset
    11
  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
1
25a17d01db0c Addition of the PDK content and example code for Documentation_content according to Feature bug 1607 and bug 1608
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
diff changeset
    12
<concept xml:lang="en" id="GUID-0D16866C-F46B-5A2B-B974-324278588A1B"><title>XML Framework Concept</title><shortdesc>This section explains the concept of String Dictionary in XML Framework. </shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody><section><title>Introduction</title> <p>WBXML requires use of string dictionaries to store the element strings specific to the WBXML. The XML Framework allows strings to be stored for a particular DTD, XML namespace or WBXML codepage in an ECOM plug-in that can be accessed when required by the Parser and Client. These plug-ins are refered as String Dictionary plug-ins and they are all managed through a String Dictionary Collection object . </p> </section> <section><title>String dictionary</title> <p>String dictionary is a concept of holding strings, and mapping them to token values. For example, string dictionaries allow the WBXML parser to parse various types (encodings) of WBXML documents, such as WML, Service Indication, etc. It must be provided for each different encoding of WBXML document. </p> <p>String dictionaries are mainly used by the WBXML parser as the documents they parse are tokenised. They can also be used by other parsers within the same process as the strings are also loaded into the string pool (a collection of string groups). In these cases, there are no mappings associated. The string pool avoids string duplication and allows for fast comparisons. </p> <p>All string comparisons within the WBXML and XML parsers are case-sensitive. If the string in the XML document does not match the case of the strings in the <codeph>.st</codeph> file, they are not matched. For WBXML, there are pre-defined DTDs, and hence, strings are pre-defined for both parser and client. </p> <p>A string dictionary may either be loaded into the string dictionary collection prior to parsing or while parsing. The strings within the dictionary are linked into the string table statically at compile time and then loaded into the String Pool at runtime. For example, a string dictionary is provided by the WBXML component for static linkage into the program. When the parser parses, any string it comes across that are not statically linked are added to the string pool; these are called Dynamic Strings. Dynamic strings do not belong to any string dictionary and therefore are not in the string dictionary collection. </p> <p>For XML, load the string dictionary prior to parsing because the XML parser has no concept of string dictionaries and does not understand what or how to load them; it only creates <codeph>RStrings</codeph>. These <codeph>RStrings</codeph> are passed back to the client as a function call (callback) on a client supplied object that encounters a published API specified by the XML Framework. </p> <p> <b>NOTE</b>: The user who implements the callback must also have access to this same String Pool for the comparisons to work. </p> </section> </conbody><related-links><link href="GUID-F79E4F18-19E2-577E-8409-8B82BD48AC66.dita"><linktext>XML Framework Overview</linktext> </link> <link href="GUID-27340D18-A31D-512E-920A-B06C784A978A.dita"><linktext>String Pools</linktext> </link> </related-links></concept>