Skip to content

feat(backend): handle headings in table cells #2031

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 7 commits into
base: main
Choose a base branch
from

Conversation

cgawron
Copy link

@cgawron cgawron commented Aug 1, 2025

This PR makes the MsWordDocumentBackend
handle headings (i.e. call self._add_header()) 'hidden' in table cells.

Issue resolved by this Pull Request:
Resolves #2030

Checklist:

  • Documentation has been updated, if necessary.
  • Examples have been added, if necessary.
  • Tests have been added, if necessary.

Copy link
Contributor

github-actions bot commented Aug 1, 2025

DCO Check Passed

Thanks @cgawron, all your commits are properly signed off. 🎉

Copy link

mergify bot commented Aug 1, 2025

Merge Protections

Your pull request matches the following merge protections and will not be merged until they are valid.

🟢 Enforce conventional commit

Wonderful, this rule succeeded.

Make sure that we follow https://www.conventionalcommits.org/en/v1.0.0/

  • title ~= ^(fix|feat|docs|style|refactor|perf|test|build|ci|chore|revert)(?:\(.+\))?(!)?:

cgawron added 4 commits August 1, 2025 16:45
I, Christian Gawron <gawron.christian@fh-swf.de>, hereby add my Signed-off-by to this commit: cf855cc

Signed-off-by: Christian Gawron <gawron.christian@fh-swf.de>
I, Christian Gawron <gawron.christian@fh-swf.de>, hereby add my Signed-off-by to this commit: cf855cc

Signed-off-by: Christian Gawron <gawron.christian@fh-swf.de>
I, Christian Gawron <gawron.christian@fh-swf.de>, hereby add my Signed-off-by to this commit: dbe215e

Signed-off-by: Christian Gawron <gawron.christian@fh-swf.de>
@dolfim-ibm
Copy link
Contributor

dolfim-ibm commented Aug 4, 2025

@cgawron can you please provide some example test file which shows the different before and after your PR?

Note: currently table cells only support plain text. We are working to add rich text content (e.g. lists, headings, etc) but the DoclingDocument is not yet able to capture it.

Meanwhile, I think it is important not to miss this content, but it can only be represented as plain text in the table cell.

@cgawron
Copy link
Author

cgawron commented Aug 4, 2025

@dolfim-ibm I used this document to test my code.
With the PR, the MsWordDocumentBackend adds heading metadata for the level-2 headings inside table cells.

Note: currently table cells only support plain text.
We are working to add rich text content (e.g. lists, headings, etc) but the DoclingDocument is not yet able to capture it.

For the HybridChunker, adding heading metadata (i.e. calling _add_header()) is sufficient – it does not need the formatting.

I'm not sure where to add examples or documentation – I don't think that there is much documentation regarding the handling of table cells.

@dolfim-ibm
Copy link
Contributor

I would be interested in seeing the diff in a markdown or html export.

@cgawron
Copy link
Author

cgawron commented Aug 4, 2025

@dolfim-ibm Here the diff in the markdown export – the patched version adds a heading above the table:

*** "VAI MSc_Modulhandbuch_FPO 2020_WS 2025-26_Bearbeitungsversion.md"	2025-08-04 10:23:26.227810375 +0200
--- "before/VAI MSc_Modulhandbuch_FPO 2020_WS 2025-26_Bearbeitungsversion.md"	2025-08-04 10:21:42.999995989 +0200
***************
*** 145,156 ****
  
  **Die Module, die den einzelnen Containern zugeordnet sind, finden Sie im Bereich** [**„Wahlpflichtfächer / Containermodule“**](.) **dieses Modulhandbuchs.**
  
  ## Pflichtmodule aller Studienrichtungen
  
