NoEmptyElement (XmlNode property): Difference between revisions

From m204wiki
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
Line 1: Line 1:
{{Template:XmlNode:NoEmptyElement subtitle}}
{{Template:XmlNode:NoEmptyElement subtitle}}


This property indicates whether or not to serialize the method object XmlNode
This property indicates whether or not to serialize the method object <var>XmlNode</var>
with a separate start tag and end tag instead of
with a separate start tag and end tag instead of
with a single empty-element tag ''if the node is childless''.
with a single empty-element tag ''if the node is childless''.
Line 9: Line 9:
that is, with an empty-element tag.
that is, with an empty-element tag.


NoEmptyElement may be specified for any Element node.
<var>NoEmptyElement</var> may be specified for any Element node.


NoEmptyElement is new as of version 7.6 of the ''Sirius Mods''.
<var>NoEmptyElement</var> is new as of version 7.6 of the ''Sirius Mods''.
==Syntax==
==Syntax==
{{Template:XmlNode:NoEmptyElement syntax}}
{{Template:XmlNode:NoEmptyElement syntax}}
Line 17: Line 17:
<table class="syntaxTable">
<table class="syntaxTable">
<tr><th>%bool</th>
<tr><th>%bool</th>
<td>The Boolean enumeration value of <i>nod</i>'s NoEmptyElement property. For more information about these enumerations, see [[Using Boolean enumerations]]. </td></tr>
<td>The Boolean enumeration value of <i>nod</i>'s <var>NoEmptyElement</var> property. For more information about these enumerations, see [[Using Boolean enumerations]]. </td></tr>
<tr><th>nod</th>
<tr><th>nod</th>
<td>An XmlNode object expression.</td></tr>
<td>An <var>XmlNode</var> object expression.</td></tr>
</table>
</table>


==Usage notes==
==Usage notes==
<ul>
<ul>
<li>NoEmptyElement can be useful if you are using the [[Janus SOAP ULI]] to
<li><var>NoEmptyElement</var> can be useful if you are using the [[Janus SOAP ULI]] to
generate XHTML.
generate XHTML.
Tests show that some browsers work correctly for
Tests show that some browsers work correctly for
Line 38: Line 38:
The node in the following fragment is serialized with a start and end tag:
The node in the following fragment is serialized with a start and end tag:
<p class="code">%texta = %form:addElement('textArea')
<p class="code">%texta = %form:addElement('textArea')
%texta:NoEmptyElement = True
%texta:<var>NoEmptyElement</var> = True
%texta:AddAttribute('name', 'foo')
%texta:AddAttribute('name', 'foo')
%texta:AddAttribute('rows', '15')
%texta:AddAttribute('rows', '15')

Revision as of 17:46, 25 January 2011

Suppress/produce empty tag when serializing this Element, if childless (XmlNode class)


This property indicates whether or not to serialize the method object XmlNode with a separate start tag and end tag instead of with a single empty-element tag if the node is childless. A Boolean value of True serializes with a separate start tag and end tag (for example, <address></address> versus <address/>). The default value, False, serializes childless nodes in the usual way, that is, with an empty-element tag.

NoEmptyElement may be specified for any Element node.

NoEmptyElement is new as of version 7.6 of the Sirius Mods.

Syntax

%currentBoolean = nod:NoEmptyElement nod:NoEmptyElement = newBoolean

Syntax terms

%bool The Boolean enumeration value of nod's NoEmptyElement property. For more information about these enumerations, see Using Boolean enumerations.
nod An XmlNode object expression.

Usage notes

  • NoEmptyElement can be useful if you are using the Janus SOAP ULI to generate XHTML. Tests show that some browsers work correctly for certain childless elements only if they have an empty element tag, and for other childless elements they work correctly only if there are separate start and end tags. Because of this inconsistency, you cannot obtain a "blanket" suppression of empty element tags via using the NoEmptyElt option of the serialization methods (for example, see ?? refid=noempty.).

Examples

The node in the following fragment is serialized with a start and end tag:

%texta = %form:addElement('textArea') %texta:NoEmptyElement = True %texta:AddAttribute('name', 'foo') %texta:AddAttribute('rows', '15') %texta:AddAttribute('cols', '40') %texta:Print

The result is:

<textArea name="foo" rows="15" cols="40"></textArea>

Request-Cancellation Errors (for set method)

  • %bool is an invalid value.

See also