Présentation des fichiers Onet.xml

Dernière modification : mercredi 2 février 2011

S’applique à : SharePoint Foundation 2010

Dans cet article
Fonctions de Onet.xml
Tâches de définition de site Web avec un fichier Onet.xml personnalisé
Format de fichier

Lorsque Microsoft SharePoint Foundation est installé, plusieurs fichiers Onet.xml sont installés, dont un dans %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\GLOBAL\XML, qui s’applique globalement au déploiement, et plusieurs autres dans des dossiers différents dans %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\SiteTemplates. Chaque fichier de ce dernier groupe correspond à une définition de site qui est incluse dans SharePoint Foundation. Ils comprennent, par exemple, des sites de blog, le site Administration centrale, des sites d’espace de travail de réunion et des sites d’équipe SharePoint. Seules les deux dernières familles contiennent plusieurs configurations de définition de site.

Le fichier Onet.xml global définit les modèles de listes pour les listes masquées, les types de base de liste, une configuration de définition par défaut et les modules qui s’appliquent globalement au déploiement. Chaque fichier Onet.xml dans un sous-répertoire du répertoire %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\SiteTemplates peut définir des zones de navigation, des modèles de listes, des modèles de documents, les configurations, les modules, les composants et les pieds de message électronique du serveur qui sont utilisés dans la définition de site correspondante.

Notes

Un fichier Onet.xml fait également partie d’un modèle Web. Certains éléments Langage CAML (Collaborative Application Markup Language) qui peuvent être présents dans les fichiers Onet.xml de définitions de site ne peuvent pas se trouver dans les fichiers Onet.xml qui font partie de modèles Web, par exemple, l’élément DocumentTemplates.

Fonctions de Onet.xml

Suivant l’emplacement où se trouve un fichier Onet.xml et selon qu’il fait ou non partie d’une définition de site ou d’un modèle Web, le marquage dans le fichier effectue une partie ou la totalité des opérations suivantes :

  • Spécifier les fonctionnalités dont l’étendue est limitée au site Web et à la collection de sites, et qui sont intégrées aux sites Web créés à partir de la définition de site ou du modèle Web.

  • Spécifier les types de listes, pages, fichiers et composants WebPart qui sont intégrés aux sites Web créés à partir de la définition de site ou du modèle Web.

  • Définir la partie supérieure et les zones de navigation latérales qui s’affichent dans la page d’accueil et dans les affichages de liste pour une définition de site.

  • Spécifier les définitions de liste qui servent dans chaque définition de site et déterminer si elles sont disponibles pour créer des listes dans l’interface utilisateur.

  • Spécifier les modèles de documents disponibles dans la définition de site pour créer des listes de bibliothèques de documents dans l’interface utilisateur, et spécifier les fichiers utilisés dans les modèles de documents.

  • Définir les types de listes de base à partir desquels les listes par défaut SharePoint Foundation sont dérivées. (Seul le fichier Onet.xml global remplit cette fonction. Vous ne pouvez pas définir de nouveaux types de listes de base.)

  • Spécifier les composants SharePoint Foundation.

  • Définir la section de pied de page utilisée dans la messagerie serveur.

Tâches de définition de site Web avec un fichier Onet.xml personnalisé

Vous pouvez effectuer les types de tâches suivantes dans un fichier Onet.xml personnalisé utilisé pour une définition de site personnalisée ou pour un modèle Web personnalisé :

  • Spécifier un autre fichier de feuille de style en cascade (CSS), un fichier JavaScript ou un fichier d’en-tête ASPX pour une définition de site.

  • Modifier des zones de navigation pour la page d'accueil et les pages de listes.

  • Ajouter une nouvelle définition de liste en tant qu’option dans l’interface utilisateur.

  • Définir une configuration pour la définition de site ou le modèle Web, en spécifiant les listes, modules, fichiers et composants WebPart qui sont inclus lors de l’instanciation de la configuration.

  • Spécifier les fonctionnalités à inclure automatiquement dans les sites Web créés à partir de la définition de site ou du modèle Web.

Vous pouvez effectuer les types de tâches suivantes dans un fichier Onet.xml personnalisé utilisé pour une définition de site personnalisée, mais pas dans un fichier Onet.xml personnalisé utilisé pour un modèle Web personnalisé :

  1. Ajouter un modèle de document pour la création des bibliothèques de documents.

  2. Définir plusieurs configurations pour une définition de site, en spécifiant les listes, modules, fichiers et composants WebPart qui sont inclus lors de l’instanciation de la configuration.

  3. Définir un pied personnalisé pour les messages électroniques envoyés à partir des sites Web basés sur la définition de site.

  4. Définir des composants personnalisés, tels qu’un post-processeur de la boîte de dialogue de fichier, pour les sites Web basés sur la définition de site.

