What a great email - I really need to make an article on expressing GeoSpatial stuff in computer science terms .... fun!
Victor Mauricio Pazos wrote: > Hi, Gabriel talked me that is possible restructure the toolkit in near > feature, I have some suggestion for CQL parser. > > 1)Name change: Parser is only a component of Compiler ( lex, parser, > optimization, code generation) We need produce an object and parsing process > is only part of process, perhaps is better change the module name from CQL > Parser to CQL Compiler. > The full game is: (characters)->Lexer -> (tokens)-> Parser -> (Abstract Symbol Tree) -> Compiler We are interested in the Abstract Symbol Tree result; that is the Filter constructs form a tree. So Parser is good. > 2)Move CQL from Filter: now we have one implementation with semantic actions > to generate a Filter. But, this module can be composite changing the last > step (code generation) to produce others product like SQL, HQL, XML, etc. > That is what we have done throughout the library: - (Abstract Symbol Tree) -> Compiler -> Result - Filter --> SQLEncoder -> SQL And because this is the real world we have a different SQLEncoder for each Database. We also "run" the Filters directly - they are their own result that can be used to work on real in memory Features, Pojos, Metadata. > Then Filter product is only an accident and the criteria to maintain cql in > filter package should be revised. In filter we have a hierarchy of filters an > its components, We can ask: "is CQL a filter or component of filter?". I > think, No. The Filter product is a specific product (a standard); I suspect if we were using Antlr that a Filter implementation could of been constructed directly as part of the Parser step... at the very least a AST wrapper could be used. Also note that the Filter product is not open ended (we cannot add more nodes and abilities to this syntax); there are two "open doors" - one to add functions; and another to add Identifiers. > I expect to have done a bit contribution to design debate. > Regard > Thanks for your comments! I would love to have your impressions on SQLBuilder; currently they seem hard to maintain. Perhaps with your insights into them playing the roll of compiler you could suggest a way to make them easier to produce and maintain. Jody > > > On Thursday 23 November 2006 22:12, Gabriel Roldán wrote: > >> On Thursday 23 November 2006 19:21, Jody Garnett wrote: >> >>> Thanks for making the page; your "gold start/redstar" thing is *great* >>> at summing up the state of the module - way better then >>> I expected :-) Thank you ... >>> >> cool, getting 2 or three more stars is a matter of a couple days. >> >> Last thing to debate is if it should remain as a module or be merged on >> trunk, may be a topic for mondays IRC meeting? >> >> It's small, but I guess size is not a parameter to measure wether a bunch >> of code deserves its own module or not, but functional cohesion and such >> design criteria. >> >> So waiting for advice from PMC guys. >> >> Regards, >> >> Gabriel >> >> >>> I will look at the module this week as I work on Pojo Expressions. >>> Jody >>> >>> >>>> Hi, this mail is for Gabriel Roldan, I have a look to CQL parser >>>> documentation >>>> >>>> http://docs.codehaus.org/display/GEOTOOLS/CQL+Parser >>>> >>>> Perhaps, this page is old because the new parser interface is >>>> FilterBuilder no FilterExpression, additionally is important talk >>>> about the extensions that Axios did in the OGC-CQL (BBox, Between, etc) >>>> I suggest you to take that details from axios internal documentation >>>> UML and BNF (we correct some errors in original documentation). We >>>> know that this module require more refactory and that documentation can >>>> do the work easier. >>>> >>>> A question, where is the cql javadoc in geotools site? >>>> >>>> (The reason why I write this mail is than probably, I will forget to >>>> talk you about this issues :-P ) >>>> >>>> cheers! >>>> >>> ------------------------------------------------------------------------- >>> Take Surveys. Earn Cash. Influence the Future of IT >>> Join SourceForge.net's Techsay panel and you'll get the chance to share >>> your opinions on IT & business topics through brief surveys - and earn >>> cash >>> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV >>> _______________________________________________ >>> Geotools-devel mailing list >>> Geotools-devel@lists.sourceforge.net >>> https://lists.sourceforge.net/lists/listinfo/geotools-devel >>> > > ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ Geotools-devel mailing list Geotools-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/geotools-devel