File: laz2_xmlwrite.xml

package info (click to toggle)
lazarus 4.0%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 275,760 kB
  • sloc: pascal: 2,341,904; xml: 509,420; makefile: 348,726; cpp: 93,608; sh: 3,387; java: 609; perl: 297; sql: 222; ansic: 137
file content (234 lines) | stat: -rw-r--r-- 8,112 bytes parent folder | download
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
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
<?xml version="1.0" encoding="UTF-8"?>
<!--

Documentation for LCL (Lazarus Component Library) and LazUtils (Lazarus 
Utilities) are published under the Creative Commons Attribution-ShareAlike 4.0 
International public license.

https://creativecommons.org/licenses/by-sa/4.0/legalcode.txt
https://gitlab.com/freepascal.org/lazarus/lazarus/-/blob/main/docs/cc-by-sa-4-0.txt

Copyright (c) 1997-2025, by the Lazarus Development Team.

-->
<fpdoc-descriptions>
<package name="lazutils">
<!--
====================================================================
laz2_XMLWrite
====================================================================
-->
<module name="laz2_XMLWrite">
<short>
Provides routines used to write XML content to a file, text file, or stream.
</short>
<descr>
<p>
<file>laz2_xmlwrite.pas</file> provides procedures and types used to write XML 
content to a file, text file, or stream. laz2_xmlwrite.pas has classes in its 
implementation section that are used to perform serialization of XML content 
to the storage destination.
</p>
<p>
Copyright (c) 1999-2000 by Sebastian Guenther, sg@freepascal.org <br/>
Modified in 2006 by Sergei Gorelkin, sergei_gorelkin@mail.ru <br/>
Converted to use UTF-8 instead of widestrings by Mattias Gaertner.
</p>
<p>
<file>laz2_xmlwrite.pas</file> is part of the <file>LazUtils</file> package.
</p>
</descr>

<!-- unresolved externals -->
<element name="Classes"/>
<element name="SysUtils"/>
<element name="LazUTF8"/>
<element name="laz2_DOM"/>
<element name="laz2_XMLUtils"/>