Note AttentionAttention

Vous ne pouvez pas créer des types de listes de base dans une définition de site ou dans un modèle Web. Seuls les types de base définis dans le fichier Onet.xml global sont pris en charge.

Note AttentionAttention

La modification d’un fichier Onet.xml initialement installé n’est pas prise en charge. Une telle opération risque de porter préjudice aux sites existants. En outre, lorsque vous installez des mises à jour ou des Service Packs pour SharePoint Foundation, ou que vous mettez à niveau une installation vers la version suivante du produit, il peut exister une nouvelle version du fichier fourni par Microsoft et l’installation ne peut pas fusionner vos modifications avec la nouvelle version. Si vous souhaitez un type de site qui soit similaire à un type de site prédéfini, et que vous ne pouvez pas utiliser un modèle Web, créez une définition de site dotée de son propre fichier Onet.xml ; ne modifiez pas le fichier d’origine. Pour plus d’informations, voir Procédure : créer une définition de site personnalisée et une configuration. Pour plus d’informations sur les situations dans lesquelles vous ne pouvez pas utiliser un modèle Web, voir Choix entre modèles Web personnalisés et définitions de site personnalisées

Format de fichier

Les sections suivantes définissent les différents éléments du fichier Onet.xml.

Élément Project

L’élément Project de niveau supérieur spécifie un nom par défaut pour les sites qui sont créés par le biais des configurations de site dans la définition de site. Il spécifie également le répertoire qui contient les sous-dossiers dans lesquels résident les fichiers pour chaque définition de liste.

Notes

Sauf indication contraire, les extraits utilisés dans les codes exemples suivants sont pris dans le fichier Onet.xml pour la définition de site STS.

<Project 
  Title="$Resources:core,onet_TeamWebSite;" 
  Revision="2" 
  ListDir="$Resources:core,lists_Folder;" 
  xmlns:ows="Microsoft SharePoint" 
  UIVersion="4">

Notes

Dans tous les exemples de cette rubrique, les chaînes qui commencent par « $Resources » sont des constantes qui sont définies dans un fichier .resx. Par exemple, « $Resources:onet_TeamWebSite » est défini dans le fichier core.resx en tant que « site d’équipe ». Lorsque vous créez un fichier Onet.xml personnalisé, vous pouvez utiliser des chaînes littérales.

Cet élément peut également posséder plusieurs autres attributs. Pour plus d’informations, voir Project, élément (Site).

L’élément Project ne contient aucun attribut identifiant la définition de site qu’il définit. Chaque fichier Onet.xml est associé à une définition de site en fonction du chemin d’accès du répertoire dans lequel il réside, qui (à l’exception du fichier Onet.xml global) est %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\SiteTemplates\type_site\XML\, où type_site est le nom de la définition de site, par exemple STS ou MPS. Le fichier Onet.xml d’un modèle Web est associé à ce dernier du fait de sa présence dans le package .wsp du modèle Web.

Élément NavBars

L'élément NavBars contient les définitions de la zone de navigation supérieure qui s'affiche dans la page d'accueil ou dans les affichages de listes, et les définitions de la zone de navigation latérale qui s'affiche dans la page d'accueil.

Notes

Un élément NavBar n’est pas nécessairement une barre d’outils. Par exemple, il peut s’agir d’une arborescence de liens.

<NavBars>
  <NavBar 
    Name="$Resources:core,category_Top;" 
    Separator="&amp;nbsp;&amp;nbsp;&amp;nbsp;" 
    Body="&lt;a ID='onettopnavbar#LABEL_ID#' href='#URL#' accesskey='J'&gt;#LABEL#&lt;/a&gt;" 
    ID="1002" />
  <NavBar 
    Name="$Resources:core,category_Documents;" 
    Prefix="&lt;table border='0' cellpadding='4' cellspacing='0'&gt;" 
    Body="&lt;tr&gt;&lt;td&gt;&lt;table border='0' cellpadding='0' cellspacing='0'&gt;&lt;tr&gt;&lt;td&gt;&lt;img src='/_layouts/images/blank.gif' id='100' alt='' border='0'&gt;&amp;nbsp;&lt;/td&gt;&lt;td valign='top'&gt;&lt;a id='onetleftnavbar#LABEL_ID#' href='#URL#'&gt;#LABEL#&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;" 
    Suffix="&lt;/table&gt;" 
    ID="1004" />
    ...
