-
Notifications
You must be signed in to change notification settings - Fork 113
Description
The file world.sdf includes both model.sdf and state.sdf
state.sdf in turn includes model_state.sdf
Both model_state.sdf and model.sdf define a <model> tag:
which in itself shouldn't be a problem, because they exist in different scopes, one inside <world> and the other inside <state>.
This include chain is reflected in the generated .xsd files; however, the includes are all placed at the top of their respective document, which makes both <xsd:element name='model'> tags appear on the same level inside world.xsd, i.e., the nesting of model_state's model is not preserved. This - naturally - leads to a conflict and in the current version model_state's <model> overwrites model's <model>, which is (very) undesirable.
I'm not 100% sure how to fix this, since I am not familiar enough with the XMLSchema spec, but I assume the solution is something along the lines of renaming state tags, introducing namespaces, or ensuring that model_state's model is included inside the state element (preferred, but not sure if feasible).