[ 
http://issues.apache.org/jira/browse/JCR-241?page=comments#action_12331567 ] 

Marcel Reutegger commented on JCR-241:
--------------------------------------

I think Jukka's initial intent was to assign a prefix to the default (empty 
namespace). That is, names that previously had no prefix should then have the 
prefix 'foo'. Is that correct Jukka?

I can certainly see the use case Roy metioned, however I don't think that this 
can be or should be done with the namespace registry. While quickly defining a 
new namespace as the default one can be done quite easily in an xml document, 
re-mapping a namespace in JCR has a global effect on the whole repository. That 
is, not just the imported names would get a namespace (prefix) but also all 
other names that previously had no namespace must get one. Restricting a 
namespace mapping to just a certain scope (as you can do in an xml document) is 
not possible in JCR.

So, to assign a namespace to names that one has just imported in JCR, I think 
one has to actually *rename* the nodes and properties. Because that basically 
what it is about: a name without a namespace becomes a name with a namespace. 
In contrast to an xml document where you simply declare a new namespace for a 
certain scope, JCR namespaces are always global and changing them has a 
repository wide effect.

> Remapping the default namespace
> -------------------------------
>
>          Key: JCR-241
>          URL: http://issues.apache.org/jira/browse/JCR-241
>      Project: Jackrabbit
>         Type: Wish
>     Reporter: Jukka Zitting
>     Priority: Minor
>      Fix For: 1.0

>
> I'm not sure if this is a bug, feature or standard behaviour, but currently 
> it is not possible to remap the default namespace to some other prefix. The 
> following code throws a NamespaceException:
>     session.setNamespacePrefix("foo", "");
> At least the Session.setNamespacePrefix() javadoc doesn't seem to prohibit 
> changing the prefix of the default namespace and I couldn't find anything 
> more specific in the JCR specification document. Restrictions are only placed 
> on remapping the xml namespace.
> Note that the current nodetype code is actually relying on the default 
> namespace being mapped to the empty prefix, so changing this would require 
> small changes there as well.
> I haven't really run into any cases where I'd have needed such functionality, 
> but it would be nice to clarify this issue.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to