</NavBars>

Un élément NavBarLink définit des liens pour la zone de navigation supérieure ou latérale, et des nouveaux liens de groupes de sections NavBar dans la zone latérale. Chaque élément NavBar spécifie un nom complet et un ID unique pour la barre de navigation, et définit le mode d’affichage de la barre de navigation.

Pour plus d’informations sur la personnalisation des zones de navigation dans les pages SharePoint Foundation, voir Navigation du site Web.

Élément ListTemplates

La section ListTemplates spécifie les définitions de liste qui font partie d’une définition de site. Toutefois, ce marquage n’est pris en charge que pour des raisons de compatibilité descendante. Les nouveaux types de listes personnalisés doivent être définis en tant que fonctionnalités. L’exemple suivant est tiré du fichier Onet.xml pour la définition de site Espace de travail de réunion.

<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>

Chaque élément ListTemplate spécifie un nom interne qui identifie la définition de liste. L’élément ListTemplate spécifie également un nom complet pour la définition de liste et indique si l’option qui permet d’ajouter un lien dans la barre Lancement rapide apparaît sélectionnée par défaut dans l’interface utilisateur de création de liste. En outre, cet élément spécifie la description de la définition de liste et le chemin d’accès de l’image qui représente la définition de liste, qui sont tous deux affichés dans l’interface utilisateur de création de liste. Si Hidden="TRUE" est spécifié, la définition de liste n’apparaît pas comme option dans l’interface utilisateur de création de liste.

L’élément ListTemplate a deux attributs pour le type, Type et BaseType. L’attribut Type spécifie un identificateur unique pour la définition de liste, alors que l’attribut BaseType identifie le type de liste de base pour la définition de liste et correspond à la valeur Type spécifiée pour l’un des types de la liste de base définis dans le fichier Onet.xml global.

Pour plus d’informations sur la création de types de listes, voir Procédure : créer une définition de liste personnalisée.

Élément DocumentTemplates

