Changes for page XWiki Migrations
Last modified by Agnease on 2026/05/25 16:46
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Objects (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Title
-
... ... @@ -1,1 +1,1 @@ 1 - xwiki-migrations1 +XWiki Migrations - Content
-
... ... @@ -3,7 +3,7 @@ 3 3 {{html clean="false"}} 4 4 5 5 ## PAGE HEADER 6 - <section class="hero hero-centered service-hero" aria-labelledby="hero-title">6 + <section class="hero hero-centered" 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,14 +14,9 @@ 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 usability,structure and long-term maintainability.17 + while preserving hierarchy, attachments, links, permissions 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 - 25 25 <div class="hero-actions"> 26 26 <a class="btn btn-primary" href="$xwiki.getURL('contact.WebHome')">Discuss a migration</a> 27 27 <a class="btn btn-secondary" href="#migration-process">See the migration approach</a> ... ... @@ -30,6 +30,35 @@ 30 30 </section> 31 31 32 32 ## WHY MIGRATION NEEDS CARE 28 + #set ($migrationReasonItems = [{ 29 + 'title': 'Preserve structure', 30 + 'icon': 'sitemap', 31 + 'content': 'Keep spaces, hierarchies, navigation, page relationships and entry points understandable after the move.', 32 + 'items': [ 33 + 'Space and page hierarchy mapping', 34 + 'Navigation and landing page planning', 35 + 'Search and findability considerations' 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 redesign what should not be copied as-is.', 50 + 'items': [ 51 + 'Templates and structured data', 52 + 'Metadata and tagging strategy', 53 + 'Manual cleanup recommendations' 54 + ] 55 + }]) 56 + 33 33 <section aria-labelledby="why-migration-title"> 34 34 <div class="container"> 35 35 <h2 id="why-migration-title">A migration is more than moving pages</h2> ... ... @@ -36,146 +36,105 @@ 36 36 37 37 <p class="section-intro"> 38 38 Documentation platforms usually contain years of accumulated knowledge, links, attachments, permissions, 39 - templates and habits. A successful migration should preserve what matters whileimprovinghowthe knowledge40 - is organized and maintained in XWiki. 63 + templates, macros and habits. A successful migration should preserve what matters, reduce broken navigation 64 + and improve how the knowledge is organized and maintained in XWiki. 41 41 </p> 42 42 43 43 <div class="pathways"> 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> 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> 58 58 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> 77 + <p>$entry.content</p> 73 73 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> 79 + <ul> 80 + #foreach ($item in $entry.items) 81 + <li>$item</li> 82 + #end 83 + </ul> 84 + </article> 85 + #end 88 88 </div> 89 89 </div> 90 90 </section> 91 91 92 92 ## 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 + 93 93 <section class="services" aria-labelledby="migration-sources-title"> 94 94 <div class="container"> 95 95 <h2 id="migration-sources-title">Common migration sources</h2> 96 96 97 97 <p class="section-intro"> 98 - Each source system has different export formats, content models and limitations. The migration approach 99 - depends on the quality of the source data, the expected XWiki structure and the amount of transformation needed. 122 + Each source system has different export formats, content models, permissions and limitations. 123 + The migration approach depends on the quality of the source data, the expected XWiki structure 124 + and the amount of conversion, cleanup or redesign needed. 100 100 </p> 101 101 102 102 <div class="services-grid"> 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> 128 + #foreach ($entry in $migrationSourceItems) 129 + <article class="service"> 130 + <div class="service-icon" aria-hidden="true"> 131 + <i class="fa fa-$entry.icon"></i> 132 + </div> 114 114 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> 134 + <div class="service-body"> 135 + <h4>$entry.title</h4> 136 + <p>$entry.content</p> 137 + </div> 138 + </article> 139 + #end 174 174 </div> 175 175 </div> 176 176 </section> 177 177 178 178 ## MIGRATION PROCESS 145 + #set ($migrationProcessItems = [{ 146 + 'title': 'Assess the source content', 147 + 'content': 'Review structure, volume, attachments, links, permissions, formatting, macros, metadata and export options.' 148 + },{ 149 + 'title': 'Define the target XWiki structure', 150 + 'content': 'Decide spaces, page hierarchy, templates, metadata, permissions, naming rules and navigation strategy.' 151 + },{ 152 + 'title': 'Run a sample migration', 153 + 'content': 'Migrate a representative subset of content to identify formatting, macro, link, attachment and structure issues.' 154 + },{ 155 + 'title': 'Refine conversion and cleanup rules', 156 + 'content': 'Adjust mappings, formatting, link handling, attachments, macros, categories and content cleanup decisions.' 157 + },{ 158 + 'title': 'Execute and validate the migration', 159 + 'content': 'Run the migration, review key content areas, verify attachments, links, redirects and navigation, and document remaining follow-up work.' 160 + }]) 161 + 179 179 <section id="migration-process" class="split-section" aria-labelledby="process-title"> 180 180 <div class="container"> 181 181 <div class="split-grid"> ... ... @@ -189,32 +189,18 @@ 189 189 </p> 190 190 191 191 <p> 192 - Migrations are best handled iteratively: assess the source, run a sample migration, validate the result,193 - a djustthetransformation rules and then proceed with a controlled migration plan.175 + Migrations are best handled iteratively: assess the source, run a sample migration, validate links, 176 + attachments, formatting and important spaces, adjust the conversion rules and then proceed with a controlled migration plan. 194 194 </p> 195 195 </div> 196 196 197 197 <ol class="process-list"> 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> 181 + #foreach ($entry in $migrationProcessItems) 182 + <li> 183 + <strong>$entry.title</strong> 184 + $entry.content 185 + </li> 186 + #end 218 218 </ol> 219 219 </div> 220 220 </div> ... ... @@ -221,170 +221,78 @@ 221 221 </section> 222 222 223 223 ## WHAT CAN BE INCLUDED 193 + #set ($migrationIncludedItems = [{ 194 + 'title': 'Content conversion', 195 + 'icon': 'file-text-o', 196 + 'content': 'Page content, syntax, formatting, links, images, attachments and other reusable knowledge assets.' 197 + },{ 198 + 'title': 'Structure mapping', 199 + 'icon': 'sitemap', 200 + 'content': 'Spaces, page hierarchy, navigation, naming rules, landing pages and organization of knowledge areas.' 201 + },{ 202 + 'title': 'Permissions review', 203 + 'icon': 'lock', 204 + 'content': 'Review and mapping of access rights where the source system contains meaningful permission rules.' 205 + },{ 206 + 'title': 'Cleanup and validation', 207 + 'icon': 'check-square-o', 208 + 'content': 'Post-migration review of important spaces, broken links, attachments, formatting issues and content needing manual cleanup.' 209 + }]) 210 + 224 224 <section aria-labelledby="included-title"> 225 225 <div class="container"> 226 226 <h2 id="included-title">What can be included</h2> 227 227 228 228 <p class="section-intro"> 229 - The exact migration scope depends on the source system and the quality of the exported content. A migration 230 - engagement can include both technical conversion and practical information architecture work. 216 + The exact migration scope depends on the source system and the quality of the exported content. 217 + A migration engagement can include technical conversion, information architecture, permission review, 218 + cleanup recommendations and post-migration validation. 231 231 </p> 232 232 233 233 <div class="widgets"> 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> 222 + #foreach ($entry in $migrationIncludedItems) 223 + <article class="widget"> 224 + <div class="icon" aria-hidden="true"> 225 + <i class="fa fa-$entry.icon"></i> 226 + <h4>$entry.title</h4> 227 + </div> 243 243 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> 229 + <p>$entry.content</p> 230 + </article> 231 + #end 273 273 </div> 274 274 </div> 275 275 </section> 276 276 277 - ## IMPORTANT CONSIDERATIONS 278 - <section class="services" aria-labelledby="considerations-title"> 279 - <div class="container"> 280 - <h2 id="considerations-title">Important migration considerations</h2> 281 - 282 - <p class="section-intro"> 283 - Not every element from the source system maps perfectly to XWiki. The migration plan should distinguish 284 - between what can be converted automatically, what needs manual cleanup and what should be redesigned. 285 - </p> 286 - 287 - <div class="services-grid"> 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> 299 - 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> 359 - </div> 360 - </div> 361 - </section> 362 - 363 363 ## RELATED SERVICES 237 + #set ($relatedMigrationServiceItems = [{ 238 + 'title': 'XWiki Development & Integrations', 239 + 'url': 'services.xwiki-development-integrations', 240 + 'content': 'Custom applications, workflows, dashboards, integrations and structured knowledge solutions built on top of XWiki.', 241 + 'linkLabel': 'View development services' 242 + },{ 243 + 'title': 'XWiki Support & Maintenance', 244 + 'url': 'services.xwiki-maintenance-support', 245 + 'content': 'Ongoing technical care for production environments after the migration is completed.', 246 + 'linkLabel': 'View support services' 247 + }]) 248 + 364 364 <section class="resource-strip" aria-labelledby="related-title"> 365 365 <div class="container"> 366 366 <h2 id="related-title">Related XWiki services</h2> 367 367 368 368 <p class="section-intro"> 369 - Migration work often connects with custom development, support and upgrade planning.254 + Migration work often connects with custom development, support and long-term platform maintenance. 370 370 </p> 371 371 372 372 <div class="resource-grid"> 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> 258 + #foreach ($entry in $relatedMigrationServiceItems) 259 + <article class="resource-card"> 260 + <h4>$entry.title</h4> 261 + <p>$entry.content</p> 262 + <a href="$xwiki.getURL($entry.url)">$entry.linkLabel</a> 263 + </article> 264 + #end 388 388 </div> 389 389 </div> 390 390 </section> ... ... @@ -396,8 +396,8 @@ 396 396 <h2 id="cta-title">Planning a migration to XWiki?</h2> 397 397 398 398 <p> 399 - Send a short description of the source system, approximate content volume, export options and thetypeof400 - XWiki structure you want to achieve. A sample export or representative content area is often enough to start. 276 + Send a short description of the source system, approximate content volume, export options, expected timing 277 + and the type of XWiki structure you want to achieve. A sample export or representative content area is often enough to start. 401 401 </p> 402 402 403 403 <a class="btn btn-primary" href="$xwiki.getURL('contact.WebHome')">Discuss a migration</a>
- Agnease.Code.SEODetailsClass[0]
-
- metaTitle
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki Migration Services |Confluence, SharePoint and MediaWiki1 +XWiki Migration Services from Confluence, SharePoint and MediaWiki | Agnease