SlideShare a Scribd company logo
BNF4OOo An Application Using Writer as a GUI for Creating and Maintaining [e]BNFs Rony G. Flatscher, WU Wien
Overview Introduction BNF, eBNF
Rail track diagrams Features Functionality
Usability Demonstration
Roundup
Introduction, 1 Has been created by one of my students,  Franz Hohenegger , at "WU Wien"
Purpose Make it easy to edit and convert [e]BNF
Allows the definition of variants of [e]BNF
Find or define a XML document type and supply converters from/to that format Target users Programmers and language designers
Introduction, 2 BNF Backus-Naur-Form Used to define the syntax of languages
Programming Languages
IETF RFC's for defining protocols
OOo for defining protocols
ANSI SQL 92, e.g. http://www.contrib.andrew.cmu.edu/~shadow/sql/sql2bnf.aug92.txt XML for defining the markup language eBNF Many variants "e"xtending BNF
Introduction, 3 "Rail track diagrams" Easy to comprehend Graphical syntax diagrams, from [e]BNF Have been used in the documentation of programming languages
Easy, but not quite as easy to program or to create nice looking ones Either create one's own individual scripts
Or use utilities of other programmers Usually not well documented
Not supporting all possible features of eBNFs
Cannot create error-free and nice looking diagrams
Introduction, 4 "Rail track diagrams" (continued) ooRexx development  "Open Object Rexx" opensourced by IBM
The supplied IBM documentation is full of easy to comprehend rail track diagrams
Can only be maintained as ASCII-diagrams (!)
Complex syntaxes turn out to be error-prone, if maintained manually A burden becoming too high over time One strong opinion is to define a [e]BNF, but to not create the ASCII-based diagrams by hand Having a tool that creates error-free and nice looking rail track diagrams may be very helpful !
eBNF and Rail Diagram, 1 (ASCII Characters)
eBNF and Rail Diagram, 2 (Unicode Characters)
eBNF and Rail Diagram, 3 (Unicode Characters, Boxed)
XML, 1 [e]BNF definitions  Almost 50 years old
[e]BNF definitions as pure (7-Bit ASCII) text Adding explicitly structural information XML markup Allows the application of XML parsers and XSLT If expressive enough, then it could be used as repository format for all kind of [e]BNFs! Intermediate format for rendering

More Related Content

PPT
Compilation
PPTX
C compilation process
PPTX
Web technology slideshare
PPTX
Understanding how C program works
PPT
Syncevolution: Open Source and Funambol
PDF
The Hitchhiker's Guide to Faster Builds. Viktor Kirilov. CoreHard Spring 2019
PPTX
C++ compilation process
PPTX
File handling With Solve Programs
Compilation
C compilation process
Web technology slideshare
Understanding how C program works
Syncevolution: Open Source and Funambol
The Hitchhiker's Guide to Faster Builds. Viktor Kirilov. CoreHard Spring 2019
C++ compilation process
File handling With Solve Programs

What's hot (20)

DOC
Source-to-Source Compiler
PDF
Mini-Training: TypeScript
ODP
LD_PRELOAD Exploitation - DC9723
PDF
Anton Mishchuk - Multi-language FBP with Flowex
DOCX
GNU GCC - what just a compiler...?
PPT
PHP
PPTX
G++ & GCC
PDF
LLVM Compiler - Link Time Optimization
PPT
Php(2)
PDF
PIL - A Platform Independent Language
PPT
PPTX
Compiling Under Linux
PDF
Multi-language FBP with flowex
PPTX
PPTX
.Net framework
PDF
Pyinvoke - you replacement for Makefiles
PDF
Eclipse - Installation and quick start guide
PPTX
06 - ELF format, knowing your friend
PDF
Assembly Langauge Chap 1
PPTX
Autotools pratical training
Source-to-Source Compiler
Mini-Training: TypeScript
LD_PRELOAD Exploitation - DC9723
Anton Mishchuk - Multi-language FBP with Flowex
GNU GCC - what just a compiler...?
PHP
G++ & GCC
LLVM Compiler - Link Time Optimization
Php(2)
PIL - A Platform Independent Language
Compiling Under Linux
Multi-language FBP with flowex
.Net framework
Pyinvoke - you replacement for Makefiles
Eclipse - Installation and quick start guide
06 - ELF format, knowing your friend
Assembly Langauge Chap 1
Autotools pratical training
Ad

Viewers also liked (8)