La section DocumentTemplates définit les modèles de document qui sont répertoriés dans l’interface utilisateur de création d’une bibliothèque de documents. Toutefois, ce marquage n’est pris en charge que pour des raisons de compatibilité descendante. Vous devez définir les nouveaux types de documents en tant que types de contenu. Pour plus d’informations, voir la section Types de contenu de ce Kit de développement logiciel (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>

Chaque élément DocumentTemplate spécifie un nom complet, un identificateur unique et une description pour le modèle de document. Si Default prend la valeur TRUE, le modèle est le modèle par défaut sélectionné pour les bibliothèques de documents qui reposent sur les configurations définies dans la définition de site. Malgré son nom unique, un élément DocumentTemplate peut en réalité contenir une collection d’éléments DocumentTemplateFile. L’attribut Name de chaque élément DocumentTemplateFile spécifie le chemin d’accès relatif à un fichier local qui sert de modèle. L’attribut TargetName spécifie l’URL de destination du fichier de modèle lorsqu’une bibliothèque de documents est créée. L’attribut Default spécifie si le fichier est le fichier modèle par défaut.

Notes

Un fichier Onet.xml dans un modèle Web ne peut pas posséder d’élément DocumentTemplate.

Pour consulter une tâche de développement qui implique des modèles de documents, voir Procédure : ajouter un modèle de document, un type de fichier et une application d'édition à une définition de site.

Élément BaseTypes

L’élément BaseTypes du fichier Onet.xml global est utilisé lors de la création d’un site ou d’une liste pour définir les types de listes de base sur lesquels reposent toutes les définitions de liste dans SharePoint Foundation. Chaque modèle de liste spécifié dans la section des modèles de listes est identifié avec l’un des types de base suivants : Generic List, Document Library, Discussion Forum, Vote or Survey ou Issues List.

Notes

Dans SharePoint Foundation, la section BaseTypes est implémentée uniquement dans le fichier Onet.xml global, d’où est extrait le code exemple suivant.

<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>

Chaque élément BaseType spécifie les champs utilisés dans les listes qui sont dérivées du type de base. L’attribut Type de chaque élément Field identifie le champ à l’aide d’un type de champ qui est défini dans FldTypes.xml.

Note AttentionAttention

Ne modifiez pas le contenu du fichier Onet.xml global, car cela peut interrompre l’installation. Les types de listes de base ne peuvent pas être ajoutés. Pour plus d’informations sur l’ajout d’une définition de liste, voir Procédure : créer une définition de liste personnalisée.

Élément Configurations

Chaque élément Configuration de la section Configurations spécifie les listes, modules et fonctionnalités qui sont créés par défaut lorsque la configuration de la définition du site ou le modèle Web est instancié.

<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>

L’attribut ID identifie la configuration (relative de manière unique aux autres configurations éventuelles dans l’élément Configurations). Si le fichier Onet.xml fait partie d’une définition de site, la valeur ID correspond à l’attribut ID d’un élément Configuration dans un fichier WebTemp*.xml. (Les modèles Web ne possèdent pas de fichiers WebTemp*.xml.)

Chaque élément List spécifie le titre de la définition de liste et l’URL de l’emplacement où créer la liste. Vous pouvez utiliser l’attribut QuickLaunchUrl pour définir l’URL de la page d’affichage à utiliser lorsque vous ajoutez un lien dans la barre d’outils Lancement rapide à une liste créée à partir de la définition de liste. La valeur de l’attribut Type correspond à l’attribut Type d’un modèle dans la section des modèles de listes. Chaque élément Module spécifie le nom d’un module défini dans la section des modules.

Les éléments SiteFeatures et WebFeatures contiennent des références aux fonctionnalités de collection de sites et d’étendue de site à inclure dans la définition de site.

Pour les capacités de post-traitement, utilisez un élément ExecuteUrl dans un élément Configuration pour spécifier l'URL qui est appelée à la suite de l'instanciation du site.

Pour plus d’informations sur les configurations de définition, voir Procédure : créer une définition de site personnalisée et une configuration.

Élément Modules

La collection Modules spécifie un groupe de modules. Chaque module au sein de ce groupe peut être référencé par une configuration s’il doit être inclus dans les sites Web créés à partir de la configuration. Chaque élément Module à son tour spécifie un ou plusieurs fichiers à inclure, souvent pour des composants WebPart, qui sont mis en cache en mémoire sur le serveur Web frontal, ainsi que les fichiers de schéma. Vous pouvez utiliser l’attribut Url de l’élément Module pour configurer un dossier dans le cadre de la définition de site. Ce marquage n’est pris en charge que pour des raisons de compatibilité descendante. Les nouveaux modules doivent être incorporés dans des fonctionnalités.

<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>

L’élément Module spécifie un nom pour le module, qui correspond à un nom de module spécifié dans une configuration dans le fichier Onet.xml.

L’attribut Url de chaque élément File dans un module spécifie le nom d’un fichier à créer lorsqu’un site est créé. Lorsque le module inclut un fichier unique, tel que default.aspx, NavBarHome="TRUE" spécifie que le fichier servira de page de destination pour le lien Home dans les barres de navigation. L’élément File du fichier default.aspx spécifie également les composants WebPart à inclure dans la page d’accueil, ainsi que des informations sur la page d’accueil pour les autres pages qui contiennent un lien vers elle.

Un élément Module peut uniquement se trouver dans un fichier Onet.xml qui fait partie d’une définition de site ; il ne peut pas figurer dans un fichier Onet.xml qui fait partie d’un modèle Web.

Pour plus d’informations sur l’utilisation des modules dans SharePoint Foundation, voir Procédure : mettre en service un fichier.

Élément Components

L’élément Components spécifie les composants à inclure dans les sites créés par le biais de la définition.

<Components>
  <FileDialogPostProcessor ID="BDEADEE4-C265-11d0-BCED-00A0C90AB50F" />
</Components>

Un élément Components peut uniquement être inclus dans un fichier Onet.xml qui fait partie d’une définition de site ; il ne peut pas figurer dans un fichier Onet.xml qui fait partie d’un modèle Web.

Élément ServerEmailFooter

L’élément ServerEmailFooter spécifie la section de pied de page utilisée dans le message électronique envoyé depuis le serveur.

<ServerEmailFooter>$Resources:ServerEmailFooter;</ServerEmailFooter>

Un élément ServerEmailFooter peut uniquement être inclus dans un fichier Onet.xml qui fait partie d’une définition de site ; il ne peut pas figurer dans un fichier Onet.xml qui fait partie d’un modèle Web.

Voir aussi

Concepts

Schéma de site