Content Modelling


Organizing content in a meaningful way is nothing new. We have been doing it for centuries in our libraries—the Dewey decimal system being a perfect example. So, why can't we take known approaches and apply them to the Web? The main reason is that a web page has more than two dimensions. A page on a book might have footnotes or refer to other pages, but the content only appears in one place. On a web page, content can directly link to other content and even show a summary of it. It goes way beyond just the content that appears on the page—links, related content, reviews, ratings, etc. All of this brings extra dimensions to the core content of the page and how it is displayed. This is why it's so important to ensure your content model is sound. However, there is no such thing as the "right" content model. Each content model can only be judged on how well it achieves the goals of the website now and in the future.

The goal of a content model is to capture a high-level view of the system to be created. Getting this right allows you to then go into more depth into each of the classes. It's similar in nature to a class diagram, which captures the names, attributes, and methods for all classes and the relationships between them. Everything then flows from the model: the content classes to be created, the permissions that need to be established, and the views of each content class. It's the foundation of the functional specification. Getting the model right is fundamental; if the model doesn't accurately reflect the business domain, then chances are, when the system has been built, there will be problems that will be difficult and expense to fix.