Sometimes there is the usecase of having a "global" across dimension identical node, and the closest thing to that is operating on the node aggregate. For example i experimented with replacing the site entity with the node aggregate of the siteNode. This experiment can be found here https://github.com/neos/neos-development-collection/pull/4780.
But this practice doesnt seem to be intentioned and there are multiple stones in ones way on the php api and maybe even deeper in the concept.
I stumbled for example across:
NodeAggregate does not know it contentRepositoryId (can be achieved via return current($this->nodesByOccupiedDimensionSpacePoint)->subgraphIdentity->contentRepositoryId;)
node references (of scope aggregate) setting is not straight forward
node property (of scope aggregate) setting is not straight forward
We can possibly add new high level node set properties commands, that will only operate on scoped properties.
Because otherwise one needs to add a random dsp which will be ignored at the end
Sometimes there is the usecase of having a "global" across dimension identical node, and the closest thing to that is operating on the node aggregate. For example i experimented with replacing the site entity with the node aggregate of the siteNode. This experiment can be found here https://github.com/neos/neos-development-collection/pull/4780.
But this practice doesnt seem to be intentioned and there are multiple stones in ones way on the php api and maybe even deeper in the concept.
I stumbled for example across:
contentRepositoryId
(can be achieved viareturn current($this->nodesByOccupiedDimensionSpacePoint)->subgraphIdentity->contentRepositoryId;
)$arbitraryRootDimensionSpacePoint
and use CreateNodeVariant? https://github.com/neos/neos-development-collection/blob/13ee7bfc51bd44dcd9a60f7d0cfd426043509cf7/Neos.Neos/Classes/Domain/Service/SiteServiceInternals.php#L114-L146$arbitraryDimensionSpacePoint
https://github.com/neos/neos-development-collection/blob/13ee7bfc51bd44dcd9a60f7d0cfd426043509cf7/Neos.Neos/Classes/Domain/Service/SiteServiceInternals.php#L46-L80