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
MongoDB Atlas runs apps anywhere Icon
MongoDB Atlas runs apps anywhere

Deploy in 115+ regions with the modern database for every enterprise.

MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
Start Free
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