This paper presents a DSL for geometric relations between rigid bodies such as relative position, orientation, pose, linear velocity, angular velocity, and twist. The DSL is the formal model of the recently proposed semantics for the standardization of geometric relations between rigid bodies, referred to as `geometric semantics'. This semantics explicitly states the coordinate-invariant properties and operations, and, more importantly, all the choices that are made in coordinate representations of these geometric relations. This results in a set of concrete suggestions for standardizing terminology and notation, allowing programmers to write fully unambiguous software interfaces, including automatic checks for semantic correctness of all geometric operations on rigid-body coordinate representations. The DSL is implemented in two different ways: an external DSL in Xcore and an internal DSL in Prolog. Besides defining a grammar and operations, the DSL also implements constraints. In the Xcore model, the Object Constraint Language language is used, while in the Prolog model, the constraint are natively modelled in Prolog. This paper discusses the implemented DSL and the tools developed on top of this DSL. In particular an editor, checking the semantic constraints and providing semantic meaningful errors during editing is proposed.