Org manual says special properties "should not be used as keys in the properties drawer". However i want to use org-mode on a more high level and i want to put all special properties in the :PROPERTIES: drawer.
This can be used for many reasons, for example, i can write an external parser, that can understand org-mode files, that consist of only entries with properties, without needing to know about TODO, tags, priorities and their syntax in the headline. This should change the behavior of all org-mode commands, that usually obey the ad hoc org-mode syntax. For example, org-todo would change a TODO property in the drawer, instead of changing the headline, and so on.
In other words, I want to generalize org-mode syntax a bit. How can i do that in theory and practice? What should i need to know and do?