[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