Home. 
.

transparent

transparent

transparent

Altova Mailing List Archives


Re: [xml-dev] XML-aware programming language?

From: "Dmitry Lizorkin" <lizorkin@------.-->
To: "Elliotte Harold" <elharo@-------.---.--->
Date: 12/2/2004 2:08:00 PM
Elliotte Harold writes:

> You seem to have thrown out the boundary white space here. Is this
> representation capable of handling mixed content in a natural way? i.e.
> is this syntactically correct?
>
>   (tag (@ (attr1 "value1") (attr2 "value2"))
>     (nested "Text node")
>     "More text"
>     (empty)
>     "Hmm, what should we do about
>      line breaks?"
>   )

Yes, your example is syntactically correct. Undeed, SXML handles mixed
content fluently. Your example corresponds to the following XML:

<tag attr1="value1" attr2="value2">
  <nested>Text node</nested>More text<empty/>Hmm, what should we do about
     line breaks?</tag>


> Also important: is the encoding for this representation some form of
> Unicode?

In SXML, the text enclosed in double quotes is the Scheme datatype "string".
All popular Scheme compilers (in particular, Bigloo, Gambit and Chicken)
provide Unicode support. And of course strings can contain line breaks.

XML elements, attributes, etc. are represented in SXML with the Scheme
datatype "list". Scheme nested lists (i.e. a list containing another list as
its member) provide a natural representation for a hierarchical structure of
XML data.

SXML is formally specified as the representation of of XML Information Set
as Scheme nested lists.

Dmitry


transparent
Print
Mail
Like It
Disclaimer
.

These Archives are provided for informational purposes only and have been generated directly from the Altova mailing list archive system and are comprised of the lists set forth on www.altova.com/list/index.html. Therefore, Altova does not warrant or guarantee the accuracy, reliability, completeness, usefulness, non-infringement of intellectual property rights, or quality of any content on the Altova Mailing List Archive(s), regardless of who originates that content. You expressly understand and agree that you bear all risks associated with using or relying on that content. Altova will not be liable or responsible in any way for any content posted including, but not limited to, any errors or omissions in content, or for any losses or damage of any kind incurred as a result of the use of or reliance on any content. This disclaimer and limitation on liability is in addition to the disclaimers and limitations contained in the Website Terms of Use and elsewhere on the site.

.
.

transparent

transparent