schema/libreoffice/OpenDocument-v1.4+libreoffice-schema.rng | 40 ++++++++++-- 1 file changed, 36 insertions(+), 4 deletions(-)
New commits: commit 9e13361a61d773caff45b99301df771ea76d545a Author: Michael Stahl <[email protected]> AuthorDate: Wed Sep 10 10:51:18 2025 +0200 Commit: Adolfo Jayme Barrientos <[email protected]> CommitDate: Wed Sep 10 19:02:10 2025 +0200 tdf#166319 schema: limit change nesting to what is actually supported Change-Id: Ie574377ea9cdd90ed9261229abaca480b4010440 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190738 Reviewed-by: Miklos Vajna <[email protected]> Tested-by: Jenkins (cherry picked from commit e21f78274d9620b05f43a520b3922a375b271a12) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190771 Reviewed-by: Adolfo Jayme Barrientos <[email protected]> diff --git a/schema/libreoffice/OpenDocument-v1.4+libreoffice-schema.rng b/schema/libreoffice/OpenDocument-v1.4+libreoffice-schema.rng index 0ecec12dad0f..62e6d2b3090f 100644 --- a/schema/libreoffice/OpenDocument-v1.4+libreoffice-schema.rng +++ b/schema/libreoffice/OpenDocument-v1.4+libreoffice-schema.rng @@ -4140,10 +4140,42 @@ xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1. <rng:define name="text-changed-region" combine="choice"> <rng:element name="text:changed-region"> <rng:ref name="text-changed-region-attr"/> - <rng:ref name="text-changed-region-content"/> - <rng:optional> - <rng:ref name="text-changed-region-content"/> - </rng:optional> + <rng:choice> + <rng:ref name="text-changed-region-content-insertion"/> + <rng:group> + <rng:ref name="text-changed-region-content-deletion"/> + <rng:optional> + <rng:ref name="text-changed-region-content-insertion"/> + </rng:optional> + </rng:group> + <rng:group> + <rng:ref name="text-changed-region-content-format-change"/> + <rng:optional> + <rng:choice> + <rng:ref name="text-changed-region-content-insertion"/> + <rng:ref name="text-changed-region-content-deletion"/> + </rng:choice> + </rng:optional> + </rng:group> + </rng:choice> + </rng:element> + </rng:define> + <rng:define name="text-changed-region-content-insertion"> + <rng:element name="text:insertion"> + <rng:ref name="office-change-info"/> + </rng:element> + </rng:define> + <rng:define name="text-changed-region-content-deletion"> + <rng:element name="text:deletion"> + <rng:ref name="office-change-info"/> + <rng:zeroOrMore> + <rng:ref name="text-content"/> + </rng:zeroOrMore> + </rng:element> + </rng:define> + <rng:define name="text-changed-region-content-format-change"> + <rng:element name="text:format-change"> + <rng:ref name="office-change-info"/> </rng:element> </rng:define>