- ### Kryptographie
- 
  | Kryptographie   | Kryptographie                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | Kryptographie                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | Kryptographie                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | Kryptographie                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | Kryptographie                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | Kryptographie                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | Kryptographie                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | Kryptographie                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | Kryptographie                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
  |-----------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
  | Kennnummer      | Kennnummer                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | Workload  150 h                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | Credits nach ECTS 6                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | Credits nach ECTS 6                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | Studien- semester 1. Semester                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | Studien- semester 1. Semester                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | Häufigkeit des Angebots Wintersemester                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | Häufigkeit des Angebots Wintersemester                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | Dauer  1 Semester                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
  | 1               | Lehrveranstaltungen 2 SWS Vorlesung & 1 SWS Übung (als Lehrbrief) 1 SWS Übung                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | Lehrveranstaltungen 2 SWS Vorlesung & 1 SWS Übung (als Lehrbrief) 1 SWS Übung                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | Lehrveranstaltungen 2 SWS Vorlesung & 1 SWS Übung (als Lehrbrief) 1 SWS Übung                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | Kontaktzeit  25 h                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       | Kontaktzeit  25 h                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       | Selbststudium  125 h                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | Selbststudium  125 h                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | geplante Gruppengröße 30 Studierende                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | geplante Gruppengröße 30 Studierende                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
  | 2               | Lernergebnisse (learning outcomes) / Kompetenzen Die Studierenden kennen die Bedeutung der Schutzziele Datenintegrität, Vertraulichkeit, Authentizität und Verbindlichkeit sowie Methoden und kryptographische Primitiven, die zur Erreichung dieser Schutzziele eingesetzt werden. Sie verstehen die grundlegenden Sicherheitsbegriffe der Kryptographie und können in einfachen Szenarien beurteilen, mit welchen kryptographischen Verfahren und Protokollen nach aktuellem Stand der Technik die Schutzziele erreicht werden können. Sie erwerben die Kompetenz, diese Verfahren und Protokolle unter Zuhilfenahme von Open-Source- Kryptobibliotheken auch selbst zu implementieren. Weiterhin kennen die Studierenden praktisch relevante Angriffe auf die behandelten Schutzmaßnahmen, insbesondere auch solche, die erst durch eine ungeeignete Implementierung möglich werden, und können angemessene Gegenmaßnahmen anwenden. | Lernergebnisse (learning outcomes) / Kompetenzen Die Studierenden kennen die Bedeutung der Schutzziele Datenintegrität, Vertraulichkeit, Authentizität und Verbindlichkeit sowie Methoden und kryptographische Primitiven, die zur Erreichung dieser Schutzziele eingesetzt werden. Sie verstehen die grundlegenden Sicherheitsbegriffe der Kryptographie und können in einfachen Szenarien beurteilen, mit welchen kryptographischen Verfahren und Protokollen nach aktuellem Stand der Technik die Schutzziele erreicht werden können. Sie erwerben die Kompetenz, diese Verfahren und Protokolle unter Zuhilfenahme von Open-Source- Kryptobibliotheken auch selbst zu implementieren. Weiterhin kennen die Studierenden praktisch relevante Angriffe auf die behandelten Schutzmaßnahmen, insbesondere auch solche, die erst durch eine ungeeignete Implementierung möglich werden, und können angemessene Gegenmaßnahmen anwenden. | Lernergebnisse (learning outcomes) / Kompetenzen Die Studierenden kennen die Bedeutung der Schutzziele Datenintegrität, Vertraulichkeit, Authentizität und Verbindlichkeit sowie Methoden und kryptographische Primitiven, die zur Erreichung dieser Schutzziele eingesetzt werden. Sie verstehen die grundlegenden Sicherheitsbegriffe der Kryptographie und können in einfachen Szenarien beurteilen, mit welchen kryptographischen Verfahren und Protokollen nach aktuellem Stand der Technik die Schutzziele erreicht werden können. Sie erwerben die Kompetenz, diese Verfahren und Protokolle unter Zuhilfenahme von Open-Source- Kryptobibliotheken auch selbst zu implementieren. Weiterhin kennen die Studierenden praktisch relevante Angriffe auf die behandelten Schutzmaßnahmen, insbesondere auch solche, die erst durch eine ungeeignete Implementierung möglich werden, und können angemessene Gegenmaßnahmen anwenden. | Lernergebnisse (learning outcomes) / Kompetenzen Die Studierenden kennen die Bedeutung der Schutzziele Datenintegrität, Vertraulichkeit, Authentizität und Verbindlichkeit sowie Methoden und kryptographische Primitiven, die zur Erreichung dieser Schutzziele eingesetzt werden. Sie verstehen die grundlegenden Sicherheitsbegriffe der Kryptographie und können in einfachen Szenarien beurteilen, mit welchen kryptographischen Verfahren und Protokollen nach aktuellem Stand der Technik die Schutzziele erreicht werden können. Sie erwerben die Kompetenz, diese Verfahren und Protokolle unter Zuhilfenahme von Open-Source- Kryptobibliotheken auch selbst zu implementieren. Weiterhin kennen die Studierenden praktisch relevante Angriffe auf die behandelten Schutzmaßnahmen, insbesondere auch solche, die erst durch eine ungeeignete Implementierung möglich werden, und können angemessene Gegenmaßnahmen anwenden. | Lernergebnisse (learning outcomes) / Kompetenzen Die Studierenden kennen die Bedeutung der Schutzziele Datenintegrität, Vertraulichkeit, Authentizität und Verbindlichkeit sowie Methoden und kryptographische Primitiven, die zur Erreichung dieser Schutzziele eingesetzt werden. Sie verstehen die grundlegenden Sicherheitsbegriffe der Kryptographie und können in einfachen Szenarien beurteilen, mit welchen kryptographischen Verfahren und Protokollen nach aktuellem Stand der Technik die Schutzziele erreicht werden können. Sie erwerben die Kompetenz, diese Verfahren und Protokolle unter Zuhilfenahme von Open-Source- Kryptobibliotheken auch selbst zu implementieren. Weiterhin kennen die Studierenden praktisch relevante Angriffe auf die behandelten Schutzmaßnahmen, insbesondere auch solche, die erst durch eine ungeeignete Implementierung möglich werden, und können angemessene Gegenmaßnahmen anwenden. | Lernergebnisse (learning outcomes) / Kompetenzen Die Studierenden kennen die Bedeutung der Schutzziele Datenintegrität, Vertraulichkeit, Authentizität und Verbindlichkeit sowie Methoden und kryptographische Primitiven, die zur Erreichung dieser Schutzziele eingesetzt werden. Sie verstehen die grundlegenden Sicherheitsbegriffe der Kryptographie und können in einfachen Szenarien beurteilen, mit welchen kryptographischen Verfahren und Protokollen nach aktuellem Stand der Technik die Schutzziele erreicht werden können. Sie erwerben die Kompetenz, diese Verfahren und Protokolle unter Zuhilfenahme von Open-Source- Kryptobibliotheken auch selbst zu implementieren. Weiterhin kennen die Studierenden praktisch relevante Angriffe auf die behandelten Schutzmaßnahmen, insbesondere auch solche, die erst durch eine ungeeignete Implementierung möglich werden, und können angemessene Gegenmaßnahmen anwenden. | Lernergebnisse (learning outcomes) / Kompetenzen Die Studierenden kennen die Bedeutung der Schutzziele Datenintegrität, Vertraulichkeit, Authentizität und Verbindlichkeit sowie Methoden und kryptographische Primitiven, die zur Erreichung dieser Schutzziele eingesetzt werden. Sie verstehen die grundlegenden Sicherheitsbegriffe der Kryptographie und können in einfachen Szenarien beurteilen, mit welchen kryptographischen Verfahren und Protokollen nach aktuellem Stand der Technik die Schutzziele erreicht werden können. Sie erwerben die Kompetenz, diese Verfahren und Protokolle unter Zuhilfenahme von Open-Source- Kryptobibliotheken auch selbst zu implementieren. Weiterhin kennen die Studierenden praktisch relevante Angriffe auf die behandelten Schutzmaßnahmen, insbesondere auch solche, die erst durch eine ungeeignete Implementierung möglich werden, und können angemessene Gegenmaßnahmen anwenden. | Lernergebnisse (learning outcomes) / Kompetenzen Die Studierenden kennen die Bedeutung der Schutzziele Datenintegrität, Vertraulichkeit, Authentizität und Verbindlichkeit sowie Methoden und kryptographische Primitiven, die zur Erreichung dieser Schutzziele eingesetzt werden. Sie verstehen die grundlegenden Sicherheitsbegriffe der Kryptographie und können in einfachen Szenarien beurteilen, mit welchen kryptographischen Verfahren und Protokollen nach aktuellem Stand der Technik die Schutzziele erreicht werden können. Sie erwerben die Kompetenz, diese Verfahren und Protokolle unter Zuhilfenahme von Open-Source- Kryptobibliotheken auch selbst zu implementieren. Weiterhin kennen die Studierenden praktisch relevante Angriffe auf die behandelten Schutzmaßnahmen, insbesondere auch solche, die erst durch eine ungeeignete Implementierung möglich werden, und können angemessene Gegenmaßnahmen anwenden. | Lernergebnisse (learning outcomes) / Kompetenzen Die Studierenden kennen die Bedeutung der Schutzziele Datenintegrität, Vertraulichkeit, Authentizität und Verbindlichkeit sowie Methoden und kryptographische Primitiven, die zur Erreichung dieser Schutzziele eingesetzt werden. Sie verstehen die grundlegenden Sicherheitsbegriffe der Kryptographie und können in einfachen Szenarien beurteilen, mit welchen kryptographischen Verfahren und Protokollen nach aktuellem Stand der Technik die Schutzziele erreicht werden können. Sie erwerben die Kompetenz, diese Verfahren und Protokolle unter Zuhilfenahme von Open-Source- Kryptobibliotheken auch selbst zu implementieren. Weiterhin kennen die Studierenden praktisch relevante Angriffe auf die behandelten Schutzmaßnahmen, insbesondere auch solche, die erst durch eine ungeeignete Implementierung möglich werden, und können angemessene Gegenmaßnahmen anwenden. |
