[x3d-public] [x3d] Comment on Specification by "walroy" - inconsistent interface hierachy entries in X3D Schema

Don Brutzman brutzman at nps.edu
Wed Mar 18 06:25:47 PDT 2015


cc: x3d-public

Roy has entered a number of helpful specification-related comments indicating issues that mostly fit a similar pattern.  Thanks Roy for this important effort!  Very valuable to everyone.

On 3/17/2015 8:10 AM, Spec Feedback wrote:
> Comment on 19775-1: Abstract X3D Definitions - V3.3
> [...]
> -----------------
> Inconsistent Hierarchy
[... mismatch between hierarchy and scheme then described ...]

Here are some general points to set the stage for further resolution.  Group inputs are always welcome.

The X3D  object interface definitions for X3D are richly detailed, including names types and accessTypes for all node fields (XML elements) and non-node fields (XML attributes).  They can be viewed in one place at

4.4.2.3 Interface hierarchy
http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/concepts.html#InterfaceHierarchy

Often further detail is embedded in the specification paragraphs themselves.  Checking these closely can take some time (and typically provides good insight).

Relating to the sophistication and functional consistency of X3D is the occasional occurrence of multiple-interface or multiple-inheritance relationships. Re-use is good.  However, note that these tend to be handled similarly but not identically in various object-oriented languages (ECMAScript/JavaScript, Java, C++/C# etc.).

In the same way as with programming languages, the expressive power of XML Schema validation is quite close to - but not an exact match for - the X3D object model.

Because the XML Schema internal representations can be a little tricky, and because it takes time to make corrections without introducing new errors, I think it would be good if we dedicated one of the working group meetings to working through a few of these issues.  The extra review is helpful and will typically lead to an improvement, a documentation change, or both.

Interestingly, validation of any X3D scene-graph relationships that are not easily handled by X3D Schema can usually be covered by X3D Schematron validation.  Many tests exist there, and this review may find a few more that ought to be added.

A big advantage we now have is the careful archiving of several thousand X3D example scenes.  Quality Assurance regression testing provides exhaustively thorough validation checks on all X3D example scenes.  If we make a mistake inside the X3D Schema validation representations, the regression tests will typically reveal it.  The X3D Validator is further useful for confirming correctness or problems within individual scenes.

http://www.web3d.org/x3d/content/examples/X3dResources.html#Examples
http://www.web3d.org/x3d/content/examples/X3dResources.html#QualityAssurance
http://www.web3d.org/x3d/tools/schematron/X3dSchematron.html
https://savage.nps.edu/X3dValidator

Rephrase:  we only have to get it right once, and the example-scene tests confirm when that occurs.  8)

Leonard can you please schedule a meeting to review the Interface hierarchy error reports for X3D Schema.  I expect that the first few will take a bit of time, then with improved documentation and understanding of issues we will speed through the set.

High-quality validation of scene content is one of our greatest strengths.  Have fun with X3D!

all the best, Don
-- 
Don Brutzman  Naval Postgraduate School, Code USW/Br       brutzman at nps.edu
Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA   +1.831.656.2149
X3D graphics, virtual worlds, navy robotics http://faculty.nps.edu/brutzman



More information about the x3d-public mailing list