I have watched the video of the talk, and aiatools is amazing, congrats!
While watching it, two questions/suggestions/comments came to my mind:
Around minute 20 IIRC, you said that with aiatools you can make “queries”. And the examples you showed later were impressive, it is a really powerful tool.
However, I think an option to export that data could be pretty useful. For example, if it were possible to export all the data into SQL tables, a full database could be created, and SQL queries can be made into such data (I am thinking about a hypothetical web version of the tool). Or even export that data as a CSV file.
A kinda cool usage of that tool is the possibility of generating documentation for App Inventor projects. Currently, you are parsing the main attributes of the blocks, but I could not see anything related to blocks comments:
Maybe, in the future, the tool could also parse those comments. And, with some other modifications in the Python code, it could create something like a ReadTheDocs formatted documentation generated from the parsed AIA file.
I see this could be useful for higher education, where papers related to App inventor appear. Researchers could comment blocks (like we currently comment code), and then a documentation site gets generated and could be linked in the paper.
I'm not convinced that SQL would be the right tool for the job here. It works well for relations between entities, but doesn't do all that great when entities mainly refer to items of the same type, which both blocks and components do through their parent/child/sibling relations. If you're just storing summary stats, that'd be fine. For web projects, dumping the data to JSON so that it can be easily manipulated in the browser is another option. For server-side storage you could use a nosql approach like Mongo.
The Block type does have a comment field. I don't have an attribute defined to access it though. You can declare one as follows:
from aiatools import NamedAttribute
comment = NamedAttribute('comment')
and then use comment like any of the other examples in the slides or live demo. I can plan to put that into the next release.