--- 145,154 ----
***************
*** 165,176 ****
  |   9 | Verwendung des Moduls (in anderen Studiengängen) –                                                                                                                                                                                                                                                                                                                               |
  |  10 | Stellenwert der Note für die Endnote 6/120 in 6-semestriger bzw. 6/90 in 5-semestriger Variante                                                                                                                                                                                                                                                                                  |
  |  11 | Modulbeauftragte*r und hauptamtlich Lehrende Prof. Dr. Steffen Helke, Prof. Dr. Annika Meyer                                                                                                                                                                                                                                                                                     |
  |  12 | Sonstige Informationen Literaturauswahl (jeweils in der aktuellen Auflage): A. Menezes, P. van Oorschot und S. Vanstone: Handbook of Applied Cryptography. CRC Press N. Ferguson, B. Schneier und T. Kohno: Cryptography Engineering - Design Principles and Practical Applications. Wiley Verlag C. Eckert: IT-Sicherheit. Konzepte - Verfahren - Protokolle. Oldenbourg Verlag |
  
- ### IT-Vertragsrecht
- 
  | IT-Vertragsrecht   | IT-Vertragsrecht                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | IT-Vertragsrecht                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | IT-Vertragsrecht                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | IT-Vertragsrecht                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | IT-Vertragsrecht                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | IT-Vertragsrecht                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | IT-Vertragsrecht                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | IT-Vertragsrecht                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | IT-Vertragsrecht                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
  |--------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
  | Kennnummer         | Kennnummer                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | Workload  150 h                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       | Credits nach ECTS 6                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | Credits nach ECTS 6                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | Studien- semester 1. Semester                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | Studien- semester 1. Semester                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | Häufigkeit des Angebots Wintersemester                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | Häufigkeit des Angebots Wintersemester                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | Dauer  1 Semester                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
  | 1                  | Lehrveranstaltungen 2 SWS Vorlesung & 1 SWS Übung (als Lehrbrief) 1 SWS Übung                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | Lehrveranstaltungen 2 SWS Vorlesung & 1 SWS Übung (als Lehrbrief) 1 SWS Übung                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | Lehrveranstaltungen 2 SWS Vorlesung & 1 SWS Übung (als Lehrbrief) 1 SWS Übung                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | Kontaktzeit  25 h                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | Kontaktzeit  25 h                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | Selbststudium  125 h                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | Selbststudium  125 h                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | geplante Gruppengröße 30 Studierende                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | geplante Gruppengröße 30 Studierende                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
  | 2                  | Lernergebnisse (learning outcomes) / Kompetenzen Die Studierenden erlernen den praktischen Umgang mit IT-Recht-relevanten Sachverhalten. Dabei machen sie sich mit den Gesetzesgrundlagen und der vertragsrechtlichen Situation im Bereich des IT- Rechts und des Online-Rechts vertraut. Besonders wird dabei auf den für die Wirtschaft relevanten Vertragsbereich des IT-Rechts eingegangen. Die Studierenden lernen, sowohl aus der Perspektive der Anbieter als auch der nachfragenden Wirtschaft die rechtlichen Probleme, Fallstricke und Strukturen zu betrachten. Die Studierenden sind nach Abschluss des Moduls in der Lage, die verschiedenen rechtlichen Möglichkeiten zur Beschaffung und zum Betrieb von Hardware und Software zu unterscheiden, und sie haben die Kompetenz erworben, eine fundierte Entscheidung für die eine oder andere Vorgehensweise zu treffen. Sie sind in der Lage, die wesentlichen Problemfelder solcher Verträge zu erkennen und eigenständig zu verhandeln.                                                                                                                                                                                                                                                                                                                               | Lernergebnisse (learning outcomes) / Kompetenzen Die Studierenden erlernen den praktischen Umgang mit IT-Recht-relevanten Sachverhalten. Dabei machen sie sich mit den Gesetzesgrundlagen und der vertragsrechtlichen Situation im Bereich des IT- Rechts und des Online-Rechts vertraut. Besonders wird dabei auf den für die Wirtschaft relevanten Vertragsbereich des IT-Rechts eingegangen. Die Studierenden lernen, sowohl aus der Perspektive der Anbieter als auch der nachfragenden Wirtschaft die rechtlichen Probleme, Fallstricke und Strukturen zu betrachten. Die Studierenden sind nach Abschluss des Moduls in der Lage, die verschiedenen rechtlichen Möglichkeiten zur Beschaffung und zum Betrieb von Hardware und Software zu unterscheiden, und sie haben die Kompetenz erworben, eine fundierte Entscheidung für die eine oder andere Vorgehensweise zu treffen. Sie sind in der Lage, die wesentlichen Problemfelder solcher Verträge zu erkennen und eigenständig zu verhandeln.                                                                                                                                                                                                                                                                                                                               | Lernergebnisse (learning outcomes) / Kompetenzen Die Studierenden erlernen den praktischen Umgang mit IT-Recht-relevanten Sachverhalten. Dabei machen sie sich mit den Gesetzesgrundlagen und der vertragsrechtlichen Situation im Bereich des IT- Rechts und des Online-Rechts vertraut. Besonders wird dabei auf den für die Wirtschaft relevanten Vertragsbereich des IT-Rechts eingegangen. Die Studierenden lernen, sowohl aus der Perspektive der Anbieter als auch der nachfragenden Wirtschaft die rechtlichen Probleme, Fallstricke und Strukturen zu betrachten. Die Studierenden sind nach Abschluss des Moduls in der Lage, die verschiedenen rechtlichen Möglichkeiten zur Beschaffung und zum Betrieb von Hardware und Software zu unterscheiden, und sie haben die Kompetenz erworben, eine fundierte Entscheidung für die eine oder andere Vorgehensweise zu treffen. Sie sind in der Lage, die wesentlichen Problemfelder solcher Verträge zu erkennen und eigenständig zu verhandeln.                                                                                                                                                                                                                                                                                                                               | Lernergebnisse (learning outcomes) / Kompetenzen Die Studierenden erlernen den praktischen Umgang mit IT-Recht-relevanten Sachverhalten. Dabei machen sie sich mit den Gesetzesgrundlagen und der vertragsrechtlichen Situation im Bereich des IT- Rechts und des Online-Rechts vertraut. Besonders wird dabei auf den für die Wirtschaft relevanten Vertragsbereich des IT-Rechts eingegangen. Die Studierenden lernen, sowohl aus der Perspektive der Anbieter als auch der nachfragenden Wirtschaft die rechtlichen Probleme, Fallstricke und Strukturen zu betrachten. Die Studierenden sind nach Abschluss des Moduls in der Lage, die verschiedenen rechtlichen Möglichkeiten zur Beschaffung und zum Betrieb von Hardware und Software zu unterscheiden, und sie haben die Kompetenz erworben, eine fundierte Entscheidung für die eine oder andere Vorgehensweise zu treffen. Sie sind in der Lage, die wesentlichen Problemfelder solcher Verträge zu erkennen und eigenständig zu verhandeln.                                                                                                                                                                                                                                                                                                                               | Lernergebnisse (learning outcomes) / Kompetenzen Die Studierenden erlernen den praktischen Umgang mit IT-Recht-relevanten Sachverhalten. Dabei machen sie sich mit den Gesetzesgrundlagen und der vertragsrechtlichen Situation im Bereich des IT- Rechts und des Online-Rechts vertraut. Besonders wird dabei auf den für die Wirtschaft relevanten Vertragsbereich des IT-Rechts eingegangen. Die Studierenden lernen, sowohl aus der Perspektive der Anbieter als auch der nachfragenden Wirtschaft die rechtlichen Probleme, Fallstricke und Strukturen zu betrachten. Die Studierenden sind nach Abschluss des Moduls in der Lage, die verschiedenen rechtlichen Möglichkeiten zur Beschaffung und zum Betrieb von Hardware und Software zu unterscheiden, und sie haben die Kompetenz erworben, eine fundierte Entscheidung für die eine oder andere Vorgehensweise zu treffen. Sie sind in der Lage, die wesentlichen Problemfelder solcher Verträge zu erkennen und eigenständig zu verhandeln.                                                                                                                                                                                                                                                                                                                               | Lernergebnisse (learning outcomes) / Kompetenzen Die Studierenden erlernen den praktischen Umgang mit IT-Recht-relevanten Sachverhalten. Dabei machen sie sich mit den Gesetzesgrundlagen und der vertragsrechtlichen Situation im Bereich des IT- Rechts und des Online-Rechts vertraut. Besonders wird dabei auf den für die Wirtschaft relevanten Vertragsbereich des IT-Rechts eingegangen. Die Studierenden lernen, sowohl aus der Perspektive der Anbieter als auch der nachfragenden Wirtschaft die rechtlichen Probleme, Fallstricke und Strukturen zu betrachten. Die Studierenden sind nach Abschluss des Moduls in der Lage, die verschiedenen rechtlichen Möglichkeiten zur Beschaffung und zum Betrieb von Hardware und Software zu unterscheiden, und sie haben die Kompetenz erworben, eine fundierte Entscheidung für die eine oder andere Vorgehensweise zu treffen. Sie sind in der Lage, die wesentlichen Problemfelder solcher Verträge zu erkennen und eigenständig zu verhandeln.                                                                                                                                                                                                                                                                                                                               | Lernergebnisse (learning outcomes) / Kompetenzen Die Studierenden erlernen den praktischen Umgang mit IT-Recht-relevanten Sachverhalten. Dabei machen sie sich mit den Gesetzesgrundlagen und der vertragsrechtlichen Situation im Bereich des IT- Rechts und des Online-Rechts vertraut. Besonders wird dabei auf den für die Wirtschaft relevanten Vertragsbereich des IT-Rechts eingegangen. Die Studierenden lernen, sowohl aus der Perspektive der Anbieter als auch der nachfragenden Wirtschaft die rechtlichen Probleme, Fallstricke und Strukturen zu betrachten. Die Studierenden sind nach Abschluss des Moduls in der Lage, die verschiedenen rechtlichen Möglichkeiten zur Beschaffung und zum Betrieb von Hardware und Software zu unterscheiden, und sie haben die Kompetenz erworben, eine fundierte Entscheidung für die eine oder andere Vorgehensweise zu treffen. Sie sind in der Lage, die wesentlichen Problemfelder solcher Verträge zu erkennen und eigenständig zu verhandeln.                                                                                                                                                                                                                                                                                                                               | Lernergebnisse (learning outcomes) / Kompetenzen Die Studierenden erlernen den praktischen Umgang mit IT-Recht-relevanten Sachverhalten. Dabei machen sie sich mit den Gesetzesgrundlagen und der vertragsrechtlichen Situation im Bereich des IT- Rechts und des Online-Rechts vertraut. Besonders wird dabei auf den für die Wirtschaft relevanten Vertragsbereich des IT-Rechts eingegangen. Die Studierenden lernen, sowohl aus der Perspektive der Anbieter als auch der nachfragenden Wirtschaft die rechtlichen Probleme, Fallstricke und Strukturen zu betrachten. Die Studierenden sind nach Abschluss des Moduls in der Lage, die verschiedenen rechtlichen Möglichkeiten zur Beschaffung und zum Betrieb von Hardware und Software zu unterscheiden, und sie haben die Kompetenz erworben, eine fundierte Entscheidung für die eine oder andere Vorgehensweise zu treffen. Sie sind in der Lage, die wesentlichen Problemfelder solcher Verträge zu erkennen und eigenständig zu verhandeln.                                                                                                                                                                                                                                                                                                                               | Lernergebnisse (learning outcomes) / Kompetenzen Die Studierenden erlernen den praktischen Umgang mit IT-Recht-relevanten Sachverhalten. Dabei machen sie sich mit den Gesetzesgrundlagen und der vertragsrechtlichen Situation im Bereich des IT- Rechts und des Online-Rechts vertraut. Besonders wird dabei auf den für die Wirtschaft relevanten Vertragsbereich des IT-Rechts eingegangen. Die Studierenden lernen, sowohl aus der Perspektive der Anbieter als auch der nachfragenden Wirtschaft die rechtlichen Probleme, Fallstricke und Strukturen zu betrachten. Die Studierenden sind nach Abschluss des Moduls in der Lage, die verschiedenen rechtlichen Möglichkeiten zur Beschaffung und zum Betrieb von Hardware und Software zu unterscheiden, und sie haben die Kompetenz erworben, eine fundierte Entscheidung für die eine oder andere Vorgehensweise zu treffen. Sie sind in der Lage, die wesentlichen Problemfelder solcher Verträge zu erkennen und eigenständig zu verhandeln.                                                                                                                                                                                                                                                                                                                               |
