ietf-tools / bap Goto Github PK
View Code? Open in Web Editor NEWAn ABNF parser, focusing on human-friendly error messages.
An ABNF parser, focusing on human-friendly error messages.
hcreate.c still has 4-clause license; replace it with a 3-clause version.
Original issue reported on code.google.com by [email protected]
on 16 Nov 2007 at 12:59
Please provide a README, it is not clear what this bap tool does with abnf syntax file besides checking it and pretty-printing.
(this may be an enhancement request)
For the purpose of migrating the BNF rules in RCF2616, I have added minimal
support for the list (#) rule defined in
http://tools.ietf.org/html/rfc2616#section-2.1.
Note that this is probably incomplete because it has only been tested with
the rules from RFC2616 itself, in particular it only supports "#" and "1#".
I am attaching the diffs in case somebody feels like turning this into a
full-blown BAP feature.
Original issue reported on code.google.com by [email protected]
on 20 Nov 2007 at 1:02
Attachments:
If you use the online IETF tool to parse RFC2822 the output contains a bunch of text that isn't actually part of any ABNF rule. For example starting on line 21:
No special semantics are attached to these tokens. They are simply
single characters.
The httpbis wg created an XML output mechanism. See
https://trac.tools.ietf.org/wg/httpbis/trac/browser/abnfparser/bap
| should be an error, not a wwarning.
Original issue reported on code.google.com by [email protected]
on 2 Dec 2007 at 10:15
What steps will reproduce the problem?
1. Use tool via http://tools.ietf.org/abnf/
2. Enter '2045'
3. Only one line of ABNF is extracted from RFC 2045
What is the expected output? What do you see instead?
Expected to see all lines of ABNF extracted.
Only saw one line of ABNF extracted.
What version of the product are you using? On what operating system?
Used via link at http://tools.ietf.org/abnf/
Please provide any additional information below.
Original issue reported on code.google.com by [email protected]
on 7 Feb 2014 at 11:19
The code for undefined tokens is only run when printing the ABNF out. THis means that it does not do anything if the -q option is given. In both cases, the program will return a 0 exit code
I couldn't leave this alone. More FYI: I noticed that running the extraction on RFC 3986 not only collects duplicates, but also collects a few lines that are not even intended to be ABNF:
result = ""
$1 = http:
$2 = http
$3 = //www.ics.uci.edu
$4 = www.ics.uci.edu
$5 = /pub/ietf/uri/
$6 =
$7 =
$8 = #Related
$9 = Related
Fixing duplicates is trivial to script, but fixing these bogons looks like an AI problem. This really strengthens the argument that actual code should be embedded in and the checker applied to the xml source, going forward.
Should have the core abnf rules come as part of the binary so instead of
preloading abnf-core.txt
there's a special --use-core-rules flag.
(This means convincing lex/yacc to scan from a file or a string, so is not a
*no* no brainer)
Original issue reported on code.google.com by [email protected]
on 15 Nov 2007 at 12:17
The httpbis wg created an option to reformat the output to handle a given output width. See
https://trac.tools.ietf.org/wg/httpbis/trac/browser/abnfparser/bap
In the brave new DCVS world, static const char rcsid[] =
is laughably obsolete. Just delete them (and any of these keywords in comments).
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.