peter a4717b59b2 Merged revisions 7364,7380,7765,7939,7955,8023-8024,8038,8062,8077,8103-8106,8153,8167-8169,8173,8183-8185,8221,8263,8293,8343,8346,8348,8355-8356,8436-8437 via svnmerge from 18 年之前
..
README 7c65340ff1 Merged revisions 6721,6734,6747,6758-6760,6763-6764,6766,6768,6780,6788-6792,6801,6837,6839-6841,6845,6854,6870,6876-6878 via svnmerge from 18 年之前
dom.pp 639a0ca667 Merged revisions 8028 via svnmerge from 18 年之前
dom_html.pp 5b8dd4c004 * move fcl sources to separate packages 18 年之前
fpmake.inc 7c65340ff1 Merged revisions 6721,6734,6747,6758-6760,6763-6764,6766,6768,6780,6788-6792,6801,6837,6839-6841,6845,6854,6870,6876-6878 via svnmerge from 18 年之前
fpmake.pp 5b8dd4c004 * move fcl sources to separate packages 18 年之前
htmldefs.pp 7c65340ff1 Merged revisions 6721,6734,6747,6758-6760,6763-6764,6766,6768,6780,6788-6792,6801,6837,6839-6841,6845,6854,6870,6876-6878 via svnmerge from 18 年之前
htmlelements.pp 684d31e237 Merged revisions 8029-8030,8035,8079 via svnmerge from 18 年之前
htmlwriter.pp 7c65340ff1 Merged revisions 6721,6734,6747,6758-6760,6763-6764,6766,6768,6780,6788-6792,6801,6837,6839-6841,6845,6854,6870,6876-6878 via svnmerge from 18 年之前
htmwrite.pp 5b8dd4c004 * move fcl sources to separate packages 18 年之前
names.inc 5b8dd4c004 * move fcl sources to separate packages 18 年之前
sax.pp 5b8dd4c004 * move fcl sources to separate packages 18 年之前
sax_html.pp 5c65e4bd11 Merged revisions 6749 via svnmerge from 18 年之前
sax_xml.pp 5b8dd4c004 * move fcl sources to separate packages 18 年之前
tagsimpl.inc 7c65340ff1 Merged revisions 6721,6734,6747,6758-6760,6763-6764,6766,6768,6780,6788-6792,6801,6837,6839-6841,6845,6854,6870,6876-6878 via svnmerge from 18 年之前
tagsintf.inc 7c65340ff1 Merged revisions 6721,6734,6747,6758-6760,6763-6764,6766,6768,6780,6788-6792,6801,6837,6839-6841,6845,6854,6870,6876-6878 via svnmerge from 18 年之前
wtagsimpl.inc 7c65340ff1 Merged revisions 6721,6734,6747,6758-6760,6763-6764,6766,6768,6780,6788-6792,6801,6837,6839-6841,6845,6854,6870,6876-6878 via svnmerge from 18 年之前
wtagsintf.inc 7c65340ff1 Merged revisions 6721,6734,6747,6758-6760,6763-6764,6766,6768,6780,6788-6792,6801,6837,6839-6841,6845,6854,6870,6876-6878 via svnmerge from 18 年之前
xhtml.pp 3acf01b391 Merged revisions 6871 via svnmerge from 18 年之前
xmlcfg.pp 90248430b6 Merged revisions 6982-6990 via svnmerge from 18 年之前
xmlconf.pp 90248430b6 Merged revisions 6982-6990 via svnmerge from 18 年之前
xmlread.pp a4717b59b2 Merged revisions 7364,7380,7765,7939,7955,8023-8024,8038,8062,8077,8103-8106,8153,8167-8169,8173,8183-8185,8221,8263,8293,8343,8346,8348,8355-8356,8436-8437 via svnmerge from 18 年之前
xmlstreaming.pp 5b8dd4c004 * move fcl sources to separate packages 18 年之前
xmlutils.pp 5c65e4bd11 Merged revisions 6749 via svnmerge from 18 年之前
xmlwrite.pp a4717b59b2 Merged revisions 7364,7380,7765,7939,7955,8023-8024,8038,8062,8077,8103-8106,8153,8167-8169,8173,8183-8185,8221,8263,8293,8343,8346,8348,8355-8356,8436-8437 via svnmerge from 18 年之前
xpath.pp 5b8dd4c004 * move fcl sources to separate packages 18 年之前

README

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

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


XMLRead
-------
Provides a simple XML reader, which can read XML data from a file or stream.
This simple parser will be replaced by a much improved one soon, which will be
able to handle different character encodings, namespaces and entity references.
(This parser reads the file directly, i.e. it doesn't support Unicode or
different charsets yet.)
Regarding entity references: The pre-defined entities "lt", "gt", "amp", "apos"
and "quot" are replaced by their normal value during reading. Other entity
references are stored as TDOMEntityReference nodes in the DOM tree.
Regarding whitespace handling: 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.


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 node types which can be read by XMLRead.
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 '"'. 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.