rbx_xml 3.0.0

Implementation of Roblox's XML file formats, rbxlx and rbxmx
Documentation
---
source: rbx_xml/src/tests/mod.rs
expression: encoded_text
---
<roblox version="4">
  <Item class="Part" referent="0">
    <Properties>
      <string name="Name">Brush your teeth</string>
      <bool name="Anchored">false</bool>
      <BinaryString name="AttributesSerialize"></BinaryString>
      <float name="BackParamA">-0.5</float>
      <float name="BackParamB">0.5</float>
      <token name="BackSurface">0</token>
      <token name="BackSurfaceInput">0</token>
      <float name="BottomParamA">-0.5</float>
      <float name="BottomParamB">0.5</float>
      <token name="BottomSurface">0</token>
      <token name="BottomSurfaceInput">0</token>
      <CoordinateFrame name="CFrame">
        <X>-5.5</X>
        <Y>4</Y>
        <Z>-12.5</Z>
        <R00>1</R00>
        <R01>0</R01>
        <R02>0</R02>
        <R10>0</R10>
        <R11>1</R11>
        <R12>0</R12>
        <R20>0</R20>
        <R21>0</R21>
        <R22>1</R22>
      </CoordinateFrame>
      <bool name="CanCollide">true</bool>
      <bool name="CastShadow">true</bool>
      <int name="CollisionGroupId">0</int>
      <Color3uint8 name="Color3uint8">65535</Color3uint8>
      <PhysicalProperties name="CustomPhysicalProperties">
        <CustomPhysics>false</CustomPhysics>
      </PhysicalProperties>
      <token name="formFactorRaw">1</token>
      <float name="FrontParamA">-0.5</float>
      <float name="FrontParamB">0.5</float>
      <token name="FrontSurface">0</token>
      <token name="FrontSurfaceInput">0</token>
      <float name="LeftParamA">-0.5</float>
      <float name="LeftParamB">0.5</float>
      <token name="LeftSurface">0</token>
      <token name="LeftSurfaceInput">0</token>
      <bool name="Locked">false</bool>
      <bool name="Massless">false</bool>
      <token name="Material">256</token>
      <float name="Reflectance">0</float>
      <float name="RightParamA">-0.5</float>
      <float name="RightParamB">0.5</float>
      <token name="RightSurface">0</token>
      <token name="RightSurfaceInput">0</token>
      <int name="RootPriority">0</int>
      <Vector3 name="RotVelocity">
        <X>0</X>
        <Y>0</Y>
        <Z>0</Z>
      </Vector3>
      <token name="shape">1</token>
      <Vector3 name="size">
        <X>1</X>
        <Y>2</Y>
        <Z>3</Z>
      </Vector3>
      <int64 name="SourceAssetId">-1</int64>
      <BinaryString name="Tags"></BinaryString>
      <float name="TopParamA">-0.5</float>
      <float name="TopParamB">0.5</float>
      <token name="TopSurface">0</token>
      <token name="TopSurfaceInput">0</token>
      <float name="Transparency">0</float>
      <Vector3 name="Velocity">
        <X>0</X>
        <Y>0</Y>
        <Z>0</Z>
      </Vector3>
    </Properties>
  </Item>
  <Item class="Part" referent="1">
    <Properties>
      <string name="Name">Eat your greens</string>
      <bool name="Anchored">false</bool>
      <BinaryString name="AttributesSerialize"></BinaryString>
      <float name="BackParamA">-0.5</float>
      <float name="BackParamB">0.5</float>
      <token name="BackSurface">0</token>
      <token name="BackSurfaceInput">0</token>
      <float name="BottomParamA">-0.5</float>
      <float name="BottomParamB">0.5</float>
      <token name="BottomSurface">0</token>
      <token name="BottomSurfaceInput">0</token>
      <CoordinateFrame name="CFrame">
        <X>-11.5</X>
        <Y>-0.499993</Y>
        <Z>-17.5</Z>
        <R00>1</R00>
        <R01>0</R01>
        <R02>0</R02>
        <R10>0</R10>
        <R11>1</R11>
        <R12>0</R12>
        <R20>0</R20>
        <R21>0</R21>
        <R22>1</R22>
      </CoordinateFrame>
      <bool name="CanCollide">true</bool>
      <bool name="CastShadow">true</bool>
      <int name="CollisionGroupId">0</int>
      <Color3uint8 name="Color3uint8">2909469</Color3uint8>
      <PhysicalProperties name="CustomPhysicalProperties">
        <CustomPhysics>true</CustomPhysics>
        <Density>0.7</Density>
        <Friction>0.3</Friction>
        <Elasticity>0.5</Elasticity>
        <FrictionWeight>1</FrictionWeight>
        <ElasticityWeight>1</ElasticityWeight>
        <AcousticAbsorption>1</AcousticAbsorption>
      </PhysicalProperties>
      <token name="formFactorRaw">1</token>
      <float name="FrontParamA">-0.5</float>
      <float name="FrontParamB">0.5</float>
      <token name="FrontSurface">0</token>
      <token name="FrontSurfaceInput">0</token>
      <float name="LeftParamA">-0.5</float>
      <float name="LeftParamB">0.5</float>
      <token name="LeftSurface">0</token>
      <token name="LeftSurfaceInput">0</token>
      <bool name="Locked">false</bool>
      <bool name="Massless">false</bool>
      <token name="Material">256</token>
      <float name="Reflectance">0</float>
      <float name="RightParamA">-0.5</float>
      <float name="RightParamB">0.5</float>
      <token name="RightSurface">0</token>
      <token name="RightSurfaceInput">0</token>
      <int name="RootPriority">0</int>
      <Vector3 name="RotVelocity">
        <X>0</X>
        <Y>0</Y>
        <Z>0</Z>
      </Vector3>
      <token name="shape">1</token>
      <Vector3 name="size">
        <X>4</X>
        <Y>5</Y>
        <Z>6</Z>
      </Vector3>
      <int64 name="SourceAssetId">-1</int64>
      <BinaryString name="Tags"></BinaryString>
      <float name="TopParamA">-0.5</float>
      <float name="TopParamB">0.5</float>
      <token name="TopSurface">0</token>
      <token name="TopSurfaceInput">0</token>
      <float name="Transparency">0</float>
      <Vector3 name="Velocity">
        <X>0</X>
        <Y>0</Y>
        <Z>0</Z>
      </Vector3>
    </Properties>
  </Item>
  <Item class="Part" referent="2">
    <Properties>
      <string name="Name">Live wildly</string>
      <bool name="Anchored">false</bool>
      <BinaryString name="AttributesSerialize"></BinaryString>
      <float name="BackParamA">-0.5</float>
      <float name="BackParamB">0.5</float>
      <token name="BackSurface">0</token>
      <token name="BackSurfaceInput">0</token>
      <float name="BottomParamA">-0.5</float>
      <float name="BottomParamB">0.5</float>
      <token name="BottomSurface">0</token>
      <token name="BottomSurfaceInput">0</token>
      <CoordinateFrame name="CFrame">
        <X>5.5</X>
        <Y>8.5</Y>
        <Z>-25.5</Z>
        <R00>1</R00>
        <R01>0</R01>
        <R02>0</R02>
        <R10>0</R10>
        <R11>1</R11>
        <R12>0</R12>
        <R20>0</R20>
        <R21>0</R21>
        <R22>1</R22>
      </CoordinateFrame>
      <bool name="CanCollide">true</bool>
      <bool name="CastShadow">true</bool>
      <int name="CollisionGroupId">0</int>
      <Color3uint8 name="Color3uint8">16711871</Color3uint8>
      <PhysicalProperties name="CustomPhysicalProperties">
        <CustomPhysics>true</CustomPhysics>
        <Density>90.66</Density>
        <Friction>1.44</Friction>
        <Elasticity>0.65</Elasticity>
        <FrictionWeight>50.5</FrictionWeight>
        <ElasticityWeight>40.5</ElasticityWeight>
        <AcousticAbsorption>1</AcousticAbsorption>
      </PhysicalProperties>
      <token name="formFactorRaw">1</token>
      <float name="FrontParamA">-0.5</float>
      <float name="FrontParamB">0.5</float>
      <token name="FrontSurface">0</token>
      <token name="FrontSurfaceInput">0</token>
      <float name="LeftParamA">-0.5</float>
      <float name="LeftParamB">0.5</float>
      <token name="LeftSurface">0</token>
      <token name="LeftSurfaceInput">0</token>
      <bool name="Locked">false</bool>
      <bool name="Massless">false</bool>
      <token name="Material">256</token>
      <float name="Reflectance">0</float>
      <float name="RightParamA">-0.5</float>
      <float name="RightParamB">0.5</float>
      <token name="RightSurface">0</token>
      <token name="RightSurfaceInput">0</token>
      <int name="RootPriority">0</int>
      <Vector3 name="RotVelocity">
        <X>0</X>
        <Y>0</Y>
        <Z>0</Z>
      </Vector3>
      <token name="shape">1</token>
      <Vector3 name="size">
        <X>7</X>
        <Y>8</Y>
        <Z>9</Z>
      </Vector3>
      <int64 name="SourceAssetId">-1</int64>
      <BinaryString name="Tags"></BinaryString>
      <float name="TopParamA">-0.5</float>
      <float name="TopParamB">0.5</float>
      <token name="TopSurface">0</token>
      <token name="TopSurfaceInput">0</token>
      <float name="Transparency">0</float>
      <Vector3 name="Velocity">
        <X>0</X>
        <Y>0</Y>
        <Z>0</Z>
      </Vector3>
    </Properties>
  </Item>
</roblox>