[x3d-public] inline access from dom

Andreas Plesch andreasplesch at gmail.com
Fri Sep 30 21:12:27 PDT 2016


I am working on adding DOM access to inline scenes for my Cobweb DOM bridge:

https://andreasplesch.github.io/cobweb_dom/tests/inline_in_inline.xhtml

The idea is to add the external inline scene DOMs to the main scene DOM as
children of the Inline elements. Once added, the mutation observer picks up
modifications of these children and does not need to do anything other than
it already does for the main scene.

It works well although I do not know how web browsers deal with large
combined DOMs. Also, a small addition to Cobweb.js is currently needed.

One effect is that one can use CSS selectors with querySelector to drill
down to specific elements in inline scenes, even through hierarchies of
inlined inlines. See example. This way the DEF names can be used even if
they are identical across scenes. X3D semantics and functioning is not
affected.

X3dom uses a different approach of prefixes to id/DEF attributes to enable
access to elements in inlines. Not sure if x3dom could use instead or in
addition Selectors ? This would require adding the Inline DOMs to the main
DOM but perhaps this is already almost done ?

So I am considering also adding the same option of a namespacename prefix
to element IDs but the effort would be really for compatibility. Thinking
about it, while possible probably not a priority unless there is a
compelling use case.

X3D has EXPORT/IMPORT to deal with accessing nodes in inlines. I think the
SAI equivalent is roughly that all nodes are EXPORTed by default and that
in addition to a DEF name it becomes possible to address a node by its path
in the scene hierarchy. Perhaps something to consider for the standard: X3D
selectors.

Andreas
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20161001/66f3d2f5/attachment.html>


More information about the x3d-public mailing list