You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by pk...@apache.org on 2012/11/23 17:02:30 UTC

svn commit: r1412928 - in /uima/sandbox/trunk/TextMarker/uima-docbook-textmarker/src/docbook: ./ language/

Author: pkluegl
Date: Fri Nov 23 16:02:29 2012
New Revision: 1412928

URL: http://svn.apache.org/viewvc?rev=1412928&view=rev
Log:
UIMA-2285
- updated syntax section

Added:
    uima/sandbox/trunk/TextMarker/uima-docbook-textmarker/src/docbook/language/tools.textmarker.language.syntax.xml
Modified:
    uima/sandbox/trunk/TextMarker/uima-docbook-textmarker/src/docbook/language/tools.textmarker.language.declarations.xml
    uima/sandbox/trunk/TextMarker/uima-docbook-textmarker/src/docbook/language/tools.textmarker.language.expressions.xml
    uima/sandbox/trunk/TextMarker/uima-docbook-textmarker/src/docbook/tools.textmarker.language.xml

Modified: uima/sandbox/trunk/TextMarker/uima-docbook-textmarker/src/docbook/language/tools.textmarker.language.declarations.xml
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uima-docbook-textmarker/src/docbook/language/tools.textmarker.language.declarations.xml?rev=1412928&r1=1412927&r2=1412928&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uima-docbook-textmarker/src/docbook/language/tools.textmarker.language.declarations.xml (original)
+++ uima/sandbox/trunk/TextMarker/uima-docbook-textmarker/src/docbook/language/tools.textmarker.language.declarations.xml Fri Nov 23 16:02:29 2012
@@ -38,18 +38,6 @@
 			its features.
 			<section>
 				<title>
-					<emphasis role="bold">Definition:</emphasis>
-				</title>
-				<para>
-					<programlisting><![CDATA[typeDeclaration    -> "DECLARE" (AnnotationType)? 
-					     Identifier ("," Identifier )*
-					  | "DECLARE" AnnotationType Identifier ( "(" featureDeclaration ")" )?
-featureDeclaration -> ( (AnnotationType | "STRING" | "INT" | "DOUBLE" | 
-					  "BOOLEAN") Identifier)+]]></programlisting>
-				</para>
-			</section>
-			<section>
-				<title>
 					<emphasis role="bold">Example:</emphasis>
 				</title>
 				<para>

Modified: uima/sandbox/trunk/TextMarker/uima-docbook-textmarker/src/docbook/language/tools.textmarker.language.expressions.xml
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uima-docbook-textmarker/src/docbook/language/tools.textmarker.language.expressions.xml?rev=1412928&r1=1412927&r2=1412928&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uima-docbook-textmarker/src/docbook/language/tools.textmarker.language.expressions.xml (original)
+++ uima/sandbox/trunk/TextMarker/uima-docbook-textmarker/src/docbook/language/tools.textmarker.language.expressions.xml Fri Nov 23 16:02:29 2012
@@ -19,18 +19,20 @@
 <section id="ugr.tools.tm.language.expressions">
 	<title>Expressions</title>
 	<para>
-		TexMarker provides four different kinds of expressions. These are
+		TexMarker provides five different kinds of expressions. These are
 		type expressions, number expressions, string expressions and
-		boolean
-		expressions.
+		boolean expressions and list expressions.
 	</para>
 	<section>
 		<title>
 			<emphasis role="bold">Definition:</emphasis>
 		</title>
 		<para>
-			<programlisting><![CDATA[textmarkerExpression  ->   typeExpression | numberExpression | 
-                           stringExpression | booleanExpression]]></programlisting>
+<programlisting><![CDATA[
+TextmarkerExpression  ->   TypeExpression | NumberExpression | 
+                           StringExpression | BooleanExpression
+                           | ListExpression
+]]></programlisting>
 		</para>
 	</section>
 
@@ -56,7 +58,9 @@
 					<emphasis role="bold">Definition:</emphasis>
 				</title>
 				<para>
