~ubuntu-branches/ubuntu/precise/xerces-c/precise-security

« back to all changes in this revision

Viewing changes to doc/html/migrate-3.html

  • Committer: Bazaar Package Importer
  • Author(s): Jay Berkenbilt
  • Date: 2010-02-06 16:46:23 UTC
  • mfrom: (2.1.3 sid)
  • Revision ID: james.westby@ubuntu.com-20100206164623-xbntkcs6ks20nboa
Tags: 3.1.0-1
* New upstream release
* Updated standards version to 3.8.4.  No changes required.

Show diffs side-by-side

added added

removed removed

Lines of Context:
45
45
<IMG border="0" height="14" hspace="0" src="resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="500"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD>
46
46
    <TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="ffffff" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Migration Archive</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
47
47
 
48
 
       <P>For migration information to Xerces-C++ 2 series or earlier,
 
48
       <P>For migration information on earlier versions of Xerces-C++ 2
49
49
          please refer to <A href="migrate-archive-3.html">Migration Archive</A>.</P>
50
50
 
51
51
    </FONT></TD></TR></TABLE><BR>
52
52
 
53
 
    <TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="ffffff" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Migrating from Xerces-C++ 2 series to Xerces-C++ 3.1.0</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
 
53
    <TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="ffffff" colspan="2" width="494"><TABLE border="0" cellpadding="0" cellspacing="0" width="494"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="492"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Migrating from Xerces-C++ 3.0.0 to Xerces-C++ 3.1.0</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="492"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="492"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10">&nbsp;</TD><TD width="484"><FONT color="#000000" face="arial,helvetica,sanserif">
54
54
      <P>The following section is a discussion of the technical differences between
55
 
      Xerces-C++ 2 series and Xerces-C++ 3.1.0.</P>
 
55
      Xerces-C++ 3.0.0 and Xerces-C++ 3.1.0.</P>
56
56
 
57
57
      <P>Topics discussed are:</P>
58
58
      <UL>
59
59
        <LI><A href="#NewFeatures300">New features in Xerces-C++ 3.1.0</A></LI>
60
60
        <LI><A href="#API300">Public API Changes</A></LI>
61
 
        <UL>
62
 
            <LI><A href="#NewAPI300">New Public API</A></LI>
63
 
            <LI><A href="#ModifiedAPI300">Modified Public API</A></LI>
64
 
            <LI><A href="#DeprecatedAPI300">Deprecated/Removed Public API</A></LI>
65
 
        </UL>
66
61
      </UL>
67
62
 
68
63
    <A name="NewFeatures300"><!--anchor--></A>
69
64
    <TABLE border="0" cellpadding="0" cellspacing="0" width="484"><TR><TD bgcolor="ffffff" colspan="2" width="484"><TABLE border="0" cellpadding="0" cellspacing="0" width="484"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="482"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="482"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="482"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>New features in Xerces-C++ 3.1.0</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="482"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="482"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
70
65
      <UL>
71
 
        <LI>Autotools-based build system for the UNIX/Linux/Mac OS X platforms</LI>
72
 
        <LI>Project files for VC++ 9</LI>
73
 
        <LI>Support for the ICU transcoder in VC++ 7.1, 8, and 9 project files</LI>
74
 
        <LI>libcurl-based net accessor</LI>
75
 
        <LI>Support for XInclude in DOM</LI>
76
 
        <LI>Support for both XPath 1 and XPath 2 models in the DOM XPath interface</LI>
77
 
        <LI>Support for the XML Schema subset of XPath 1 in DOM</LI>
78
 
        <LI>Conformance to the final DOM Level 3 interface specification</LI>
79
 
        <LI>Ability to provide custom DOM memory manager as well as tune the global DOM heap parameters</LI>
80
 
        <LI>All public and widely used interfaces as well as a large
81
 
            portion of the implementation were converted to be 64-bit safe.</LI>
82
 
        <LI>Various XML Schema fixes including the fix for the large
83
 
            maxOccurs and minOccurs bug as well as for the changed ##other
84
 
            interpretation</LI>
85
 
        <LI>Reviewed and cleaned up diagnostics messages</LI>
86
 
        <LI>Optimizations for SAX/SAX2 and DOM parsing as well as XML Schema
87
 
            validation</LI>
 
66
    <LI>Working multi-import support. The support for handling multiple import
 
67
        declarations with the same target namespaces has been improved and
 
68
        thoroughly tested. Furthermore, the same logic was extended to
 
69
        loadGrammar and the schemaLocation attributes so that you can load
 
70
        several schemas with the same namespace and/or &quot;add&quot; more declarations
 
71
        with the schemaLocation attributes. To enable this feature, set the
 
72
        XMLUni::fgXercesHandleMultipleImports feature/parameter to true.
 
73
        Starting with this release all the tests and examples have multi-import
 
74
        support enabled by default.</LI>
 
75
 
 
76
    <LI>New property, XMLUni::fgXercesLowWaterMark, allows to configure the
 
77
        parser buffer low water mark. In particular, setting this value to 0
 
78
        disables data caching in the parser which can be useful if you want
 
79
        the SAX events to be dispatched as soon as the data is available.</LI>
 
80
 
 
81
    <LI>DOMLSParser::parseWithContext implementation. In particular, this
 
82
        functionality allows one to parse a document fragment with missing
 
83
        namespace declarations as long as the context document provides them.</LI>
 
84
 
 
85
    <LI>Improved performance and reduced memory footprint when validating with
 
