<?SBNF-www.vishia.de version="1.0" encoding="iso-8859-1" ?>
$xmlns:gen="http://www.vishia.de/2006/DocuGenCtrl".
$xmlns:xhtml="http://www.w3.org/1999/xhtml".
GenCtrl::=<?GenCtrl>
[\<\?DocuGenCtrl-www\.vishia\.de {version=<""?@version-GenDocuCtr>|encoding=<""?@encoding>} \?\>]
genCtrl: <*\ ;?@file> ;
[ importXsl ( {<import> ? , } ) ; ]
[{ prepXml: <prepXml> }]
{ <document> }
[ HyperlinkAssociation <HyperlinkAssociations> ]
\e.
import::=[<*:\ \r\n,)?@dir>:]<*|.xsl|.xslp?@href>[<?@type>\.xslp|\.xsl].
prepXml::=
[ \{ { <*\ \r\n-,?!prepInputfile> ? ,} \} ##more as one inputfile in {input, input, ...}
| <*\ \r\n-?!prepInputfile> ##NOTE: - as terminate char is the first of followed "-> symbol"
]
-\> <$?@translator> [-\> <*;\ \r\n-?@outputfile>] ; .
prepInputfile::=<prepInputFilePath?input>.
prepInputFilePath::=[<+<</:\\?@path>]<*?@file>.
document::=Document <""?@title> ident = <$?@ident> ##the ident is the identification of the document for generating
process.
\{
[{ input: <input> ; ##The input files for generating the XhtmlPre, possible
preprocessed, see <prepXml>
| inputCrossRef: <input?inputCrossRef> ;
| inset: <inset> ; ##association between inset proxy label and associated topic
}]
[xslCrossRef: <import?xslCrossRef> ; ]
{ chapter <chapter> ##at least one, or more toplevel chapters
| topic( <topic> );
}
\}
.
input::=<*;\ \r\n-?@inputfile> [ -\> <$?@translator> [ -\> <*;\ \r\n-?@outputfile>]].
##association between inset label and a topic. Just now only topic association is supported.
##in the future more as that is able, hence the <topic> is produced.
inset::=<*\ =?@label> = [<?topic> topic ( <*)\ ?@select> )| none].
chapter::= <""?title> [({ id=<*,) ?@id> ?, })] ##the id produce a hyperlink anchor in the output document for this
chapter.
\{ [<content?>]
[{ chapter <chapter> }]
\}.
content::=
{ p <""?p>
| inset <inset>
| topic( <topic> );
|<?file> file( <""?@path> [, <""?@from> \.\. [<""?@to> ]]); ##input from a file, it is able to select a part from ..
to specified text, exclusive this labels.
| picture( <picture> );
| umlPkg ( <umlPkg> );
| umlClass ( <umlClass> );
| umlIfc ( <umlIfc> );
| umlComment ( <umlComment> );
| umlSQD ( <umlSQD> );
| umlStateD ( <umlStateD> );
| umlStateReport ( <umlStateReport> );
| CLASS_C(<*)?CLASS_C/@select>);
| dataStruct ( <umlClass> );
| headerCClass(<*)?CLASS_C/@select>);
| DEFINE_C(<*)?DEFINE_C/@select>);
| crossRef( <crossRef> );
| call <call> ;
}
.
call::=<$?@name> ( <*,)\ ?@select> ).
topic::=<*,)\ ?@select>
[,{
divStyle=[<$?@divStyle>|<""?@divStyle>]
| pStyle=[<$?@pStyle>|<""?@pStyle>]
| ulStyle=[<$?@ulStyle>|<""?@ulStyle>]
| olStyle=[<$?@olStyle>|<""?@olStyle>]
| dlStyle=[<$?@dlStyle>|<""?@dlStyle>]
| tableStyle=[<$?@tableStyle>|<""?@tableStyle>]
| style:<styleTransform>
? , }].
picture::=<""?@title> [: <""?@file>]
[ , {
imgMap=[<$?@imgMap>|<""?@imgMap>]
? , }].
styleTransform::=[<$?@srcStyle>|<""?@srcStyle>]-\>[<$?@dstStyle>|<""?@dstStyle>].
umlClass::=<*,)\ ?@select>
[,{
title=<""?@title> ##if a title is given, the umlClass will be placed in an own chapter with this title.
| methods=[<?@methods>all|public-only|withDescription-only|no|body]
| attributes=[<?@attributes>all|public-only|withDescription-only|bytes|no]
| associations=[<?@associations>all|public-only|withDescription-only|no]
| header<?@header>
? , }].
umlIfc::=<*,)\ ?@select> [, title=<""?@title> ].
umlPkg::=<*,)\ ?@select>.
umlComment::=<*,)\ ?@select>.
umlSQD::=<*,)\ ?@select>
.
umlStateD::=<*,)\ ?@select>
.
umlStateReport::=<*,)\ ?@select>
.
crossRef::=<*,)\ ?@content>.
HyperlinkAssociations::= \{ {<?Association/> <*\ =?@href> = <""?@dst> [: <$?@content>] ; } \}.