<div><div dir="auto">Hmm.   It looks like some nodes may be referenced before they are declared?  Not sure yet.   I thought IFS was in all versions?  I will have to check.   Sorry for not checking it right away.</div></div><div><br><div class="gmail_quote"><div dir="ltr">On Sat, Sep 29, 2018 at 12:21 PM Brutzman, Donald (Don) (CIV) <<a href="mailto:brutzman@nps.edu">brutzman@nps.edu</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Aha, excellent.  You have found a logical inconsistency in some of the earlier X3D XML schemas, the annotations for some notes are referring to fields that are not yet available in X3D.<br>
<br>
I have added a test when producing the X3DUOM .xml file for this situation.  Rather than silently adding an unavailable node to acceptableNodeTypes, it reports an error so that the erroneous schema annotation can be removed.<br>
<br>
This enables fixing the problem thoroughly, which will be in next schema release.<br>
<br>
Example output follows; similar or pristine results expected in the other X3D XML schemas.  Thanks John for your continuing testing and detection of this subtle problem.<br>
<br>
=====================================<br>
ant -f C:\\x3d-code\\<a href="http://www.web3d.org" rel="noreferrer" target="_blank">www.web3d.org</a>\\x3d\\stylesheets BuildX3dUnifiedObjectModel.saxon.v3.0<br>
BuildX3dUnifiedObjectModel.saxon.v3.0:<br>
Build X3D Unified Object Model (X3DUOM) version 3.0<br>
Saxon-HE 9.7.0.13J from Saxonica<br>
Java version 1.8.0_181<br>
Stylesheet compilation time: 726.127822ms<br>
Processing file:/C:/x3d-code/<a href="http://www.web3d.org/specifications/x3d-3.0.xsd" rel="noreferrer" target="_blank">www.web3d.org/specifications/x3d-3.0.xsd</a><br>
Using parser com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser<br>
Building tree for file:/C:/x3d-code/<a href="http://www.web3d.org/specifications/x3d-3.0.xsd" rel="noreferrer" target="_blank">www.web3d.org/specifications/x3d-3.0.xsd</a> using class net.sf.saxon.tree.tiny.TinyBuilder<br>
Tree built in 38.49809ms<br>
Tree size: 21427 nodes, 56959 characters, 9074 attributes<br>
X3DObjectModel.xml:  process X3D schema version 3.0 using BuildObjectModelXmlFile.xslt<br>
Writing to file:/C:/x3d-code/<a href="http://www.web3d.org/x3d/stylesheets/X3dUnifiedObjectModel-3.0.xml" rel="noreferrer" target="_blank">www.web3d.org/x3d/stylesheets/X3dUnifiedObjectModel-3.0.xml</a><br>
*** X3DComposedGeometryNode refers to unknown acceptableNodeType X3DVertexAttributeNode in xs:element name='attrib type='MFNode fixed='inputOutputField default='X3DVertexAttributeNode', check and fix X3D Schema<br>
*** X3DComposedGeometryNode refers to unknown acceptableNodeType FogCoordinate in xs:element name='fogCoord type='SFNode fixed='inputOutputField default='FogCoordinate', check and fix X3D Schema<br>
*** IndexedFaceSet refers to unknown acceptableNodeType X3DVertexAttributeNode in xs:element name='attrib type='MFNode fixed='inputOutputField default='X3DVertexAttributeNode', check and fix X3D Schema<br>
*** IndexedFaceSet refers to unknown acceptableNodeType FogCoordinate in xs:element name='fogCoord type='SFNode fixed='inputOutputField default='FogCoordinate', check and fix X3D Schema<br>
*** IndexedLineSet refers to unknown acceptableNodeType X3DVertexAttributeNode in xs:element name='attrib type='MFNode fixed='inputOutputField default='X3DVertexAttributeNode', check and fix X3D Schema<br>
*** IndexedLineSet refers to unknown acceptableNodeType FogCoordinate in xs:element name='fogCoord type='SFNode fixed='inputOutputField default='FogCoordinate', check and fix X3D Schema<br>
*** IndexedTriangleFanSet refers to unknown acceptableNodeType X3DVertexAttributeNode in xs:element name='attrib type='MFNode fixed='inputOutputField default='X3DVertexAttributeNode', check and fix X3D Schema<br>
*** IndexedTriangleFanSet refers to unknown acceptableNodeType FogCoordinate in xs:element name='fogCoord type='SFNode fixed='inputOutputField default='FogCoordinate', check and fix X3D Schema<br>
*** IndexedTriangleSet refers to unknown acceptableNodeType X3DVertexAttributeNode in xs:element name='attrib type='MFNode fixed='inputOutputField default='X3DVertexAttributeNode', check and fix X3D Schema<br>
*** IndexedTriangleSet refers to unknown acceptableNodeType FogCoordinate in xs:element name='fogCoord type='SFNode fixed='inputOutputField default='FogCoordinate', check and fix X3D Schema<br>
*** IndexedTriangleStripSet refers to unknown acceptableNodeType X3DVertexAttributeNode in xs:element name='attrib type='MFNode fixed='inputOutputField default='X3DVertexAttributeNode', check and fix X3D Schema<br>
*** IndexedTriangleStripSet refers to unknown acceptableNodeType FogCoordinate in xs:element name='fogCoord type='SFNode fixed='inputOutputField default='FogCoordinate', check and fix X3D Schema<br>
*** PointSet refers to unknown acceptableNodeType X3DVertexAttributeNode in xs:element name='attrib type='MFNode fixed='inputOutputField default='X3DVertexAttributeNode', check and fix X3D Schema<br>
*** PointSet refers to unknown acceptableNodeType FogCoordinate in xs:element name='fogCoord type='SFNode fixed='inputOutputField default='FogCoordinate', check and fix X3D Schema<br>
*** TriangleFanSet refers to unknown acceptableNodeType X3DVertexAttributeNode in xs:element name='attrib type='MFNode fixed='inputOutputField default='X3DVertexAttributeNode', check and fix X3D Schema<br>
*** TriangleFanSet refers to unknown acceptableNodeType FogCoordinate in xs:element name='fogCoord type='SFNode fixed='inputOutputField default='FogCoordinate', check and fix X3D Schema<br>
*** TriangleSet refers to unknown acceptableNodeType X3DVertexAttributeNode in xs:element name='attrib type='MFNode fixed='inputOutputField default='X3DVertexAttributeNode', check and fix X3D Schema<br>
*** TriangleSet refers to unknown acceptableNodeType FogCoordinate in xs:element name='fogCoord type='SFNode fixed='inputOutputField default='FogCoordinate', check and fix X3D Schema<br>
*** TriangleStripSet refers to unknown acceptableNodeType X3DVertexAttributeNode in xs:element name='attrib type='MFNode fixed='inputOutputField default='X3DVertexAttributeNode', check and fix X3D Schema<br>
*** TriangleStripSet refers to unknown acceptableNodeType FogCoordinate in xs:element name='fogCoord type='SFNode fixed='inputOutputField default='FogCoordinate', check and fix X3D Schema<br>
Execution time: 37.254883s (37254.883326ms)<br>
Memory used: 108253856<br>
Copying 1 file to C:\x3d-code\<a href="http://www.web3d.org" rel="noreferrer" target="_blank">www.web3d.org</a>\specifications<br>
Copying C:\x3d-code\<a href="http://www.web3d.org" rel="noreferrer" target="_blank">www.web3d.org</a>\x3d\stylesheets\X3dUnifiedObjectModel-3.0.xml to C:\x3d-code\<a href="http://www.web3d.org" rel="noreferrer" target="_blank">www.web3d.org</a>\specifications\X3dUnifiedObjectModel-3.0.xml<br>
BUILD SUCCESSFUL (total time: 38 seconds)<br>
=====================================<br>
<br>
On 9/28/2018 6:49 PM, John Carlson wrote:<br>
> More explanation: These reference in V3.0 of X3DUOM refer to nothing present:<br>
> <br>
> Thanks for any clarification.<br>
> <br>
> $ egrep 'X3DVertexAttributeNode|FogCoordinate' X3dUnifiedObjectModel-3.0.xml|grep acceptable<br>
> <br>
>                     acceptableNodeTypes="X3DVertexAttributeNode"/><br>
> <br>
>                     acceptableNodeTypes="FogCoordinate"/><br>
> <br>
>                     acceptableNodeTypes="X3DVertexAttributeNode"<br>
> <br>
>                     acceptableNodeTypes="FogCoordinate"<br>
> <br>
>                     acceptableNodeTypes="X3DVertexAttributeNode"/><br>
> <br>
>                     acceptableNodeTypes="FogCoordinate"/><br>
> <br>
>                     acceptableNodeTypes="X3DVertexAttributeNode"<br>
> <br>
>                     acceptableNodeTypes="FogCoordinate"<br>
> <br>
>                     acceptableNodeTypes="X3DVertexAttributeNode"<br>
> <br>
>                     acceptableNodeTypes="FogCoordinate"<br>
> <br>
>                     acceptableNodeTypes="X3DVertexAttributeNode"<br>
> <br>
>                     acceptableNodeTypes="FogCoordinate"<br>
> <br>
>                     acceptableNodeTypes="X3DVertexAttributeNode"/><br>
> <br>
>                     acceptableNodeTypes="FogCoordinate"/><br>
> <br>
>                     acceptableNodeTypes="X3DVertexAttributeNode"<br>
> <br>
>                     acceptableNodeTypes="FogCoordinate"<br>
> <br>
>                     acceptableNodeTypes="X3DVertexAttributeNode"<br>
> <br>
>                     acceptableNodeTypes="FogCoordinate"<br>
> <br>
>                     acceptableNodeTypes="X3DVertexAttributeNode"<br>
> <br>
>                     acceptableNodeTypes="FogCoordinate"<br>
> <br>
> Maybe these could be added without fields to X3DUOM?<br>
> <br>
> $ svn diff œ| egrep FogCoordinate"|"X3DVertexAttributeNode<br>
> <br>
> +      <AbstractNodeType name="X3DVertexAttributeNode"><br>
> <br>
> +         <InterfaceDefinition specificationUrl="<a href="http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/shaders.html#X3DVertexAttributeNode" rel="noreferrer" target="_blank">http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/shaders.html#X3DVertexAttributeNode</a>"<br>
> <br>
> +      <ConcreteNode name="FogCoordinate"><br>
> <br>
> +         <InterfaceDefinition specificationUrl="<a href="http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/enveffects.html#FogCoordinate" rel="noreferrer" target="_blank">http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/enveffects.html#FogCoordinate</a>">Sent from Mail <<a href="https://go.microsoft.com/fwlink/?LinkId=550986" rel="noreferrer" target="_blank">https://go.microsoft.com/fwlink/?LinkId=550986</a>> for Windows 10<br>
> <br>
> We could discuss adding parameters for version.  Did we already discuss this?<br>
> <br>
> John<br>
> <br>
> *From: *John Carlson <mailto:<a href="mailto:yottzumm@gmail.com" target="_blank">yottzumm@gmail.com</a>><br>
> *Sent: *Friday, September 28, 2018 5:43 PM<br>
> *To: *Brutzman, Donald (Don) (CIV) <mailto:<a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a>><br>
> *Cc: *X3D Graphics Working Group <mailto:<a href="mailto:x3d@web3d.org" target="_blank">x3d@web3d.org</a>>; X3D Graphics public mailing list <mailto:<a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a>><br>
> *Subject: *Re: [x3d] X3DUOM and validation of dangling references?<br>
> <br>
> Sorry I wasn’t clear, the problem is the acceptableNodeTypes attribute in X3DUOM.<br>
> <br>
> John<br>
> <br>
> On Fri, Sep 28, 2018 at 7:52 AM John Carlson <<a href="mailto:yottzumm@gmail.com" target="_blank">yottzumm@gmail.com</a> <mailto:<a href="mailto:yottzumm@gmail.com" target="_blank">yottzumm@gmail.com</a>>> wrote:<br>
> <br>
>     X3DVertexAttributeNode and<br>
> <br>
>     FogCoordinate are used, but not defined in V3.0.<br>
> <br>
>     These are referred to by acceptableNodeTypes in many areas, but do not appear in the model as<br>
> <br>
>     Types.<br>
> <br>
>     I believe the fix may be to remove the acceptableNodeTypes, but not sure.<br>
> <br>
>     John<br>
> <br>
>     Sent from Mail <<a href="https://go.microsoft.com/fwlink/?LinkId=550986" rel="noreferrer" target="_blank">https://go.microsoft.com/fwlink/?LinkId=550986</a>> for Windows 10<br>
> <br>
>     *From: *Brutzman, Donald (Don) (CIV) <mailto:<a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a>><br>
>     *Sent: *Friday, September 28, 2018 7:47 AM<br>
>     *To: *John Carlson <mailto:<a href="mailto:yottzumm@gmail.com" target="_blank">yottzumm@gmail.com</a>><br>
>     *Cc: *X3D Graphics Working Group <mailto:<a href="mailto:x3d@web3d.org" target="_blank">x3d@web3d.org</a>>; X3D Graphics public mailing list <mailto:<a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a>><br>
>     *Subject: *Re: [x3d] X3DUOM and validation of dangling references?<br>
> <br>
>     On 9/27/2018 10:45 AM, John Carlson wrote:<br>
> <br>
>      > Don, my suggested changes to v3.0 unified object model haven’t bee accepted yet?  We need validation on the object model where there are dangling references.<br>
> <br>
>     Sorry John but am not familiar with this issue.  Was there a prior email, or can you advise further?  Good topic for today's X3D Working Group teleconference if you can attend.<br>
> <br>
>                      X3D Unified Object Model (X3DUOM)<br>
> <br>
>     <a href="http://www.web3d.org/specifications/X3DUOM.html" rel="noreferrer" target="_blank">http://www.web3d.org/specifications/X3DUOM.html</a><br>
> <br>
>     <a href="http://www.web3d.org/specifications/X3dUnifiedObjectModel-4.0.xml" rel="noreferrer" target="_blank">http://www.web3d.org/specifications/X3dUnifiedObjectModel-4.0.xml</a><br>
> <br>
>     all the best, Don<br>
> <br>
>     -- <br>
> <br>
>     Don Brutzman  Naval Postgraduate School, Code USW/Br <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a> <mailto:<a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a>><br>
> <br>
>     Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA   +1.831.656.2149<br>
> <br>
>     X3D graphics, virtual worlds, navy robotics <a href="http://faculty.nps.edu/brutzman" rel="noreferrer" target="_blank">http://faculty.nps.edu/brutzman</a><br>
> <br>
<br>
<br>
all the best, Don<br>
-- <br>
Don Brutzman  Naval Postgraduate School, Code USW/Br       <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a><br>
Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA   +1.831.656.2149<br>
X3D graphics, virtual worlds, navy robotics <a href="http://faculty.nps.edu/brutzman" rel="noreferrer" target="_blank">http://faculty.nps.edu/brutzman</a><br>
</blockquote></div></div>