ConciseXML Encoding

Getting benefits of ConciseXML in XML 1.0

ConciseXML Encoding uses the standard XML 1.0 syntax for encoding data in XML 1.0

ConciseXML syntax compared to ConciseXML Encoding
ConciseXML is a new markup syntax that is compatible with XML. ConciseXML Encoding is a style to encode data in standard XML.

What is an XML encoding?
An XML encoding is a style for representing data in an XML syntax. A few examples of XML encodings are: SOAP-encoding, XML-RPC-encoding, and ConciseXML Encoding.

Advantages of ConciseXML Encoding

XML encoding styles, other than ConciseXML Encoding, suffer from both the traditional verbosity and ambiguity of XML because elements are used to both represent instances as well as fields of instances. The ConciseXML Encoding format is an alternative to the more common SOAP-encoding or Document-encoding styles. The major feature is that ConciseXML Encoding clearly distinguishes between instances and fields of instances. In addition, ConciseXML-style supports unkeyed arguments, values holding any object, and keys of any type.

Example

ConciseXML Encoding

<boat>
 name="Mr. X"
 color=<color> 20 10 20 </color>
 length=<meter> value=2.2 </meter>
 age=20
 passengers=<vector> <person> "Mike" </person> </vector>
</boat>
Show in new window

SOAP-encoding

<boat>
 <name>Mr. X</name>
 <color>
  <red>20</red>
  <green>10</green>
  <blue>20</blue>
 </color>
 <length units="meter">2.2</length>
 <age>20</age>
 <passengers>
  <person>Mike</person>
 </passengers>
</boat>
Show in new window

Implications

Most XML parsers either use a document-object model or an event model such as SAX. A program then needs to be written to translate the XML into the object model of an underlying language. Because the ConciseXML-style unambiguously maps to a precise data model, that translation step becomes unnecessary. The XML API to a ConciseXML-style becomes much "cleaner" because it has the same data model as a traditional data or knowledge representation. There is no attributes or elements -- just fields of objects. The result will be dramatic and ConciseXML will usher in an era of clean XML.