Show last authors
1 {{include document="XWiki.DesignClassSheet"/}}
2
3 Rationale of this new scheme:
4
5 * Be able to have more meaningful and shorter URLs
6 * Consistency with entity references in wiki syntax
7 * Be able to copy paste from URL to content
8
9 == General ==
10
11 General format: ##http:~/~/<server>/<context>/<subsystem>/<depends on the subsystem>##
12
13 == Subsystem: ##entity## ==
14
15 Format: ##http:~/~/<server>/<context>/entity/<action>/<entity reference type>/<entity reference>##
16
17 Examples when context is ROOT:
18
19 * http:~/~/localhost:8080/entity/view/page/wiki:space.page
20 * http:~/~/localhost:8080/entity/export/attach/wiki:[email protected]
21 * http:~/~/localhost:8080/entity/export/attach/wiki:[email protected]?format=xar|pdf|html
22
23 == Shortcuts ==
24
25 For Entity subsystem:
26
27 * If entity type = ##page## then the entity type can be omitted. Example: ##http:~/~/localhost:8080/entity/view/wiki:space.page##. This can be achieved by looking at the number of path segments after the action part. If more than 1 then first segment is the type.
28 * If action = ##view## then the action can be omitted. Example: ##http:~/~/localhost:8080/entity/wiki:space.page##. This can be achieved by checking the number of path segments after the subsystem part. If 1 segment then action = ##view##. If 2 segments then we just need to look at the segment name and this means not allowing actions to be named after entity types, otherwise need to use the full syntax.
29 * Each action has a default entity type. For action = ##view## the default is ##page##. For action = ##export## the default is ##attach##. This allows to have a short URL for the main use cases for exports which is exporting an attachment (aka downloading an attachment); Example: ##http:~/~/localhost:8080/export/wiki:[email protected]##.
30
31 General:
32
33 * If subsystem = ##entity## then the subsystem type can be omitted. Example: ##http:~/~/localhost:8080/wiki:space.page##. This means that actions cannot be named after subsystems and that reference types cannot be named after actions (or vice-versa). Otherwise need to use the longer and more explicit syntax. Note that since we want static resources to be handled by the servlet container directly without incurring the penalty cost of going through a Filter/Servlet we will need to add an explicit mapping for skins/resources in this case (see [[Short URLs>>platform:Main.ShortURLs]])
34
35 == Subsystem: ##rest## ==
36
37 {{todo/}}
38
39 == Subsystem: ##skins## ==
40
41 {{todo/}}
42
43 == Subsystem: ##resources## ==
44
45 {{todo/}}

Get Connected