-					<programlisting><![CDATA[typeExpression       ->  AnnotationType | TypeVariable]]></programlisting>
+<programlisting><![CDATA[
+TypeExpression       ->  AnnotationType | TypeVariable
+]]></programlisting>
 				</para>
 			</section>
 			<section>
@@ -86,16 +90,17 @@ Document{->ASSIGN(typeVar, Author)};]]><
 					<emphasis role="bold">Definition:</emphasis>
 				</title>
 				<para>
-					<programlisting><![CDATA[numberExpression         -> additiveExpression
-additiveExpression       -> multiplicativeExpression ( ( "+" | "-" ) 
-                            multiplicativeExpression )*
-multiplicativeExpression -> simpleNumberExpression ( ( "*" | "/" | "%" ) 
-                            simpleNumberExpression )*
+					<programlisting><![CDATA[
+NumberExpression         -> AdditiveExpression
+AdditiveExpression       -> MultiplicativeExpression ( ( "+" | "-" ) 
+                            MultiplicativeExpression )*
+MultiplicativeExpression -> SimpleNumberExpression ( ( "*" | "/" | "%" ) 
+                            SimpleNumberExpression )*
                             | ( "EXP" | "LOGN" | "SIN" | "COS" | "TAN" ) 
-                            "(" numberExpression ")"
-simpleNumberExpression   -> "-"? ( DecimalLiteral | FloatingPointLiteral 
-                            | NumberVariable) | "(" numberExpression ")"
-DecimalLiteral        -> ('0' | '1'..'9' digit*) IntegerTypeSuffix?
+                            "(" NumberExpression ")"
+SimpleNumberExpression   -> "-"? ( DecimalLiteral | FloatingPointLiteral 
+                            | NumberVariable) | "(" NumberExpression ")"
+DecimalLiteral        -> ('0' | '1'..'9' Digit*) IntegerTypeSuffix?
 IntegerTypeSuffix     ->  ('l'|'L')
 FloatingPointLiteral  -> Digit+ '.' Digit* Exponent? FloatTypeSuffix?
                          |   '.' Digit+ Exponent? FloatTypeSuffix?
@@ -151,8 +156,8 @@ Document{->ASSIGN(intVar1, 12 * intVar1 
 					<emphasis role="bold">Definition:</emphasis>
 				</title>
 				<para>
-					<programlisting><![CDATA[stringExpression 	-> 	simpleStringExpression
-simpleStringExpression	->	StringLiteral | StringVariable]]></programlisting>
+					<programlisting><![CDATA[StringExpression 	-> 	SimpleStringExpression
+SimpleStringExpression	->	StringLiteral | StringVariable]]></programlisting>
 				</para>
 			</section>
 			<section>
@@ -181,17 +186,17 @@ Document{->ASSIGN(strVar, "strLiteral")}
 					<emphasis role="bold">Definition:</emphasis>
 				</title>
 				<para>
-					<programlisting><![CDATA[booleanExpression          ->  composedBooleanExpression 
-                               | simpleBooleanExpression
-composedBooleanExpression  ->  booleanCompare | booleanTypeExpression 
-                               | booleanNumberExpression | booleanFunction
-simpleBooleanExpression	   ->  BooleanLiteral | BooleanVariable
-booleanCompare           ->  simpleBooleanExpression ( "==" | "!=" ) 
-                               booleanExpression
-booleanTypeExpression    ->  typeExpression ( "==" | "!=" ) typeExpression
-booleanNumberExpression  ->  "(" numberExpression ( "<" | "<=" | ">" 
-                               | ">=" | "==" | "!=" ) numberExpression ")"
-booleanFunction	  ->	XOR "(" booleanExpression "," booleanExpression ")"
+					<programlisting><![CDATA[BooleanExpression          ->  ComposedBooleanExpression 
+                               | SimpleBooleanExpression
+ComposedBooleanExpression  ->  BooleanCompare | BooleanTypeExpression 
+                               | BooleanNumberExpression | BooleanFunction
+SimpleBooleanExpression	   ->  BooleanLiteral | BooleanVariable
+BooleanCompare           ->  SimpleBooleanExpression ( "==" | "!=" ) 
+                               BooleanExpression
+BooleanTypeExpression    ->  TypeExpression ( "==" | "!=" ) TypeExpression
+BooleanNumberExpression  ->  "(" NumberExpression ( "<" | "<=" | ">" 
+                               | ">=" | "==" | "!=" ) NumberExpression ")"
+BooleanFunction	  ->	XOR "(" BooleanExpression "," BooleanExpression ")"
 BooleanLiteral    ->  "true" | "false"]]></programlisting>
 				</para>
 				<para>
@@ -260,4 +265,38 @@ BooleanLiteral    ->  "true" | "false"]]
 			</section>
 		</para>
 	</section>
+	
+
+<section id="ugr.tools.tm.language.expressions.lists">
+		<title>List Expressions</title>
+		<para>
+			List expression are a rather simple kind of expression.
+			<section>
+				<title>
+					<emphasis role="bold">Definition:</emphasis>
+				</title>
+				<para>
+<programlisting><![CDATA[
+ListExpression  ->   WordListExpression | WordTableExpression |
+                     TypeListExpression | NumberListExpression |
+                     StringListExpression | BooleanListExpression
+WordListExpression     ->  RessourceLiteral | WordListVariable
+WordTableExpression    ->  RessourceLiteral | WordTableVariable
+TypeListExpression     ->  TypeListVariable
+NumberListExpression   ->  IntListVariable | FloatListVariable 
+                           | DoubleListVariable
+StringListExpression   ->  StringListVariable
+BooleanListExpression  ->  BooleanListVariable
+]]></programlisting>
+		A ResourceLiteral is something
+		like 'folder/file.txt' (Attention: Use single quotes).
+				</para>
+				<para>
+					List variables are defined in
+					<xref linkend='ugr.tools.tm.language.declarations.variable' />
+					.
+				</para>
+			</section>
+		</para>
+	</section>
 </section>
\ No newline at end of file

Added: uima/sandbox/trunk/TextMarker/uima-docbook-textmarker/src/docbook/language/tools.textmarker.language.syntax.xml
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uima-docbook-textmarker/src/docbook/language/tools.textmarker.language.syntax.xml?rev=1412928&view=auto
==============================================================================
--- uima/sandbox/trunk/TextMarker/uima-docbook-textmarker/src/docbook/language/tools.textmarker.language.syntax.xml (added)
+++ uima/sandbox/trunk/TextMarker/uima-docbook-textmarker/src/docbook/language/tools.textmarker.language.syntax.xml Fri Nov 23 16:02:29 2012
@@ -0,0 +1,129 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
+"http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd"[
+<!ENTITY imgroot "images/tools/tools.textmarker/" >
+<!ENTITY % uimaents SYSTEM "../../target/docbook-shared/entities.ent" >  
+%uimaents;
+]>
+<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor 
+	license agreements. See the NOTICE file distributed with this work for additional 
+	information regarding copyright ownership. The ASF licenses this file to 
+	you under the Apache License, Version 2.0 (the "License"); you may not use 
+	this file except in compliance with the License. You may obtain a copy of 
+	the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required 
+	by applicable law or agreed to in writing, software distributed under the 
+	License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS 
+	OF ANY KIND, either express or implied. See the License for the specific 
+	language governing permissions and limitations under the License. -->
+
+<section id="ugr.tools.tm.language.syntax">
+	<title>Syntax</title>
+	<para>
+		TextMarker defines its own language for writing rules and rule
+		scripts. This section gives a formal overview of its syntax.
+	</para>
+	<para>
+		Structure: The overall structure of a TextMarker
+		script is defined by
+		the following syntax.
+		<programlisting><![CDATA[
+Script              -> PackageDeclaration GlobalStatements Statements
+PackageDeclaration  -> "PACKAGE" DottedIdentifier ";"
+GlobalStatments     -> GlobalStatement*   
+GlobalStatment      -> ("TYPESYSTEM" | "SCRIPT" | "ENGINE") 
+                       DottedIdentifier2 ";"
+Statements          -> Statement*
+Statement           -> Declaration | VariableDeclaration | BlockDeclaration
+                       | AutomataDeclaration | SimpleStatement ";"
+]]></programlisting>
+		Comments are excluded from the syntax definition. Comments start with
+		"//" and always go to the end of the line.
+	</para>
+	<para>
+		Example beginning of a TextMarker file:
+		<programlisting><![CDATA[
+PACKAGE de.uniwue.example;
+
+// import the types of this type system 
+// (located in the descriptor folder -> de.uniwue.example folder)
+TYPESYSTEM types.BibtexTypeSystem;
+
+SCRIPT de.uniwue.example.Author;
+SCRIPT de.uniwue.example.Title;
+SCRIPT de.uniwue.example.Year;
+]]></programlisting>
+
+		Syntax of declarations:
+		<programlisting><![CDATA[
+Declaration  ->  "DECLARE" (AnnotationType)? Identifier ("," Identifier )*
+                 | "DECLARE" AnnotationType Identifier ( "(" 
+                 FeatureDeclaration ")" )?
+FeatureDeclaration  -> ( (AnnotationType | "STRING" | "INT" | "FLOAT"
+                       "DOUBLE" | "BOOLEAN") Identifier) )+
+VariableDeclaration -> (("TYPE" Identifier ("," Identifier)* 
+                                                     ("=" AnnotationType)?) 
+                       | ("STRING" Identifier ("," Identifier)* 
+                                                   ("=" StringExpression)?) 
+                       | (("INT" | "DOUBLE" | "FLOAT") Identifier 
+                                 ("," Identifier)* ("=" NumberExpression)?) 
+                       | ("BOOLEAN" Identifier ("," Identifier)* 
+                                                  ("=" BooleanExpression)?)
+                       | ("WORDLIST" Identifier ("=" WordListExpression)?) 
+                       | ("WORDTABLE" Identifier ("=" WordTableExpression)?)
+                       | ("TYPELIST" Identifier ("=" TypeListExpression)?) 
+                       | ("STRINGLIST" Identifier 
+                                               ("=" StringListExpression)?) 
+                       | (("INTLIST" | "DOUBLELIST" | "FLOATLIST") 
+                                    Identifier ("=" NumberListExpression)?) 
+                       | ("BOOLEANLIST" Identifier 
+                                             ("=" BooleanListExpression)?))
+AnnotationType      ->  BasicAnnotationType | declaredAnnotationType
+BasicAnnotationType ->  ('COLON'| 'SW' | 'MARKUP' | 'PERIOD' | 'CW'| 'NUM' 
+                        | 'QUESTION' | 'SPECIAL' | 'CAP' | 'COMMA' 
+                        | 'EXCLAMATION' | 'SEMICOLON' | 'NBSP'| 'AMP' | '_' 
+                        | 'SENTENCEEND' | 'W' | 'PM' | 'ANY' | 'ALL' 
+                        | 'SPACE' | 'BREAK') 
+BlockDeclaration       -> "BLOCK" "(" Identifier ")" RuleElementType 
+                                                         "{" Statements "}"
+AutomataDeclaration    -> "RULES" "(" Identifier ")" RuleElementType 
+                                                         "{" Statements "}"
+]]></programlisting>
+
+		Syntax of statements and rule elements
+		<programlisting><![CDATA[
+SimpleStatement        -> RuleElements ";"
+RuleElements           -> RuleElement+
+RuleElement            -> RuleElementType | RuleElementLiteral 
+                          | RuleElementComposed | RuleElementDisjunctive
+RuleElementType        ->  TypeExpression QuantifierPart? 
+                                              "{" Conditions?  Actions? "}"
+RuleElementLiteral     ->  SimpleStringExpression QuantifierPart? 
+                                              "{" Conditions?  Actions? "}"
+RuleElementComposed    -> "(" RuleElements ")" QuantifierPart? 
+                                              "{" Conditions?  Actions? "}"
+RuleElementDisjunctive -> "(" (TypeExpression | SimpleStringExpression) 
+                          ("|" (TypeExpression | SimpleStringExpression) )+ 
+                           ")" QuantifierPart? "{" Conditions?  Actions? }"
+QuantifierPart         -> "*" | "*?" | "+" | "+?" | "?" | "??" 
+                          | "[" NumberExpression "," NumberExpression "]"
+                          | "[" NumberExpression "," NumberExpression "]?"       
+Conditions             -> Condition ( "," Condition )*
+Actions                -> "->" Action ( "," Action)*
+]]></programlisting>
+		Since each condition and each action has its own syntax, conditions
+		and actions are described in their own section. (For conditions see
+		<xref linkend='ugr.tools.tm.language.conditions' />
+		, for actions see
+		<xref linkend='ugr.tools.tm.language.actions' />
+		The syntax of expressions is explained in
+		<xref linkend='ugr.tools.tm.language.expressions' />
+	</para>
+	<para>
+		Identifier
+		<programlisting><![CDATA[
+DottedIdentifier    ->  Identifier ("." Identifier)*
+DottedIdentifier2   ->  Identifier (("."|"-") Identifier)*
+Identifier          ->  letter (letter|digit)*
+]]></programlisting>
+	</para>
+</section>
\ No newline at end of file

Modified: uima/sandbox/trunk/TextMarker/uima-docbook-textmarker/src/docbook/tools.textmarker.language.xml
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uima-docbook-textmarker/src/docbook/tools.textmarker.language.xml?rev=1412928&r1=1412927&r2=1412928&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uima-docbook-textmarker/src/docbook/tools.textmarker.language.xml (original)
+++ uima/sandbox/trunk/TextMarker/uima-docbook-textmarker/src/docbook/tools.textmarker.language.xml Fri Nov 23 16:02:29 2012
@@ -5,114 +5,29 @@
 <!ENTITY % uimaents SYSTEM "../../target/docbook-shared/entities.ent" >  
 %uimaents;
 ]>
-<!--
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements.  See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership.  The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License.  You may obtain a copy of the License at
-
-   http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied.  See the License for the
-specific language governing permissions and limitations
-under the License.
--->
+<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor 
+	license agreements. See the NOTICE file distributed with this work for additional 
+	information regarding copyright ownership. The ASF licenses this file to 
+	you under the Apache License, Version 2.0 (the "License"); you may not use 
+	this file except in compliance with the License. You may obtain a copy of 
+	the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required 
+	by applicable law or agreed to in writing, software distributed under the 
+	License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS 
+	OF ANY KIND, either express or implied. See the License for the specific 
+	language governing permissions and limitations under the License. -->
 
 <chapter id="ugr.tools.tm.language.language">
 	<title>TextMarker Language</title>
 	<para>
-
+		This chapter provides a complete description of the TextMarker
+		language.
 	</para>
 
-	<section id="ugr.tools.tm.language.seeding">
-		<title>Basic Annotations and tokens</title>
-		<para>
-			The TextMarker system uses a JFlex lexer to initially create a
-			seed of
-			basic, token annotations.
-		</para>
-	</section>
-	<section id="ugr.tools.tm.language.syntax">
-		<title>Syntax</title>
-		<para>
-			Structure
-			<programlisting><![CDATA[
-            script                 -> packageDeclaration globalStatements statements
-            packageDeclaration     -> "PACKAGE" DottedIdentifier ";"
-            globalStatments        -> globalStatment*   
-            globalStatment         -> ("TYPESYSTEM" | "SCRIPT" | "ENGINE") DottedIdentifier ";"
-            statements             -> statement*
-            statement              -> typeDeclaration | resourceDeclaration | variableDeclaration 
-                                      | blockDeclaration | simpleStatement
-            ]]></programlisting>
-
-			Declarations
-			<programlisting><![CDATA[
-				typeDeclaration -> "DECLARE" (AnnotationType)? Identifier ("," Identifier )*
-				| "DECLARE" AnnotationType Identifier ( "(" featureDeclaration ")" )?
-				featureDeclaration -> ( (AnnotationType | "STRING" | "INT" |
-				"DOUBLE" | "BOOLEAN") Identifier)+
-				resourceDeclaration -> ("WORDLIST" Identifier = listExpression | "WORDTABLE" Identifier
-				= tableExpression) ";"
-				variableDeclaration -> ("TYPE" | "STRING" | "INT" | "DOUBLE" | "BOOLEAN") Identifier
-				";"
-				]]>
-			</programlisting>
-			More information about Declarations.
-
-			Statements
-			<programlisting><![CDATA[
-            blockDeclaration       -> "BLOCK" "(" Identifier ")" ruleElementWithType "{" statements "}"
-            simpleStatement        -> ruleElements ";"
-            ruleElements           -> ( ruleElementWithLiteral  | ruleElementWithType )+
-            ruleElementWithLiteral -> simpleStringExpression quantifierPart? conditionActionPart?
-            ruleElementWithType    -> typeExpression quantifierPart? conditionActionPart?
-            quantifierPart         -> "*" | "*?" | "+" | "+?" | "?" | "??" 
-                                      | "[" numberExpression "," numberExpression "]"
-                                      | "[" numberExpression "," numberExpression "]?"
-                                      
-            conditionActionPart    -> "{" (condition ( "," condition )*)? ( "->" (action( "," action)*))? "}"        
-            condition              -> ConditionName ("(" argument ("," argument)* ")")?
-            action                 -> ActionName ("(" argument ("," argument)* ")")?
-            ]]></programlisting>
-			More information about Quantifiers,
-			Conditions, Actions and Blocks.
-			The ruleElementWithType of a BLOCK declaration must have opening
-			and
-			closing curly brackets (e.g., BLOCK(name) Document{} {...})
+	<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
+		href=".\language\tools.textmarker.language.syntax.xml" />
 
-			Expressions
-			<programlisting><![CDATA[
-            argument                   -> typeExpression | numberExpression | stringExpression | booleanExpression
-            typeExpression             -> AnnotationType | TypeVariable
-            numberExpression           -> additiveExpression
-            additiveExpression         -> multiplicativeExpression
-            multiplicativeExpression   -> simpleNumberExpression ( ( "*" | "/" | "%" ) simpleNumberExpression )*
-                                          | ( "EXP" | "LOGN" | "SIN" | "COS" | "TAN" ) numberExpressionInPar
-            numberExpressionInPar      -> "(" additiveExpression ")"
-            simpleNumberExpression     -> "-"? ( DecimalLiteral | FloatingPointLiteral | NumberVariable)
-                                          | numberExpressionInPar      
-            stringExpression           -> simpleStringExpression ( "+" simpleSEOrNE )*                   
-            simpleStringExpression     -> StringLiteral | StringVariable
-            simpleSEOrNE               -> simpleStringExpression | numberExpressionInPar
-            booleanExpression          -> booleanNumberExpression | BooleanVariable | BooleanLiteral
-            booleanNumberExpression    -> "(" numberExpression ( "<" | "<=" | ">" | ">=" | "==" | "!=" ) numberExpression ")"
-            listExpression             -> Identifier | ResourceLiteral
-            tableExpression            -> Identifier | ResourceLiteral
-            ]]></programlisting>
-			More information about Expressions. A ResourceLiteral
-			is something
-			like 'folder/file.txt' (yes, with single quotes).
-		</para>
-	</section>
 	<section id="ugr.tools.tm.language.inference">
-		<title>Syntax</title>
+		<title>Inference</title>
 		<para>
 			The inference relies on a complete, disjunctive partition of the
 			document. A basic (minimal) annotation for each element of the
@@ -159,16 +74,106 @@ collect all basic annotations that fulfi
 	</section>
 
 
+	<section id="ugr.tools.tm.language.seeding">
+		<title>Basic annotations and tokens</title>
+		<para>
+			The TextMarker system uses a JFlex lexer to initially create a
+			seed of
+			basic token annotations. These tokens build a hierarchy
+			which is shown
+			in
+			<xref linkend='figure.ugr.tools.tm.language.seeding.basic_token' />
+			.
+		</para>
+		<para>
+			<figure id="figure.ugr.tools.tm.language.seeding.basic_token">
+				<title>Basic token hierarchy
+				</title>
+				<mediaobject>
+					<imageobject role="html">
+						<imagedata width="576px" format="PNG" align="center"
+							fileref="&imgroot;overview/screenshot_tm_perspective_.png" />
+					</imageobject>
+					<imageobject role="fo">
+						<imagedata width="5.5in" format="PNG" align="center"
+							fileref="&imgroot;overview/screenshot_tm_perspective_.png" />
+					</imageobject>
+					<textobject>
+						<phrase>
+							Basic token hierarchy.
+						</phrase>
+					</textobject>
+				</mediaobject>
+			</figure>
+		</para>
+		<para>
+			<table id="table.ugr.tools.tm.language.seeding.basic_token.abstract"
+				frame="all">
+				<title>Abstract annotations</title>
+				<tgroup cols="5" colsep="1" rowsep="1">
+					<colspec colname="c1" colwidth="1*" />
+					<colspec colname="c2" colwidth="1*" />
+					<colspec colname="c3" colwidth="1*" />
+					<thead>
+						<row>
+							<entry align="center">Token</entry>
+							<entry align="center">Parent</entry>
+							<entry align="center">Description</entry>
+						</row>
+					</thead>
+					<tbody>
+						<row>
+							<entry></entry>
+							<entry></entry>
+							<entry></entry>
+						</row>
+					</tbody>
+				</tgroup>
+			</table>
+		</para>
+		<para>
+			<table id="table.ugr.tools.tm.language.seeding.basic_token.created"
+				frame="all">
+				<title>Annotations created by lexer</title>
+				<tgroup cols="5" colsep="1" rowsep="1">
+					<colspec colname="c1" colwidth="1*" />
+					<colspec colname="c2" colwidth="1*" />
+					<colspec colname="c3" colwidth="1*" />
+					<colspec colname="c4" colwidth="1*" />
+					<colspec colname="c5" colwidth="1*" />
+					<thead>
+						<row>
+							<entry align="center">Token</entry>
+							<entry align="center">Parent</entry>
+							<entry align="center">Description</entry>
+							<entry align="center">JFlex expression</entry>
+							<entry align="center">Example</entry>
+						</row>
+					</thead>
+					<tbody>
+						<row>
+							<entry></entry>
+							<entry></entry>
+							<entry></entry>
+							<entry></entry>
+							<entry></entry>
+						</row>
+					</tbody>
+				</tgroup>
+			</table>
+		</para>
+	</section>
+
 	<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
 		href=".\language\tools.textmarker.language.quantifier.xml" />
 	<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
 		href=".\language\tools.textmarker.language.declarations.xml" />
 	<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
+		href=".\language\tools.textmarker.language.expressions.xml" />
+	<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
 		href=".\language\tools.textmarker.language.conditions.xml" />
 	<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
 		href=".\language\tools.textmarker.language.actions.xml" />
-	<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
-		href=".\language\tools.textmarker.language.expressions.xml" />
 
 
 	<section id="ugr.tools.tm.language.filtering">