| 1 |
<?xml version="1.0" encoding="UTF-8"?>
|
| 2 |
<!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.3//EN" "https://www.web3d.org/specifications/x3d-3.3.dtd">
|
| 3 | <X3D profile='Immersive' version='3.3' xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='https://www.web3d.org/specifications/x3d-3.3.xsd'> |
| 4 | <head> |
| 5 | <meta name='title' content='SavageVehicleMetadataTemplate.x3d'/> |
| 6 | <meta name='description' content='This scene defines the exemplar template for Savage vehicle metadata, allowing further interoperability via SMAL constructs. Savage Modeling Analysis Language (SMAL) authoring capabilities for X3D assume proper metadata within a scene to identify an object properly. A corresponding native-XML .xsd schema for SMAL will also be developed to facilitate conversion and use of vehicle metadata.'/> |
| 7 | <meta name='creator' content='Travis Rauch, Don Brutzman'/> |
| 8 | <meta name='created' content='20 May 2005'/> |
| 9 | <meta name='modified' content='28 November 2019'/> |
| 10 | <meta name=' TODO ' content=' add corresponding XML versions of metadata '/> |
| 11 | <meta name='reference' content='https://x3dgraphics.com/chapters/Chapter15-MetadataInformation.html'/> |
| 12 | <meta name='subject' content='SMAL vehicle metadata'/> |
| 13 | <meta name='reference' content='SMAL.html'/> |
| 14 | <meta name='reference' content='https://savage.nps.edu/Savage/Tools/SMAL/SMAL.html'/> |
| 15 | <meta name='identifier' content='https://savage.nps.edu/Savage/Tools/SMAL/SavageVehicleMetadataTemplate.x3d'/> |
| 16 | <meta name='generator' content='X3D-Edit 3.3, https://savage.nps.edu/X3D-Edit'/> |
| 17 | <meta name='license' content='../../license.html'/> |
| 18 | </head> |
| 19 | <Scene> |
| 20 | <WorldInfo title='SavageVehicleMetadataTemplate.x3d'/> |
| 21 | <Background skyColor='0 0.439216 0.760784'/> |
| 22 | <Viewpoint description='View scene source to see metadata examples' position='0 0 9'/> |
| 23 | <Anchor description='View source in browser' parameter='"target=_blank"' url=' "SavageVehicleMetadataTemplate.html" "https://savage.nps.edu/Savage/Tools/SMAL/SavageVehicleMetadataTemplate.html" '> |
| 24 | <Shape> |
| 25 | <Text string='"View scene source" "to see" "metadata examples"'> |
| 26 | <FontStyle justify='"MIDDLE" "MIDDLE"' style='BOLD'/> |
| 27 | </Text> |
| 28 | <Appearance> |
| 29 | <Material diffuseColor='1 0.99 0.6'/> |
| 30 | </Appearance> |
| 31 | </Shape> |
| 32 | <Shape> |
| 33 | <Box size='7 3 .001'/> |
| 34 | <Appearance> |
| 35 | <Material transparency='1'/> |
| 36 | </Appearance> |
| 37 | </Shape> |
| 38 | <TouchSensor description='Select this text to view pretty-print documentation'/> |
| 39 | </Anchor> |
| 40 | <WorldInfo info='"https://savage.nps.edu/Savage/Tools/SMAL/SavageVehicleMetadataTemplate.x3d"' title='SavageVehicleMetadataTemplate'> |
| 41 | <!-- This initial MetadataSet is itself metadata for the parent WorldInfo, thus it has (omitted) default containerField='metadata' --> |
| 42 | <MetadataSet name='SMAL' reference='https://savage.nps.edu/Savage/Tools/SMAL/SMAL.html'> |
| 43 | <!-- All other SMAL Metadata nodes serve as values for their parent MetadataSet nodes, and thus have containerField='value' --> |
| 44 | <MetadataString containerField='value' name='version' value='"1.0"'> |
| 45 | <MetadataString name='appinfo' value='"This is the version of SMAL employed, not of the model."'/> |
| 46 | </MetadataString> |
| 47 | <MetadataSet containerField='value' name='EntityDefinition'> |
| 48 | <!-- Identifying metadata for the current simulation of interest --> |
| 49 | <MetadataSet containerField='value' name='Classification'> |
| 50 | <MetadataString name='level' value='"UNCLASSIFIED"'> |
| 51 | <MetadataString name='appinfo' value='"UNCLASSIFIED" "FOUO" "CONFIDENTIAL" "SECRET"'/> |
| 52 | </MetadataString> |
| 53 | <MetadataString containerField='value' name='reference'> |
| 54 | <MetadataString name='appinfo' value='"The published source of classified information, if any, contained in the Metadata."'/> |
| 55 | </MetadataString> |
| 56 | <MetadataString containerField='value' name='rationale'> |
| 57 | <MetadataString name='appinfo' value='"The specific element which contains the information classifying this document."'/> |
| 58 | </MetadataString> |
| 59 | </MetadataSet> |
| 60 | <MetadataSet containerField='value' name='IdentificationParameters'> |
| 61 | <MetadataString containerField='value' name='name' value='"provideVehicleName"'> |
| 62 | <MetadataString name='appinfo' value='"The plain language name of the vehicle this model represents, i.e. the base class (DDG-51), or vehicle designation (M1A2)."'/> |
| 63 | </MetadataString> |
| 64 | </MetadataSet> |
| 65 | <MetadataSet containerField='value' name='X3DArchiveModel'> |
| 66 | <MetadataString name='appinfo' value='"This is a placeholder element which ensures the proper validation of autogenerated SMAL code."'/> |
| 67 | </MetadataSet> |
| 68 | <MetadataSet containerField='value' name='PhysicalParameters'> |
| 69 | <MetadataSet containerField='value' name='PhysicalConstraints'> |
| 70 | <MetadataFloat containerField='value' name='height' value='0'> |
| 71 | <MetadataString name='appinfo' value='"The maximum structural height of the object in meters. This may be used for clearance checking or other calculations."'/> |
| 72 | </MetadataFloat> |
| 73 | <MetadataFloat containerField='value' name='width' value='0'> |
| 74 | <MetadataString name='appinfo' value='"The maximum width, beam, or wingspan of the vehicle in meters. This may be used for clearance checking or other calculations."'/> |
| 75 | </MetadataFloat> |
| 76 | <MetadataFloat containerField='value' name='length' value='0'> |
| 77 | <MetadataString name='appinfo' value='"The maximum structural length of the object in meters. This may be used for clearance checking or other calculations."'/> |
| 78 | </MetadataFloat> |
| 79 | <MetadataFloat containerField='value' name='draft' value='0'> |
| 80 | <MetadataString name='appinfo' value='"The vertical distance in meters from the deepest point (keel or other structure) to the waterline of a vehicle at its stated displacement or gross weight."'/> |
| 81 | </MetadataFloat> |
| 82 | <MetadataFloat containerField='value' name='wheelbase' value='0'> |
| 83 | <MetadataString name='appinfo' value='"The longitudinal distance in meters from the center of the forwardmost roadwheel axle to the center of the rearmost roadwheel axle on this vehicle."'/> |
| 84 | </MetadataFloat> |
| 85 | <MetadataFloat containerField='value' name='trackWidth' value='0'> |
| 86 | <MetadataString name='appinfo' value='"The horizontal distance in meters from the rightmost edge of the right wheel or track to the leftmost edge of the left wheel or track on this vehicle."'/> |
| 87 | </MetadataFloat> |
| 88 | <MetadataFloat containerField='value' name='grossWeight' value='0'> |
| 89 | <MetadataString name='appinfo' value='"The standard operational weight of the vehicle in pounds or kilograms. This may be used in physics calculations."'/> |
| 90 | </MetadataFloat> |
| 91 | </MetadataSet> |
| 92 | <MetadataSet containerField='value' name='DynamicResponseConstraints'> |
| 93 | <MetadataFloat containerField='value' name='centerOfGravity' value='0 0 0'> |
| 94 | <MetadataString name='appinfo' value='"Sets the Center of Gravity of the object as an (x, y, z) distance in meters from the physical center of the object, which is located at (0, 0, 0)."'/> |
| 95 | </MetadataFloat> |
| 96 | <MetadataFloat containerField='value' name='aerodynamicCenter' value='0 0 0'> |
| 97 | <MetadataString name='appinfo' value='"Sets the Aerodynamic Center of the object as an (x, y, z) distance in meters from the physical center of the object, which is located at (0, 0, 0)."'/> |
| 98 | </MetadataFloat> |
| 99 | <MetadataFloat containerField='value' name='centerOfBuoyancy' value='0 0 0'> |
| 100 | <MetadataString name='appinfo' value='"Sets the Center of Buoyancy of the object as an (x, y, z) distance in meters from the physical center of the object, which is located at (0, 0, 0)."'/> |
| 101 | </MetadataFloat> |
| 102 | <MetadataFloat containerField='value' name='maximumSpeed' value='0'> |
| 103 | <MetadataString name='appinfo' value='"The maximum rated speed for this vehicle in mph or kph."'/> |
| 104 | </MetadataFloat> |
| 105 | <MetadataFloat containerField='value' name='cruiseSpeed' value='0'> |
| 106 | <MetadataString name='appinfo' value='"The published cruise speed for this vehicle in mph or kph."'/> |
| 107 | </MetadataFloat> |
| 108 | <MetadataFloat containerField='value' name='maximumAltitude' value='0'> |
| 109 | <MetadataString name='appinfo' value='"The absolute ceiling for this aircraft in feet or meters."'/> |
| 110 | </MetadataFloat> |
| 111 | <MetadataFloat containerField='value' name='cruiseAltitude' value='0'> |
| 112 | <MetadataString name='appinfo' value='"The cruise ceiling for this aircraft in feet or meters."'/> |
| 113 | </MetadataFloat> |
| 114 | <MetadataFloat containerField='value' name='maximumDepth' value='0'> |
| 115 | <MetadataString name='appinfo' value='"The absolute depth for this submersible in feet or meters."'/> |
| 116 | </MetadataFloat> |
| 117 | <MetadataFloat containerField='value' name='cruiseDepth' value='0'> |
| 118 | <MetadataString name='appinfo' value='"The cruise depth for this submersible in feet or meters."'/> |
| 119 | </MetadataFloat> |
| 120 | <MetadataFloat containerField='value' name='maximumAcceleration' value='0'> |
| 121 | <MetadataString name='appinfo' value='"The ideal maximum acceleration achievable by this vehicle in feet or meters per second squared, as in at maximum Power excess for aircraft."'/> |
| 122 | </MetadataFloat> |
| 123 | <MetadataFloat containerField='value' name='maximumDeceleration' value='0'> |
| 124 | <MetadataString name='appinfo' value='"The ideal best braking performance achievable by this vehicle in feet or meters per second squared."'/> |
| 125 | </MetadataFloat> |
| 126 | <MetadataFloat containerField='value' name='minimumTurnRadius' value='0'> |
| 127 | <MetadataString name='appinfo' value='"The minimum turning radius for this vehicle in feet or meters, as in at best cornering speed for aircraft."'/> |
| 128 | </MetadataFloat> |
| 129 | <MetadataFloat containerField='value' name='maximumTurnRate' value='0'> |
| 130 | <MetadataString name='appinfo' value='"The maximum turning rate for this vehicle in degrees per second, as in at best cornering speed for aircraft."'/> |
| 131 | </MetadataFloat> |
| 132 | <MetadataFloat containerField='value' name='maximumFuelCapacity' value='0'> |
| 133 | <MetadataString name='appinfo' value='"The maximum usable internal fuel capacity of this vehicle in liters."'/> |
| 134 | </MetadataFloat> |
| 135 | </MetadataSet> |
| 136 | <MetadataSet containerField='value' name='TacticalConstraints'> |
| 137 | <MetadataFloat containerField='value' name='maximumAirThreatRange' value='0'> |
| 138 | <MetadataString name='appinfo' value='"The maximum effective range in miles or kilometers of the longest-range anti-aircraft weapon on this platform."'/> |
| 139 | </MetadataFloat> |
| 140 | <MetadataFloat containerField='value' name='maximumSurfaceThreatRange' value='0'> |
| 141 | <MetadataString name='appinfo' value='"The maximum effective range in miles or kilometers of the longest-range anti-surface weapon on this platform."'/> |
| 142 | </MetadataFloat> |
| 143 | <MetadataFloat containerField='value' name='maximumSubsurfaceThreatRange' value='0'> |
| 144 | <MetadataString name='appinfo' value='"The maximum effective range in miles or kilometers of the longest-range anti-submarine weapon on this platform."'/> |
| 145 | </MetadataFloat> |
| 146 | <MetadataFloat containerField='value' name='maximumAirDetectionRange' value='0'> |
| 147 | <MetadataString name='appinfo' value='"The maximum detection range of the longest-range air detection sensor on this platform."'/> |
| 148 | </MetadataFloat> |
| 149 | <MetadataFloat containerField='value' name='maximumSurfaceDetectionRange' value='0'> |
| 150 | <MetadataString name='appinfo' value='"The DIS enumeration for the overall type of this object (for vehicles this value should be 1)."'/> |
| 151 | </MetadataFloat> |
| 152 | <MetadataFloat containerField='value' name='maximumSubsurfaceDetectionRange' value='0'> |
| 153 | <MetadataString name='appinfo' value='"The maximum detection range of the longest-range subsurface detection sensor on this platform."'/> |
| 154 | </MetadataFloat> |
| 155 | </MetadataSet> |
| 156 | </MetadataSet> |
| 157 | <MetadataSet containerField='value' name='CurrentConditionParameters'> |
| 158 | <!-- <MetadataString name="appinfo" value="This is a placeholder element which ensures the proper validation of autogenerated SMAL code."/> --> |
| 159 | </MetadataSet> |
| 160 | <MetadataSet containerField='value' name='NetworkedCommunicationParameterSet'> |
| 161 | <MetadataSet containerField='value' name='DisConfiguration'> |
| 162 | <MetadataInteger containerField='value' name='entityKind' value='1'> |
| 163 | <MetadataString name='appinfo' value='"The DIS enumeration for the overall type of this object (for vehicles this value should be 1)."'/> |
| 164 | </MetadataInteger> |
| 165 | <MetadataInteger containerField='value' name='entityDomain' value='1'> |
| 166 | <MetadataString name='appinfo' value='"The DIS enumeration for the domain of operations of this object (air, surface, sub-surface, etc.)."'/> |
| 167 | </MetadataInteger> |
| 168 | <MetadataInteger containerField='value' name='entityCountry' value='225'> |
| 169 | <MetadataString name='appinfo' value='"The DIS enumeration for the country of origin of this object (the value for United States is 225)."'/> |
| 170 | </MetadataInteger> |
| 171 | <MetadataInteger containerField='value' name='entityCategory' value='1'> |
| 172 | <MetadataString name='appinfo' value='"The DIS enumeration for the type of this vehicle (cruiser or destroyer, tank or truck, bomber or fighter, etc.)."'/> |
| 173 | </MetadataInteger> |
| 174 | <MetadataInteger containerField='value' name='entitySubCategory' value='1'> |
| 175 | <MetadataString name='appinfo' value='"The DIS enumeration for the class designation of this vehicle (CG-47 Ticonderoga, DDG-51 Arleigh Burke, M1A2, M880, B-52, F-22, etc."'/> |
| 176 | </MetadataInteger> |
| 177 | <MetadataInteger containerField='value' name='entitySpecific' value='1'> |
| 178 | <MetadataString name='appinfo' value=' "The DIS enumeration for the specific unit or variant of this object (CG-68, DDG-77, HMMVW w/TOW package, etc.)." '/> |
| 179 | </MetadataInteger> |
| 180 | <MetadataInteger containerField='value' name='entityExtra' value='1'> |
| 181 | <MetadataString name='appinfo' value='"The DIS enumeration for optional equipment or configurations for this vehicle."'/> |
| 182 | </MetadataInteger> |
| 183 | </MetadataSet> |
| 184 | </MetadataSet> |
| 185 | </MetadataSet> |
| 186 | </MetadataSet> |
| 187 | </WorldInfo> |
| 188 | </Scene> |
| 189 | </X3D> |
<!--
Color-coding legend: X3D terminology
<X3dNode field='value'/>
matches XML terminology
<XmlElement attribute='value'/>
(Light-blue background: event-based behavior node or statement)
(Grey background inside box: inserted documentation)
(Magenta background: X3D Extensibility)
-->
<!--
For additional help information about X3D scenes, please see X3D Tooltips, X3D Resources, and X3D Scene Authoring Hints.
-->