86
        large maxOccurs values. If available, the SSE2 instructions are used to
 
87
        further speedup this case.</LI>
 
88
 
 
89
    <LI>Improved scalability of the XML Schema identity checking (key, keyref,
 
90
        and unique).</LI>
 
91
 
 
92
    <LI>Multiple XML Schema conformance fixes.</LI>
 
93
 
 
94
    <LI>More robust external library detection (libcurl and ICU). In particular,
 
95
        the build system no longer tries to inject any additional paths such as
 
96
        /usr or /usr/local.</LI>
 
97
 
 
98
    <LI>Compilation of the ICU message loader resources no longer depends on
 
99
        the ICU implementation details.</LI>
88
100
      </UL>
89
101
    </FONT></TD></TR></TABLE><BR>
90
102
 
91
103
    <A name="API300"><!--anchor--></A>
92
104
    <TABLE border="0" cellpadding="0" cellspacing="0" width="484"><TR><TD bgcolor="ffffff" colspan="2" width="484"><TABLE border="0" cellpadding="0" cellspacing="0" width="484"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="482"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="482"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="482"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Public API Changes</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="482"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="482"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10">&nbsp;</TD><TD width="474"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
93
105
 
94
 
        <P>Xerces-C++ 3.1.0 is a major release and includes
95
 
           a number of application-breaking interface changes compared to
96
 
           Xerces-C++ 2 series.
97
 
           The following sub-sections provide an overview of the public API
98
 
           changes between Xerces-C++ 2 series and this release.</P>
99
 
 
100
 
        <A name="NewAPI300"><!--anchor--></A>
101
 
        <TABLE border="0" cellpadding="0" cellspacing="0" width="474"><TR><TD bgcolor="ffffff" colspan="2" width="484"><TABLE border="0" cellpadding="0" cellspacing="0" width="474"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="472"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="472"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="472"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>New Public APIs</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="472"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="472"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10">&nbsp;</TD><TD width="464"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
102
 
            <UL>
103
 
              <LI>XMLGrammarPoolImpl implementation has been moved to
104
 
                  framework/ and is now publicly accessible</LI>
105
 
 
106
 
              <LI>DOM XPath interfaces now support XPath 2 model</LI>
107
 
 
108
 
              <LI>A number of DOM interfaces (DOMLSInput, DOMLSOuput,
109
 
                  DOMLSParser, DOMLSSerializer, DOMConfiguration, etc.)
110
 
                  were added as part of the the final DOM Level 3
111
 
                  specification conformance work</LI>
112
 
            </UL>
113
 
        </FONT></TD></TR></TABLE><BR>
114
 
 
115
 
        <A name="ModifiedAPI300"><!--anchor--></A>
116
 
        <TABLE border="0" cellpadding="0" cellspacing="0" width="474"><TR><TD bgcolor="ffffff" colspan="2" width="484"><TABLE border="0" cellpadding="0" cellspacing="0" width="474"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="472"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="472"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="472"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Modified Public APIs</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="472"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="472"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10">&nbsp;</TD><TD width="464"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
117
 
 
118
 
          <P>A large number of public APIs have been modified. Consult
119
 
             individual interface documentation for details. The following
120
 
             list gives an overview of major changes:</P>
121
 
 
122
 
          <UL>
123
 
            <LI>Several DOM interfaces have been adjusted to conform to the final
124
 
                DOM Level 3 specification</LI>
125
 
 
126
 
            <LI>DOM XPath interfaces have been adjusted to support both XPath 1
127
 
                and XPath 2</LI>
128
 
 
129
 
            <LI>Many public interfaces that used int/long types to represent
130
 
                memory-related sizes, counts, indexes, etc., have been modified
131
 
                to use the 64-bit safe XMLSize_t type instead</LI>
132
 
          </UL>
133
 
 
134
 
        </FONT></TD></TR></TABLE><BR>
135
 
 
136
 
        <A name="DeprecatedAPI300"><!--anchor--></A>
137
 
        <TABLE border="0" cellpadding="0" cellspacing="0" width="474"><TR><TD bgcolor="ffffff" colspan="2" width="484"><TABLE border="0" cellpadding="0" cellspacing="0" width="474"><TR><TD bgcolor="#039acc" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#039acc" height="1" width="472"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="472"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#039acc" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" width="472"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><IMG border="0" height="2" hspace="0" src="resources/void.gif" vspace="0" width="2"><B>Deprecated/Removed Public APIs</B></FONT></TD><TD bgcolor="#017299" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#017299" height="1" width="472"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="472"></TD><TD bgcolor="#017299" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></TD></TR><TR><TD width="10">&nbsp;</TD><TD width="464"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
138
 
          <P>All APIs marked as deprecated in Xerces-C++ 2 series have
139
 
             been removed in this release. In particular deprecated DOM
140
 
             (depdom) as well as COM support have been removed.</P>
141
 
 
142
 
          <P>Furthermore, a number of DOM interfaces (DOMBuilder, DOMWriter,
143
 
             DOMInputSource, etc.) were replaced as part of the the final
144
 
             DOM Level 3 specification conformance work.</P>
145
 
        </FONT></TD></TR></TABLE><BR>
146
 
 
 
106
        <P>Xerces-C++ 3.1.0 is a minor release and does
 
107
           not include any public API changes that would preclude
 
108
           applications using the previous version of Xerces-C++ from
 
109
           building successfully with this version.</P>
147
110
    </FONT></TD></TR></TABLE><BR>
148
111
    </FONT></TD></TR></TABLE><BR>
149
112