Общие сведения о файлах Onet.xml
Дата последнего изменения: 2 февраля 2011 г.
Применимо к: SharePoint Foundation 2010
В этой статье
Функции файлов Onet.xml
Задачи определения веб-сайта в пользовательских файлах Onet.xml
Формат файла
При установке Microsoft SharePoint Foundation устанавливается несколько файлов Onet.xml: один файл, который глобально применяется в процессе развертывания, устанавливается в папку "%ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\GLOBAL\XML", и несколько файлов устанавливаются в другие папки каталога "%ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\SiteTemplates". Каждый из файлов последней группы соответствует определению сайта, поставляемому с SharePoint Foundation. В их число входят, например, сайты блогов, сайт центра администрирования, сайты рабочих областей для собраний и сайты групп SharePoint. Только последние два из этих семейств содержат несколько конфигураций определений сайтов.
В глобальном файле Onet.xml определяются шаблоны для скрытых списков, базовые типы списков, конфигурация определений по умолчанию и модули, применяемые глобально в процессе развертывания. Каждый файл Onet.xml в каталоге, вложенном в каталог "%ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\SiteTemplates", может определять области навигации, шаблоны списков, шаблоны документов, конфигурации, модули, компоненты и нижние колонтитулы сообщений электронной почты сервера, используемые в определении веб-сайта, которому соответствует этот файл.
Примечание |
---|
Файл Onet.xml также является частью веб-шаблона. Некоторые элементы Collaborative Application Markup Language (CAML), которые могут содержаться в файлах Onet.xml определений веб-сайтов, не могут содержаться в файлах Onet.xml, являющихся частью веб-шаблонов, например это относится к элементу DocumentTemplates. |
Функции файлов Onet.xml
В зависимости от того, где находится файл Onet.xml и является ли он частью определения сайта или веб-шаблона, разметка в файле выполняет все следующие функции или некоторые из них:
определяет ограниченные веб-сайтом и семейством веб-сайтов компоненты, встроенные в веб-сайты, созданные с использованием определения веб-сайта или веб-шаблона;
определяет типы списков, страницы, файлы и веб-части, встроенные в веб-сайты, созданные с использованием определения веб-сайта или веб-шаблона;
определяет верхнюю и нижнюю области навигации, отображаемые на домашней странице и в представлениях списков для определения сайта;
задает определения списков, используемые в каждом определении веб-сайта, и их доступность для создания списков в пользовательском интерфейсе;
определяет шаблоны документов, доступные в определении веб-сайта для создания списков в библиотеке документов в пользовательском интерфейсе, и определяет файлы, используемые в этих шаблонах;
определяет базовые типы списков, производными от которых являются списки SharePoint Foundation по умолчанию (эту функцию выполняет только общий файл Onet.xml), определять новые базовые типы списков невозможно;
указывает компоненты SharePoint Foundation;
определяет область нижнего колонтитула в электронной почте сервера.
Задачи определения веб-сайта в пользовательских файлах Onet.xml
С помощью пользовательского файла Onet.xml, используемого либо для настраиваемого определения веб-сайта, либо для настраиваемого веб-шаблона, можно выполнить следующие виды задач:
указание альтернативного файла каскадных таблиц стилей, файла JavaScript или файла заголовка ASPX для определения сайта;
изменение областей переходов для домашней страницы и страниц списка;
добавление нового определения списка в качестве возможности в пользовательском интерфейсе;
определение одной конфигурации для определения веб-сайта или веб-шаблона, в которой указываются списки, модули, файлы и веб-части, включаемые при создании экземпляра конфигурации;
определение компонентов, автоматически включаемых в веб-сайты, создаваемые из определения веб-сайта или веб-шаблона.
С помощью пользовательского файла Onet.xml, используемого для настраиваемого определения веб-сайта, но не для настраиваемого веб-шаблона, можно выполнить следующие виды задач:
добавление шаблона документов для создания библиотек документов;
определение нескольких конфигураций для определения веб-сайта с указанием списков, модулей, файлов и веб-частей, включаемых при создании экземпляра конфигурации;
определение настраиваемого нижнего колонтитула для сообщений электронной почты, отправляемых с веб-сайтов, созданных на основе этого определения веб-сайта;
определение пользовательских компонентов, таких как постобработчик диалоговых окон файлов, для веб-сайтов, созданных на основе этого определения веб-сайта.
Внимание! |
---|
Новые базовые типы списков нельзя создавать ни в определении веб-сайта, ни в веб-шаблоне. Поддерживаются только базовые типы, определенные в глобальном файле Onet.xml. |
Внимание! |
---|
Внесение изменений в первоначально установленный файл Onet.xml не поддерживается. Подобные действия могут привести к нарушению работы существующих веб-сайтов. Кроме того, при установке обновлений или пакетов обновления для SharePoint Foundation либо при переходе на новую версию продукта возможно появление новой версии файла, поставляемого корпорацией Microsoft, и объединить внесенные изменения с новой версией не удастся. Если требуется тип сайта, похожий на встроенный тип сайта, и невозможно использовать веб-шаблон, создайте новое определение сайта с отдельным файлом Onet.xml, не меняйте исходный файл. Дополнительные сведения см. в статье Создание настраиваемого определения и конфигурации сайта. Дополнительные сведения о случаях, когда невозможно использовать веб-шаблон, см. в статье Выбор между настраиваемыми веб-шаблонами и настраиваемыми определениями веб-сайтов. |
Формат файла
В следующих разделах определяются различные элементы файла Onet.xml.
Элемент Project
Элемент верхнего уровня Project указывает имя по умолчанию для сайтов, создаваемых с помощью любой конфигурации сайта из определения сайта. Он также указывает каталог, содержащий вложенные каталоги, в которых располагаются файлы для каждого определения.
Примечание |
---|
Если не указано иное, то фрагменты, используемые в следующих примерах, взяты из файла Onet.xml для определения веб-сайта STS. |
<Project
Title="$Resources:core,onet_TeamWebSite;"
Revision="2"
ListDir="$Resources:core,lists_Folder;"
xmlns:ows="Microsoft SharePoint"
UIVersion="4">
Примечание |
---|
Во всех примерах, приведенных в этом разделе, строки, начинающиеся с "$Resources", являются константами, заданными в RESX-файле. Например, константа "$Resources:onet_TeamWebSite" задана в файле core.resx как "Team Site". При создании файла Onet.xml можно использовать строковые литералы. |
У этого элемента также может быть несколько других атрибутов. Дополнительные сведения см. в разделе Элемент Project (Site).
Элемент Project не содержит никаких атрибутов, идентифицирующих используемое определение сайта. Каждый файл Onet.xml связан с определением сайта через путь к каталогу, в котором он находится. Для всех файлов Onet.xml за исключением глобального это каталог "%ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\SiteTemplates\тип_сайта\XML\", где тип_сайта — имя определения сайта, например STS или MPS. Файл Onet.xml для веб-шаблона связывается с шаблоном путем размещения в WSP-пакете для этого веб-шаблона.
Элемент NavBars
Элемент NavBars содержит определения для верхней области переходов, которая отображается на домашней странице или в представлениях списков, и определения для боковой области переходов, отображаемой на домашней странице.
Примечание |
---|
Элемент NavBar не обязательно должен быть панелью инструментов. Он может быть, например, деревом ссылок. |
<NavBars>
<NavBar
Name="$Resources:core,category_Top;"
Separator="&nbsp;&nbsp;&nbsp;"
Body="<a ID='onettopnavbar#LABEL_ID#' href='#URL#' accesskey='J'>#LABEL#</a>"
ID="1002" />
<NavBar
Name="$Resources:core,category_Documents;"
Prefix="<table border='0' cellpadding='4' cellspacing='0'>"
Body="<tr><td><table border='0' cellpadding='0' cellspacing='0'><tr><td><img src='/_layouts/images/blank.gif' id='100' alt='' border='0'>&nbsp;</td><td valign='top'><a id='onetleftnavbar#LABEL_ID#' href='#URL#'>#LABEL#</td></tr></table></td></tr>"
Suffix="</table>"
ID="1004" />
...
</NavBars>
Элемент NavBarLink определяет ссылки для верхней и боковой областей навигации, а весь раздел элементов NavBar группирует новые ссылки в боковой области. Каждый элемент NavBar указывает отображаемое имя и уникальный идентификатор для панели навигации, а также определяет отображение панели навигации.
Дополнительные сведения о настройке областей навигации на страницах SharePoint Foundation см. в статье Навигация по веб-сайту.
Элемент ListTemplates
В разделе ListTemplates указаны определения списков, являющиеся частью определения веб-сайта. Эта разметка продолжает поддерживаться только для обеспечения обратной совместимости. Новые настраиваемые типы списков следует определять как компоненты. Следующий пример взят из файла Onet.xml для определения веб-сайта рабочей области для собраний.
<ListTemplates>
<ListTemplate
Name="meetings"
DisplayName="$Resources:xml_onet_mwsidmeetingDisp;"
Type="200"
BaseType="0"
Unique="TRUE"
Hidden="TRUE"
HiddenList="TRUE"
DontSaveInTemplate="TRUE"
SecurityBits="11"
Description="$Resources:xml_onet_mwsidmeetingDesc;"
Image="/_layouts/images/itevent.gif">
</ListTemplate>
<ListTemplate
Name="agenda"
DisplayName="$Resources:xml_onet_mwsidagendaDisp;"
Type="201"
BaseType="0"
FolderCreation="FALSE"
DisallowContentTypes="TRUE"
SecurityBits="11"
Description="$Resources:xml_onet_mwsidagendaDesc"
Image="/_layouts/images/itagnda.gif">
</ListTemplate>
...
</ListTemplates>
Каждый элемент ListTemplate задает внутреннее имя, идентифицирующее определение списка. Элемент ListTemplate также задает отображаемое имя определения списка и определяет, выбрана ли по умолчанию в пользовательском интерфейсе создания списка возможность добавления ссылок на панель Быстрый запуск. Кроме того, этот элемент указывает описание определения списка и путь к изображению, представляющему определение списка, которые отображаются в пользовательском интерфейсе создания списка. Если установлено значение Hidden="TRUE", то вариант определения списка в пользовательском интерфейсе создания списка недоступен.
Элемент ListTemplate имеет два атрибута для типа: Type и BaseType. Атрибут Type указывает уникальный идентификатор определения списка, а атрибут BaseType задает базовый тип списка для определения списка и соответствует значению атрибута Type, указанному для одного из базовых типов списков, заданных в глобальном файле Onet.xml.
Дополнительные сведения о создании новых типов списков см. в разделе Создание настраиваемого определения списка.
Элемент DocumentTemplates
В разделе DocumentTemplates определяются шаблоны документов, указанные в пользовательском интерфейсе для создания библиотеки документов. Эта разметка продолжает поддерживаться только для обеспечения обратной совместимости. Новые типы документов следует определять как типы контента. Дополнительные сведения см. в разделе Типы контента настоящего SDK.
<DocumentTemplates>
...
<DocumentTemplate
Path="STS"
DisplayName="$Resources:core,doctemp_Word;"
Type="121"
Default="TRUE"
Description="$Resources:core,doctemp_Word_Desc;">
<DocumentTemplateFiles>
<DocumentTemplateFile
Name="doctemp\word\wdtmpl.dotx"
TargetName="Forms/template.dotx"
Default="TRUE" />
</DocumentTemplateFiles>
</DocumentTemplate>
...
</DocumentTemplates>
В каждом элементе DocumentTemplate задается отображаемое имя, уникальный идентификатор и описание шаблона документа. Если для Default установлено значение TRUE, то шаблон является шаблоном по умолчанию, выбранным для библиотек документов, созданных на сайтах с использованием одной из конфигураций в определении веб-сайта. Несмотря на единственное число своего имени, элемент DocumentTemplate фактически может содержать коллекцию элементов DocumentTemplateFile. Атрибут Name каждого элемента DocumentTemplateFile задает относительный путь к локальному файлу, используемому в качестве шаблона. Атрибут TargetName указывает конечный URL-адрес файла шаблона при создании библиотеки документов. Атрибут Default указывает, является ли используемый файл файлом шаблона по умолчанию.
Примечание |
---|
У файла Onet.xml в веб-шаблоне не может быть элемента DocumentTemplate. |
Описание задачи разработки, связанной с шаблонами документов, см. в статье Добавление шаблона документа, типа файла и приложения редактирования к определению сайта.
Элемент BaseTypes
Элемент BaseTypes глобального файла Onet.xml используется при создании сайта или списка для определения базовых типов списков, на которых основаны все остальные определения списков в SharePoint Foundation. Каждый шаблон списка, указанный в разделе шаблонов списков, соответствует одному из этих базовых типов: Generic List, Document Library, Discussion Forum, Vote or Survey или Issues List.
Примечание |
---|
В SharePoint Foundation раздел BaseTypes используется только в глобальном файле Onet.xml, из которого взят следующий пример. |
<BaseTypes>
<BaseType
Title="Generic List"
Image="/_layouts/images/itgen.gif"
Type="0">
<MetaData>
<Fields>
<Field
ID="{1d22ea11-1e32-424e-89ab-9fedbadb6ce1}"
ColName="tp_ID"
RowOrdinal="0"
ReadOnly="TRUE"
Type="Counter"
Name="ID"
PrimaryKey="TRUE"
DisplayName="$Resources:core,ID"
SourceID="https://schemas.microsoft.com/sharepoint/v3"
StaticName="ID">
</Field>
<Field
ID="{03e45e84-1992-4d42-9116-26f756012634}"
RowOrdinal="0"
Type="ContentTypeId"
Sealed="TRUE"
ReadOnly="TRUE"
Hidden="TRUE"
DisplayName="$Resources:core,Content_Type_ID;"
Name="ContentTypeId"
DisplaceOnUpgrade="TRUE"
SourceID="https://schemas.microsoft.com/sharepoint/v3"
StaticName="ContentTypeId"
ColName="tp_ContentTypeId">
</Field>
...
</Fields>
</MetaData>
</BaseType>
...
</BaseTypes>
Каждый элемент BaseType указывает поля, используемые в списках, производных от базовых типов. Атрибут Type каждого элемента Field определяет тип поля, заданный в файле FldTypes.xml.
Внимание! |
---|
Не изменяйте содержимое глобального файла Onet.xml, поскольку это может привести к повреждению установленной версии. Нельзя добавлять новые базовые типы списков. Дополнительные сведения о добавлении определения списка см. в статье Создание настраиваемого определения списка. |
Элемент Configurations
Каждый элемент Configuration в разделе Configurations указывает списки, модули и компоненты, создаваемые по умолчанию при создании экземпляра конфигурации определения сайта или веб-шаблона.
<Configurations>
...
<Configuration
ID="0"
Name="Default">
<Lists>
<List
FeatureId="00BFEA71-E717-4E80-AA17-D0C71B360101"
Type="101"
Title="$Resources:core,shareddocuments_Title;"
Url="$Resources:core,shareddocuments_Folder;"
QuickLaunchUrl="$Resources:core,shareddocuments_Folder;/Forms/AllItems.aspx" />
...
</Lists>
<Modules>
<Module
Name="Default" />
</Modules>
<SiteFeatures>
<Feature
ID="00BFEA71-1C5E-4A24-B310-BA51C3EB7A57" />
<Feature
ID="FDE5D850-671E-4143-950A-87B473922DC7" />
</SiteFeatures>
<WebFeatures>
<Feature
ID="00BFEA71-4EA5-48D4-A4AD-7EA5C011ABE5" />
<Feature
ID="F41CC668-37E5-4743-B4A8-74D1DB3FD8A4" />
</WebFeatures>
</Configuration>
...
</Configurations>
Атрибут ID определяет конфигурацию (уникальным образом, относительно других конфигураций при их наличии в элементе Configurations). Если файл Onet.xml является частью определения сайта, то значение атрибута ID соответствует атрибуту ID элемента Configuration в файле WebTemp*.xml. (У веб-шаблонов нет файлов WebTemp*.xml.)
Каждый элемент List указывает название определения списка и URL-адрес хранения списка. Атрибут QuickLaunchUrl также может быть использован для указания URL-адреса страницы просмотра при добавлении ссылки с панели Быстрый запуск в список, созданный на основе определения списка. Значение атрибута Type соответствует атрибуту Type шаблона в разделе шаблонов списков. Каждый элемент Module указывает имя модуля, заданного в разделе модулей.
Элементы SiteFeatures и WebFeatures содержат ссылки на семейство веб-сайтов и на функции в области сайта, которые включаются в определение сайта.
Используйте элемент ExecuteUrl внутри элемента Configuration, чтобы указать URL-адрес, вызываемый после создания экземпляра сайта.
Дополнительные сведения о конфигурациях определений см. в статье Создание настраиваемого определения и конфигурации сайта.
Элемент Modules
Коллекция Modules определяет пул модулей. Конфигурация может ссылаться на любой модуль пула, если модуль должен включаться в веб-сайты, создаваемые из этой конфигурации. Каждый элемент Module, в свою очередь, задает один или несколько включаемых файлов, часто для веб-частей, которые кэшируются в памяти интерфейсного веб-сервера вместе с файлами схемы. Атрибут Url элемента Module можно использовать для предоставления папки в качестве фрагмента определения веб-сайта. Эта разметка поддерживается только для обеспечения обратной совместимости. Новые модули должны включаться в компоненты.
<Modules>
<Modules>
<Module
Name="Default"
Url=""
Path="">
<File
Url="default.aspx"
NavBarHome="True">
<View
List="$Resources:core,lists_Folder;
/$Resources:core,announce_Folder;"
BaseViewID="0"
WebPartZoneID="Left" />
<View
List="$Resources:core,lists_Folder;
/$Resources:core,calendar_Folder;"
BaseViewID="0"
RecurrenceRowset="TRUE"
WebPartZoneID="Left"
WebPartOrder="2" />
<AllUsersWebPart
WebPartZoneID="Right"
WebPartOrder="1"><![CDATA[<WebPart
xmlns="https://schemas.microsoft.com/WebPart/v2"
xmlns:iwp="https://schemas.microsoft.com
/WebPart/v2/Image">
<Assembly>Microsoft.SharePoint, Version=12.0.0.0,
Culture=neutral,
PublicKeyToken=71e9bce111e9429c</Assembly>
<TypeName>Microsoft.SharePoint.WebPartPages.ImageWebPart
</TypeName>
<FrameType>None</FrameType>
<Title>$Resources:wp_SiteImage;</Title>
<iwp:ImageLink>/_layouts/images/homepage.gif
</iwp:ImageLink>
<iwp:AlternativeText>$Resources:core,sitelogo_wss;
</iwp:AlternativeText>
</WebPart>]]>
</AllUsersWebPart>
<View
List="$Resources:core,lists_Folder;
/$Resources:core,links_Folder;"
BaseViewID="0"
WebPartZoneID="Right"
WebPartOrder="2" />
<NavBarPage
Name="$Resources:core,nav_Home;"
ID="1002"
Position="Start" />
<NavBarPage
Name="$Resources:core,nav_Home;"
ID="0"
Position="Start" />
</File>
</Module>
...
</Modules>
Элемент Module указывает имя модуля, соответствующее имени модуля, указанному в конфигурации в файле Onet.xml.
Атрибут Url каждого элемента File в модуле указывает имя файла, который будет создаваться при создании сайта. Если модуль содержит один файл, например default.aspx, то NavBarHome="TRUE" означает, что этот файл будет служить конечной страницей для ссылки Home на панелях навигации. Элемент File в файле default.aspx также определяет веб-части, включаемые в домашнюю страницу, и сведения о домашней странице для других страниц, содержащих ссылку на нее.
Элемент Module может содержаться только в файле Onet.xml, являющемся частью определения сайта, но не в файле Onet.xml, являющемся частью веб-шаблона.
Дополнительные сведения об использовании модулей в SharePoint Foundation см. в разделе Подготовка файла.
Элемент Components
Элемент Components указывает компоненты, включаемые в сайты, созданные при помощи определения.
<Components>
<FileDialogPostProcessor ID="BDEADEE4-C265-11d0-BCED-00A0C90AB50F" />
</Components>
Элемент Components может быть включен только в файл Onet.xml, который входит в определение сайта, но не в файл Onet.xml, входящий в состав веб-шаблона.
Элемент ServerEmailFooter
Элемент ServerEmailFooter определяет раздел нижнего колонтитула, используемый в исходящей электронной почте сервера.
<ServerEmailFooter>$Resources:ServerEmailFooter;</ServerEmailFooter>
Элемент ServerEmailFooter может быть включен только в файл Onet.xml, который входит в определение сайта, но не в файл Onet.xml, входящий в состав веб-шаблона.