Re: [xml-dev] A question for parsing experts: How to recognize that '<' denotes the beginning of a start tag?

From
David Carlisle <>
To
Roger L Costello <>
Date
2021-02-16T20:15:46Z
ID
<CAEW6iOiH2MrKnXyaafNpCJvayuRvwADckS2xS69_oExR=>
Thread
Re: [xml-dev] A question for parsing experts: How to recognize that '<' denotes the beginning of a start tag?
On Tue, 16 Feb 2021 at 20:05, Roger L Costello <> wrote:
>
> Hi Folks,
>
> Suppose you are scanning an XML document or HTML document from the first character to the last character.
>
> In the scanning process, you encounter a less than ( '<' ) symbol.
>
> You must determine if it denotes the beginning of a start tag.
>
> What checks must be made to make this determination?
>
> I think these are the checks:
>
> Let c = the character currently being examined.
> Let nextchar = the character following c
>
> if c == '<' and nextchar != '/' and nexchar != '!' and nextchar != '?' then we are at the beginning of a start tag
>
> Do you agree? Am I missing any checks?
>
> /Roger
>

In XML you also need to account for the < being in a CDATA section or
comment or processing instruction or local subset of the DTD all of
which can contain a < matching your description that does not start a
tag.

In HTML then it's ... more complicated.

David