Поделиться через


Общие сведения о файлах Schema.xml

Дата последнего изменения: 2 февраля 2011 г.

Применимо к: SharePoint Foundation 2010

В этой статье
Задачи определения списка с Schema.xml
Формат файла
Шаблоны списков

У каждого определения списка, появляющегося в виде варианта на странице создания, есть файл Schema.xml, который находится во вложенной папке каталога "%ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\FEATURES", или который развертывается как часть изолированного решения. Файл Schema.xml определяет представления, формы, панель инструментов и специальные поля для списков, создаваемых с помощью определения списка.

Задачи определения списка с Schema.xml

Для настройки определения списка в файле Schema.xml можно выполнить следующие задачи.

  • Добавить настраиваемые поля, созданные на основе базовых типов полей, определенных в файле FldTypes.xml (разработчик не может создавать настраиваемые базовые типы полей).

  • Создать настраиваемое представление для списков, созданных с помощью определения списка.

  • Указать настраиваемые страницы форм для работы с элементами списка.

  • Указать описание по умолчанию, которое отображается для списка в пользовательском интерфейсе.

Предупреждающая заметкаВнимание!

Внесение изменений в изначально установленный файл Schema.xml на сервере с Microsoft SharePoint Foundation может повредить существующие списки. Изменения могут быть перезаписаны при установке обновлений для SharePoint Foundation или при переходе на следующую версию продукта. Вместо изменения исходных файлов схемы создайте компонент настраиваемого определения списка. Дополнительные сведения см. в статье Создание настраиваемого определения списка.

Формат файла

Элемент List

Элемент верхнего уровня List указывает внутреннее и отображаемое имя для определения списка, а также направление текста в списках и относительный URL-адрес расположения, где создаются списки.

ПримечаниеПримечание

Во всех примерах XML в данном разделе строки, начинающиеся с "$Resources", являются константами, определенными в RESX-файле в каталоге "%ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\Resources".

<List 
  xmlns:ows="Microsoft SharePoint" 
  Title="Tasks" 
  FolderCreation="FALSE" 
  Direction="$Resources:Direction;" 
  EnableContentTypes="TRUE" 
  Url="Lists/Tasks" 
  BaseType="0">

Как и для большинства атрибутов элемента List в файле Schema.xml, задание относительного URL-адреса не играет важной роли, поскольку этот адрес переопределяется параметрами списка в файле Onet.xml определения веб-сайта. Этот элемент может указывать Microsoft SharePoint в качестве пространства имен XML. Атрибут BaseType задает базовый тип списка, определенный в элементе BaseTypes файла Onet.xml. Атрибут VersioningEnabled используется, чтобы указать, включено ли по умолчанию управление версиями для библиотек документов, созданных с помощью определения списка.

Элемент MetaData

Элемент MetaData группирует метаданные списка в элементе List и может содержать следующие дочерние элементы.

Элемент ContentTypes

Элемент ContentTypes указывает типы контента для связи со списками, созданными с помощью определения списка.

<MetaData>
  <ContentTypes>
    <ContentTypeRef ID="0x0108">
      <Folder TargetName="Task" />
    </ContentTypeRef>
    <ContentTypeRef ID="0x0120" />
    <ContentTypeRef ID="0x012004" />
  </ContentTypes>

Элемент Fields

Элемент Fields содержит определения полей для особых полей, которые могут потребоваться в определении списка.

<Fields>
  <Field 
    ID="{c3a92d97-2b77-4a25-9698-3ab54874bc6f}" 
    Name="Predecessors" 
    Type="LookupMulti" 
    Mult="TRUE" 
    Required="FALSE" 
    DisplayName="$Resources:core,Tasks_Predecessors;" 
    StaticName="Predecessors" 
    List="Self" 
    ShowField="Title" 
    DisplaceOnUpgrade="TRUE" 
    SourceID="https://schemas.microsoft.com/sharepoint/v3">
  </Field>
  <Field 
    ID="{a8eb573e-9e11-481a-a8c9-1104a54b2fbd}" 
    Type="Choice" 
    Name="Priority" 
    DisplayName="$Resources:core,Priority;" 
    SourceID="https://schemas.microsoft.com/sharepoint/v3" 
    StaticName="Priority">
    <CHOICES>
      <CHOICE>$Resources:core,Priority_High;</CHOICE>
      <CHOICE>$Resources:core,Priority_Normal;</CHOICE>
      <CHOICE>$Resources:core,Priority_Low;</CHOICE>
    </CHOICES>
    <MAPPINGS>
      <MAPPING Value="1">$Resources:core,Priority_High;</MAPPING>
      <MAPPING Value="2">$Resources:core,Priority_Normal;</MAPPING>
      <MAPPING Value="3">$Resources:core,Priority_Low;</MAPPING>
    </MAPPINGS>
    <Default>$Resources:core,Priority_Normal;</Default>
  </Field>
  ...
  <Field  
    ID="{d2311440-1ed6-46ea-b46d-daa643dc3886}" 
    Type="Number" 
    Name="PercentComplete" 
    Percentage="TRUE" 
    Min="0" 
    Max="1" 
    DisplayName="$Resources:core,Percent_Complete;" 
    SourceID="https://schemas.microsoft.com/sharepoint/v3" 
    StaticName="PercentComplete">
  </Field>
  <Field 
    ID="{53101f38-dd2e-458c-b245-0c236cc13d1a}" 
    Type="User" 
    List="UserInfo" 
    Name="AssignedTo" 
    DisplayName="$Resources:core,Assigned_To;" 
    SourceID="https://schemas.microsoft.com/sharepoint/v3" 
    StaticName="AssignedTo">
  </Field>
  ...
</Fields>

