<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p><br>
    </p>
    <div class="moz-cite-prefix">On 12/24/21 03:01, John Carlson wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:b008f2bb-5a73-f309-a8d5-2b5804cadf34@gmail.com">Note: <b>development</b>
      file.
      <br>
      <br>
    </blockquote>
    <p>Exception thrown by running `ant all` in
      x3d/stylesheets/java/node<br>
    </p>
    <p>Exception in thread "main"
      org.web3d.x3d.sai.InvalidFieldValueException: Invalid
      setContainerFieldOverride() value='metadata', legal values for
      MetadataSet are containerField_ALTERNATE_VALUES='"value" "value"'</p>
    <p>No longer appears (see log below).  I am not sure what what
      changed.</p>
    <p>I think what's happening is the X3DJSAIL jar is not being
      generated in x3d/stylesheets/java/jars.</p>
    <p>That's the problem!</p>
    <p>Please ensure that the X3DJSAIL jar is being generated from the
      stylesheet<br>
    </p>
    <p>Thanks!</p>
    <p>John<br>
    </p>
    <blockquote type="cite"
      cite="mid:b008f2bb-5a73-f309-a8d5-2b5804cadf34@gmail.com">This
      appears to be relevant from log
      belowCreateX3dSceneAccessInterfaceJava.xslt:
      <br>
      <br>
      setContainerFieldOverride() value='metadata', legal values for
      MetadataSet are containerField_ALTERNATE_VALUES='"value" "value"'
      <br>
      <br>
      I haven't worked with this code in a long time, but my guess would
      be that alternate values of the containerField would be /metadata/
      and /value/
      <br>
      <br>
      Here's X3DUOM:
      <br>
      <br>
                  <containerField default="value"
      type="containerFieldChoicesMetadata"/>
      <br>
      <br>
      [snip]
      <br>
      <br>
            <SimpleType name="containerFieldChoicesMetadata"
      <br>
                        baseType="xs:NMTOKEN"
      <br>
                        appinfo="containerFieldChoicesMetadata lists the
      allowed containerField enumeration values for Metadata nodes:
      &#34;value&#34; if providing information and parent node
      is MetadataSet collection, otherwise default
      &#34;metadata&#34; if providing information about parent
      node."
      <br>
documentation=<a class="moz-txt-link-rfc2396E" href="https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerField">"https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerField"</a>>
      <br>
               <enumeration value="metadata"
      <br>
                            appinfo="this node provides metadata
      information regarding its parent node."/>
      <br>
               <enumeration value="value"
      <br>
                            appinfo="parent node is MetadataSet, this
      node is providing information as part of a MetadataSet
      collection."/>
      <br>
            </SimpleType>
      <br>
      <br>
      <br>
      I'll rebuild X3DJSAIL.  Rebuilding X3DJSAIL did not work.
      <br>
      <br>
      MetadataSet.java looks like this:
      <br>
      <br>
      342                containerField_ALTERNATE_VALUES = new String[]
      { "value", "value" }; // type containerFieldChoicesMetadata
      <br>
      <br>
      From the CreateX3dSceneAccessInterfaceJava.xslt:
      <br>
      <br>
      <xsl:text>
      <br>
              setContainerFieldOverride(""); // ensuring default value
      used
      <br>
                      containerField_ALTERNATE_VALUES = new String[] {
      "</xsl:text>
      <br>
      <xsl:value-of
      select="InterfaceDefinition/containerField/@default"/>
      <br>
      <xsl:text>"</xsl:text>
      <br>
      <br>
      I'm lost at this point.  It would seem like you would like to get
      the values out of the SimpleType enumeration.  Perhaps something
      is incomplete?
      <br>
      <br>
      <br>
      Run (see subject) log:
      <br>
      <br>
      [echo] Run test 1:
      <br>
           [echo] org.web3d.x3d.jsail.CommandLine
      examples/HelloWorldProgramOutput.x3d -tojs -toFile
      examples/HelloWorldProgramOutput.Node.js
      <br>
           [java] parameter: source file HelloWorldProgramOutput.x3d
      filesize 23474 bytes
      <br>
           [java] CommandLine parameter: "-tojs" for conversion to
      X3DJSONLD JavaScript source
      <br>
           [java] CommandLine parameter: "-toFile"
      "examples/HelloWorldProgramOutput.Node.js" for result file name
      root examples/HelloWorldProgramOutput.Node
      <br>
           [java] Parsing using Document Object Model (DOM) based
      X3DLoaderDOM...
      <br>
           [java] [X3DLoaderDOM] <meta name='info' content='continued
      development and testing in progress'/>
      <br>
           [java] convert to JS JavaScript:
      <br>
           [java] Note: toFileStylesheetConversion(X3dToNodeJS.xslt) is
      overwriting prior file examples/HelloWorldProgramOutput.Node.js
      <br>
           [java] className='HelloWorldProgramOutput.Node' has illegal
      character(s) ( -.,;) replaced with '_' underscore character.
      newClassName='HelloWorldProgramOutput_Node'
      <br>
           [java] file conversion successful:
      HelloWorldProgramOutput.Node.js (37781 bytes)
      <br>
           [java] parameter: source file Json.x3d filesize 22435 bytes
      <br>
           [java] CommandLine parameter: "-tojs" for conversion to
      X3DJSONLD JavaScript source
      <br>
           [java] CommandLine parameter: "-toFile" "examples/Json.js"
      for result file name root examples/Json
      <br>
           [java] Parsing using Document Object Model (DOM) based
      X3DLoaderDOM...
      <br>
           [java] Exception in thread "main"
      org.web3d.x3d.sai.InvalidFieldValueException: Invalid
      setContainerFieldOverride() value='metadata', legal values for
      MetadataSet are containerField_ALTERNATE_VALUES='"value" "value"'
      <br>
           [java]     at
org.web3d.x3d.jsail.X3DConcreteNode.setContainerFieldOverride(X3DConcreteNode.java:401)<br>
           [java]     at
org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:631)<br>
           [java] [X3DLoaderDOM] <meta name='info' content='continued
      development and testing in progress'/>    at
