1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
|
'\" t
.TH QXmlSimpleReader 3qt "2 February 2007" "Trolltech AS" \" -*- nroff -*-
.\" Copyright 1992-2007 Trolltech ASA. All rights reserved. See the
.\" license file included in the distribution for a complete license
.\" statement.
.\"
.ad l
.nh
.SH NAME
QXmlSimpleReader \- Implementation of a simple XML reader (parser)
.SH SYNOPSIS
All the functions in this class are reentrant when Qt is built with thread support.</p>
.PP
\fC#include <qxml.h>\fR
.PP
Inherits QXmlReader.
.PP
.SS "Public Members"
.in +1c
.ti -1c
.BI "\fBQXmlSimpleReader\fR ()"
.br
.ti -1c
.BI "virtual \fB~QXmlSimpleReader\fR ()"
.br
.ti -1c
.BI "virtual void \fBsetFeature\fR ( const QString & name, bool value )"
.br
.ti -1c
.BI "virtual bool \fBparse\fR ( const QXmlInputSource * input, bool incremental )"
.br
.ti -1c
.BI "virtual bool \fBparseContinue\fR ()"
.br
.in -1c
.SH DESCRIPTION
The QXmlSimpleReader class provides an implementation of a simple XML reader (parser).
.PP
This XML reader is sufficient for simple parsing tasks. The reader:
.TP
provides a well-formed parser;
.TP
does not parse any external entities;
.TP
can do namespace processing.
.PP
Documents are parsed with a call to parse().
.PP
See also XML.
.SH MEMBER FUNCTION DOCUMENTATION
.SH "QXmlSimpleReader::QXmlSimpleReader ()"
Constructs a simple XML reader with the following feature settings: <center>.nf
.TS
l - l. Feature Setting \fIhttp://xml.org/sax/features/namespaces\fR TRUE \fIhttp://xml.org/sax/features/namespace-prefixes\fR FALSE \fIhttp://trolltech.com/xml/features/report-whitespace-only-CharData\fR TRUE \fIhttp://trolltech.com/xml/features/report-start-end-entity\fR
.TE
.fi
</center>
.PP
More information about features can be found in the Qt SAX2 overview.
.PP
See also setFeature().
.SH "QXmlSimpleReader::~QXmlSimpleReader ()\fC [virtual]\fR"
Destroys the simple XML reader.
.SH "bool QXmlSimpleReader::parse ( const QXmlInputSource * input, bool incremental )\fC [virtual]\fR"
Reads an XML document from \fIinput\fR and parses it. Returns FALSE if the parsing detects an error; otherwise returns TRUE.
.PP
If \fIincremental\fR is TRUE, the parser does not return FALSE when it reaches the end of the \fIinput\fR without reaching the end of the XML file. Instead it stores the state of the parser so that parsing can be continued at a later stage when more data is available. You can use the function parseContinue() to continue with parsing. This class stores a pointer to the input source \fIinput\fR and the parseContinue() function tries to read from that input souce. This means that you should not delete the input source \fIinput\fR until you've finished your calls to parseContinue(). If you call this function with \fIincremental\fR TRUE whilst an incremental parse is in progress a new parsing session will be started and the previous session lost.
.PP
If \fIincremental\fR is FALSE, this function behaves like the normal parse function, i.e. it returns FALSE when the end of input is reached without reaching the end of the XML file and the parsing cannot be continued.
.PP
See also parseContinue() and QSocket.
.PP
Examples:
.)l xml/tagreader-with-features/tagreader.cpp and xml/tagreader/tagreader.cpp.
.SH "bool QXmlSimpleReader::parseContinue ()\fC [virtual]\fR"
Continues incremental parsing; this function reads the input from the QXmlInputSource that was specified with the last parse() command. To use this function, you \fImust\fR have called parse() with the incremental argument set to TRUE.
.PP
Returns FALSE if a parsing error occurs; otherwise returns TRUE.
.PP
If the input source returns an empty string for the function QXmlInputSource::data(), then this means that the end of the XML file has been reached; this is tquite important, especially if you want to use the reader to parse more than one XML file.
.PP
The case of the end of the XML file being reached without having finished parsing is not considered to be an error: you can continue parsing at a later stage by calling this function again when there is more data available to parse.
.PP
This function assumes that the end of the XML document is reached if the QXmlInputSource::next() function returns QXmlInputSource::EndOfDocument. If the parser has not finished parsing when it encounters this symbol, it is an error and FALSE is returned.
.PP
See also parse() and QXmlInputSource::next().
.SH "void QXmlSimpleReader::setFeature ( const QString & name, bool value )\fC [virtual]\fR"
Sets the state of the feature \fIname\fR to \fIvalue\fR:
.PP
If the feature is not recognized, it is ignored.
.PP
The following features are supported: <center>.nf
.TS
l - l. Feature Notes \fIhttp://xml.org/sax/features/namespaces\fR If this feature is TRUE, namespace processing is performed. \fIhttp://xml.org/sax/features/namespace-prefixes\fR If this feature is TRUE, the the original prefixed names and attributes used for namespace declarations are reported. \fIhttp://trolltech.com/xml/features/report-whitespace-only-CharData\fR If this feature is TRUE, CharData that only contain whitespace are not ignored, but are reported via QXmlContentHandler::characters(). \fIhttp://trolltech.com/xml/features/report-start-end-entity\fR
.TE
.fi
</center>
.PP
.nf
.br
** $Id: qt/tagreader.cpp 3.3.8 edited Jan 11 14:46 $
.fi
.PP
.nf
.br
reader.setFeature( "http://xml.org/sax/features/namespace-prefixes",
.br
TRUE );
.fi
.PP
(Code taken from xml/tagreader-with-features/tagreader.cpp)
.PP
See also feature() and hasFeature().
.PP
Example: xml/tagreader-with-features/tagreader.cpp.
.PP
Reimplemented from QXmlReader.
.SH "SEE ALSO"
.BR http://doc.trolltech.com/qxmlsimplereader.html
.BR http://www.trolltech.com/faq/tech.html
.SH COPYRIGHT
Copyright 1992-2007 Trolltech ASA, http://www.trolltech.com. See the
license file included in the distribution for a complete license
statement.
.SH AUTHOR
Generated automatically from the source code.
.SH BUGS
If you find a bug in Qt, please report it as described in
.BR http://doc.trolltech.com/bughowto.html .
Good bug reports help us to help you. Thank you.
.P
The definitive Qt documentation is provided in HTML format; it is
located at $QTDIR/doc/html and can be read using Qt Assistant or with
a web browser. This man page is provided as a convenience for those
users who prefer man pages, although this format is not officially
supported by Trolltech.
.P
If you find errors in this manual page, please report them to
.BR [email protected] .
Please include the name of the manual page (qxmlsimplereader.3qt) and the Qt
version (3.3.8).
|