• DoctypeDeclaration{http://etl.sf.net/etl/doctype/0.2.1}:
    • publicId: "-//IDN etl.sf.net//ETL//Grammar 0.2.1"
  • Grammar{http://etl.sf.net/etl/grammar/0.2.1}:
    • documentation:
      • DocumentationLine{http://etl.sf.net/etl/grammar/0.2.1}:
        • text: /// This is a default grammar. It is used if one of the following happened:
      • DocumentationLine{http://etl.sf.net/etl/grammar/0.2.1}:
        • text: /// <ul>
      • DocumentationLine{http://etl.sf.net/etl/grammar/0.2.1}:
        • text: /// <li>Doctype directive is missing or it has invalid syntax and default
      • DocumentationLine{http://etl.sf.net/etl/grammar/0.2.1}:
        • text: /// grammar is not specified for parser.</li>
      • DocumentationLine{http://etl.sf.net/etl/grammar/0.2.1}:
        • text: /// <li>Grammar referenced by doctype statement cannot be located.</li>
      • DocumentationLine{http://etl.sf.net/etl/grammar/0.2.1}:
        • text: /// <li>Grammar is located but failed to be parsed because of IO error
      • DocumentationLine{http://etl.sf.net/etl/grammar/0.2.1}:
        • text: /// or it is invalid (some syntax or semantic errors).</li>
      • DocumentationLine{http://etl.sf.net/etl/grammar/0.2.1}:
        • text: /// </ul>
      • DocumentationLine{http://etl.sf.net/etl/grammar/0.2.1}:
        • text: ///
      • DocumentationLine{http://etl.sf.net/etl/grammar/0.2.1}:
        • text: /// Note that this grammar is hard-coded and it is provided here just for
      • DocumentationLine{http://etl.sf.net/etl/grammar/0.2.1}:
        • text: /// informational purposes.
      • DocumentationLine{http://etl.sf.net/etl/grammar/0.2.1}:
        • text: ///
      • DocumentationLine{http://etl.sf.net/etl/grammar/0.2.1}:
        • text: /// <author>const</author>
    • name:
      • net
      • sf
      • etl
      • grammars
      • DefaultGrammar
    • content:
      • Namespace{http://etl.sf.net/etl/grammar/0.2.1}:
        • defaultModifier:
          • Modifier{http://etl.sf.net/etl/grammar/0.2.1}:
            • value: default
        • prefix: d
        • uri: "http://etl.sf.net/etl/default/0.2.1"
      • Context{http://etl.sf.net/etl/grammar/0.2.1}:
        • documentation:
          • DocumentationLine{http://etl.sf.net/etl/grammar/0.2.1}:
            • text: /// The only context in this grammar
        • defaultModifier:
          • Modifier{http://etl.sf.net/etl/grammar/0.2.1}:
            • value: default
        • name: DefaultContext
        • content:
          • DocumentationSyntax{http://etl.sf.net/etl/grammar/0.2.1}:
            • documentation:
              • DocumentationLine{http://etl.sf.net/etl/grammar/0.2.1}:
                • text: /// Documentation mapping definition.
            • name: DefaultDocumentation
            • syntax:
              • Let{http://etl.sf.net/etl/grammar/0.2.1}:
                • name: documentation
                • operator: +=
                • expression:
                  • DoclinesOp{http://etl.sf.net/etl/grammar/0.2.1}:
                    • wrapper:
                      • Wrapper{http://etl.sf.net/etl/grammar/0.2.1}:
                        • object:
                          • ObjectName{http://etl.sf.net/etl/grammar/0.2.1}:
                            • prefix: d
                            • name: DefaultDocumentationLine
                        • property: text
          • Statement{http://etl.sf.net/etl/grammar/0.2.1}:
            • documentation:
              • DocumentationLine{http://etl.sf.net/etl/grammar/0.2.1}:
                • text: /// Default statement that matches anything
            • name: DefaultStatement
            • syntax:
              • Let{http://etl.sf.net/etl/grammar/0.2.1}:
                • name: content
                • operator: +=
                • expression:
                  • ZeroOrMoreOp{http://etl.sf.net/etl/grammar/0.2.1}:
                    • syntax:
                      • Sequence{http://etl.sf.net/etl/grammar/0.2.1}:
                        • syntax:
                          • ExpressionStatement{http://etl.sf.net/etl/grammar/0.2.1}:
                            • syntax:
                              • ChoiceOp{http://etl.sf.net/etl/grammar/0.2.1}:
                                • options:
                                  • Sequence{http://etl.sf.net/etl/grammar/0.2.1}:
                                    • syntax:
                                      • ExpressionStatement{http://etl.sf.net/etl/grammar/0.2.1}:
                                        • syntax:
                                          • ObjectOp{http://etl.sf.net/etl/grammar/0.2.1}:
                                            • name:
                                              • ObjectName{http://etl.sf.net/etl/grammar/0.2.1}:
                                                • prefix: d
                                                • name: DefaultBlock
                                            • syntax:
                                              • Sequence{http://etl.sf.net/etl/grammar/0.2.1}:
                                                • syntax:
                                                  • Let{http://etl.sf.net/etl/grammar/0.2.1}:
                                                    • name: content
                                                    • operator: +=
                                                    • expression:
                                                      • BlockRef{http://etl.sf.net/etl/grammar/0.2.1}:
                                  • options:
                                    • Sequence{http://etl.sf.net/etl/grammar/0.2.1}:
                                      • syntax:
                                        • ExpressionStatement{http://etl.sf.net/etl/grammar/0.2.1}:
                                          • syntax:
                                            • ObjectOp{http://etl.sf.net/etl/grammar/0.2.1}:
                                              • name:
                                                • ObjectName{http://etl.sf.net/etl/grammar/0.2.1}:
                                                  • prefix: d
                                                  • name: DefaultTokens
                                              • syntax:
                                                • Sequence{http://etl.sf.net/etl/grammar/0.2.1}:
                                                  • syntax:
                                                    • Let{http://etl.sf.net/etl/grammar/0.2.1}:
                                                      • name: values
                                                      • operator: +=
                                                      • expression:
                                                        • OneOrMoreOp{http://etl.sf.net/etl/grammar/0.2.1}:
                                                          • syntax:
                                                            • TokenOp{http://etl.sf.net/etl/grammar/0.2.1}:
           1: // Reference ETL Parser for Java
           2: // Copyright (c) 2000-2009 Constantine A Plotnikov
           3: //
           4: // Permission is hereby granted, free of charge, to any person 
           5: // obtaining a copy of this software and associated documentation 
           6: // files (the "Software"), to deal in the Software without restriction,
           7: // including without limitation the rights to use, copy, modify, merge, 
           8: // publish, distribute, sublicense, and/or sell copies of the Software, 
           9: // and to permit persons to whom the Software is furnished to do so, 
          10: // subject to the following conditions:
          11: //
          12: // The above copyright notice and this permission notice shall be 
          13: // included in all copies or substantial portions of the Software.
          14: // 
          15: // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 
          16: // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 
          17: // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 
          18: // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
          19: // BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN 
          20: // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 
          21: // CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 
          22: // SOFTWARE. 
          23: doctype public "-//IDN etl.sf.net//ETL//Grammar 0.2.1";
          24: 
          25: /// This is a default grammar. It is used if one of the following happened:
          26: /// <ul>
          27: ///   <li>Doctype directive is missing or it has invalid syntax and default 
          28: ///       grammar is not specified for parser.</li>
          29: ///   <li>Grammar referenced by doctype statement cannot be located.</li>
          30: ///   <li>Grammar is located but failed to be parsed because of IO error 
          31: ///       or it is invalid (some syntax or semantic errors).</li>
          32: /// </ul>
          33: ///
          34: /// Note that this grammar is hard-coded and it is provided here just for 
          35: /// informational purposes.
          36: ///
          37: /// <author>const</author>
          38: grammar net.sf.etl.grammars.DefaultGrammar {
          39: 	namespace default d = "http://etl.sf.net/etl/default/0.2.1";
          40: 
          41: 	/// The only context in this grammar
          42: 	context default DefaultContext {
          43: 
          44: 		/// Documentation mapping definition. 
          45: 		documentation DefaultDocumentation {
          46: 			@ documentation += doclines wrapper d:DefaultDocumentationLine.text;
          47: 		};	
          48: 		
          49: 		/// Default statement that matches anything
          50: 		statement DefaultStatement {
          51: 			@ content += {
          52: 				{
          53: 					^ d:DefaultBlock { @ content += block; };
          54: 				} | {
          55: 					^ d:DefaultTokens { @ values += token+; };
          56: 				};
          57: 			}*;
          58: 		};
          59: 	};
          60: };