[x3d-public] HAnimJoint children of HAnimPose in JSON
Don Brutzman
don.brutzman at gmail.com
Tue Jan 13 22:02:42 PST 2026
John, thanks for flagging this difficulty. It turns out there was an
omission in the schema, which led to omissions in X3DUOM and corresponding
APIs. Now fixed.
- *X3D version 4.1 XML Schema Documentation*
-
https://www.web3d.org/specifications/X3dSchemaDocumentation4.1/x3d-4.1.html
- then *HAnimPose*
-
https://www.web3d.org/specifications/X3dSchemaDocumentation4.1/x3d-4.1_HAnimPose.html
Also missing was documentation for HAnimPose children field in X3D
Tooltips, emphasizing that only HAnimJoint nodes go in this field.
- *X3D Tooltips, HAnimPose node, children field*
- https://www.web3d.org/x3d/tooltips/X3dTooltips.html#HAnimPose.children
- *[children accessType inputOutput
<https://www.web3d.org/x3d/tooltips/X3dTooltips.html#accessType>, type
MFNode <https://www.web3d.org/x3d/tooltips/X3dTooltips.html#MFNode> array,
empty list] [HAnimJoint
<https://www.web3d.org/x3d/tooltips/X3dTooltips.html#HAnimJoint>]*
The children field lists all HAnimJoint nodes making up this pose.
Contained HAnimJoint nodes provide center, rotation, and scale values which
are applied to corresponding HAnimJoint nodes with the same name in the
parent HAnimHumanoid skeleton.
*Warning:* these nodes must be independent of HAnimHumanoid skeleton
joints, do not re-USE any skeleton HAnimJoint nodes.
*Warning:* no other node types are allowed in the HAnimPose children
field.
The X3DUOM page has a lot of detailed information. I also took this
opportunity to generate new X3DUOM documentation, using the XML Schema
which keeps it in order.
- *X3D Unified Object Model (X3DUOM)*
- The X3D Unified Object Model (X3DUOM) is a full set of object-oriented
interfaces for all nodes, fields and statements in the X3D Architecture
Specification. This XML file is both human-readable and machine-readable,
serving as the basis for multiple autogenerated tools and diagnostics.
- https://www.web3d.org/specifications/X3DUOM.html then select
- Documentation with diagrams illustrating purpose and structures
-
https://www.web3d.org/specifications/X3DUOM/documentation/X3dUnifiedObjectModel.html
A good way to check that everything propagated satisfactorily through this
production chain is to check the autogenerated X3DJSAIL Javadoc.
- *X3DJSAIL Javadoc, X3D Java Scene Access Interface Library*
- https://www.web3d.org/specifications/java/javadoc/index.html
- for example HAnimPose
-
https://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/HAnim/HAnimPose.html
Again thanks for reporting this difficulty, everything just got a little
better.
Have fun with X3DUOM! 😬
all the best, Don
--
X3D Graphics, Maritime Robotics, Distributed Simulation
Relative Motion Consulting https://RelativeMotion.info
On Tue, Jan 13, 2026 at 4:18 PM John Carlson via x3d-public <
x3d-public at web3d.org> wrote:
> I'm trying to validate HAnimJoint children of HAnimPose in JSON.
>
> I have not validated any .x3d files yet.
>
> I am looking at X3DUOM, under HAnimPose, I see:
>
> <NodeContentModel name="HAnimJoint"/>
>
> Under <ContentModel>.
>
> I have not previously handled ContentModel, except for
> StatementContentModel.
>
> I'm guessing the name= in a NodeContentModel refers to the node type
> (HAnimJoint in this case) allowed under the parent node (HAnimPose in this
> case).
>
> Thanks for any assistance in reading X3DUOM.
>
> I will proceed with handling NodeContentModel in JSON schema, perhaps
> GroupContentModel can be discussed later.
>
> John
>
>
> _______________________________________________
> x3d-public mailing list
> x3d-public at web3d.org
> http://web3d.org/mailman/listinfo/x3d-public_web3d.org
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20260113/aa0376c4/attachment.html>
More information about the x3d-public
mailing list