Questions and answers about OGDL
No. In OGDL egdes are represented by space and don't carry any information. On the other hand, it is nevertheless possible to define complexer graph description languages on top of OGDL.
Apart from the syntax, the underlying model is different. XML is a mark-up language, and it can represent information trees and also mixed content. The essential difference between the two is that XML can represent both data and documents, while OGDL is oriented towards data only. In XML, mark-up and data separators have only one syntax, while in OGDL only data separators are defined (as space). That said, there are other document description languages that use a different syntax for structure and mark-up, and OGDL can be used in conjunction with additional mark-up, but it remains the question if this is the best way.
OGDL is born as a very simple and readable way to structure text information. It does away with the element/attribute dicotomy existing in XML, and has very few grammar rules (productions). It is both human and machine readable, and best suited for applications where data is exposed to human interaction. OGDL files can be slightly larger or shorter than equivalent XML files, depending on the use of elements versus attributes in XML.
Both use space to structure text, but they are quite different in syntax and underlying structure. YAML is a data serialization language that supports two complex types: maps (hashes) and lists (vectors). OGDL on the other hand, needs a different complex type, one that preserves order and can hold duplicate entries: a named list (Graph, in the APIs). YAML is complexer than OGDL, in terms of number of productions. For more information on YAML, see yaml.org.
OGDL was born, in fact, while trying to simplify the YAML syntax during the implementation of a Java parser for it. Similarities between both languages should be credited to the authors of YAML (Clark Evans, Brian Ingerson and Oren Ben-Kiki).
Yes, you can. But OGDL cannot represent mixed content cleanly, so the conversion has to represent it as is (in original XML) or in some other specific way.
It depends on the node content. In OGDL any string can be a node, while in XML not every string can be an element. If any non terminal node in the OGDL stream conforms to the XML element syntax, then a clean conversion can be made.
Not directly. Types can be implemented as a layer on top of the basic syntax, as is proposed in the OGDL Schema specification.
No. You loose order and duplicates. The language APIs define the Graph object for that purpose.