77
“Just put that in the zip code field…” The Ins and Outs of Content Modeling Wednesday, June 17, 2009

Just Put That In The Zip Code Field…: The Ins and Outs of Content Modeling

Embed Size (px)

Citation preview

“Just put that in the zip code field…”

The Ins and Outs of Content Modeling

Wednesday, June 17, 2009

Content management integration and consulting

Social networking integrationCustom design

Sioux Falls, South Dakotahttp://blendinteractive.com/

Wednesday, June 17, 2009

6 Evaluation Questions

For those of you implementing or managing a CMS-based Web site.

For those of you shopping for a CMS and comparing options.

5 Implementation Tips

Wednesday, June 17, 2009

Content Modeling Definition #1

The process of converting logical content concepts into editable,

storable, manageable, searchable content objects by breaking them

down into smaller pieces and

Wednesday, June 17, 2009

Logical Content

This is the desired end result of a content management requirement.

Wednesday, June 17, 2009

Content Object

An XML document

A database record

Wednesday, June 17, 2009

Wednesday, June 17, 2009

Wednesday, June 17, 2009

Content Fidelity

How closely does the content in your CMS resemble the logical content

you planned on?

Wednesday, June 17, 2009

Different systems have vastly different content modeling

Wednesday, June 17, 2009

Evaluation Question #1

Does your CMS allow content modeling or structuring at all?

Wednesday, June 17, 2009

Why model content at all?

Wednesday, June 17, 2009

Reason #1

Because different content types need to be STRUCTURED differently.

Wednesday, June 17, 2009

Content Structure Between

Wednesday, June 17, 2009

Content Structure Between

Wednesday, June 17, 2009

Reason #2

Because different content types have to be EDITED and VALIDATED

differently.

Wednesday, June 17, 2009

Automatic Form Rendering

Content edit form in eZ publish

Wednesday, June 17, 2009

Input Form Validation

Canned and custom validation in Ektron.

Wednesday, June 17, 2009

Reason #3

Because different content types have to be DISPLAYED differently.

Wednesday, June 17, 2009

Display Template Assignment

Template assignment by Page Type in EPiServer

Wednesday, June 17, 2009

Reason #4

Because different content types have to be MANAGED differently.

Wednesday, June 17, 2009

Content types often act as functional

PermissionsWorkflowNavigationSearch

Wednesday, June 17, 2009

URL Pattern Assignments

URL pattern assignment based on Content Type in Drupal

Wednesday, June 17, 2009

Permission Assignment

Permission assignments by content type in eZ publish

Wednesday, June 17, 2009

Reason #5

Because different content types need to be SEARCHED and ORGANIZED

differently.

Wednesday, June 17, 2009

Organization by Content

Wednesday, June 17, 2009

Content Type-specific Search

Parametric search based a content type in eZ publish

Wednesday, June 17, 2009

Problems due to inefficient and inaccurate content modeling

By that point, it’s often too late….

Wednesday, June 17, 2009

Types, Attributes, and Datatypes

Wednesday, June 17, 2009

Content on most Web sites can be roughly categorized

by type.

A type shares a common set of attributes and is meant to represent a

single, logical boundary around content.

Wednesday, June 17, 2009

NomenclatureContent TypeContent ClassSmartFormPage Type

Wednesday, June 17, 2009

Content Types

Content types in Drupal

Wednesday, June 17, 2009

Content types are made up of content attributes.

An attribute is a single, logical piece of information that, when combined with other attributes, describes a type of

content.

Wednesday, June 17, 2009

Nomenclature Attribute

PropertyFieldElement

Wednesday, June 17, 2009

Content Attributes

Content attributes in eZ publish.

Wednesday, June 17, 2009

Content attributes have datatypes.

A datatype restricts the type of data the attribute may hold. This enables validation and

Wednesday, June 17, 2009

Datatypes provide:ValidationEditing interfacesComputation

Wednesday, June 17, 2009

Attribute Datatypes

Content class attributes in eZ publish.

Wednesday, June 17, 2009

Attribute Datatypes

Page Type Properties in EPiServer

Wednesday, June 17, 2009

Generic Custom Fields

Custom fields in

Wednesday, June 17, 2009

Datatypes and Sorting

Datatypes tell the system how to treat values while sorting.

Wednesday, June 17, 2009

Common Validation NeedsString is requiredString is numericString matches a "canned pattern" (email address, SSN, etc.)String matches a regular expressionString falls within a list of valid values drawn from somewhere

elseString is unique to other content

Date is in the past/futureDate is in a specific range

File is of a specific typeFile is within a specific size range

