WSS3SDK之:内容类型介绍
内容类型,一个核心概念,融合在Windows SharePoint Services
3.0所提供的各种功能和服务中,旨在帮助用户以更有意义的方式组织他们的SharePoint内容。内容类型是一种可重复使用的您要用于某一类内容的各种设置的集合。内容类型可让您在一个集中位置,以可重复使用的方式管理文档或列表项的元数据和行为。
举例来说,考虑以下两种类型的文件:软件规格和法律合约。您可能想要存储这两种类型的的文件在同一个文档库中,这是合理的。不过,你将要收集和储存的关于每种文件类型的元数据将非常不同。此外,您很有可能为两种类型的文件指派非常不同的工作流程。
内容类型使您能够存储多个不同类型的内容在同一文档库或列表中。在前面的示例中,您可以定义两个内容类型,规范(Specification)和合同(Contract)。每个内容类型将包括不同的栏,用于收集和储存项目元数据,以及分配给他们不同的工作流程。然而,这两种类型的项目可以存储在同一文档库。
你可以把内容类型想成对Windows SharePoint Services 2.0列表的一个完善和扩展,原先的列表默认情况下,用于界定一个单一的数据结构,或架构,该结构是所有列表项必须附加的。在Windows SharePoint Services 2.0 ,一个项目的架构与其位置是是息息相关的。当你定义了一个列表或文件库,并定义了列表或文档库的栏,实际上就已经确定了所有存放在该位置的项目的数据架构。每一栏代表了你所跟踪的列表的所有项目的额外的一块数据。
内容类型是一种用于封装数据架构的手段,使其独立于SharePoint列表的位置。在Windows SharePoint Services 3.0中,您可以使多架构,以多内容类型的形式,存放在同一列表或文档库中。Specification内容类型可能有下列元数据栏:Project Lead,Developer和Test Lead。而另一方面,Contract内容类型可能有这些栏:Lawyer和Signer。然而,规格和合同可以一并放在在同一列表或文档库中。
内容类型可以包括下列信息:
你要指派给该类型的元数据或属性。这些都表现为当我们添加内容类型时添加到列表或文档库中的栏。
自定义该内容类型所使用的新建,编辑和显示表单。
供本内容类型项目使用的工作流。这些可以被设定为基于特定事件或条件,或用户操作而自动启动。
对于文档内容类型,可以为不同的内容类型指定不同的文档模板。
自定义解决方案的任何必要的信息,都与内容类型相关联。您可以将内容类型的这些资料储存为一个或多个XML文件。
举例来说,假设您创建一个内容类型来代表商业计划。这个内容类型可以适用于任何文件格式。你可能有以下几种场景:
您也可以指定内容类型到不含有文件的SharePoint项目,如列表项或文件夹。为文档所创建的内容类型只适用于文档库;同样,为列表项创建的内容类型只适用于列表。为文件夹创建的内容类型,可用于任何文档库或列表。
举例来说,考虑以下两种类型的文件:软件规格和法律合约。您可能想要存储这两种类型的的文件在同一个文档库中,这是合理的。不过,你将要收集和储存的关于每种文件类型的元数据将非常不同。此外,您很有可能为两种类型的文件指派非常不同的工作流程。
内容类型封装所需数据
内容类型使您能够存储多个不同类型的内容在同一文档库或列表中。在前面的示例中,您可以定义两个内容类型,规范(Specification)和合同(Contract)。每个内容类型将包括不同的栏,用于收集和储存项目元数据,以及分配给他们不同的工作流程。然而,这两种类型的项目可以存储在同一文档库。
你可以把内容类型想成对Windows SharePoint Services 2.0列表的一个完善和扩展,原先的列表默认情况下,用于界定一个单一的数据结构,或架构,该结构是所有列表项必须附加的。在Windows SharePoint Services 2.0 ,一个项目的架构与其位置是是息息相关的。当你定义了一个列表或文件库,并定义了列表或文档库的栏,实际上就已经确定了所有存放在该位置的项目的数据架构。每一栏代表了你所跟踪的列表的所有项目的额外的一块数据。
内容类型是一种用于封装数据架构的手段,使其独立于SharePoint列表的位置。在Windows SharePoint Services 3.0中,您可以使多架构,以多内容类型的形式,存放在同一列表或文档库中。Specification内容类型可能有下列元数据栏:Project Lead,Developer和Test Lead。而另一方面,Contract内容类型可能有这些栏:Lawyer和Signer。然而,规格和合同可以一并放在在同一列表或文档库中。
内容类型设置
通过指定内容类型的额外设置,如工作流,亦或自定义属性,您可以进一步扩展内容类型的功能。内容类型可以包括下列信息:
你要指派给该类型的元数据或属性。这些都表现为当我们添加内容类型时添加到列表或文档库中的栏。
自定义该内容类型所使用的新建,编辑和显示表单。
供本内容类型项目使用的工作流。这些可以被设定为基于特定事件或条件,或用户操作而自动启动。
对于文档内容类型,可以为不同的内容类型指定不同的文档模板。
自定义解决方案的任何必要的信息,都与内容类型相关联。您可以将内容类型的这些资料储存为一个或多个XML文件。
内容类型使内容标准化
因为内容类型可以独立于任何具体的列表或文件库而被定义,您可以使某一特定的内容类型供多个SharePoint网站中的列表使用。这样,您就可以集中定义和管理 您存储在网站集中的内容的类型。例如,您可以用您的Specification内容类型,来确保所有的软件规格遵循相同的元数据定义,即使这些规格存储在多个网站下。内容类型是文件格式的独立
内 容类型是文件格式的独立。对于文档库,您可以指定一个文档模板;当用户请求一个内容类型的新文档时, Windows SharePoint Services会基于该文档模板创建新文档。然而,用户仍然可以上传基于不同模板的文档,甚至是一个完全不同类型的文档。举例来说,假设您创建一个内容类型来代表商业计划。这个内容类型可以适用于任何文件格式。你可能有以下几种场景:
- Microsoft Office Word文档,包含了背景资料
- Microsoft Office Excel文档,包含了财务计划
- Microsoft Office PowerPoint文档,包含了风险投资的演示
- 一些Windows Media文档格式的演示
- SharePoint列表项包含了指定的元数据
您也可以指定内容类型到不含有文件的SharePoint项目,如列表项或文件夹。为文档所创建的内容类型只适用于文档库;同样,为列表项创建的内容类型只适用于列表。为文件夹创建的内容类型,可用于任何文档库或列表。
内容类型的创建
您可以创建栏和内容类型的方法有三种:- 使用Windows SharePoint Services的用户界面
- 使用Windows SharePoint Services的对象模型
- 部署一个Feature,安装基于XML定义文件的内容类型 。