org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:619)<br>
           [java]
      <br>
           [java]     at
org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:619)<br>
           [java]     at
org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:619)<br>
           [java]     at
org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:619)<br>
           [java]     at
org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:490)<br>
           [java]     at
org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:453)<br>
           [java]     at
org.web3d.x3d.jsail.X3DLoaderDOM.loadModelFromFileX3D(X3DLoaderDOM.java:247)<br>
           [java]     at
org.web3d.x3d.jsail.X3DLoaderDOM.loadModelFromFileX3D(X3DLoaderDOM.java:231)<br>
           [java]     at
org.web3d.x3d.jsail.X3DLoaderDOM.loadModelFromFileX3D(X3DLoaderDOM.java:205)<br>
           [java]     at
      org.web3d.x3d.jsail.CommandLine.run(CommandLine.java:914)
      <br>
           [java]     at
      org.web3d.x3d.jsail.CommandLine.main(CommandLine.java:234)
      <br>
           [java] Java Result: 1
      <br>
           [java] parameter: source file Quotes.x3d filesize 23111 bytes
      <br>
           [java] CommandLine parameter: "-tojs" for conversion to
      X3DJSONLD JavaScript source
      <br>
           [java] CommandLine parameter: "-toFile" "examples/Quotes.js"
      for result file name root examples/Quotes
      <br>
           [java] Parsing using Document Object Model (DOM) based
      X3DLoaderDOM...
      <br>
           [java] [X3DLoaderDOM] <meta name='info' content='tested
      sat: name value cannot contain embedded space character'/>
      <br>
           [java] Exception in thread "main"
      org.web3d.x3d.sai.InvalidFieldValueException: Invalid
      setContainerFieldOverride() value='metadata', legal values for
      MetadataSet are containerField_ALTERNATE_VALUES='"value" "value"'
      <br>
           [java]     at
org.web3d.x3d.jsail.X3DConcreteNode.setContainerFieldOverride(X3DConcreteNode.java:401)<br>
           [java]     at
org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:631)<br>
           [java]     at
org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:619)<br>
           [java]     at
org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:619)<br>
           [java]     at
org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:619)<br>
           [java]     at
org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:619)<br>
           [java]     at
org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:490)<br>
           [java]     at
org.web3d.x3d.jsail.X3DLoaderDOM.toX3dModelInstance(X3DLoaderDOM.java:453)<br>
           [java]     at
org.web3d.x3d.jsail.X3DLoaderDOM.loadModelFromFileX3D(X3DLoaderDOM.java:247)<br>
           [java]     at
org.web3d.x3d.jsail.X3DLoaderDOM.loadModelFromFileX3D(X3DLoaderDOM.java:231)<br>
           [java]     at
org.web3d.x3d.jsail.X3DLoaderDOM.loadModelFromFileX3D(X3DLoaderDOM.java:205)<br>
           [java]     at
      org.web3d.x3d.jsail.CommandLine.run(CommandLine.java:914)
      <br>
           [java]     at
      org.web3d.x3d.jsail.CommandLine.main(CommandLine.java:234)
      <br>
           [java] Java Result: 1
      <br>
           [echo] ===========
      <br>
      <br>
    </blockquote>
  </body>
</html>