Value X is conditional on Value Y (if one is filled in, the other can’t

Wednesday, June 17, 2009

Content Modeling Definition #2

Content modeling is the process of converting logical content concepts into content types, attributes, and

datatypes.

Wednesday, June 17, 2009

Implementation Tip #1

Think in terms of content types. Consider the ways different content

will need to be edited, validated, managed, searched and organized.

Wednesday, June 17, 2009

Evaluation Question #2

Does it allow you to structure content through configuration or

does it require you to write code or modules?

Wednesday, June 17, 2009

Code vs. Configuration

New Content Type in New Page Type in Wednesday, June 17, 2009

Implementation Tip #2

Be careful in re-using content types for logically different content.

Wednesday, June 17, 2009

Futureproofing is the process of designing your content model in such a

way that it can be adapted to new situations with a

minimum of pain.

Wednesday, June 17, 2009

Implementation Tip #3

To futureproof your content, speculate on and list scenarios in which the content might be used

now and in the future.

Wednesday, June 17, 2009

A Really Bad Idea

Things that shouldn’t be there:•Date•Author•Categories•Location•(perhaps) Image

Wednesday, June 17, 2009

Implementation Tip #4

To futureproof your content, do not entrap multiple logical attributes

into the same implemented attribute

Wednesday, June 17, 2009

Implementation Tip #5

Find the right balance. Don’t overstructure your content.

Wednesday, June 17, 2009

Datatypes

Wednesday, June 17, 2009

Evaluation Question #3

What datatypes are available to structure your content?

Wednesday, June 17, 2009

Datatypes are the building blocks of your content.

Wednesday, June 17, 2009

Strings

Simple and formatted strings in WordPress

Wednesday, June 17, 2009

Dates

Date entry interface in Ektron.

Wednesday, June 17, 2009

Binary Files

Binary file upload in Drupal (top) and eZ publish (bottom)

Wednesday, June 17, 2009

Repeating Properties

A repeating data table within an Ektron content object.

A one-column Matrix datatype in eZ publish.

Wednesday, June 17, 2009

Evaluation Question #4

Can you write your own datatypes or customize existing datatypes?

Wednesday, June 17, 2009

Custom Datatypes

Custom datatype in eZ publish

Wednesday, June 17, 2009

Evaluation Question #5

How well does it manage relational content modeling?

Wednesday, June 17, 2009

DISCRETE content modeling is structuring content within a

Wednesday, June 17, 2009

RELATIONAL content modeling is structuring a content object

Wednesday, June 17, 2009

Relational Content Modeling

Page Link attribute in EPIServer

Wednesday, June 17, 2009

Relational Content Modeling

Multiple content selection in EPiServer and Ektron

Wednesday, June 17, 2009

ArticlesTitleBodyAuthor[…]

ArticlesTitleBodyAuthor[…]

Content Composition

ArticleTitleBodyAuthor[…]

AuthorFirst NameLast Name[…]

BureauName[…]

ArticlesTitleBodyAuthor[…]

was written by

works for

is related to

Wednesday, June 17, 2009

Evaluation Question #6

How well does it handle hierarchical content?

Wednesday, June 17, 2009

Publication

Issue

Section

Article

Article

Wednesday, June 17, 2009

Content TreesThe content folder structure in Ektron

A pure content tree in eZ publish

Wednesday, June 17, 2009

Evaluation Question #6

Does it allow any inheritance of content types or values?

Wednesday, June 17, 2009

Content Type Inheritance

Movie Review PageTitleBodyMETA KeywordsMETA DescriptionURLStudioDirectorCastRunning TimeStar Rating

Music Review PageTitleBodyMETA KeywordsMETA DescriptionURLNumber of TracksGenreStar Rating

Wednesday, June 17, 2009

Content Type Inheritance

Movie Review PageStudioDirectorCastRunning TimeStar Rating

Music Review PageNumber of TracksGenreStar Rating

Web PageTitleBodyMETA KeywordsMETA DescriptionURL

Wednesday, June 17, 2009

Content Value Inheritance

With a pure content tree, setting a value at a specific point will cause content “below” that point to inherit the value until

These content objects will inherit

the value applied to “News,” unless they specifically override

it.

Wednesday, June 17, 2009

Evaluation Questions1. Does it allow the structuring of content?2. Is it via code or configuration?3. What datatypes are available?4. Can you write or customize your own

datatypes?5. How well does it handle relational content

modeling?6. How well does it handle hierarchical

content?

Wednesday, June 17, 2009

Implementation Tips1. Think in terms of content types2. Avoid reusing content types3. Speculate on the future uses of

content4. Do not combine logical attributes into

the same implemented attribute5. Don’t overstructure your content

Wednesday, June 17, 2009

Blend Interactive http://blendinteractive.com

Gadgetopia http://gadgetopia.com

Content Management and IA Writing http://blendinteractive.com/services/

cm/Twitter

“gadgetopia”Email

[email protected]

Wednesday, June 17, 2009