Skip to main content
. 2018 Nov 8;18(11):3832. doi: 10.3390/s18113832
Listing 2: Syntax of the Streaming MASSIF DSL.
            DSL -> NameSpace* EventDecl* RSPQL?
            EventDecl -> ‘NAMED EVENT’ EventName (AbstractEvent | ComplexEvent)
            AbstractEvent -> ‘AS’ DLDescription
            ComplexEvent -> ‘MATCH’ (Modifier)? EventPattern (Guard)? (IFClause)?
            EventPattern -> EventPattern EventOperator EventPattern|AbstractEvent|‘NOT’EventPattern
            IFClause -> ‘IF’ ‘{’ (‘EVENT’ AbstractEvent ‘{’ BGP ‘}’)* ‘}’
            EventOperator -> ‘AND’ | ‘OR’| ‘SEQ’
            Modifier -> ‘EVERY’ | ‘FIRST’ | ‘LAST’
            Guard -> ‘WHITIN’ Num ‘(’ TIMEUNIT ‘)’
            TIMEUNIT -> ‘s’ | ‘m’ | ‘h’ | ‘d’
            EventName -> String
            Num -> [0-9]+
            NameSpace -> SPARQL PREFIX SYNTAX
            DLDescription -> MANCHESTER SYNTAX
            BGP -> SPARQL BGP SYNTAX
            RSPQL -> RSP-QL SYNTAX