Content Model suitable for Structured Editing

Which of the following in particular, would be necessary on a lower, conceptual, level, in order for Structured Content Editing to be/-come possible
– aside from obviously implementing the UI + Editor aspects –
in your foresight?

  • enhancements of the Document/Node concept (data model) of Neos
  • other architectural adjustments
  • not immediately obvious development

noteworthy references:

An example of content achievable with structured editing:


e.g. including:

  • (split) paragraphs, within which further nodes are placed
    • inline
    • relative positioned, with text wrapping around
  • drop caps

The purpose of structured editing is to provide:

  • a more fine-grained structuring of content, than what is possible e.g. with a HTML paragraph and NodeTypes the way they are now
  • and editing of those structures.

One implication is for example the necessity of implementing a way for sub-splitting nodes and arranging them / laying them out, while keeping logical entities (e.g. titles, paragraphs) intact .

The above image shows, how such complex paragraphs may look:
There are two usual paragraphs split up into minimally 6 sub-units (not necessarily all nodes), in order to achieve the desired result. It may be necessary to go more fine-grained, but this is the minimum. The object with “XML” written on it is a Node with Text and a Background image, placed inline, into the first paragraph.

I would resolve the needs and requirements from actual project needs.

What is the goal of turning a text into little bits and pieces?
And who needs this?
Are there other systems that implement this in a way, that we would also be interested in?

Every time I work on a project and have to do something with content I’m the happier the more connected and semantically grouped its data is.
An image is often part of the text next to it. A headline too. Etc…

There are implementations where you more or less edit XML in the Neos content module for super specialised formats. But this it not the default. And this needs a lot of performance considerations. Probably no matter how you store the data.

The idea of splitting a text into 2 text nodes is IMO also more connected to semantics. You write something and realise that the paragraph is too long or you already started writing about the next subtopic and want to separate it.

1 Like