WebSend (XmlDoc subroutine): Difference between revisions
Jump to navigation
Jump to search
m (fix broken →Usage notes) |
m (fix broken →Usage notes) |
||
Line 22: | Line 22: | ||
Inserts one of these line-end options to provide line breaks in the serialized output. | Inserts one of these line-end options to provide line breaks in the serialized output. | ||
<li><b>NoEmptyElt</b><br> | <li><b>NoEmptyElt</b><br> | ||
Deprecated as of <var class="product">[[Sirius Mods | Deprecated as of <var class="product">[[Sirius Mods]]</var> Version 7.0, this option ensures that all empty elements are serialized with a start tag followed by an end tag. The default is to serialize an empty element with an empty element tag (as in <code><middleName/></code>). | ||
<li><b>OmitNullElement</b><br> | <li><b>OmitNullElement</b><br> | ||
An <var>Element</var> node that has no children and no <var>Attributes</var> will not be serialized, unless it is the top level <var>Element</var> in the subtree being serialized. | An <var>Element</var> node that has no children and no <var>Attributes</var> will not be serialized, unless it is the top level <var>Element</var> in the subtree being serialized. | ||
Line 35: | Line 35: | ||
<li>The method object <var class="term">Doc</var> must be well-formed (that is, it must contain an <var>Element</var> node). For more information, see [[XML processing in Janus SOAP#Well-formed documents and validation|"Well-formed documents and validation"]]. | <li>The method object <var class="term">Doc</var> must be well-formed (that is, it must contain an <var>Element</var> node). For more information, see [[XML processing in Janus SOAP#Well-formed documents and validation|"Well-formed documents and validation"]]. | ||
<li>The output line-breaking <var class="term">options</var> make the serialized stream easier to read, for example, for a browser's "view page source" facility to display XHTML produced with <var class="product">[[Janus SOAP|"Janus Soap"]]</var>. | <li>The output line-breaking <var class="term">options</var> make the serialized stream easier to read, for example, for a browser's "view page source" facility to display XHTML produced with <var class="product">[[Janus SOAP|"Janus Soap"]]</var>. | ||
<li>As of <var class="product">[[Sirius Mods|"Sirius Mods"]]</var> Version 7.6, ''Attribute values'' are always serialized within double-quotation-mark (<code>"</code>) delimiters, and a double-quotation mark character in an attribute value is serialized as <code>&quot;</code>. Prior to <var class="product">"Sirius Mods"</var> Version 7.6, this convention was not strictly observed. | <li>As of <var class="product">[[Sirius Mods|"Sirius Mods"]]</var> Version 7.6, ''Attribute values'' are always serialized within double-quotation-mark (<code>"</code>) delimiters, and a double-quotation mark character in an attribute value is serialized as <code>&amp;quot;</code>. Prior to <var class="product">"Sirius Mods"</var> Version 7.6, this convention was not strictly observed. | ||
</ul> | </ul> | ||
Revision as of 17:26, 24 May 2011
Serialize XmlDoc as Web response (XmlDoc class)
WebSend converts an XmlDoc to its textually represented XML document to be sent in a response on a "Janus Web Server" thread. (The process of converting to a text string is called serialization, because the text representation of a document is called the serial form).
The serialized output of WebSend is a UTF-8 text string. This output is added to the output buffer that is sent by a subsequent invocation of $Web_Done or $Web_Form_Done.
Syntax
doc:WebSend[( [options])]
Syntax terms
doc | An expression that points to the XmlDoc whose content is to be serialized. |
---|---|
options | A blank delimited string that can contain one or more (but no duplications) of the following options:
|
Usage notes
- The method object Doc must be well-formed (that is, it must contain an Element node). For more information, see "Well-formed documents and validation".
- The output line-breaking options make the serialized stream easier to read, for example, for a browser's "view page source" facility to display XHTML produced with "Janus Soap".
- As of "Sirius Mods" Version 7.6, Attribute values are always serialized within double-quotation-mark (
"
) delimiters, and a double-quotation mark character in an attribute value is serialized as&quot;
. Prior to "Sirius Mods" Version 7.6, this convention was not strictly observed.
Examples
- The following "Janus Web Server" program uses WebReceive to obtain the XML document from the HTTP request, then uses WebSend to buffer some of the received data:
begin %d object xmlDoc %d = new %d:webReceive %d2 object xmlDoc %d2 = new %d2:loadXml('<sum>' with - %d:value('/*/*[1]') + %d:value('/*/*[2]') - with '</sum>') %d2:webSend end
Request-cancellation errors
- Doc does not contain an Element.
- An options setting is invalid.
- Insufficient free space exists in CCATEMP.
See also
- Use the Serial function to serialize an XmlDoc for sending in some other fashion than as a Web response.
- Additional serializing methods include:
- AddXml (HttpRequest class)
- The function that receives and deserializes a Web XML request is WebReceive.