<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.0//EN" "http://www.web3d.org/specifications/x3d-3.0.dtd">
<X3D profile='Immersive' version='3.0 xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation =' http://www.web3d.org/specifications/x3d-3.0.xsd '>
<head>
<meta name='titlecontent='ECMAScriptAnnexExample2.x3d'/>
<meta name='creatorcontent='Don Brutzman'/>
<meta name='createdcontent='16 January 2000'/>
<meta name='modifiedcontent='14 November 2015'/>
<meta name='descriptioncontent='A simple script example with no visible rendering results.'/>
<meta name=' error content=" VRML97 translation has extraneous 'url [ ]' output. "/>
<meta name='identifiercontent=' http://www.web3d.org/x3d/content/examples/Basic/development/ECMAScriptAnnexExample2.x3d '/>
<meta name='generatorcontent='X3D-Edit 3.3, https://savage.nps.edu/X3D-Edit'/>
<meta name='licensecontent=' ../license.html'/>
</head>
<!--

Index for DEF nodes : Example_2, ROOT_TRANSFORM
-->
<Scene>
<WorldInfo info=' "Example 2, VRML 97 Annex C, ECMAScript Scripting Reference"
"http://www.web3d.org/technicalinfo/specifications/vrml97/part1/javascript.html#Example" "Edits: wrapped using a Transform node for completeness, renamed duplicate url field"
title='ECMAScriptAnnexExample2.wrl'/>

<Transform DEF='ROOT_TRANSFORM'>
<Script DEF='Example_2directOutput='true'>
<field name='myselftype='SFNodeaccessType='initializeOnly'>
<Script USE='Example_2'>
</Script>
</field>
<field name='roottype='SFNodeaccessType='initializeOnly'>
<Transform USE='ROOT_TRANSFORM'/>
</field>
<field name='identifiertype='MFStringvalue='"foo.wrl"accessType='initializeOnly'/>
<field name='nodesLoadedtype='SFNodeaccessType='inputOnly'/>
<field name='trigger_eventtype='SFBoolaccessType='inputOnly'/>
<![CDATA[
        
ecmascript:

function trigger_event(value, ts)
{
	// do something and then fetch values
	Browser.createVRMLFromURL(url, myself, 'nodesLoaded');
}
function nodesLoaded(value, timestamp)
{
	if (value.length > 5)
	{
		// do something if more than 5 nodes in this MFNode array...
	}
	root.addChildren = value;
}
// example is missing reference to the url field defined above

      
]]>
</Script>
</Transform>
</Scene>
</X3D>
<!--

Index for DEF nodes : Example_2, ROOT_TRANSFORM
-->

<!-- Color key: <X3dNode DEF='idName' field='value'/> matches <XmlElement DEF='idName' attribute='value'/>
(Light blue background: behavior node) (Grey background: inserted documentation) (Magenta background: X3D extensibility)
-->

<!-- Additional help information about X3D scenes: X3D Resources, X3D Scene Authoring Hints and X3D Tooltips -->