--- 163,172 ----

cgawron added 2 commits August 4, 2025 09:04
use `ruff format` to format code
I, Christian Gawron <gawron.christian@fh-swf.de>, hereby add my Signed-off-by to this commit: fa98d19

Signed-off-by: Christian Gawron <gawron.christian@fh-swf.de>
Copy link

codecov bot commented Aug 7, 2025

Codecov Report

❌ Patch coverage is 60.00000% with 2 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
docling/backend/msword_backend.py 60.00% 2 Missing ⚠️

📢 Thoughts on this report? Let us know!

Copy link
Contributor

@vagenas vagenas left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @cgawron

Thank you for bringing up this topic and taking the time to take a stab at it. The intertwining of layout (headings) and elements like tables in the example document you shared is one of the challenging edge cases we are always on the lookout for for improving Docling!

As mentioned above, table cells currently cannot contain actual DocItems such as headings. While we are working on tackling the above limitation on the DoclingDocument level, this means that for now such producer-level approaches cannot be as generalizable as we want our API to be.

For instance, the solution proposed in this PR prepends the table with any in-table elements styled "Heading" or "Title" in the source DOCX. This leads to duplication (as the heading text appears both before and within the table) and, if multiple "Heading"-styled elements appear in the table, it prepends the table with multiple headings.

