I've already started to reload the project and rewrite BlogML as the next major version, most likely the long-been-waiting-for 3.0! Let's discuss the pros and cons of what I propose here so we can agree on what we want to do.
For vNext, BlogML will represent a blog with the following structure:
- A blog with common properties: title, subtitle, datecreated, etc
- Authors
- Categories
- Tags
- Posts
As much as possible, I'll try to include extended attributes/elements so extra data can be stored with different items.
One thing that I may need to get rid of (which probably breaks our
existing schema) is the use of the Node base which doesn't fit IMO. I'd
like to have a better abstraction in there and a better naming
convention (people have been complaining about readability and design).
I am building the new version with the following main goals in mind:
- Reactivate the project.
- Upgrade the codebase to the latest technologies.
- Change the framework design to be simple and easy to use/understand.
- Use a level of abstraction on everything making it easier for extensibility and testability.
The main concern for me is the compatibility with the past but I believe
we have to eventually do this at some point and sooner is better than
later. I'd personally prefer to sacrifice compatibility for a concise and good design that we can build our future versions on.