Hi, I had proposed to use the ^ character as attachment delimiter. Ex: wiki:Space.Page^attachment
However I've just realized while implementing it that it's an "unwise" character in an URI (source: http://www.ietf.org/rfc/rfc2396.txt) unwise = "{" | "}" | "|" | "\" | "^" | "[" | "]" | "`" Allowed punctuations characters are: mark = "-" | "_" | "." | "!" | "~" | "*" | "'" | "(" | ")" BTW the following are reserved: reserved = ";" | "/" | "?" | ":" | "@" | "&" | "=" | "+" | "$" | "," Note that we use ":" for wiki delimiter but that's okay since we're using an opaque URI and thus reserved chars, unreserved chars and escaped chars are authorized. I think it would be better to choose amongst one the valid chars for the attachment to prevent future problems. Of course this means we'll have to make that character forbidden in a page name. Actually we could also decide that it's character forbidden in an attachment (and use lastIndexOf() instead of indexOf() to separate the page name from the attachment name). Or we could double it once again... I propose we use the @ symbol since it's not a char used often in page names. For example: attach:wiki:[EMAIL PROTECTED] This raises the discussion of the full FQN we'd like to have when we support nested spaces too. For example: (wiki name) "::" (space name) [ "." (space name)]* "::" (page name) ["@" (attachment name)]? Now what about referencing objects and properties using a URI too? Do we want that? What would be the use? Right now I don't see a use and using an API to access them seems fine to me. Alternative view ============ We could also only specify the attachment name in the uri and use link parameters to specify the document where it's located as in: [[image:my.png>>document="wiki:Space.Page"]] This sounds reasonable to me too. I think the real question is whether we need a textual representation of an attachment FQN or not. WDYT? Thanks -Vincent _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs

