InlineTextRun.linkTarget() and a node-level DocumentLinkTarget both reach
DocxSemanticBackend and are dropped: the label survives as ordinary text, the destination
does not. #447 named this and deliberately left it out — "hyperlink relationships are a
larger piece of work (an XWPFHyperlinkRun plus an OPC relationship per link) and are better
tracked separately". This is that separate track.
Word expresses both halves, so this is not a format limitation:
- an external link is an
XWPFHyperlinkRun plus a relationship in the part's .rels;
- an internal one is
w:hyperlink w:anchor against a bookmark, which also needs
DocumentBookmarkOptions to start emitting w:bookmarkStart/w:bookmarkEnd — today it is
dropped too, so an anchor has nothing to point at.
The run walk that would carry it already exists: writeParagraphRuns reads each run's style
and has its linkTarget in hand at the same point.
Also update docs/architecture/backend-capability-matrix.md (the paragraph row still
names linkTarget as the reason it is ⚠️) and render-docx/README.md, which lists hyperlinks
and bookmarks under "not implemented".
InlineTextRun.linkTarget()and a node-levelDocumentLinkTargetboth reachDocxSemanticBackendand are dropped: the label survives as ordinary text, the destinationdoes not. #447 named this and deliberately left it out — "hyperlink relationships are a
larger piece of work (an
XWPFHyperlinkRunplus an OPC relationship per link) and are bettertracked separately". This is that separate track.
Word expresses both halves, so this is not a format limitation:
XWPFHyperlinkRunplus a relationship in the part's.rels;w:hyperlink w:anchoragainst a bookmark, which also needsDocumentBookmarkOptionsto start emittingw:bookmarkStart/w:bookmarkEnd— today it isdropped too, so an anchor has nothing to point at.
The run walk that would carry it already exists:
writeParagraphRunsreads each run's styleand has its
linkTargetin hand at the same point.Also update⚠️ ) and
docs/architecture/backend-capability-matrix.md(the paragraph row stillnames
linkTargetas the reason it isrender-docx/README.md, which lists hyperlinksand bookmarks under "not implemented".