<!-- enumeration type Visibility: default -->
<element name="TXMLWriterFlag">
<short>
Represent options enabled when writing XML content.
</short>
<descr>
<var>TXMLWriterFlag</var> is an enumerated type with values that represent 
options enabled when writing XML content. Values in TXMLWriterFlag are stored 
in the <var>TXMLWriterFlags</var> set type, and passed as an argument to the 
WriteXMLFile and WriteXML routines.
</descr>
<seealso>
<link id="TXMLWriterFlags"/>
<ink id="WriteXMLFile"/>
<ink id="WriteXML"/>
</seealso>
</element>
<!-- enumeration value Visibility: default -->
<element name="TXMLWriterFlag.xwfAllowNullCharsInAttributeValue">
<short>
Enables writing encoded #0.  Without this flag an error will be raised. Please 
note that enabling this option, and writing a null character, will produce an 
XML document that cannot be handled by a validating XML processor. As per the 
XML specifications, the null character (#0) (#$00) (&amp;x0;) (ASCII NULL) is 
never valid in the content of an XML document. ReadXMLFile in the 
<file>lazutils</file> package will handle the value.
</short>
</element>
<element name="TXMLWriterFlag.xwfSpecialCharsInAttributeValue">
<short>
Enables writing unencoded #1..#32 (including Carriage Return) characters in 
attribute values. Without this flag they will be encoded to their numeric 
character entity &amp;xD; instead. Please note that enabling this option, and 
writing an attribute value in this range, will produce an XML document that 
cannot be handled by a validating XML 1.0 processor. The values are also 
discouraged for XML 1.1 processors. ReadXMLFile in the 
<file>lazutils</file> package will handle the value.
</short>
</element>
<element name="TXMLWriterFlag.xwfPreserveWhiteSpace">
<short>Preserves whitespace in DOM Text nodes.</short>
</element>

<!-- set type Visibility: default -->
<element name="TXMLWriterFlags">
<short>Set type used to store TXMLWriterFlag values.</short>
<descr>
<p>
<var>TXMLWriterFlags</var> is a set type used to store 0 or more values from 
the <var>TXMLWriterFlag</var> enumeration. TXMLWriterFlags indicates the 
options enabled when writing XML content. TXMLWriterFlags is the type passed 
as an argument to the <var>WriteXMLFile</var> procedure.
</p>
</descr>
<seealso>
<link id="TXMLWriterFlag"/>
<link id="WriteXMLFile"/>
</seealso>
</element>

<!-- procedure Visibility: default -->
<element name="WriteXMLFile">
<short>
Writes an XML document to a file, text file, or stream.
</short>
<descr>
<p>
<var>WriteXMLFile</var> is an overloaded procedure used to write an XML 
document to a file, text file, or stream. Overloaded variants provide the 
implementation details for each of the destinations, and create either 
TTextXMLWriter or TStreamXMLWriter class instances to store the XML document.
</p>
<p>
AFileName indicates the file name on the local file system where the XML 
content is stored. AFileName can contain UTF-8 encoded values, and must 
represent a valid file name. If the file in AFileName already exists, an 
exception will be raised.
</p>
<p>
Flags contains values from the TXMLWriterFlag enumeration. Use Flags to 
enable XML writing options in the routine. The default value for the argument 
is an empty set (<b>[]</b>), and indicates that no options are enabled in the 
routine. Please note that use of TXMLWriterFlag options like 
xwfAllowNullCharsInAttributeValue and xwfSpecialCharsInAttributeValue can 
result in an XML document that cannot be handled by a validating XML 
processor. The ReadXMLFile routine in <file>LazUtils</file> will accept and 
handle the values.
</p>
</descr>
<seealso>
<link id="WriteXML"/>
</seealso>
</element>

<!-- argument Visibility: default -->
<element name="WriteXMLFile.doc">
<short>XML document written in the routine.</short>
</element>

<!-- argument Visibility: default -->
<element name="WriteXMLFile.AFileName">
<short>File name where the XML content is stored.</short>
</element>

<!-- argument Visibility: default -->
<element name="WriteXMLFile.AFile">
<short>Text file type where the content is written.</short>
</element>

<!-- argument Visibility: default -->
<element name="WriteXMLFile.AStream">
<short>Stream where the XML document is stored.</short>
</element>

<!-- argument Visibility: default -->
<element name="WriteXMLFile.Flags">
<short>Options enabled when writing the XML content.</short>
</element>

<!-- procedure Visibility: default -->
<element name="WriteXML">
<short>
Writes a DOM Node to a file, text file, or stream.
</short>
<descr>
<p>
<var>WriteXML</var> is an overloaded procedure used to write a DOM Node to a 
file, text file, or stream. WriteXML calls one of the overloaded WriteXMLFile 
routines for a specific destination.
</p>
<p>
Element is a TDOMNode parameter that represents the DOM Document Node with 
the XML content written in the method. WriteXML ensures that Element is cast 
to a TXMLDocument type when calling the WriteXMLFile routine.
</p>
<p>
AFileName indicates the file name on the local file system where the XML 
content is stored. AFileName can contain UTF-8 encoded values, and must 
represent a valid file name. If the file in AFileName already exists, an 
exception will be raised.
</p>
<p>
Flags contains values from the TXMLWriterFlag enumeration. Use Flags to 
enable XML writing options in the routine. The default value for the argument 
is an empty set (<b>[]</b>), and indicates that no options are enabled in the 
routine. Please note that use of TXMLWriterFlag options like 
xwfAllowNullCharsInAttributeValue and xwfSpecialCharsInAttributeValue can 
result in an XML document that cannot be handled by a validating XML 
processor. The ReadXMLFile routine in <file>LazUtils</file> will accept and 
handle the values.
</p>
</descr>
<seealso>
<link id="WriteXMLFile"/>
</seealso>
</element>

<!-- argument Visibility: default -->
<element name="WriteXML.Element">
<short>DOM Node with the XML content written in the method.</short>
</element>

<!-- argument Visibility: default -->
<element name="WriteXML.AFileName">
<short>File name where the XML content is stored.</short>
</element>

<!-- argument Visibility: default -->
<element name="WriteXML.AFile">
<short>Text file type where the content is written.</short>
</element>

<!-- argument Visibility: default -->
<element name="WriteXML.AStream">
<short>Stream where the XML document is stored.</short>
</element>

<element name="WriteXML.Flags">
<short>Options enabled when writing the XML content.</short>
</element>

</module>
<!-- laz2_XMLWrite -->

</package>
</fpdoc-descriptions>