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
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


Mime
View raw message