jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Marcel Reutegger (JIRA)" <j...@apache.org>
Subject [jira] Commented: (JCR-241) Remapping the default namespace
Date Fri, 07 Oct 2005 08:38:48 GMT
    [ 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

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
>     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:
For more information on JIRA, see:

View raw message