• Save
"Just Put That In The Zip Code Field..."
Upcoming SlideShare
Loading in...5
×
 

"Just Put That In The Zip Code Field..."

on

  • 9,079 views

A discussion of content modeling capabilities and practices across different Web content management systems.

A discussion of content modeling capabilities and practices across different Web content management systems.

Statistics

Views

Total Views
9,079
Views on SlideShare
7,824
Embed Views
1,255

Actions

Likes
22
Downloads
0
Comments
0

17 Embeds 1,255

http://www.gadgetopia.com 488
http://gadgetopia.com 309
http://dev.day.com 211
http://predicate-llc.com 190
http://blendinteractive.com 14
http://predicate.io 11
http://www.slideshare.net 10
http://www.blendinteractive.com 7
http://www.digitalmediabuzz.com 4
http://feeds.feedburner.com 2
http://www.predicate-llc.com 2
http://www.e-presentations.us 2
http://www.linkedin.com 1
http://static.slidesharecdn.com 1
http://localhost:4502 1
http://translate.googleusercontent.com 1
http://www.reddit.com 1
More...

Accessibility

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

CC Attribution-NonCommercial LicenseCC Attribution-NonCommercial License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

"Just Put That In The Zip Code Field..." "Just Put That In The Zip Code Field..." Presentation Transcript

  • “Just put that in the zip code field…”
    The Ins and Outs of Content Modeling
  • Content management integration and consulting
    Social networking integration
    Custom design
    Sioux Falls, South Dakota
    http://blendinteractive.com/
  • 6 Evaluation Questions
    For those of you shopping for a CMS and comparing options.
    5 Implementation Tips
    For those of you implementing or managing a CMS-based Web site.
  • 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 describing their data to your CMS.
  • Logical Content
    This is the desired end result of a content management requirement.
  • Content Object
    An XML document
    A database record
  • Content Fidelity
    How closely does the content in your CMS resemble the logical content you planned on?
  • Different systems have vastly different content modeling capabilities.Never assume that system X can accurately model your content.
  • Evaluation Question #1
    Does your CMS allow content modeling or structuring at all?
  • Why model content at all?
  • Reason #1
    Because different content types need to be STRUCTURED differently.
  • Content Structure Between Types
  • Content Structure Between Types
  • Reason #2
    Because different content types have to be EDITED and VALIDATED differently.
  • Automatic Form Rendering
    Content edit form in eZ publish
  • Input Form Validation
    Canned and custom validation in Ektron.
  • Reason #3
    Because different content types have to be DISPLAYED differently.
  • Display Template Assignment
    Template assignment by Page Type in EPiServer
  • Reason #4
    Because different content types have to be MANAGED differently.
  • Content types often act as functional boundaries for:
    Permissions
    Workflow
    Navigation
    Search
  • URL Pattern Assignments
    URL pattern assignment based on Content Type in Drupal
  • Permission Assignment
    Permission assignments by content type in eZ publish
  • Reason #5
    Because different content types need to be SEARCHED and ORGANIZED differently.
  • Organization by Content Value
  • Content Type-specific Search
    Parametric search based a content type in eZ publish
  • Content modeling has its roots in two disciplines:
    Relational database design
    Object oriented programming
  • Relational Database Roots
    Content Type = Table
    Content Attribute = Field
    Attribute Datatype = Field Datatype
  • OO Programming Roots
    Content Type = Class
    Content Attribute = Field, Property, Attribute
    Attribute Datatype = Programming Datatype
    Content Type Inheritance = Class Inheritance
  • Is content management reinventing the wheel?
  • Problems due to inefficient and inaccurate content modeling will often not surface until the project is complete.
    By that point, it’s often too late….
  • Types, Attributes, and Datatypes
  • 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.
  • Nomenclature
    Content Type
    Content Class
    SmartForm
    Page Type
  • Content Types
    Content types in Drupal
  • 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.
  • Nomenclature
    Attribute
    Property
    Field
    Element
  • Content Attributes
    Content attributes in eZ publish.
  • Content attributes have datatypes.
    A datatype restricts the type of data the attribute may hold. This enables validation and processing
  • Datatypes provide:
    Validation
    Editing interfaces
    Computation
  • Attribute Datatypes
    Content class attributes in eZ publish.
  • Attribute Datatypes
    Page Type Properties in EPiServer
  • Generic Custom Fields
    Custom fields in WordPress.
  • Datatypes and Sorting
    Datatypes tell the system how to treat values while sorting.
  • Common Validation Needs
    String is required
    String is numeric
    String matches a "canned pattern" (email address, SSN, etc.)
    String matches a regular expression
    String falls within a list of valid values drawn from somewhere else
    String is unique to other content
    Date is in the past/future
    Date is in a specific range
    File is of a specific type
    File is within a specific size range
    Value X is conditional on Value Y (if one is filled in, the other can’t be blank, etc.)
  • Content Modeling Definition #2
    Content modeling is the process of converting logical content concepts into content types, attributes, and datatypes.
  • Implementation Tip #1
    Think in terms of content types. Consider the ways different content will need to be edited, validated, managed, searched and organized.
  • Evaluation Question #2
    Does it allow you to structure content through configuration or does it require you to write code or modules?
  • Code vs. Configuration
    New Content Type in Plone
    New Page Type in EPiServer
  • Implementation Tip #2
    Be careful in re-using content types for logically different content.
  • 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.
  • Implementation Tip #3
    To futureproof your content, speculate on and list scenarios in which the content might be used now and in the future.
  • A Really Bad Idea
    Things that shouldn’t be there:
    • Date
    • Author
    • Categories
    • Location
    • (perhaps) Image
  • Implementation Tip #4
    To futureproof your content, do not entrap multiple logical attributes into the same implemented attribute
  • Implementation Tip #5
    Find the right balance. Don’t overstructure your content.
  • Datatypes
  • Evaluation Question #3
    What datatypes are available to structure your content?
  • Datatypes are the building blocks of your content.
  • Strings
    Simple and formatted strings in WordPress
  • Dates
    Date entry interface in Ektron.
  • Binary Files
    Binary file upload in Drupal (top) and eZ publish (bottom)
  • Repeating Properties
    A repeating data table within an Ektron content object.
    A one-column Matrix datatype in eZ publish.
  • Evaluation Question #4
    Can you write your own datatypes or customize existing datatypes?
  • Custom Datatypes
    Custom datatype in eZ publish
  • Evaluation Question #5
    How well does it manage relational content modeling?
  • DISCRETE content modeling is structuring content within a single content object.
  • RELATIONAL content modeling is structuring a content object in relation to other content.Requires a linking datatype or a content tree.
  • Relational Content Modeling
    Page Link attribute in EPIServer
  • Relational Content Modeling
    Multiple content selection in EPiServer and Ektron
  • Articles
    Title
    Body
    Author
    […]
    Articles
    Title
    Body
    Author
    […]
    Content Composition
    Article
    Title
    Body
    Author
    […]
    Articles
    Title
    Body
    Author
    […]
    is related to
    Author
    First Name
    Last Name
    […]
    Bureau
    Name
    […]
    was written by
    works for
  • Evaluation Question #6
    How well does it handle hierarchical content?
  • Hierarchical Content
    Publication
    Issue
    Section
    Article
    Article
  • Content Trees
    The content folder structure in Ektron
    A pure content tree in eZ publish
  • Evaluation Question #6
    Does it allow any inheritance of content types or values?
  • Content Type Inheritance
    Movie Review Page
    Title
    Body
    META Keywords
    META Description
    URL
    Studio
    Director
    Cast
    Running Time
    Star Rating
    Music Review Page
    Title
    Body
    META Keywords
    META Description
    URL
    Number of Tracks
    Genre
    Star Rating
  • Content Type Inheritance
    Movie Review Page
    Studio
    Director
    Cast
    Running Time
    Star Rating
    Web Page
    Title
    Body
    META Keywords
    META Description
    URL
    Music Review Page
    Number of Tracks
    Genre
    Star Rating
  • 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 overridden by a new value.
    These content objects will inherit the value applied to “News,” unless they specifically override it.
  • Evaluation Questions
    Does it allow the structuring of content?
    Is it via code or configuration?
    What datatypes are available?
    Can you write or customize your own datatypes?
    How well does it handle relational content modeling?
    How well does it handle hierarchical content?
  • Implementation Tips
    Think in terms of content types
    Avoid reusing content types
    Speculate on the future uses of content
    Do not combine logical attributes into the same implemented attribute
    Don’t overstructure your content
  • Blend Interactive
    http://blendinteractive.com
    Gadgetopiahttp://gadgetopia.com
    Content Management and IA Writing
    http://blendinteractive.com/services/cm/
    Twitter
    “gadgetopia”
    Email
    deane@blendinteractive.com