Keeping you updated with latest technology trends, Join DataFlair on Telegram 1. An important part of QlikView functioning is the QlikView scripting as nearly all the operations being performed on the data or on the application are done through script commands. You must have seen and dealt with commands and scripting before while working with any computer language. Now a thing to wonder is how these computer languages are formulated. Backus Naur Form is a metalanguage.
|Country:||Moldova, Republic of|
|Published (Last):||15 November 2006|
|PDF File Size:||15.82 Mb|
|ePub File Size:||5.68 Mb|
|Price:||Free* [*Free Regsitration Required]|
Keeping you updated with latest technology trends, Join DataFlair on Telegram 1. An important part of QlikView functioning is the QlikView scripting as nearly all the operations being performed on the data or on the application are done through script commands. You must have seen and dealt with commands and scripting before while working with any computer language. Now a thing to wonder is how these computer languages are formulated.
Backus Naur Form is a metalanguage. Metalanguages are the languages which are used to explain other natural or computer languages. Any metalanguage follows a specific notation technique or metasyntax through which rules of a language are defined and explained. Formulating a language for computers in a well-defined and formatted structure is very important for the language to properly convert into a machine language during execution.
Let us understand this by dividing the above statement into a right half and a left half. The right half has a Non-terminal value and the left half has Terminal values.
Non-Terminals- The Non-terminals are syntactic or lexical entities that use to define a symbol to be used in a language abiding the formal grammar rules. These values are not susceptible to change by the rule. A Non-Terminal can also be defined in or replaced by one or more Non-Terminals on the right side. Like the BNF is given for a postal address can see below. The first line states that the postal address non-terminal will consist of parts like name, street, zip-part. Then the name part can be a personal-part followed by last-name followed further by an optional suffix like Mr.
Defining further, the personal part may consist of an initial followed by a dot or just be the first name. The same logic follows for the other lines for street address, zip part.
The opt-suffix-part defines all the possible values that can be taken up as a suffix while writing the address.
The opt-apt-num is the optional apartment number string. The entire block of code is called the syntax and a complete statement is known as a rule.
On the right of these rule, statements are the expressions which count as two or more lists separated by a pipe.
BNF and EBNF: What are they and how do they work?
Our tree will have a root: one non-terminal representing our entire document. The root will contain other non-terminals that will contain other non-terminals and so on. The picture below show how we can go from a stream of tokens or terminals to an AST, which groups terminals into a hierarchy of non-terminals. We have seen that non-terminals represent structures at different levels. Some of them can contain other statements. We are going to see it in the next section. Each production rule tells us how a non-terminal can be composed.
QlikView Backus Naur Form – Example of BNF in QlikView
Top-down parsing LL The easiest way of parsing something according to a grammar in use today is called LL parsing or top-down parsing. It works like this: for each production find out which terminals the production can start with. This is called the start set. Then, when parsing, you just start with the start symbol and compare the start sets of the different productions against the first piece of input to see which of the productions have been used. Of course, this can only be done if no two start sets for one symbol both contain the same terminal.
Backus-Naur Form Syntax