内容类型定义

上次修改时间: 2010年3月28日

适用范围: SharePoint Foundation 2010

本文内容
XML 架构定义
元素
示例

内容类型定义架构用于定义在功能的元素指令清单文件中创建内容类型的 XML 的结构。

XML 架构定义

必须使用 wss.xsd 文件中的架构对定义内容类型的元素指令清单进行验证。此文件位于下面的路径中:%ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\XML。

元素

下面的列表映射架构定义中元素之间的关系。

<Elements 元素 (ContentType)>

   <ContentType 元素 (ContentType)>

      <Folder 元素 (ContentType)>

      <FieldRefs 元素 (ContentType)>

         <FieldRef 元素 (ContentType)>

         <RemoveFieldRef 元素 (ContentType)>

      <XmlDocuments 元素 (ContentType)>

         <XmlDocument 元素 (ContentType)>

      <DocumentTemplate 元素 (ContentType)>

示例

下面的示例演示某功能对应的元素指令清单,该功能可用于将两个文件设置为用作文档模板、创建四个自定义网站栏以及创建三个网站内容类型。请注意,第一个新内容类型("Financial Document")派生自内置文档内容类型。而"Financial Document"又是新的"Purchase Order"和"Invoice"内容类型的父内容类型。在最后两个内容类型的定义中,引用了内置字段标题,因此可以向其 DisplayName 属性提供自定义值。

<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="https://schemas.microsoft.com/sharepoint/">

  <!-- Document Templates -->
  <Module Name="PurchaseOrderDocumentTemplate"
          Path="FinancialDocuments"
          Url="_cts/PurchaseOrder" RootWebOnly="TRUE">
    <File Url="PurchaseOrder.docx" Type="Ghostable" />
  </Module>

  <Module Name="InvoiceDocumentTemplate"
          Path="FinancialDocuments"
          Url="_cts/Invoice" RootWebOnly="TRUE">
    <File Url="Invoice.docx" Type="Ghostable" />
  </Module>

  <!-- Site Columns -->
  <Field ID="{060E50AC-E9C1-4D3C-B1F9-DE0BCAC300F6}"
         Name="Amount"
         DisplayName="Amount"
         Type="Currency"
         Decimals="2"
         Min="0"
         Required="FALSE"
         Group="Financial Columns" />

  <Field ID="{86811853-7E52-4515-A88D-A8FA9D450905}"
         Name="Client"
         DisplayName="Client Name"
         Type="Text"
         Required="FALSE"
         Group="Financial Columns"/>

  <Field ID="{943E7530-5E2B-4C02-8259-CCD93A9ECB18}"
         Name="CostCenter"
         DisplayName="Department"
         Type="Choice"
         Required="FALSE"
         Group="Financial Columns">
    <CHOICES>
      <CHOICE>Administration</CHOICE>
      <CHOICE>Information</CHOICE>
      <CHOICE>Facilities</CHOICE>
      <CHOICE>Operations</CHOICE>
      <CHOICE>Sales</CHOICE>
      <CHOICE>Marketing</CHOICE>
    </CHOICES>
  </Field>

  <Field ID="{1511BF28-A787-4061-B2E1-71F64CC93FD5}"
        Name="OrderDate"
        DisplayName="Order Date"
        Type="DateTime"
        Format="DateOnly"
        Group="Financial Columns">
    <Default>[today]</Default>
  </Field>

  <!-- Parent ContentType: Document (0x0101) -->
  <ContentType ID="0x0101000728167cd9c94899925ba69c4af6743e"
               Name="Financial Document"
               Group="Financial Content Types"
               Description="Base financial content type"
               Version="0">
    <FieldRefs>
      <FieldRef ID="{1511BF28-A787-4061-B2E1-71F64CC93FD5}" Name="OrderDate" DisplayName="Date" Required="FALSE"/>
      <FieldRef ID="{060E50AC-E9C1-4D3C-B1F9-DE0BCAC300F6}" Name="Amount" DisplayName="Amount" Required="FALSE"/>
    </FieldRefs>
  </ContentType>

  <!-- Parent ContentType: Financial Document -->
  <ContentType ID="0x0101000728167cd9c94899925ba69c4af6743e01"
               Name="PurchaseOrder"
               Group="Financial Content Types"
               Description="Used for creating purchase orders"
               Inherits="TRUE"
               Version="0">
    <FieldRefs>
      <!--  Built-in Title field -->
      <FieldRef ID="{fa564e0f-0c70-4ab9-b863-0177e6ddd247}" Name="Title" DisplayName="Item" Required="TRUE" Sealed="TRUE"/>
      <FieldRef ID="{943E7530-5E2B-4C02-8259-CCD93A9ECB18}" Name="CostCenter" DisplayName="Department" Required="TRUE"/>
    </FieldRefs>
    <DocumentTemplate TargetName="PurchaseOrder.docx"/>
  </ContentType>

  <!-- Parent ContentType: Financial Document -->
  <ContentType ID="0x0101000728167cd9c94899925ba69c4af6743e02"
                Name="Invoice"
                Group="Financial Content Types"
                Description="Used for creating customer invoices"
                Inherits="TRUE"
                Version="0">
    <FieldRefs>
      <!--  Built-in Title field -->
      <FieldRef ID="{fa564e0f-0c70-4ab9-b863-0177e6ddd247}" Name="Title" DisplayName="Service" Required="TRUE" Sealed="TRUE"/>
      <FieldRef ID="{86811853-7E52-4515-A88D-A8FA9D450905}" Name="Client" DisplayName="Client Name" Required="TRUE"/>
    </FieldRefs>
    <DocumentTemplate TargetName="Invoice.docx" />
  </ContentType>
</Elements>

请参阅

任务

如何:向网站添加内容类型

如何:向列表添加内容类型

概念

内容类型简介

部署内容类型