Utilisation d'un package de migration de contenu
Dernière modification : vendredi 2 octobre 2009
S’applique à : SharePoint Foundation 2010
Dans cet article
ExportSettings.xml
Requirements.xml
RootObjectMap.xml
SystemData.xml
UserGroups.xml
Manifest.xml
Le package de migration de contenu est composé d'un ensemble de fichiers de données qui contient toutes les informations relatives à une opération d'exportation, ainsi qu'un fichier manifeste qui décrit la structure des données.
Ci-dessous figure une brève description des fichiers inclus dans un package de migration de contenu.
ExportSettings.xml
Le fichier ExportSettings.xml permet de vérifier la logique de l'exportation et de vérifier que tout ce qui est attendu dans l'exportation figure dans le package.
<ExportSettings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" SiteUrl="http://server1/"
FileLocation="c:\" BaseFileName="cmfile.cmp" IncludeSecurity="None"
IncludeVersions="LastMajor" ExportMethod="ExportAll"
ExportChangesSinceDate="0001-01-01T00:00:00"
xmlns="urn:deployment-exportsettings-schema">
<ExportObjects />
</ExportSettings>
Requirements.xml
Le fichier Requirements.xml contient les informations utilisées pour la vérification préliminaire qui précède toute importation. Ce fichier XML vérifie par exemple les points suivants :
La langue est installée sur l'emplacement cible (dans ce cas, l'anglais). Dans le cas contraire, l'importation échoue.
Les modèles sont installés sur l'emplacement cible (dans ce cas, la version anglaise du modèle dont l'ID est « STS#1 »). Dans le cas contraire, l'importation échoue.
Les définitions de fonction sont installées sur l'emplacement cible. Dans le cas contraire, l'importation échoue.
Notes
Une fois l'importation terminée, toutes les fonctions sont activées.
Les composants WebPart figurent dans la liste des contrôles fiables sur l'emplacement cible. Si c'est le cas, l'importation continue. Sinon, un avertissement est publié et l'importation continue (sauf si HaltOnWarning est défini sur true).
Notes
Le modèle objet ne vérifie pas si les DLL du composant WebPart sont installées sur l'emplacement cible. C'est la responsabilité de l'administrateur.
<Requirements xmlns="urn:deployment-requirements-schema">
<Requirement Type="Language" Id="1033" Name="English" />
<Requirement Type="WebTemplate" Id="STS#1" Name="1033" Data="English" />
<Requirement Type="WebPart"
Id="Microsoft.SharePoint.dll v2.0.50727"
Name="2242cce6-491a-657a-c8ee-b10a2a993eda" />
<Requirement Type="FeatureDefinition"
Id="695b6570-a48b-4a8e-8ea5-26ea7fc1d162"
Name="ctypes" />
...
RootObjectMap.xml
Le fichier RootObjectMap.xml définit l'objet de niveau supérieur à importer, autrement dit, l'objet sans parent.
Dans l'exemple suivant, il n'y a qu'un seul objet de niveau supérieur. Cependant, comme une exportation inclut toutes les dépendances et que ces dernières peuvent être en dehors du site Web exporté, il peut y avoir plusieurs objets de niveau supérieur.
<RootObjects xmlns="urn:deployment-rootobjectmap-schema">
<RootObject Id="d78135df-74f0-44ff-86d9-44cb5583f3a1"
Type="Web" ParentId="00000000-0000-0000-0000-000000000000"
WebUrl="/" Url="/" IsDependency="false" />
</RootObjects>
SystemData.xml
Le fichier SystemData.xml contient tous les objets par défaut installés sur un serveur étendu avec SharePoint Foundation. Ces informations sont utilisées principalement lorsque l'opération d'exportation/importation conserve les GUID entre les emplacements source et cible.
Ce fichier contient la version du schéma. Si elle ne correspond pas à la version de la destination, l'importation échoue.
<SystemData xmlns="urn:deployment-systemdata-schema">
<SchemaVersion Version="12.0.x.0" Build="12.0.0.xxxx" DatabaseVersion="xxxx" SiteVersion="0" />
<ManifestFiles>
<ManifestFile Name="Manifest.xml" />
</ManifestFiles>
<SystemObjects>
<SystemObject Id="d78135df-74f0-44ff-86d9-44cb5583f3a1" Type="Web" Url="/" />
<SystemObject Id="6b4bd918-76a0-4b7e-8e09-4a0356543e42" Type="Folder" Url="/" />
...
UserGroups.xml
Le fichier UserGroup.xml contient toutes les informations relatives aux utilisateurs et aux groupes du site Web source. L'exemple suivant ne contient aucune information d'utilisateur et de groupe. Pour les inclure, voir la propriété IncludeSecurity.
<UserGroupMap xmlns="urn:deployment-usergroupmap-schema">
<Users>
<User Id="1" Name="Terry Adams" Login="DOMAIN\username" Email="someone@example.com" IsDomainGroup="False" IsSiteAdmin="True" SystemId="ABCDEFGHIJKLMNOPoQRWfnhXm1/yzIdwDMoDAD==" IsDeleted="false" />
</Users>
<Groups />
</UserGroupMap>
Manifest.xml
Le fichier Manifest.xml est le principal fichier utilisé pour la migration de contenu. Il renferme une collection d'éléments SPObject qui représentent tout le contenu exporté sérialisé en fichiers XML. Chaque élément SPObject est doté d'un attribut ObjectType qui indique s'il s'agit d'un SPWeb, SPFolder, SPFile, etc.
Notes
Vous pouvez avoir plusieurs fichiers Manifest.xml et les diviser en plusieurs fichiers plus petits.
Le fichier Manifest.xml est basé sur une relation linéaire entre les objets. Autrement dit, tous les objets sont sur le même niveau et il n'existe aucun conteneur dans le fichier. Le parent d'un objet doit le précéder dans le fichier Manifest.xml. Par exemple, l'entrée SPFile ci-dessous doit être précédée dans le fichier Manifest.xml par son parent SPFolder.
Chaque objet SPFile a un attribut FileValue faisant référence au fichier DAT englobant le contenu du fichier. Par exemple, dans la section suivante du fichier Manifest.xml, vous pouvez observer un objet SPFile avec la valeur FileValue="00000001.dat", définissant l'emplacement des données associées au fichier.
<SPObject Id="a9a407c3-b155-41cc-9ca1-483525072f70"
ObjectType="SPFile" ParentId="bb480411-a95c-49cc-857e-a229194b99d6"
ParentWebId="d78135df-74f0-44ff-86d9-44cb5583f3a1" ParentWebUrl="/"
Url="/_catalogs/lt/Forms/DispForm.aspx">
<File Url="_catalogs/lt/Forms/DispForm.aspx"
Id="a9a407c3-b155-41cc-9ca1-483525072f70"
ParentWebId="d78135df-74f0-44ff-86d9-44cb5583f3a1" ParentWebUrl="/"
DirName="_catalogs/lt/Forms" Name="DispForm.aspx"
ListId="330e3721-3de2-474a-a4be-05a0831d6b4d"
ParentId="bb480411-a95c-49cc-857e-a229194b99d6"
ScopeId="e4252b2a-aa90-49f1-b7f5-f59714fd1efd"
TimeCreated="2006-03-13T22:58:21" TimeLastModified="2006-03-13T22:58:21"
Version="1.0" IsGhosted="true" SetupPath="pages\form.aspx"
SetupPathVersion="3" SetupPathUser="1" FileValue="00000001.dat" />
</SPObject>