As far as I can tell, tag inheritance is not currently supported. Is there a way this can be achieved via Scheme functions? If not, this would be a useful feature to implement.
You are right in that tag inheritance isn't currently supported. It is on the roadmap - particularly as it isn't a complex feature to implement. I hope to include this fairly soon.
It wasn't planned - but now I've made a note of it.
What I want to do is support property drawers and have a system for user defined sort orders and groupings. This will allow Scheme functions to provide the logic for how different views sort and group items. Then it will be relatively simple for more advanced users to specify that a property, such as ORDERED, is used when constructing lists of items shown on the TODO tab.
I think it's a great idea to implement property drawers, and I'm really excited to see that in the future.
Though the list of org-mode features that could be implemented is almost endless!
Tag inheritance will be coming in 2.11.2. It can be turned off by setting org-use-tag-inheritance to false. Any Scheme filters will need to be updated to use item-all-tags - as item-tags will show you just the tags associated with the item. You'll also be able to access the inherited tags only using Scheme item-inherited-tags.