bnf2xml a simple BNF parser that takes text as input, searches according to a BNF query file, and outputs text marked up by the xml labels that show context.

bnf2xml is as simple to use as any text binary ie, awk(1) grep(1). bnf2xml does not require C API because it outputs simple xml labeling.

README is visible on file dl page.

EXAMPLE: $ echo "hi" | bnf2xml patternfile

<word><alph>h</alph><alph>i</alph></word>
or
<gas>hydrogen iodide</gas>

patternfile says how to find needle in haystack and what to show, ie:
<alph> ::= a | b | c | d ...
<word> ::= <alph>+

bnf2xml is a top down recursive parser. Unlike buttom up parsers like gcc(1) or some top downs, bnf2xml is completely unambiguous / resolves ALL conflicts. Slower on ave. for parsing C or than sed(1) for simple searches. Far easier than using flex/C to create a parser.

caveate: I do not suggest it's worth while to make a new gcc(1) using bnf2xml. bnf2xml an nth BETA release, but no complains yet.

Features

  • XML OUTPUT. (most that say xml mean xml input)
  • BNF for C, K&R CPL, included (xml output example on file dl page) (is not %100 complete)
  • Ability to do Binary Searching into very large strings lists.
  • Other output allows full trace of matching (including errors).
  • allows matching against a given BNF line number
  • (note: some bnf parsers can be programmed to do xml output)
  • README is visible on file download page
  • featured yet small simple end-to-end footprint
  • NEW: skip or print data (to not parse) quickly (for large file / data file work)
  • NEW: emit uniqe label, position, length for pre-post filter processing

Project Activity

See All Activity >

Categories

XML, Search, Linguistics

License

GNU General Public License version 2.0 (GPLv2)

Follow bnf2xml

bnf2xml Web Site

Other Useful Business Software
Cloud tools for web scraping and data extraction Icon
Cloud tools for web scraping and data extraction

Deploy pre-built tools that crawl websites, extract structured data, and feed your applications. Reliable web data without maintaining scrapers.

Automate web data collection with cloud tools that handle anti-bot measures, browser rendering, and data transformation out of the box. Extract content from any website, push to vector databases for RAG workflows, or pipe directly into your apps via API. Schedule runs, set up webhooks, and connect to your existing stack. Free tier available, then scale as you need to.
Explore 10,000+ tools
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of bnf2xml!

Additional Project Details

Operating Systems

BSD, Linux

Programming Language

C++

Related Categories

C++ XML Software, C++ Search Software, C++ Linguistics Software

Registered

2013-05-01