Changes for page XWiki Migrations
Last modified by Agnease on 2026/05/25 16:46
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -3,7 +3,7 @@ 3 3 {{html clean="false"}} 4 4 5 5 ## PAGE HEADER 6 - <section class="hero hero-centered" aria-labelledby="hero-title"> 6 + <section class="hero hero-centered service-hero" aria-labelledby="hero-title"> 7 7 <div class="container hero-inner"> 8 8 <div class="hero-kicker"> 9 9 <i class="fa fa-exchange" aria-hidden="true"></i> ... ... @@ -14,9 +14,14 @@ 14 14 15 15 <p class="lead"> 16 16 Move content from Confluence, SharePoint, MediaWiki, file-based documentation or legacy systems into XWiki 17 - while preserving hierarchy,attachments, links, permissionsand long-term maintainability.17 + while preserving usability, structure and long-term maintainability. 18 18 </p> 19 19 20 + <p class="hero-support"> 21 + We help organizations plan and execute migrations that go beyond copying pages: hierarchy, attachments, 22 + links, permissions, metadata, macros, templates and redirects all need to be considered. 23 + </p> 24 + 20 20 <div class="hero-actions"> 21 21 <a class="btn btn-primary" href="$xwiki.getURL('contact.WebHome')">Discuss a migration</a> 22 22 <a class="btn btn-secondary" href="#migration-process">See the migration approach</a> ... ... @@ -25,35 +25,6 @@ 25 25 </section> 26 26 27 27 ## WHY MIGRATION NEEDS CARE 28 - #set ($migrationReasonItems = [{ 29 - 'title': 'Preserve structure', 30 - 'icon': 'sitemap', 31 - 'content': 'Keep spaces, hierarchies, navigation and page relationships understandable after the move.', 32 - 'items': [ 33 - 'Space and page hierarchy mapping', 34 - 'Navigation and landing page planning', 35 - 'Related content and category structure' 36 - ] 37 - },{ 38 - 'title': 'Protect continuity', 39 - 'icon': 'link', 40 - 'content': 'Reduce disruption by handling links, attachments, redirects, permissions and known content dependencies.', 41 - 'items': [ 42 - 'Attachment and link preservation', 43 - 'Redirect and URL transition planning', 44 - 'Permission model review' 45 - ] 46 - },{ 47 - 'title': 'Improve maintainability', 48 - 'icon': 'database', 49 - 'content': 'Use the migration as an opportunity to clean up content, introduce metadata and prepare better structures.', 50 - 'items': [ 51 - 'Templates and structured data', 52 - 'Metadata and tagging strategy', 53 - 'Content cleanup recommendations' 54 - ] 55 - }]) 56 - 57 57 <section aria-labelledby="why-migration-title"> 58 58 <div class="container"> 59 59 <h2 id="why-migration-title">A migration is more than moving pages</h2> ... ... @@ -65,55 +65,55 @@ 65 65 </p> 66 66 67 67 <div class="pathways"> 68 - #foreach ($entry in $migrationReasonItems) 69 - <article class="pathway-card"> 70 - <div class="card-heading"> 71 - <div class="pathway-icon"> 72 - <i class="fa fa-$entry.icon" aria-hidden="true"></i> 73 - </div> 74 - <h3>$entry.title</h3> 75 - </div> 44 + <article class="pathway-card"> 45 + <div class="pathway-icon"> 46 + <i class="fa fa-sitemap" aria-hidden="true"></i> 47 + </div> 48 + <h3>Preserve structure</h3> 49 + <p> 50 + Keep spaces, hierarchies, navigation and page relationships understandable after the move. 51 + </p> 52 + <ul> 53 + <li>Space and page hierarchy mapping</li> 54 + <li>Navigation and landing page planning</li> 55 + <li>Related content and category structure</li> 56 + </ul> 57 + </article> 76 76 77 - <p>$entry.content</p> 59 + <article class="pathway-card"> 60 + <div class="pathway-icon"> 61 + <i class="fa fa-link" aria-hidden="true"></i> 62 + </div> 63 + <h3>Protect continuity</h3> 64 + <p> 65 + Reduce disruption by handling links, attachments, redirects, permissions and known content dependencies. 66 + </p> 67 + <ul> 68 + <li>Attachment and link preservation</li> 69 + <li>Redirect and URL transition planning</li> 70 + <li>Permission model review</li> 71 + </ul> 72 + </article> 78 78 79 - <ul> 80 - #foreach ($item in $entry.items) 81 - <li>$item</li> 82 - #end 83 - </ul> 84 - </article> 85 - #end 74 + <article class="pathway-card"> 75 + <div class="pathway-icon"> 76 + <i class="fa fa-database" aria-hidden="true"></i> 77 + </div> 78 + <h3>Improve maintainability</h3> 79 + <p> 80 + Use the migration as an opportunity to clean up content, introduce metadata and prepare better structures. 81 + </p> 82 + <ul> 83 + <li>Templates and structured data</li> 84 + <li>Metadata and tagging strategy</li> 85 + <li>Content cleanup recommendations</li> 86 + </ul> 87 + </article> 86 86 </div> 87 87 </div> 88 88 </section> 89 89 90 90 ## MIGRATION SOURCES 91 - #set ($migrationSourceItems = [{ 92 - 'title': 'Confluence to XWiki', 93 - 'icon': 'book', 94 - 'content': 'Migration of pages, spaces, attachments, links and content that may include macros or Confluence-specific formatting.' 95 - },{ 96 - 'title': 'SharePoint to XWiki', 97 - 'icon': 'windows', 98 - 'content': 'Migration planning for document libraries, wiki-like content, intranet pages and knowledge structures.' 99 - },{ 100 - 'title': 'MediaWiki to XWiki', 101 - 'icon': 'globe', 102 - 'content': 'Migration of wiki pages, links, categories, attachments and content that may require syntax or structure conversion.' 103 - },{ 104 - 'title': 'Files and folders', 105 - 'icon': 'folder-open', 106 - 'content': 'Migration from file shares, exported documentation, PDFs, Word files or folder-based knowledge repositories.' 107 - },{ 108 - 'title': 'Legacy knowledge systems', 109 - 'icon': 'archive', 110 - 'content': 'Extraction and restructuring of content from older internal tools, portals or custom documentation systems.' 111 - },{ 112 - 'title': 'Mixed-source migrations', 113 - 'icon': 'random', 114 - 'content': 'Consolidation of content from multiple sources into a more coherent XWiki knowledge platform.' 115 - }]) 116 - 117 117 <section class="services" aria-labelledby="migration-sources-title"> 118 118 <div class="container"> 119 119 <h2 id="migration-sources-title">Common migration sources</h2> ... ... @@ -124,40 +124,82 @@ 124 124 </p> 125 125 126 126 <div class="services-grid"> 127 - #foreach ($entry in $migrationSourceItems) 128 - <article class="service"> 129 - <div class="service-icon" aria-hidden="true"> 130 - <i class="fa fa-$entry.icon"></i> 131 - </div> 103 + <article class="service"> 104 + <div class="service-icon" aria-hidden="true"> 105 + <i class="fa fa-book"></i> 106 + </div> 107 + <div class="service-body"> 108 + <h4>Confluence to XWiki</h4> 109 + <p> 110 + Migration of pages, spaces, attachments, links and content that may include macros or Confluence-specific formatting. 111 + </p> 112 + </div> 113 + </article> 132 132 133 - <div class="service-body"> 134 - <h4>$entry.title</h4> 135 - <p>$entry.content</p> 136 - </div> 137 - </article> 138 - #end 115 + <article class="service"> 116 + <div class="service-icon" aria-hidden="true"> 117 + <i class="fa fa-windows"></i> 118 + </div> 119 + <div class="service-body"> 120 + <h4>SharePoint to XWiki</h4> 121 + <p> 122 + Migration planning for document libraries, wiki-like content, intranet pages and knowledge structures. 123 + </p> 124 + </div> 125 + </article> 126 + 127 + <article class="service"> 128 + <div class="service-icon" aria-hidden="true"> 129 + <i class="fa fa-globe"></i> 130 + </div> 131 + <div class="service-body"> 132 + <h4>MediaWiki to XWiki</h4> 133 + <p> 134 + Migration of wiki pages, links, categories, attachments and content that may require syntax or structure conversion. 135 + </p> 136 + </div> 137 + </article> 138 + 139 + <article class="service"> 140 + <div class="service-icon" aria-hidden="true"> 141 + <i class="fa fa-folder-open"></i> 142 + </div> 143 + <div class="service-body"> 144 + <h4>Files and folders</h4> 145 + <p> 146 + Migration from file shares, exported documentation, PDFs, Word files or folder-based knowledge repositories. 147 + </p> 148 + </div> 149 + </article> 150 + 151 + <article class="service"> 152 + <div class="service-icon" aria-hidden="true"> 153 + <i class="fa fa-archive"></i> 154 + </div> 155 + <div class="service-body"> 156 + <h4>Legacy knowledge systems</h4> 157 + <p> 158 + Extraction and restructuring of content from older internal tools, portals or custom documentation systems. 159 + </p> 160 + </div> 161 + </article> 162 + 163 + <article class="service"> 164 + <div class="service-icon" aria-hidden="true"> 165 + <i class="fa fa-random"></i> 166 + </div> 167 + <div class="service-body"> 168 + <h4>Mixed-source migrations</h4> 169 + <p> 170 + Consolidation of content from multiple sources into a more coherent XWiki knowledge platform. 171 + </p> 172 + </div> 173 + </article> 139 139 </div> 140 140 </div> 141 141 </section> 142 142 143 143 ## MIGRATION PROCESS 144 - #set ($migrationProcessItems = [{ 145 - 'title': 'Assess the source content', 146 - 'content': 'Review structure, volume, attachments, links, permissions, formatting, macros, metadata and export options.' 147 - },{ 148 - 'title': 'Define the target XWiki structure', 149 - 'content': 'Decide spaces, page hierarchy, templates, metadata, permissions, naming rules and navigation strategy.' 150 - },{ 151 - 'title': 'Run a sample migration', 152 - 'content': 'Migrate a representative subset of content to identify conversion issues and validate the approach.' 153 - },{ 154 - 'title': 'Refine conversion and cleanup rules', 155 - 'content': 'Adjust mappings, formatting, link handling, attachments, macros, categories and content cleanup decisions.' 156 - },{ 157 - 'title': 'Execute and validate the migration', 158 - 'content': 'Run the migration, review key content areas, verify attachments and links, and document remaining follow-up work.' 159 - }]) 160 - 161 161 <section id="migration-process" class="split-section" aria-labelledby="process-title"> 162 162 <div class="container"> 163 163 <div class="split-grid"> ... ... @@ -177,12 +177,26 @@ 177 177 </div> 178 178 179 179 <ol class="process-list"> 180 - #foreach ($entry in $migrationProcessItems) 181 - <li> 182 - <strong>$entry.title</strong> 183 - $entry.content 184 - </li> 185 - #end 198 + <li> 199 + <strong>Assess the source content</strong> 200 + Review structure, volume, attachments, links, permissions, formatting, macros, metadata and export options. 201 + </li> 202 + <li> 203 + <strong>Define the target XWiki structure</strong> 204 + Decide spaces, page hierarchy, templates, metadata, permissions, naming rules and navigation strategy. 205 + </li> 206 + <li> 207 + <strong>Run a sample migration</strong> 208 + Migrate a representative subset of content to identify conversion issues and validate the approach. 209 + </li> 210 + <li> 211 + <strong>Refine conversion and cleanup rules</strong> 212 + Adjust mappings, formatting, link handling, attachments, macros, categories and content cleanup decisions. 213 + </li> 214 + <li> 215 + <strong>Execute and validate the migration</strong> 216 + Run the migration, review key content areas, verify attachments and links, and document remaining follow-up work. 217 + </li> 186 186 </ol> 187 187 </div> 188 188 </div> ... ... @@ -189,24 +189,6 @@ 189 189 </section> 190 190 191 191 ## WHAT CAN BE INCLUDED 192 - #set ($migrationIncludedItems = [{ 193 - 'title': 'Content conversion', 194 - 'icon': 'file-text-o', 195 - 'content': 'Page content, syntax, formatting, links, images, attachments and other reusable knowledge assets.' 196 - },{ 197 - 'title': 'Structure mapping', 198 - 'icon': 'sitemap', 199 - 'content': 'Spaces, page hierarchy, navigation, naming rules, landing pages and organization of knowledge areas.' 200 - },{ 201 - 'title': 'Permissions review', 202 - 'icon': 'lock', 203 - 'content': 'Review and mapping of access rights where the source system contains meaningful permission rules.' 204 - },{ 205 - 'title': 'Metadata strategy', 206 - 'icon': 'tags', 207 - 'content': 'Tags, categories, templates, XWiki classes or structured data to improve long-term maintainability.' 208 - }]) 209 - 210 210 <section aria-labelledby="included-title"> 211 211 <div class="container"> 212 212 <h2 id="included-title">What can be included</h2> ... ... @@ -217,47 +217,50 @@ 217 217 </p> 218 218 219 219 <div class="widgets"> 220 - #foreach ($entry in $migrationIncludedItems) 221 - <article class="widget"> 222 - <div class="icon" aria-hidden="true"> 223 - <i class="fa fa-$entry.icon"></i> 224 - <h4>$entry.title</h4> 225 - </div> 234 + <article class="widget"> 235 + <div class="icon" aria-hidden="true"> 236 + <i class="fa fa-file-text-o"></i> 237 + <h4>Content<br />conversion</h4> 238 + </div> 239 + <p> 240 + Page content, syntax, formatting, links, images, attachments and other reusable knowledge assets. 241 + </p> 242 + </article> 226 226 227 - <p>$entry.content</p> 228 - </article> 229 - #end 244 + <article class="widget"> 245 + <div class="icon" aria-hidden="true"> 246 + <i class="fa fa-sitemap"></i> 247 + <h4>Structure<br />mapping</h4> 248 + </div> 249 + <p> 250 + Spaces, page hierarchy, navigation, naming rules, landing pages and organization of knowledge areas. 251 + </p> 252 + </article> 253 + 254 + <article class="widget"> 255 + <div class="icon" aria-hidden="true"> 256 + <i class="fa fa-lock"></i> 257 + <h4>Permissions<br />review</h4> 258 + </div> 259 + <p> 260 + Review and mapping of access rights where the source system contains meaningful permission rules. 261 + </p> 262 + </article> 263 + 264 + <article class="widget"> 265 + <div class="icon" aria-hidden="true"> 266 + <i class="fa fa-tags"></i> 267 + <h4>Metadata<br />strategy</h4> 268 + </div> 269 + <p> 270 + Tags, categories, templates, XWiki classes or structured data to improve long-term maintainability. 271 + </p> 272 + </article> 230 230 </div> 231 231 </div> 232 232 </section> 233 233 234 234 ## IMPORTANT CONSIDERATIONS 235 - #set ($migrationConsiderationItems = [{ 236 - 'title': 'Macros and special content', 237 - 'icon': 'code', 238 - 'content': 'Source-specific macros, embeds, widgets or dynamic content may require conversion, replacement or redesign.' 239 - },{ 240 - 'title': 'Links and redirects', 241 - 'icon': 'link', 242 - 'content': 'Internal links, external references, old URLs and bookmarks should be reviewed to reduce broken navigation.' 243 - },{ 244 - 'title': 'Search and findability', 245 - 'icon': 'search', 246 - 'content': 'Content organization, titles, metadata and navigation affect how easily users find migrated knowledge.' 247 - },{ 248 - 'title': 'User adoption', 249 - 'icon': 'user', 250 - 'content': 'A technically successful migration still needs clear navigation, familiar entry points and user guidance.' 251 - },{ 252 - 'title': 'Validation effort', 253 - 'icon': 'check-square-o', 254 - 'content': 'Important spaces and high-value content should be reviewed after migration to catch conversion issues.' 255 - },{ 256 - 'title': 'Cutover planning', 257 - 'icon': 'clock-o', 258 - 'content': 'Timing, source freeze, final migration, redirects and communication should be planned before go-live.' 259 - }]) 260 - 261 261 <section class="services" aria-labelledby="considerations-title"> 262 262 <div class="container"> 263 263 <h2 id="considerations-title">Important migration considerations</h2> ... ... @@ -268,35 +268,82 @@ 268 268 </p> 269 269 270 270 <div class="services-grid"> 271 - #foreach ($entry in $migrationConsiderationItems) 272 - <article class="service"> 273 - <div class="service-icon" aria-hidden="true"> 274 - <i class="fa fa-$entry.icon"></i> 275 - </div> 288 + <article class="service"> 289 + <div class="service-icon" aria-hidden="true"> 290 + <i class="fa fa-code"></i> 291 + </div> 292 + <div class="service-body"> 293 + <h4>Macros and special content</h4> 294 + <p> 295 + Source-specific macros, embeds, widgets or dynamic content may require conversion, replacement or redesign. 296 + </p> 297 + </div> 298 + </article> 276 276 277 - <div class="service-body"> 278 - <h4>$entry.title</h4> 279 - <p>$entry.content</p> 280 - </div> 281 - </article> 282 - #end 300 + <article class="service"> 301 + <div class="service-icon" aria-hidden="true"> 302 + <i class="fa fa-link"></i> 303 + </div> 304 + <div class="service-body"> 305 + <h4>Links and redirects</h4> 306 + <p> 307 + Internal links, external references, old URLs and bookmarks should be reviewed to reduce broken navigation. 308 + </p> 309 + </div> 310 + </article> 311 + 312 + <article class="service"> 313 + <div class="service-icon" aria-hidden="true"> 314 + <i class="fa fa-search"></i> 315 + </div> 316 + <div class="service-body"> 317 + <h4>Search and findability</h4> 318 + <p> 319 + Content organization, titles, metadata and navigation affect how easily users find migrated knowledge. 320 + </p> 321 + </div> 322 + </article> 323 + 324 + <article class="service"> 325 + <div class="service-icon" aria-hidden="true"> 326 + <i class="fa fa-user"></i> 327 + </div> 328 + <div class="service-body"> 329 + <h4>User adoption</h4> 330 + <p> 331 + A technically successful migration still needs clear navigation, familiar entry points and user guidance. 332 + </p> 333 + </div> 334 + </article> 335 + 336 + <article class="service"> 337 + <div class="service-icon" aria-hidden="true"> 338 + <i class="fa fa-check-square-o"></i> 339 + </div> 340 + <div class="service-body"> 341 + <h4>Validation effort</h4> 342 + <p> 343 + Important spaces and high-value content should be reviewed after migration to catch conversion issues. 344 + </p> 345 + </div> 346 + </article> 347 + 348 + <article class="service"> 349 + <div class="service-icon" aria-hidden="true"> 350 + <i class="fa fa-clock-o"></i> 351 + </div> 352 + <div class="service-body"> 353 + <h4>Cutover planning</h4> 354 + <p> 355 + Timing, source freeze, final migration, redirects and communication should be planned before go-live. 356 + </p> 357 + </div> 358 + </article> 283 283 </div> 284 284 </div> 285 285 </section> 286 286 287 287 ## RELATED SERVICES 288 - #set ($relatedMigrationServiceItems = [{ 289 - 'title': 'XWiki Development & Integrations', 290 - 'url': 'services.xwiki-development-integrations', 291 - 'content': 'Custom applications, workflows, dashboards, integrations and structured knowledge solutions built on top of XWiki.', 292 - 'linkLabel': 'View development services' 293 - },{ 294 - 'title': 'XWiki Support & Maintenance', 295 - 'url': 'services.xwiki-maintenance-support', 296 - 'content': 'Ongoing technical care for production environments after the migration is completed.', 297 - 'linkLabel': 'View support services' 298 - }]) 299 - 300 300 <section class="resource-strip" aria-labelledby="related-title"> 301 301 <div class="container"> 302 302 <h2 id="related-title">Related XWiki services</h2> ... ... @@ -306,13 +306,21 @@ 306 306 </p> 307 307 308 308 <div class="resource-grid"> 309 - #foreach ($entry in $relatedMigrationServiceItems) 310 - <article class="resource-card"> 311 - <h4>$entry.title</h4> 312 - <p>$entry.content</p> 313 - <a href="$xwiki.getURL($entry.url)">$entry.linkLabel</a> 314 - </article> 315 - #end 373 + <article class="resource-card"> 374 + <h4>XWiki Development & Integrations</h4> 375 + <p> 376 + Custom applications, workflows, dashboards, integrations and structured knowledge solutions built on top of XWiki. 377 + </p> 378 + <a href="$xwiki.getURL('services.xwiki-development-integrations')">View development services</a> 379 + </article> 380 + 381 + <article class="resource-card"> 382 + <h4>XWiki Support & Maintenance</h4> 383 + <p> 384 + Ongoing technical care for production environments after the migration is completed. 385 + </p> 386 + <a href="$xwiki.getURL('services.xwiki-maintenance-support')">View support services</a> 387 + </article> 316 316 </div> 317 317 </div> 318 318 </section>