SDF
How it works
The description is stored in a hierarchical XML document. A <world> element groups models, lights, the scene, and physics parameters, while each <model> is composed of links (<link>) connected by joints (<joint>); links carry visual (<visual>), collision (<collision>), and inertial properties as well as sensors. Each specification version is defined by its own set of .sdf files, and tooling can automatically migrate older documents to a newer version. Gazebo can also convert URDF files to SDF on the fly, so robots described in ROS run in the simulator without manual rewriting.
Problem solved
URDF (Unified Robot Description Format) used in ROS describes only a single robot in isolation: it cannot specify the robot's pose within a world, does not support kinematic loops (parallel linkages), and lacks friction and any description of non-robot objects such as lights or terrain. SDF was created to remove these limitations with a single, scalable description of the entire simulation scene.