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

Reply via email to