blob: 021c46d5cc114b579cc1388e134285c5bc10e40c [file] [log] [blame]
RncFileImpl:Main.rnc
PsiComment(SINGLE_LINE_COMMENT)('# =========================================================')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# ')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# (c) 2004, RenderX ')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# ')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# Author: Alexander Peshkov <peshkov@renderx.com> ')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# ')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# Permission is granted to use this document, copy and ')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# modify free of charge, provided that every derived work ')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# bear a reference to the present document. ')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# ')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# This document contains a computer program written in ')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# XSL Transformations Language. It is published with no ')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# warranty of any kind about its usability, as a mere ')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# example of XSL technology. RenderX shall not be ')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# considered liable for any damage or loss of data caused ')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# by use of this program. ')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# ')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# =========================================================')
PsiWhiteSpace('\n\n')
DOCUMENT
NS_DECL
PsiElement(KEYWORD_NAMESPACE)('namespace')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('local')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PsiElement(LITERAL)('""')
PsiWhiteSpace('\n')
NS_DECL
PsiElement(KEYWORD_DEFAULT)('default')
PsiWhiteSpace(' ')
PsiElement(KEYWORD_NAMESPACE)('namespace')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('fo')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PsiElement(LITERAL)('"http://www.w3.org/1999/XSL/Format"')
PsiWhiteSpace('\n')
NS_DECL
PsiElement(KEYWORD_NAMESPACE)('namespace')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('rx')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PsiElement(LITERAL)('"http://www.renderx.com/XSL/Extensions"')
PsiWhiteSpace('\n\n')
GRAMMAR_PATTERN
INCLUDE
PsiElement(KEYWORD_INCLUDE)('include')
PsiWhiteSpace(' ')
PsiElement(LITERAL)('"elements.rnc"')
PsiWhiteSpace('\n\n')
START
PsiElement(KEYWORD_START)('start')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('root')
PsiWhiteSpace('\n\n')
PsiComment(SINGLE_LINE_COMMENT)('# ****************************************************************************************')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# Element structure for top-level elements')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# ****************************************************************************************')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# ===============================================================')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# Root element. Contains everything, generates nothing. It has an')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# id, a FO namespace prefix declaration, and other namespace')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# declarations if used.')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# ===============================================================')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('root')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PATTERN
PsiElement(KEYWORD_ELEMENT)('element')
PsiWhiteSpace(' ')
NAME_CLASS
NAME
PsiElement(PREFIXED_NAME)('fo:root')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace(' ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('root.attlist')
PsiElement(,)(',')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('root.content')
PsiWhiteSpace(' ')
PsiElement(})('}')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('root.content')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' \n ')
SEQUENCE
OPTIONAL
REF_PATTERN
PsiElement(IDENTIFIER)('meta-info')
PsiElement(?)('?')
PsiElement(,)(',')
PsiWhiteSpace('\n ')
REF_PATTERN
PsiElement(IDENTIFIER)('layout-master-set')
PsiElement(,)(',')
PsiWhiteSpace('\n ')
OPTIONAL
REF_PATTERN
PsiElement(IDENTIFIER)('declarations')
PsiElement(?)('?')
PsiElement(,)(',')
PsiWhiteSpace('\n ')
OPTIONAL
REF_PATTERN
PsiElement(IDENTIFIER)('outline')
PsiElement(?)('?')
PsiElement(,)(',')
PsiWhiteSpace('\n ')
ONE_OR_MORE
REF_PATTERN
PsiElement(IDENTIFIER)('page-sequence')
PsiElement(+)('+')
PsiWhiteSpace('\n\n')
PsiComment(SINGLE_LINE_COMMENT)('# ===============================================================')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# Document meta information - RenderX extension')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# ===============================================================')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('meta-info')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PATTERN
PsiElement(KEYWORD_ELEMENT)('element')
PsiWhiteSpace(' ')
NAME_CLASS
NAME
PsiElement(PREFIXED_NAME)('rx:meta-info')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace(' ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('meta-info.attlist')
PsiElement(,)(',')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('meta-info.content')
PsiWhiteSpace(' ')
PsiElement(})('}')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('meta-info.content')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
ONE_OR_MORE
REF_PATTERN
PsiElement(IDENTIFIER)('meta-field')
PsiElement(+)('+')
PsiWhiteSpace(' \n\n')
DEFINE
PsiElement(IDENTIFIER)('meta-field')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PATTERN
PsiElement(KEYWORD_ELEMENT)('element')
PsiWhiteSpace(' ')
NAME_CLASS
NAME
PsiElement(PREFIXED_NAME)('rx:meta-field')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace(' ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('meta-field.attlist')
PsiElement(,)(',')
PsiWhiteSpace(' ')
EMPTY_PATTERN
PsiElement(KEYWORD_EMPTY)('empty')
PsiWhiteSpace(' ')
PsiElement(})('}')
PsiWhiteSpace('\n\n')
PsiComment(SINGLE_LINE_COMMENT)('# ===============================================================')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# Color profile declarations')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# ===============================================================')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('declarations')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PATTERN
PsiElement(KEYWORD_ELEMENT)('element')
PsiWhiteSpace(' ')
NAME_CLASS
NAME
PsiElement(PREFIXED_NAME)('fo:declarations')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace(' ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('declarations.attlist')
PsiElement(,)(',')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('declarations.content')
PsiWhiteSpace(' ')
PsiElement(})('}')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('declarations.content')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
ONE_OR_MORE
REF_PATTERN
PsiElement(IDENTIFIER)('color-profile')
PsiElement(+)('+')
PsiWhiteSpace(' \n\n')
DEFINE
PsiElement(IDENTIFIER)('color-profile')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PATTERN
PsiElement(KEYWORD_ELEMENT)('element')
PsiWhiteSpace(' ')
NAME_CLASS
NAME
PsiElement(PREFIXED_NAME)('fo:color-profile')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace(' ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('color-profile.attlist')
PsiElement(,)(',')
PsiWhiteSpace(' ')
EMPTY_PATTERN
PsiElement(KEYWORD_EMPTY)('empty')
PsiWhiteSpace(' ')
PsiElement(})('}')
PsiWhiteSpace('\n\n')
PsiComment(SINGLE_LINE_COMMENT)('# ===============================================================')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# Bookmarks - RenderX extension')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# ===============================================================')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('outline')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PATTERN
PsiElement(KEYWORD_ELEMENT)('element')
PsiWhiteSpace(' ')
NAME_CLASS
NAME
PsiElement(PREFIXED_NAME)('rx:outline')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace(' ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('outline.attlist')
PsiElement(,)(',')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('outline.content')
PsiWhiteSpace(' ')
PsiElement(})('}')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('outline.content')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
ONE_OR_MORE
REF_PATTERN
PsiElement(IDENTIFIER)('bookmark')
PsiElement(+)('+')
PsiWhiteSpace('\n\n')
DEFINE
PsiElement(IDENTIFIER)('bookmark')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PATTERN
PsiElement(KEYWORD_ELEMENT)('element')
PsiWhiteSpace(' ')
NAME_CLASS
NAME
PsiElement(PREFIXED_NAME)('rx:bookmark')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace(' ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('bookmark.attlist')
PsiElement(,)(',')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('bookmark.content')
PsiWhiteSpace(' ')
PsiElement(})('}')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('bookmark.content')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('bookmark-label')
PsiElement(,)(',')
PsiWhiteSpace(' ')
ZERO_OR_MORE
REF_PATTERN
PsiElement(IDENTIFIER)('bookmark')
PsiElement(*)('*')
PsiWhiteSpace('\n\n')
DEFINE
PsiElement(IDENTIFIER)('bookmark-label')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PATTERN
PsiElement(KEYWORD_ELEMENT)('element')
PsiWhiteSpace(' ')
NAME_CLASS
NAME
PsiElement(PREFIXED_NAME)('rx:bookmark-label')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace(' ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('bookmark-label.attlist')
PsiElement(,)(',')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('bookmark-label.content')
PsiWhiteSpace(' ')
PsiElement(})('}')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('bookmark-label.content')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
TEXT_PATTERN
PsiElement(KEYWORD_TEXT)('text')
PsiWhiteSpace('\n\n')
PsiComment(SINGLE_LINE_COMMENT)('# ===============================================================')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# Layout-master-set. Contains a set of page-masters.')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# Content model made more strict than in the spec, to enforce')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# that a page-sequence-master be always accompanied by at least')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# one simple-page-master.')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# ===============================================================')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('layout-master-set')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PATTERN
PsiElement(KEYWORD_ELEMENT)('element')
PsiWhiteSpace(' ')
NAME_CLASS
NAME
PsiElement(PREFIXED_NAME)('fo:layout-master-set')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace(' ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('layout-master-set.attlist')
PsiElement(,)(',')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('layout-master-set.content')
PsiWhiteSpace(' ')
PsiElement(})('}')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('layout-master-set.content')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
INTERLEAVE
ZERO_OR_MORE
REF_PATTERN
PsiElement(IDENTIFIER)('page-sequence-master')
PsiElement(*)('*')
PsiWhiteSpace(' ')
PsiElement(&)('&')
PsiWhiteSpace(' ')
ONE_OR_MORE
REF_PATTERN
PsiElement(IDENTIFIER)('simple-page-master')
PsiElement(+)('+')
PsiWhiteSpace('\n\n')
PsiComment(SINGLE_LINE_COMMENT)('# ===============================================================')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# Page sequence master')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# ===============================================================')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('page-sequence-master')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' \n ')
PATTERN
PsiElement(KEYWORD_ELEMENT)('element')
PsiWhiteSpace(' ')
NAME_CLASS
NAME
PsiElement(PREFIXED_NAME)('fo:page-sequence-master')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace(' \n ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('page-sequence-master.attlist')
PsiElement(,)(',')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('page-sequence-master.content')
PsiWhiteSpace('\n ')
PsiElement(})('}')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('page-sequence-master.content')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' \n ')
ONE_OR_MORE
GROUP_PATTERN
PsiElement(()('(')
CHOICE
REF_PATTERN
PsiElement(IDENTIFIER)('single-page-master-reference')
PsiWhiteSpace('\n ')
PsiElement(|)('|')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('repeatable-page-master-reference')
PsiWhiteSpace('\n ')
PsiElement(|)('|')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('repeatable-page-master-alternatives')
PsiElement())(')')
PsiElement(+)('+')
PsiWhiteSpace('\n\n')
PsiComment(SINGLE_LINE_COMMENT)('# ===============================================================')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# Sequence specifiers are predefined sequences of page masters')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# that are used by page sequence master to construct a desired')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# page collection.')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# ===============================================================')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('single-page-master-reference')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' \n ')
PATTERN
PsiElement(KEYWORD_ELEMENT)('element')
PsiWhiteSpace(' ')
NAME_CLASS
NAME
PsiElement(PREFIXED_NAME)('fo:single-page-master-reference')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace('\n ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('single-page-master-reference.attlist')
PsiElement(,)(',')
PsiWhiteSpace(' ')
EMPTY_PATTERN
PsiElement(KEYWORD_EMPTY)('empty')
PsiWhiteSpace('\n ')
PsiElement(})('}')
PsiWhiteSpace('\n\n')
DEFINE
PsiElement(IDENTIFIER)('repeatable-page-master-reference')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' \n ')
PATTERN
PsiElement(KEYWORD_ELEMENT)('element')
PsiWhiteSpace(' ')
NAME_CLASS
NAME
PsiElement(PREFIXED_NAME)('fo:repeatable-page-master-reference')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace('\n ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('repeatable-page-master-reference.attlist')
PsiElement(,)(',')
PsiWhiteSpace(' ')
EMPTY_PATTERN
PsiElement(KEYWORD_EMPTY)('empty')
PsiWhiteSpace('\n ')
PsiElement(})('}')
PsiWhiteSpace('\n\n')
DEFINE
PsiElement(IDENTIFIER)('repeatable-page-master-alternatives')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' \n ')
PATTERN
PsiElement(KEYWORD_ELEMENT)('element')
PsiWhiteSpace(' ')
NAME_CLASS
NAME
PsiElement(PREFIXED_NAME)('fo:repeatable-page-master-alternatives')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace('\n ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('repeatable-page-master-alternatives.attlist')
PsiElement(,)(',')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('repeatable-page-master-alternatives.content')
PsiWhiteSpace('\n ')
PsiElement(})('}')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('repeatable-page-master-alternatives.content')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
ONE_OR_MORE
REF_PATTERN
PsiElement(IDENTIFIER)('conditional-page-master-reference')
PsiElement(+)('+')
PsiWhiteSpace('\n\n')
DEFINE
PsiElement(IDENTIFIER)('conditional-page-master-reference')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' \n ')
PATTERN
PsiElement(KEYWORD_ELEMENT)('element')
PsiWhiteSpace(' ')
NAME_CLASS
NAME
PsiElement(PREFIXED_NAME)('fo:conditional-page-master-reference')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace('\n ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('conditional-page-master-reference.attlist')
PsiElement(,)(',')
PsiWhiteSpace(' ')
EMPTY_PATTERN
PsiElement(KEYWORD_EMPTY)('empty')
PsiWhiteSpace('\n ')
PsiElement(})('}')
PsiWhiteSpace('\n\n')
PsiComment(SINGLE_LINE_COMMENT)('# ===============================================================')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# Simple page master defines a page layout. It does not')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# explicitly generate any content.')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# ===============================================================')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('simple-page-master')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace('\n ')
PATTERN
PsiElement(KEYWORD_ELEMENT)('element')
PsiWhiteSpace(' ')
NAME_CLASS
NAME
PsiElement(PREFIXED_NAME)('fo:simple-page-master')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace('\n ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('simple-page-master.attlist')
PsiElement(,)(',')
PsiWhiteSpace('\n ')
REF_PATTERN
PsiElement(IDENTIFIER)('simple-page-master.content')
PsiWhiteSpace('\n ')
PsiElement(})('}')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('simple-page-master.content')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace('\n ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('region-body')
PsiElement(,)(',')
PsiWhiteSpace('\n ')
OPTIONAL
REF_PATTERN
PsiElement(IDENTIFIER)('region-before')
PsiElement(?)('?')
PsiElement(,)(',')
PsiWhiteSpace('\n ')
OPTIONAL
REF_PATTERN
PsiElement(IDENTIFIER)('region-after')
PsiElement(?)('?')
PsiElement(,)(',')
PsiWhiteSpace('\n ')
OPTIONAL
REF_PATTERN
PsiElement(IDENTIFIER)('region-start')
PsiElement(?)('?')
PsiElement(,)(',')
PsiWhiteSpace('\n ')
OPTIONAL
REF_PATTERN
PsiElement(IDENTIFIER)('region-end')
PsiElement(?)('?')
PsiWhiteSpace('\n\n')
PsiComment(SINGLE_LINE_COMMENT)('# ===============================================================')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# Regions. The page instance is divided into subareas, whose')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# properties are described by the five region-* elements. These')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# elements by themselves do not generate any content.')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# ===============================================================')
PsiWhiteSpace('\n\n')
PsiComment(SINGLE_LINE_COMMENT)('# ===============================================================')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# Body region: middle of the page.')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# ===============================================================')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('region-body')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PATTERN
PsiElement(KEYWORD_ELEMENT)('element')
PsiWhiteSpace(' ')
NAME_CLASS
NAME
PsiElement(PREFIXED_NAME)('fo:region-body')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace(' ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('region-body.attlist')
PsiElement(,)(',')
PsiWhiteSpace(' ')
EMPTY_PATTERN
PsiElement(KEYWORD_EMPTY)('empty')
PsiWhiteSpace(' ')
PsiElement(})('}')
PsiWhiteSpace('\n\n')
PsiComment(SINGLE_LINE_COMMENT)('# ===============================================================')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# Side regions: page edges.')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# ===============================================================')
PsiWhiteSpace('\n\n')
DEFINE
PsiElement(IDENTIFIER)('region-before')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PATTERN
PsiElement(KEYWORD_ELEMENT)('element')
PsiWhiteSpace(' ')
NAME_CLASS
NAME
PsiElement(PREFIXED_NAME)('fo:region-before')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace(' ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('region-before.attlist')
PsiElement(,)(',')
PsiWhiteSpace(' ')
EMPTY_PATTERN
PsiElement(KEYWORD_EMPTY)('empty')
PsiWhiteSpace(' ')
PsiElement(})('}')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('region-after')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PATTERN
PsiElement(KEYWORD_ELEMENT)('element')
PsiWhiteSpace(' ')
NAME_CLASS
NAME
PsiElement(PREFIXED_NAME)('fo:region-after')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace(' ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('region-after.attlist')
PsiElement(,)(',')
PsiWhiteSpace(' ')
EMPTY_PATTERN
PsiElement(KEYWORD_EMPTY)('empty')
PsiWhiteSpace(' ')
PsiElement(})('}')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('region-start')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PATTERN
PsiElement(KEYWORD_ELEMENT)('element')
PsiWhiteSpace(' ')
NAME_CLASS
NAME
PsiElement(PREFIXED_NAME)('fo:region-start')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace(' ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('region-start.attlist')
PsiElement(,)(',')
PsiWhiteSpace(' ')
EMPTY_PATTERN
PsiElement(KEYWORD_EMPTY)('empty')
PsiWhiteSpace(' ')
PsiElement(})('}')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('region-end')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PATTERN
PsiElement(KEYWORD_ELEMENT)('element')
PsiWhiteSpace(' ')
NAME_CLASS
NAME
PsiElement(PREFIXED_NAME)('fo:region-end')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace(' ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('region-end.attlist')
PsiElement(,)(',')
PsiWhiteSpace(' ')
EMPTY_PATTERN
PsiElement(KEYWORD_EMPTY)('empty')
PsiWhiteSpace(' ')
PsiElement(})('}')
PsiWhiteSpace('\n\n')
PsiComment(SINGLE_LINE_COMMENT)('# ===============================================================')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# Page sequence defines the order of choosing page masters to')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# accomodate all the contents generated by its fo:flow and')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# fo:static-content children, and the way of numbering them.')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# ===============================================================')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('page-sequence')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PATTERN
PsiElement(KEYWORD_ELEMENT)('element')
PsiWhiteSpace(' ')
NAME_CLASS
NAME
PsiElement(PREFIXED_NAME)('fo:page-sequence')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace(' ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('page-sequence.attlist')
PsiElement(,)(',')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('page-sequence.content')
PsiWhiteSpace(' ')
PsiElement(})('}')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('page-sequence.content')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
SEQUENCE
OPTIONAL
REF_PATTERN
PsiElement(IDENTIFIER)('title')
PsiElement(?)('?')
PsiElement(,)(',')
PsiWhiteSpace(' ')
ZERO_OR_MORE
REF_PATTERN
PsiElement(IDENTIFIER)('static-content')
PsiElement(*)('*')
PsiElement(,)(',')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('flow')
PsiWhiteSpace('\n\n')
PsiComment(SINGLE_LINE_COMMENT)('# ===============================================================')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# Title. May not contain out-of-lines.')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# ===============================================================')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n#MEMO: Spec states:')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# XSL> Additionally, an fo:title is not permitted to have as a descendant an fo:block-container')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# XSL> that generates an absolutely positioned area.')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# We prohibit block-level descendants except for those descendats of fo:inline-container.')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# This content model shared by fo:leader and fo:inline child of an fo:footnote.')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('title')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PATTERN
PsiElement(KEYWORD_ELEMENT)('element')
PsiWhiteSpace(' ')
NAME_CLASS
NAME
PsiElement(PREFIXED_NAME)('fo:title')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace(' ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('title.attlist')
PsiElement(,)(',')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('title.content')
PsiWhiteSpace(' ')
PsiElement(})('}')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('title.content')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
ZERO_OR_MORE
REF_PATTERN
PsiElement(IDENTIFIER)('inlines-inline')
PsiElement(*)('*')
PsiWhiteSpace('\n\n')
PsiComment(SINGLE_LINE_COMMENT)('# ===============================================================')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# Flows. They are just sequences of blocks. 'flow-name' feature')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# defines linkage of the flow to a region in the page master.')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# ===============================================================')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# ===============================================================')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# An extension element, rx:flow-section, has been added in order')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# to overcome limitations on multicolumn layout imposed by XSL FO')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# ===============================================================')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n#NOTE: We use tricks with nested grammar in order control marker/retrieve-marker ')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n#and outlines appearance inside fo:static-content and fo:flow')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n#MEMO: We forcedly prohibit side-floats as descendants of ablsoutely positioned')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# block-containers. This problem appears due to the 'half-outline' behavior of')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# an absolute-container - it cannot contain outlines except for side-float and it cannot')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# be nested into any other outlines.')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n#NOTE: 'Folint' prohibits use of side-floats in static-content that is against the spec.')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('static-content')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PATTERN
PsiElement(KEYWORD_ELEMENT)('element')
PsiWhiteSpace(' ')
NAME_CLASS
NAME
PsiElement(PREFIXED_NAME)('fo:static-content')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace(' ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('static-content.attlist')
PsiElement(,)(',')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('static-content.content')
PsiWhiteSpace(' ')
PsiElement(})('}')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('static-content.content')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
GRAMMAR_PATTERN
PsiElement(KEYWORD_GRAMMAR)('grammar')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace('\n ')
START
PsiElement(KEYWORD_START)('start')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
ONE_OR_MORE
REF_PATTERN
PsiElement(IDENTIFIER)('blocks')
PsiElement(+)('+')
PsiWhiteSpace('\n ')
INCLUDE
PsiElement(KEYWORD_INCLUDE)('include')
PsiWhiteSpace(' ')
PsiElement(LITERAL)('"elements.rnc"')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace('\n ')
DEFINE
PsiElement(IDENTIFIER)('retrieve-marker')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('retrieve-marker-real')
PsiWhiteSpace('\n ')
DEFINE
PsiElement(IDENTIFIER)('absolute-container')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('absolute-container-real')
PsiWhiteSpace('\n ')
DEFINE
PsiElement(IDENTIFIER)('absolute-container.content')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PARENT_REF
PsiElement(KEYWORD_PARENT)('parent')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('absolute-container.content')
PsiWhiteSpace('\n ')
DEFINE
PsiElement(IDENTIFIER)('side-float')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('side-float-real')
PsiWhiteSpace('\n ')
DEFINE
PsiElement(IDENTIFIER)('float.content')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PARENT_REF
PsiElement(KEYWORD_PARENT)('parent')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('float.content')
PsiWhiteSpace('\n ')
DEFINE
PsiElement(IDENTIFIER)('leader.content')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PARENT_REF
PsiElement(KEYWORD_PARENT)('parent')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('leader.content')
PsiWhiteSpace('\n ')
PsiElement(})('}')
PsiWhiteSpace('\n')
PsiElement(})('}')
PsiWhiteSpace('\n\n')
DEFINE
PsiElement(IDENTIFIER)('flow')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PATTERN
PsiElement(KEYWORD_ELEMENT)('element')
PsiWhiteSpace(' ')
NAME_CLASS
NAME
PsiElement(PREFIXED_NAME)('fo:flow')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace(' ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('flow.attlist')
PsiElement(,)(',')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('flow.content')
PsiWhiteSpace(' ')
PsiElement(})('}')
PsiWhiteSpace('\n')
DEFINE
PsiElement(IDENTIFIER)('flow.content')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
GRAMMAR_PATTERN
PsiElement(KEYWORD_GRAMMAR)('grammar')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace('\n ')
START
PsiElement(KEYWORD_START)('start')
PsiWhiteSpace(' ')
PsiElement(=)('=')
SEQUENCE
ZERO_OR_MORE
REF_PATTERN
PsiElement(IDENTIFIER)('marker')
PsiElement(*)('*')
PsiElement(,)(',')
PsiWhiteSpace(' ')
ONE_OR_MORE
GROUP_PATTERN
PsiElement(()('(')
CHOICE
REF_PATTERN
PsiElement(IDENTIFIER)('blocks')
PsiWhiteSpace(' ')
PsiElement(|)('|')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('flow-section')
PsiElement())(')')
PsiElement(+)('+')
PsiWhiteSpace('\n ')
INCLUDE
PsiElement(KEYWORD_INCLUDE)('include')
PsiWhiteSpace(' ')
PsiElement(LITERAL)('"elements.rnc"')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace('\n ')
DEFINE
PsiElement(IDENTIFIER)('absolute-container')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('absolute-container-real')
PsiWhiteSpace('\n ')
PsiComment(SINGLE_LINE_COMMENT)('#MEMO: We have two options here:')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n # * use parent content model which is too strict (side-floats descendants not allowed);')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n # * use current content model which is too loose (all outline descendants are allowed).')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n # We prefer stricter mode.')
PsiWhiteSpace('\n ')
DEFINE
PsiElement(IDENTIFIER)('absolute-container.content')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PARENT_REF
PsiElement(KEYWORD_PARENT)('parent')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('absolute-container.content')
PsiWhiteSpace('\n ')
DEFINE
PsiElement(IDENTIFIER)('marker')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('marker-real')
PsiWhiteSpace('\n ')
DEFINE
PsiElement(IDENTIFIER)('marker.content')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PARENT_REF
PsiElement(KEYWORD_PARENT)('parent')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('marker.content')
PsiWhiteSpace('\n ')
DEFINE
PsiElement(IDENTIFIER)('side-float')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('side-float-real')
PsiWhiteSpace('\n ')
DEFINE
PsiElement(IDENTIFIER)('before-float')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('before-float-real')
PsiWhiteSpace('\n ')
DEFINE
PsiElement(IDENTIFIER)('float.content')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PARENT_REF
PsiElement(KEYWORD_PARENT)('parent')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('float.content')
PsiWhiteSpace('\n ')
DEFINE
PsiElement(IDENTIFIER)('footnote')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('footnote-real')
PsiWhiteSpace('\n ')
DEFINE
PsiElement(IDENTIFIER)('footnote.content')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PARENT_REF
PsiElement(KEYWORD_PARENT)('parent')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('footnote.content')
PsiWhiteSpace('\n ')
PsiComment(SINGLE_LINE_COMMENT)('#NOTE: fo:leader can't have outlines and marker descendants')
PsiWhiteSpace('\n ')
DEFINE
PsiElement(IDENTIFIER)('leader.content')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PARENT_REF
PsiElement(KEYWORD_PARENT)('parent')
PsiWhiteSpace(' ')
PsiElement(IDENTIFIER)('leader.content')
PsiWhiteSpace('\n ')
PsiElement(})('}')
PsiWhiteSpace('\n ')
PsiComment(SINGLE_LINE_COMMENT)('# Extension element. Acts like a top-level block with multiple columns.')
PsiWhiteSpace('\n ')
DEFINE
PsiElement(IDENTIFIER)('flow-section')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
PATTERN
PsiElement(KEYWORD_ELEMENT)('element')
PsiWhiteSpace(' ')
NAME_CLASS
NAME
PsiElement(PREFIXED_NAME)('rx:flow-section')
PsiWhiteSpace(' ')
PsiElement({)('{')
PsiWhiteSpace(' ')
SEQUENCE
REF_PATTERN
PsiElement(IDENTIFIER)('flow-section.attlist')
PsiElement(,)(',')
PsiWhiteSpace(' ')
REF_PATTERN
PsiElement(IDENTIFIER)('flow-section.content')
PsiWhiteSpace(' ')
PsiElement(})('}')
PsiWhiteSpace('\n ')
DEFINE
PsiElement(IDENTIFIER)('flow-section.content')
PsiWhiteSpace(' ')
PsiElement(=)('=')
PsiWhiteSpace(' ')
ONE_OR_MORE
REF_PATTERN
PsiElement(IDENTIFIER)('blocks')
PsiElement(+)('+')
PsiWhiteSpace('\n')
PsiElement(})('}')
PsiWhiteSpace(' \n\n')
PsiComment(SINGLE_LINE_COMMENT)('#MEMO: Spec prohibits use of fo:leader as a descendant of itself.')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# We find this constraint somewhat abusive so we do not enforce it.')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# 'Folint' also does not controll this constraint')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# However following trick can be used to prevent fo:leader to appear as it's own child.')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# (to make it work we have to set leader.content to be notAllowed and move')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# actual content into leader.content-real in elements.rnc)')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n#leader.content |= grammar {')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# start = leader.content-real')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# include "elements.rnc" {')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# leader = notAllowed ')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n# }')
PsiComment(SINGLE_LINE_COMMENT_CONTINUE)('\n#}')