[
https://issues.apache.org/jira/browse/JCR-3452?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13506623#comment-13506623
]
Tom Quellenberg commented on JCR-3452:
--------------------------------------
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