Rather than baking this behavior into the core API, this should best be implemented as a custom post-processing step. An idea could be to manipulate the DoclingDocument (e.g. insert_item_before_sibling()) for inserting the headings before the table. (One could additionally consider first splitting tables into subsections to help drive the process.)

Hope this helps and stay tuned for improvements in this area!

@cgawron
Copy link
Author

cgawron commented Aug 8, 2025

Hi @vagenas

Thank you for taking the time to review my PR.

Thank you for bringing up this topic and taking the time to take a stab at it. The intertwining of layout (headings) and elements like tables in the example document you shared is one of the challenging edge cases we are always on the lookout for for improving Docling!

I'm well aware that the document I want to process is an edge case. This is what happens when people try to document structured information in Word tables🤦‍♂️.

As mentioned above, table cells currently cannot contain actual DocItems such as headings. While we are working on tackling the above limitation on the DoclingDocument level, this means that for now such producer-level approaches cannot be as generalizable as we want our API to be.

For instance, the solution proposed in this PR prepends the table with any in-table elements styled "Heading" or "Title" in the source DOCX. This leads to duplication (as the heading text appears both before and within the table) and, if multiple "Heading"-styled elements appear in the table, it prepends the table with multiple headings.

Actually I'm just looking for a way make the HybridChunker aware of the "Heading"-styled element so that it creates a new Chunk boundary.

Preferably, this should also work for the PDF versions of the document (which does not contain a "Heading" inside the table).

Do you have plans to implement a more "semantic" chunker that could combine table elements spread across pages?

Rather than baking this behavior into the core API, this should best be implemented as a custom post-processing step. An idea could be to manipulate the DoclingDocument (e.g. insert_item_before_sibling()) for inserting the headings before the table. (One could additionally consider first splitting tables into subsections to help drive the process.)

If I understand you correctly, this is not yet possible as the TableCell elements inside the docling document returned py the producer does not contain the "Heading" style?

Thank you for providing docling!

@PeterStaar-IBM PeterStaar-IBM requested a review from cau-git August 11, 2025 12:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

DOCX: Handle headings in table cells
3 participants