I have been learning Scene Graph XML in the past days. For it was close to HTML and CSS, where you create scene childs (lists, rectangle, video, ...) and set their attributes like in css. You can find the fields attributes in the documentation for every child type. .createObject is pretty like the constructor and the actual scene is like a class where for example createObject("RoSGnode", "contentNode") is a new object of type contentNode and the attributes are already defined in the documentations.
<interface></interface> is used to define custom attributes.
I am still missing some concepts. Please correct me if i was wrong