ODP
Doc.next - The Future of the Documentation Project
ODP
The Policy, Planning and Pragmatic Reasons
ODP
Processing OpenDocument Format
PPS
Los10 Autos Mas Caros Www 1 [1].Diapositivas.Com
ODP
Office OpenXML: a technical approach for OOo.
ODP
The adoption of ODF in the South African public sector
ODP
Intelligent Impress
ODP
C++ development within OOo
Doc.next - The Future of the Documentation Project
The Policy, Planning and Pragmatic Reasons
Processing OpenDocument Format
Los10 Autos Mas Caros Www 1 [1].Diapositivas.Com
Office OpenXML: a technical approach for OOo.
The adoption of ODF in the South African public sector
Intelligent Impress
C++ development within OOo
Ad

Similar to An Application Using Writer as a GUI for Creating and Maintaining [e]BNFs (6)

PDF
Tips And Tricks For Bioinformatics Software Engineering
ODP
A Technical Comparison: ISO/IEC 26300 vs Microsoft Office Open XML
PDF
Os Koziarsky
PPTX
OpenChain Webinar - Implementing OpenChain ISO/IEC 5230 at endjin + Further R...
ODP
Processing ODF
ODP
OpenNTF.Org Third Generation
Tips And Tricks For Bioinformatics Software Engineering
A Technical Comparison: ISO/IEC 26300 vs Microsoft Office Open XML
Os Koziarsky
OpenChain Webinar - Implementing OpenChain ISO/IEC 5230 at endjin + Further R...
Processing ODF
OpenNTF.Org Third Generation

More from Alexandro Colorado (20)

ODP
Bitcuners revolucion blockchain
ODP
Presentacion Krita
ODP
Bitcuners porque bitcoins
ODP
ChamiloCon Enseñando con Tecnología
ODP
Curso de desarrollo web para principiantes
ODP
ChamiloCon: Recursos de Software Libre
ODP
Krita - Tu tambien puedes pintar un arbol Feliz
ODP
Gobernancia y particionacion en comunidades de Software Libre v2
PDF
Blender - FLISOL Cancun 2014
ODP
The Hitchhicker's Guide to Opensource
ODP
OpenERP: El ecosistema de negocios
ODP
Aprendiendo GnuPG
ODP
Catalogo decursos
ODP
Practicas virtuales v2.2
ODP
Introducción al curso de Extensiones de OpenOffice
ODP
Comunidades software libre
ODP
Practicas virtuales v2
ODP
Practicas virtuales
ODP
Economia digital
Bitcuners revolucion blockchain
Presentacion Krita
Bitcuners porque bitcoins
ChamiloCon Enseñando con Tecnología
Curso de desarrollo web para principiantes
ChamiloCon: Recursos de Software Libre
Krita - Tu tambien puedes pintar un arbol Feliz
Gobernancia y particionacion en comunidades de Software Libre v2
Blender - FLISOL Cancun 2014
The Hitchhicker's Guide to Opensource
OpenERP: El ecosistema de negocios
Aprendiendo GnuPG
Catalogo decursos
Practicas virtuales v2.2
Introducción al curso de Extensiones de OpenOffice
Comunidades software libre
Practicas virtuales v2
Practicas virtuales
Economia digital

Recently uploaded (20)

PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
Spectroscopy.pptx food analysis technology
PPTX
sap open course for s4hana steps from ECC to s4
PDF
KodekX | Application Modernization Development
PPTX
Big Data Technologies - Introduction.pptx
PDF
Approach and Philosophy of On baking technology
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
Cloud computing and distributed systems.
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Machine learning based COVID-19 study performance prediction
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPT
Teaching material agriculture food technology
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
Encapsulation theory and applications.pdf
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
Mobile App Security Testing_ A Comprehensive Guide.pdf
Spectroscopy.pptx food analysis technology
sap open course for s4hana steps from ECC to s4
KodekX | Application Modernization Development
Big Data Technologies - Introduction.pptx
Approach and Philosophy of On baking technology
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Chapter 3 Spatial Domain Image Processing.pdf
Cloud computing and distributed systems.
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Advanced methodologies resolving dimensionality complications for autism neur...
Digital-Transformation-Roadmap-for-Companies.pptx
Machine learning based COVID-19 study performance prediction
Reach Out and Touch Someone: Haptics and Empathic Computing
Teaching material agriculture food technology
MIND Revenue Release Quarter 2 2025 Press Release
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Encapsulation theory and applications.pdf
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Per capita expenditure prediction using model stacking based on satellite ima...

An Application Using Writer as a GUI for Creating and Maintaining [e]BNFs