Enterprise Content Types and Service Applications are interesting features of SharePoint 2010. Enterprise content types can be used to provide a consistent entity definition to different web applications. Consider an example of a textile company who has implemented an Extranet and an Intranet application.
Their clients can log on to their extranet site and order different products. To add a product the client needs to fill up a form. The form data will be stored in a list on the extranet. The list has an associated content type which defines all the fields that need to be filled in. After the data is filled in, the data is copied from the extranet web application to the intranet web application where the order will be processed.
To make this happen and to maintain it we would have to keep the two content types on the two different web applications in sync, manually. In SharePoint 2010, Enterprise content types would help elevate this problem. In SharePoint 2010, we can define content types in one web application and publish them to subscribing web applications. What this would mean to our textile company is that we could define the content type in the Intranet application and the extranet application could subscribe to it.
Any change in the content type on the Intranet would be published to the extranet application. This would always keep the data model in sync. SharePoint 2010 does this using Metadata service application and timer jobs. The timer job which runs daily and sync’s up the content types. We can either run the timer job when needed or change the frequency.
So how do we set this up? We need to create a Metadata Service Application and connect both the web applications to it. The meta data service application handles the publishing of content types.
Once you have the metadata service application connected to the web application, we go to the settings of the content type and click on “Manage Publishing for this content type”. Here we can control whether we want to publish/unpublish/republish the content type.
You can check for errors while publishing content types by going to site settings and clicking on “Content type publishing error log”.