Force Left Nav To at least 200 Pixels wide
Force Body To at least 500 Pixels high
SharePoint MindsharpBlogs > Paul Schaeflein > Categories

 Posts categorized as Lists and Content Types

Feb 09
Published: February 09, 2009 23:02 PM by  Paul Schaeflein

The concept of metadata in document libraries is often difficult to grasp for those new to SharePoint. Here is one example that helps.

Let’s say you create many documents about clients and their cases. To help with the organization of these documents, you create a folder for each client and a sub-folder for each case:

folder structure

The first issue that arises is that each information worker has their own set of folders for the same clients. In the old days, this problem was solved using network shares. In this model, every user puts their documents into the same set of folders. Life is good. :)

However, in this scenario, only two pieces of information about the documents are available without opening them – the Client and Case number. What about the author? The person assigned to the case? The approval status of the document? These pieces of information are called metadata, and that is where the power of SharePoint Lists lies. Look at this list showing documents for Landers Farms:

image

I hope that this illustration of the power of metadata helps in your SharePoint deployment.



Feb 08
Published: February 08, 2009 14:02 PM by  Paul Schaeflein

What method do you use to instantiate a Content Type?

This subject came up on a project I'm working on, and it seemed to me that a list definition is a lot of unnecessary work. I don't have any custom rendering requirements, so the Views and Forms elements of the List Schema would just be a productivity black hole.

At first, I turned to the SharePoint Guidance from the patterns & practices group. Their Training Management reference implementation is similar to my requirements – store data is a few lists and use a custom page / web part to show the data in a specific way. The method for creating a list with the content type in their implementation is via a List Definition (which is part of a Site Definition). Let's call that method "#1 – List Definition"

At the Best Practices Conference, Mark Ferraz discussed his approach of using 100% code to manage content types. While this is the most flexible approach, it also has some serious planning/design/coding work required to get started. I don't have that time at the moment. But, we'll call this method "#2 – All Code"

For my project, I was modeling the data using lists created in the browser. (A custom list with columns added as they are identified.) Once that was complete, I grabbed the XML required for the Content Type via the CTExplorer tool. It then occurred to me – why not just bind the content type to a custom list? This is method "#3 – Bind to a Custom List"

So, I'm going to start a series of posts that discusses these methods, along with any other interesting ones that come my way via comments or email. I know I am not the first to go down this path, but I can't think of a better way to understand than to implement, write and document that process. I hope you'll stay tuned!

*UPDATE* -- Turns out that Andrew Connell posted today about creating a simple list definition based on a Custom List. This is implementing #3 using #1. I'll get my description of #3 posted soon so you can compare.