diff Lib/IMPL/Text/Schema.pm @ 26:c529d386d80e

Text services in progress
author Sergey
date Thu, 15 Oct 2009 17:52:09 +0400
parents 9dd67fa91ee3
children 16ada169ca75
line wrap: on
line diff
--- a/Lib/IMPL/Text/Schema.pm	Tue Oct 13 17:51:25 2009 +0400
+++ b/Lib/IMPL/Text/Schema.pm	Thu Oct 15 17:52:09 2009 +0400
@@ -25,11 +25,36 @@
             <SwitchNode minOccur="1" maxOccur="unbounded">
                 <Node name="Word" type="Word"/>
                 <Node name="Statement" type="Word"/>
+                <Node name="Regexp" type="Regexp"/>
                 <Node name="Switch" type="Switch"/>
-                <Node name="List" type="List"/>
+                <Node name="Repeat" type="List"/>
             </SwitchNode>
         </NodeList>
     </ComplexType>
+    <SimpleType type="Word" nativeType="IMPL::Text::Schema::Word"/>
+    <SimpleType type="Regexp" nativeType="IMPL::Text::Schema::Regexp"/>
+    <ComplexType type="Switch" nativeType="IMPL::Text::Schema::Switch">
+        <NodeList>
+            <SwitchNode minOccur="1" maxOccur="unbounded">
+                <Node name="Word" type="Word"/>
+                <Node name="Statement" type="Word"/>
+                <Node name="Regexp" type="Regexp"/>
+                <Node name="Switch" type="Switch"/>
+                <Node name="Repeat" type="List"/>
+            </SwitchNode>
+        </NodeList>
+    </ComplexType>
+    <ComplexType type="Repeat" nativeType="IMPL::Text::Schema::Repeat">
+        <NodeList>
+            <SwitchNode minOccur="1" maxOccur="unbounded">
+                <Node name="Word" type="Word"/>
+                <Node name="Statement" type="Word"/>
+                <Node name="Regexp" type="Regexp"/>
+                <Node name="Switch" type="Switch"/>
+                <Node name="Repeat" type="List"/>
+            </SwitchNode>
+        </NodeList>
+    </CoomplexType>
 </schema>
 
 =head1 DESCRIPTION
@@ -44,7 +69,7 @@
 
 Допускаются следующие операторы
 1. Повтор
-2. 
+2. Ветвление
 
 =head1 METHODS
 
@@ -56,5 +81,7 @@
 
 =back
 
+=head1 INTERNALS
+
 
 =cut