Learn the essentials in 5 minutes

So you are pressed for time and don’t have the luxury to spend days on a content model. This article is for you and anyone else starting out. To reiterate, we recommend creating a model which supports highly structured content, with useful metadata, complemented with semantic relationships

With extendability in mind

It’s impossible to create a perfect content model on the first try, but you can get pretty close by following a few basic approaches. Getting a good content model is a process of refining of what you came up with in the beginning. That means the model you create on your first try should at least be extendable in a way where things don’t break. 

  • Every content model should be extendable
Content models need to be extendable to adapt for future applications
Content models need to be extendable to adapt for future applications

Chunk it

To make your model extendable is to make it future proof. There are a few techniques on how to achieve it. The first technique is to sufficiently chunk your content. What’s the smallest reusable piece? It’s probably not a word or unimportant sentence, but things like reused disclaimers, quotes, or images with metadata are often good starting points. Even if you miss it and embed it into a longer text, it’s fine if there is a universal content chunk type that can be used later to help you move your embedded information into a reusable content item.

  • Chunking content sufficiently supports your modelsʼ flexibility.
Breaking down content into chunks
Breaking down content into chunks

More chunk types

Chunks themselves should be extendable. Every time you add an element to a content type, ask yourself if it’s related to others and if it makes sense to create a chunk or a separate content type out of those. Using separate content types for different content chunks allows you to have uniformity in content structures and makes adding a new element across the whole content model to a particular chunk easy. 

  • Different chunk types should be implemented as stand-alone content types to support uniformity and extendability. 

Don't forget usability 

With all the structuring, linking, and chunking, it’s really easy to go overboard. Try to always remember that the content model needs to be usable. Once in a while, try creating a few items to see how complex the assembly model is. Try not to have more than 2-3 levels of hierarchies so editors don’t lose the context of their work. 

  • Keep an eye on the depth of the hierarchies you create. It’s better to have relatively flat, 2-3 level hierarchies.

Take a look at the the content modeling from another perspective - How to Think About Content Modeling from a UX point

M:N relationships are your friend

The flat hierarchies you create have an additional benefit. That is you can always add one on top if necessary without making the model too complex. That is very handy for our next tip, utilizing M:N relationships. M:N relationships can be added at any stage. They can be used to create implicit links between content items, such as grouping items on a particular topic together into a curated list. The downside is that editors will probably need a bit more training to wrap their heads around how to work with the model. 

  • Use M:N relationships for curated content and for creating links between content items which weren’t linked together initially.

Get every role involved

While we are talking about editors, get their insights. Get as many stakeholders together as possible to discuss what’s important and explain why picking the text color is detrimental to an omnichannel content delivery strategy. With a change in mindset, the content model requirements might get significantly simplified. 

Form comes last

Touching further on form. Try not to think about the front end yet. If the content is sufficiently chunked and structured, it doesn’t really matter what kind of front end you’ll have. These chunks can be easily repurposed and linked together via the above-mentioned M:N relationships. This way, it’s really easy to link a few chunks together into a representation of a page or screen. All you do is introduce a linking content type and reuse existing content.

  • The model should not be designed based on the form you’d like it to take on your front ends. Supplementary content types representing screens or pages can be added at any point by linking existing chunks via M:N relationships.

Semantic relationships come first

Instead of focusing on the final form, focus on semantic relationships within the content. These can be implicit in the form of linking elements or curated M:N relationships or in the form of invisible relationships usually achieved via useful metadata. This metadata can be taxonomies, user journey phases, personas, topics, or anything else. A well thought-out content strategy plan will help identify the ones relevant for your project. 

  • Focus on modeling relationships in your content, be it implicit ones or invisible ones. The latter ones are often more powerful to drive personalization or data for other AI-related applications. 
Semantic relationships between chunks
Semantic relationships between chunks

Sanity check

You’ve got your highly structured content types modeled, complemented with meaningful metadata, and linked with semantic relationships. Creating a content model might be really nerve-wracking, so for a sanity check, we recommend having a look at schema.org to make sure nothing important was missed in our content types. 

  • Do a schema.org sanity check to see if nothing important was missed. 
Key Points

To summarize:

  • Future-proofing means making the model extendable by breaking down types into reusable chunks of different types, utilizing M:N relationships, and creating a flat relationship hierarchy
  • Get buy-in across teams by involving a representative of each role into the content modeling process. 
  • Building the content model on top of semantic relationships will remove its dependency from designs and layouts, making it stable across design changes

Subscribe for updates

Stay in the loop.