We’re going to now specify the newest syntax utilising the common EBNF notation

We’re going to now specify the newest syntax utilising the common EBNF notation

Up to now, to help you indicate brand new syntax off RIF-FLD we relied on «analytical English,» an alternative brand of English getting interacting statistical meanings, instances, etc. The second activities in regards to the EBNF notation can be stored in mind:

LOCATOR

  • The fresh new sentence structure out of RIF-FLD relies on the newest trademark procedure that will be maybe ethiopianpersonals not framework-free, thus EBNF cannot get so it syntax correctly. Thus, the brand new EBNF grammar defines a strict superset off RIF-FLD (not absolutely all algorithms that are derivable making use of the EBNF sentence structure is well-formed).
  • The EBNF syntax is not a concrete syntax: it does not address the details of how constants (defined in [RIF-DTB]) and variables are represented, and it is not sufficiently precise about the delimiters and escape symbols. White space is informally used as a delimiter, and is implied in productions that use Kleene star. For instance, TERM* is to be understood as Label Title . Label, where each ‘ ‘ abstracts from one or more blanks, tabs, newlines, etc. This is done intentionally since RIF’s presentation syntax is used as a tool for specifying the semantics and for illustration of the main RIF concepts through examples.
  • RIF represent a tangible syntax only for selling and buying rules, and this syntax are XML-created, acquired because a sophistication and you may serialization of one’s EBNF syntax via the newest presentation-syntax-to-XML mapping having RIF-FLD.

Staying the above planned, the newest EBNF sentence structure can be seen just like the only an intermediary ranging from brand new mathematical English therefore the XML. However, it also provides a brief look at brand new syntax regarding RIF-FLD and therefore they can be handy to possess dialect music artists and you will profiles similar.

For each RIF-FLD algorithm and you will identity will be prefixed that have you to recommended annotation

The RIF-FLD presentation syntax does not commit to any particular vocabulary and permits arbitrary sequences of Unicode characters in constant symbols, argument names, and variables. Such sequences are denoted with UNICODESTRING in the above syntax. Constant symbols have this form: "UNICODESTRING"^^SYMSPACE, where SYMSPACE is a ANGLEBRACKIRI or CURIE that represents the identifier of the symbol space of the constant. UNICODESTRING, ANGLEBRACKIRI, and CURIE are defined in Section Shortcuts for Constants in RIF’s Presentation Syntax of [RIF-DTB]. Constant symbols can also have several shortcut forms, which are represented by the non-terminal CONSTSHORT. These shortcuts are also defined in the same section of [RIF-DTB]. One of them is the CURIE shortcut, which is used in the examples in this document. Names are Unicode character sequences that form valid XML NCNames [XML-Names]. Variables are composed of Names prefixed with a ?-sign.

, which is used in several places in the grammar, is a non-terminal whose definition is left to the dialects. It is intended to specify the protocol by which external sources, remote modules, and imported RIF documents are located. This must include the basic form , where IRI is a Unicode string in the form of an absolute IRI.

The symbols NEWCONNECTIVE, NEWQUANTIFIER, NEWAGGRFUNC, and NEWTERM are RIF-FLD extension points. They are not actual symbols in the alphabet. Instead, dialects are supposed to replace NEWCONNECTIVE, NEWQUANTIFIER, and NEWAGGRFUNC, by zero or more actual new symbols, while NEWTERM is to be replaced by zero or more new kinds of terms. Note that the extension point NEWSYMBOL is not shown in the EBNF grammar completely avoids mentioning the alphabet of the language (which is infinite).

IRIMETA, for identification and metadata. IRIMETA is represented using (*. *)-brackets that contain an optional rif:iri constant as identifier followed by an optional Frame or cones as metadata. One such specialization is '"' IRI '"^^' 'rif:iri' from the Const production, where IRI is a sequence of Unicode characters that forms an internationalized resource identifier as defined by [RFC-3987].