<
From version < 3.6 >
edited by Guillaume Delhumeau
on 2016/02/25
To version < 3.8 >
edited by Guillaume Delhumeau
on 2016/02/25
>
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -12,8 +12,32 @@
12 12  
13 13  == Parent/Child relationship ==
14 14  
15 -The user was able to specify a **parent** page for each page she had created. This parent could have been any page, for example the page ##Movies.ItsAWonderfulLife## could have ##Directors.FrankCapra##. Then ##ItsAWonderfulLife## was listed as ##Child## of ##FrankCapra##.
15 +The user was able to specify a **parent** page for each page she had created. This parent could have been any page, for example the page ##Movies.ItsAWonderfulLife## could have ##Directors.FrankCapra## as parent. Then ##ItsAWonderfulLife## was listed as ##Child## of ##FrankCapra##. This relationship was displayed in the //breadcrumb// at the top of each page. The user was able to navigate through this //hierarchy//.
16 16  
17 +Some applications used this parent/child relationship to organized their data. For them, this relationship is crucial.
18 +
19 +== The introduction of the Nested Pages concept ==
20 +
21 +In XWiki 7.2, due to frequent users demands, we have introduced the ability to create spaces under some other spaces. It's the **Nested Spaces** concept. We suddenly had the ability to create a hierarchy of spaces to organize our content.
22 +
23 +But we have also found some issues. What if a space hold the same name then a page? Which entry should we render to the user when she reach an URL where 2 entities are matching? Moreover, does it make sense to have a difference between a space and a page? Why the pages cannot have sub-pages inside of them?
24 +
25 +Then we have decided to switch to the **Nested Pages** concept. In theory, a page should now be able to have some sub-pages, because we don't need to have a distinct between a page and a space like we have between a file and a folder.
26 +
27 +But this change was not possible to make on the API side because it would have required too much work that we could not afford at this time. So the decision was made to stick on the **Nested Spaces** implementation on the API (for now), but to propose **Nested Pages** in the UI.
28 +
29 +How does it work?
30 +
31 +Each time a user creates a page from the XWiki UI, she now actually creates a space (without knowing it ;)) with its ##WebHome## page. It means that any user-created page is called ##WebHome##.
32 +
33 +Then, when the user wants to create a sub-page ##FrankCapra## in the page ##Directors.WebHome##, she actually creates a new space inside the space ##Directors## with its ##WebHome## page: ##Directors.FrankCapra.WebHome##. **That's the trick!**
34 +
35 +The notion of space have been removed from the UI. It's not mentioned anywhere, anymore. Everything seems to work as if we were really creating sub-pages, even if we have created sub-spaces behind the scene.
36 +
37 +{{info}}
38 +That tricks should be temporary. When we will able the opportunity to rewrite the core model of XWiki, we will really implement the Nested Pages concept in the API.
39 +{{/info}}
40 +
17 17  = Principle =
18 18  
19 19  After having upgrade the XWiki instance to a recent version (7.4+), you should convert your existing pages to nested ones. This will permit:

Get Connected