Итак, как веселый проект, я решил написать свой собственный XML-парсер. Нет, не для анализа конкретного документа, и нет, не используя библиотеку синтаксического анализатора XML. Я имею в виду написание кода для анализа любого XML-документа в пригодную для использования структуру данных. Просто потому, что мне нравится вызов. : -)
С учетом сказанного, пока что это оказалось ... интересным. Это не так просто для анализа (особенно когда вы начинаете учитывать специальные символы, CDATA, пустые теги, комментарии и т. Д.), Как это первоначально выглядело.
Есть ли где-нибудь хорошо документированные алгоритмы синтаксического анализа XML или объяснения, о которых кто-нибудь знает? Кажется, что везде есть хорошо документированные реализации Queue, Stack, BTree и т. Д. И т. Д., Но я не уверен, что когда-либо видел простой, хорошо документированный алгоритм парсера XML ...
Я повторяю: Я не ищу предварительно созданную библиотеку синтаксического анализатора! Я ищу информацию о , как создать свою собственную предварительно собранную библиотеку синтаксического анализатора ! Не говорите мне «используйте экспата» или «используйте SAX» или что-то еще. Это не то, что я прошу.