Каждый элемент Field указывает отображаемое имя (DisplayName), внутреннее имя (Name), тип поля (Type) и другие необходимые свойства поля, определенные в файле FldTypes.xml, на основе которого создано это поле.

Задачу по программированию, показывающую добавление настраиваемого поля в файл Schema.xml, см. в разделе Создание настраиваемого определения списка.

Элемент Views

Элемент Views содержит определения для полей, доступных по умолчанию после создания списка.

ПримечаниеПримечание

В SharePoint Foundation 2010 для определения представлений списков используется XSLT, а Схема представления поддерживается для обратной совместимости. Сведения о представлениях списков XSLT см. в разделе Представления списков.

<Views>
  ...
  <View 
    BaseViewID="2" 
    Type="HTML" 
    WebPartZoneID="Main" 
    DisplayName="$Resources:core,My_Tasks;" 
    MobileView="True" 
    MobileDefaultView="True" 
    SetupPath="pages\viewpage.aspx" 
    ImageUrl="/_layouts/images/issues.png" 
    Url="MyItems.aspx" 
    ReqAuth="TRUE">
  <XslLink Default="TRUE">main.xsl</XslLink>
  <RowLimit Paged="TRUE">30</RowLimit>
  <Toolbar Type="Standard" />
  <ViewFields>
    <FieldRef Name="LinkTitle"></FieldRef>
    <FieldRef Name="Status"></FieldRef>
    <FieldRef Name="Priority"></FieldRef>
    <FieldRef Name="DueDate"></FieldRef>
    <FieldRef Name="PercentComplete"></FieldRef>
  </ViewFields>
  <ParameterBindings>
    <ParameterBinding 
      Name="NoAnnouncements" 
      Location="Resource(wss,noXinviewofY_LIST)" />
    <ParameterBinding 
        Name="NoAnnouncementsHowTo" 
        Location="Resource(wss,noXinviewofY_DEFAULT)" />
  </ParameterBindings>
  <Query>
    <Where>
      <Eq>
        <FieldRef Name="AssignedTo"></FieldRef>
        <Value Type="Integer">
          <UserID />
        </Value>
      </Eq>
    </Where>
    <OrderBy>
      <FieldRef Name="Status"></FieldRef>
      <FieldRef Name="Priority"></FieldRef>
    </OrderBy>
  </Query>
</View>
  ...
</Views>

Каждый элемент View указывает тип формата, используемого для отображения (обычно HTML), и уникальный идентификатор представления. При отображении представления в веб-части элемент View также указывает заголовок представления. Атрибут Url используется при создании списка, чтобы указать базовое имя страницы ASPX, где отображается представление. View также указывает идентификатор зоны веб-части, в которой отображается представление.

В SharePoint Foundation элемент View содержит дочерние элементы, определяющие различные части представления:

  • Элемент Aggregations определяет ссылки на поля для вычисляемых столбцов.

  • Элемент XslLink задает XSL-файл, определяющий различные части представления, включая, например, верхний колонтитул, тело и нижний колонтитул. Он также определяет разделы группировки, наборы строк, определяющие способ отображения элементов, когда их число превышает ограничение на количество строк, и способ просмотра пустых разделов.

  • Элемент RowLimit ограничивает количество отображаемых строк или элементов.

  • Элемент Toolbar определяет область, отображаемую над списками.

  • Элемент ViewFields определяет поля, отображаемые в представлении.

  • Элемент ParameterBindings определяет строки ресурсов для реализации в XSLT. Дополнительные сведения см. в статье Привязки параметров XSLT.

  • Элемент Query определяет фильтр для представления.

Элемент Forms

Элемент Forms содержит ссылки на формы, используемые при работе с отдельными элементами списков.

<Forms>
  <Form Type="DisplayForm" Url="DispForm.aspx" SetupPath="pages\form.aspx" WebPartZoneID="Main" />
  <Form Type="EditForm" Url="EditForm.aspx" SetupPath="pages\form.aspx" WebPartZoneID="Main" />
  <Form Type="NewForm" Url="NewForm.aspx" SetupPath="pages\form.aspx" WebPartZoneID="Main" />
</Forms>

Каждый элемент Form указывает тип формы, например DisplayForm, EditForm или NewForm, а также имя страницы ASPX, используемой для формы, и идентификатор зоны веб-части, в которой форма отображается на странице.

Элемент DefaultDescription

Элемент DefaultDescription указывает описание, отображаемое для определения списка в пользовательском интерфейсе.

<DefaultDescription>$Resources:core,camlidT13;</DefaultDescription>

Этот элемент переопределяется атрибутом Description элементаList, соответствующего текущему определению списка, которое задано в конфигурации в Onet.xml.

Важное примечаниеВажно!

Значение для этого элемента должно быть указано в настраиваемых определениях списков.

Шаблоны списков

Пользователи создают настраиваемые шаблоны списков на странице Сохранение в виде шаблона для списка или с помощью кода, в котором используется метод SaveAsTemplate класса Microsoft.SharePoint.SPList. После сохранения шаблон списка хранится как STP-файл в коллекции шаблонов списков веб-сайта верхнего уровня в семействе веб-сайтов. Шаблоны списков доступны всем веб-сайтам семейства веб-сайтов, производных от того же определения веб-сайта и языка, что и веб-сайт, для которого первоначально был создан список. Чтобы сделать шаблон списка доступным для веб-сайта из другого семейства веб-сайтов, загрузите шаблон из его текущей коллекции, а затем включите его в коллекцию нового семейства веб-сайтов.

См. также

Концепции

Схема List

Экземпляр списка

Типы сайтов: веб-шаблоны и определения сайтов

Другие ресурсы

Представления списков