You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "Tom Quellenberg (JIRA)" <ji...@apache.org> on 2012/11/29 19:16:58 UTC

[jira] [Comment Edited] (JCR-3452) Modified property and child node definition are rejected

    [ https://issues.apache.org/jira/browse/JCR-3452?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13506623#comment-13506623 ] 

Tom Quellenberg edited comment on JCR-3452 at 11/29/12 6:15 PM:
----------------------------------------------------------------

Yes, that is correct. BUT, adding additional child node types is making the restriction LESS restrictive and should be allowed. And setting the child node to nt:base makes the restriction LEAST restrictive. Both changes do no harm to existing content. 
                
      was (Author: quellenberg):
    Yes, that is correct. BUT, adding additional child node types is making the restriction LESS restrictive and should be allowed. And setting the child not to nt:base makes the restriction LEAST restrictive. Both changes do no harm to existing content. 
                  
> Modified property and child node definition are rejected
> --------------------------------------------------------
>
>                 Key: JCR-3452
>                 URL: https://issues.apache.org/jira/browse/JCR-3452
>             Project: Jackrabbit Content Repository
>          Issue Type: Bug
>    Affects Versions: 2.5.2
>            Reporter: Tom Quellenberg
>            Priority: Minor
>         Attachments: patch.txt
>
>
> NodeTypeDefDiff identifies modified properties and child nodes by QNodeDefinitionId and QPropertyDefinitionId. Both classes have their own equals and hashCode methods. Thus, properties and child nodes with trivial changes (changed required types or isMultiple) are always considered as added and removed ( = major change) and never as changed.
> Additional, the check for required child node types seems wrong to me: adding additional (alternative) constraints are considered as major change. I think, the opposite is true: removing node types from the list of required types is a major change (there may exist child nodes of the removed type), adding alternative constraints is a trivial change.
> There is one more change to the required child node types, which can easily be checked: setting the required type to nt:base. This should always be possible.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira