[x3d-public] Specification does not match XMLSchema

John Carlson yottzumm at gmail.com
Sun Sep 3 08:44:00 PDT 2023


This is well researched now.   This is a summary.

HAnimMotion channels field in XML schema does  not match current X3D4
specification.  The schema should probably be changed to match the
standard.  I don’t think there’s any need for MFString.

See below.  Sorry for duplicate.

John

>
> I see in the X3D JSON schema that:
>
>             "@channels": {
>               "$comment": "MFString inputOutput",
>               "type": "array",
>               "items": {
>                 "type": "string"
>               }
>             },
>
> Says it's an MFString.  Let's look in X3DUOM. Here's the kicker, X3DUOM
> doesn't agree with X3D4, from my reading, but I am old.
>
>       <ConcreteNode name="HAnimMotion">
>          <InterfaceDefinition specificationUrl="
> https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-IS.proof/Part01/components/hanim.html#HAnimMotion
> "
>                                appinfo="An HAnimMotion node supports
> discrete frame-by-frame playback for H-Anim motion data animation.">
>             <componentInfo name="HAnim" level="2"/>
>             <Inheritance baseType="X3DChildNode"/>
>             <field name="channels"
>                     type="MFString"
>                     accessType="inputOutput"
>                     description="list of number of channels for
> transformation, followed by transformation type of each channel of data."/>
>

Here’s XML Schema:


>
>         <xs:element name="HAnimMotion">
> [ snip for readability ]
>                 <xs:complexType>
>                         <xs:complexContent>
>                                 <xs:extension base="X3DChildNode">
>                                         <xs:attribute name="channels"
> type="MFString"/>
>
> So X3DUOM agrees with the XML schema, which agrees with the X3D JSON
> schema.
>

But here’s the current standard:

>
>
>
> https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-IS.proof/Part01/components/hanim.html#HAnimMotion
>
>
> 26.3.4 HAnimMotion
>
> HAnimMotion : X3DChildNode {
>   SFBool   [in]     next
>   SFBool   [in]     previous
>   SFString [in,out] channels         ""
>   MFBool   [in,out] channelsEnabled  []
>   SFString [in,out] description      ""
>   SFBool   [in,out] enabled          TRUE
>   SFInt32  [in,out] endFrame         0      [0,∞)
>   SFTime   [in,out] frameDuration    0.1    (0,∞)
>   SFInt32  [in,out] frameIncrement   1      (-∞,∞)
>   SFInt32  [in,out] frameIndex       0      [0,∞)
>   SFString [in,out] joints           ""
>   SFInt32  [in,out] loa              -1     [-1,4]
>   SFBool   [in,out] loop             FALSE
>   SFNode   [in,out] metadata         NULL   [X3DMetadataObject]
>   SFString [in,out] name             ""
>   SFInt32  [in,out] startFrame       0      [0,∞)
>   MFFloat  [in,out] values           []     (-∞,∞)
>   SFTime   [out]    cycleTime               [0,∞)
>   SFTime   [out]    elapsedTime             (0,∞)
>   SFInt32  [out]    frameCount              [0,∞
>
>
[snip]
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20230903/bea86512/attachment.html>


More information about the x3d-public mailing list