florian d7f7a9bb76 * patch by Alexander Shishkin to clean up $ifopt usage by $push/$pop, resolves #20346 14 yıl önce
..
README.txt 4bf254bc32 * added .txt extensions to all README, TODO and COPYING files 17 yıl önce
dom.pp 57ba5f956e + After reaching EOF condition, clear FNodeData[0] slot 14 yıl önce
dom_html.pp ead5707179 + Enumeration type for XML version 15 yıl önce
dtdmodel.pp 3ea7f81f7e + fcl-xml, initial implementation of 'shared' DTD: it now consists of the model (classes TDTDModel, TEntityDecl, TNotationDecl), which is referenced by one or more TDOMDocumentType nodes. 15 yıl önce
htmldefs.pp d8a74620a5 + Added definitions for deprecated (in HTML 4.01) attributes. Deprecated elements are already there. 16 yıl önce
htmlelements.pp 092892ee82 * Replaced 5 StringReplaces with one StringsReplace 14 yıl önce
htmlwriter.pp b127fc154a * Fixed spell error revealed by lintian. 15 yıl önce
htmwrite.pp 320f67eab2 xmlwrite.pp, htmwrite.pp: replaced inheritance by composition. TxxxWriter always writes to a TStream (or its descendant), and for text files we use a simple TStream-compatible wrapper. 15 yıl önce
names.inc 213f8a41c7 * Large patch from Sergei Gorelkin: 17 yıl önce
sax.pp 73bafe0444 + Implement TSAXReader.Abort method, which can be used to end the parsing prematurely (Mantis #16703) 15 yıl önce
sax_html.pp b7e26ed986 * sax_html.pp, ignore markup in STYLE and SCRIPT elements, Mantis #18826 15 yıl önce
sax_xml.pp 27948a5f06 sax_xml.pp: cleanup: 15 yıl önce
tagsimpl.inc 9024d66959 * units htmlelements and htmlwriter moved from fcl-web to fcl-xml 19 yıl önce
tagsintf.inc 9024d66959 * units htmlelements and htmlwriter moved from fcl-web to fcl-xml 19 yıl önce
wtagsimpl.inc 9024d66959 * units htmlelements and htmlwriter moved from fcl-web to fcl-xml 19 yıl önce
wtagsintf.inc 9024d66959 * units htmlelements and htmlwriter moved from fcl-web to fcl-xml 19 yıl önce
xhtml.pp 4e5488529d * fixed class conversion and inheritance tree errors 19 yıl önce
xmlcfg.pp dec9a74507 * Marked TXMLConfig component as deprecated as well 14 yıl önce
xmlconf.pp 3ad7552fc4 * TXMLConfig.ResetKey: Don't access memory beyond allocated array length, resolves #20098. 14 yıl önce
xmliconv.pas aecbef27b2 * Patch from Sergei Gorelkin: 17 yıl önce
xmliconv_windows.pas ee3ac64afb * Hopefully fixed argument size problem on 64-bit windows 17 yıl önce
xmlread.pp 57ba5f956e + After reaching EOF condition, clear FNodeData[0] slot 14 yıl önce
xmlstreaming.pp 915aa94e2d * Implemented dummys for missing methods 18 yıl önce
xmlutils.pp d7f7a9bb76 * patch by Alexander Shishkin to clean up $ifopt usage by $push/$pop, resolves #20346 14 yıl önce
xmlwrite.pp 72dcf89350 * Output the encoding label (still fixed to "utf-8", others are not yet supported), Mantis #19827, #19172. 14 yıl önce
xpath.pp 1876fb1c74 XPath: now when predicate filtering is no longer dependent on axis, it becomes possible to use the same code for TStep and TXPathFilterNode. Inherited TStep from TXPathFilterNode, removed duplicating code. 15 yıl önce
xpathkw.inc 0f5795baaf XPath, use a perfect hash to recognize all possible keywords. 15 yıl önce

README.txt

Free Pascal XML units
=====================

DOM
---
Implements most of the DOM level 1 specification and supports some of the
DOM level 2 extensions.


XMLRead
-------
Provides an XML reader, which can read XML data from a file or stream.
The parser can read files encoded in UTF-8, UTF-16 (both endianness),
and ISO-8859-1. It supports DTD validation.
Regarding entity references: The pre-defined entities "lt", "gt", "amp", "apos"
and "quot", and internal entities declared in DTD, are replaced by their
defined values during reading. Ability to resolve external entities is
currently limited to the file system.
Regarding whitespace handling: By default, whitespace directly after the beginning of a
tag is discarded, and sections of the XML file which contain only whitespace and
no other text content are discarded as well. However, whitespace-preserving
mode can be enabled by setting TDOMParser.Options.PreserveWhitespace property to
True.


XMLWrite
--------
Writes a DOM structure as XML data into a file or stream. It can deal both with
XML files and XML fragments.
At the moment it supports only the UTF-8 output endcoding.
Please note that the writer replaces some characters by entity references
automatically:
For normal text nodes, the following replacements will be done:
'<' => '<'
'>' => '>'
'&' => '&'
For attribute values, additionally '"' gets replaced by '"', and characters
#9, #10 and #13 are escaped using numerical references. Single apostrophes (')
don't need to get converted, as values are already written using "" quotes.
The XML reader (in xmlread.pp) will convert these entity references back to
their original characters.


XPath
-----
Just a XPath implementation. Should be fairly completed, but there hasn't been
further development recently.


HTMLDefs
--------
Contains basic HTML declarations.


HTMLElements
------------
Implements a DOM for HTML content. Contains a TDOMElement descendent for
all valid HTML 4.1 tags.

THtmlCustomElement:
Basis for all HTML tag elements.
THTMLDocument:
TDOMDocument descendent
THTMLIDElement:
element representing tag

All tags are in tagsintf.inc.


HTMLWriter
----------
Implements a verified HTML producer.

THTMLwriter:
This is a class which allows to write certified correct HTML.
It works using the DOM for HTML.
It also has forms support.

Writing HTML is done as follows:

StartBold;
Write('This text is bold');
EndBold;
or
Bold('This text is bold');

But the following is also possible
Bold(Center('Bold centered text'));

Open tags will be closed automatically.

wtagsintf.inc contains all possible tags.