← Playground index

AjaxSlim wonder-slim WebObjects

WebObjects element reference

WebObjects' own dynamic elements, as of WebObjects 5.4.3. Several are patched or replaced in a wonder-slim application; see the wonder-slim reference for those. The files are the ones Parslips' component editor uses. Rendered from the .apiext files (the extended API format).

Passthrough forwards any attribute it doesn't handle itself (data-*, aria-*, role, class, …) verbatim onto the rendered tag. Container usually used as a container element, wrapping content.
A • marks a required binding.
On a binding's type: ↓ pulled (read), ↑ pushed (written back), ↕ two-way. A binding whose pulled and pushed types differ shows them on two rows.

WOActionURL

Renders just the URL for an action, with no surrounding <a> tag. Use it where you need the bare URL as text — inside an href/src attribute you're writing yourself, in a bit of JavaScript, or in a redirect. Because no tag is written, extra attributes are not rendered; ?-prefixed bindings become query parameters.

Pick one destination: a component action, a static href, a pageName, or a direct action (actionClass and/or directActionName). actionClass may not be combined with action. Query parameters come from queryDictionary (and ?-prefixed bindings); fragmentIdentifier appends a #fragment, and secure forces an https URL.

BindingTypeDescription
action ↓ WOActionResults

A component action — a method returning the next page (a WOActionResults). Pulled when the resulting URL is invoked. Must be an action method, not a constant. Mutually exclusive with href, pageName and the direct-action bindings.

href ↓ String

A static URL to emit. Pulled as a string. Mutually exclusive with action, pageName and directActionName.

pageName ↓ String

The name of a page to navigate to, as an alternative to action. Pulled and resolved to its toString(). Mutually exclusive with action, href and directActionName.

directActionName ↓ String

The name of a direct action to target. Pulled and used to build a direct-action URL. May be combined with actionClass; mutually exclusive with action, href and pageName.

actionClass ↓ String

The direct-action class handling directActionName (defaults to DirectAction when unbound). Pulled and used to build a direct-action URL. May be combined with directActionName; mutually exclusive with action.

queryDictionary ↓ NSDictionary

A dictionary of query-string parameters to append to the URL. Pulled and merged with any ?-prefixed bindings.

fragmentIdentifier ↓ String

A fragment appended to the URL as #value. Pulled and resolved to its toString().

secure ↓ Object (truthy)

If truthy, generates an https (secure) URL instead of http. Pulled by truthiness.

At least one of 'action', 'href', 'pageName' and ('actionClass' or 'directActionName') must be bound.

At most one of 'action', 'href', 'pageName' and 'directActionName' may be bound.

At most one of 'action' and 'actionClass' may be bound.

'action' must be a keypath, not a constant.

WOActiveImage Passthrough

A clickable image that reports the click coordinates (a server-side image map). Renders as an <input type="image"> inside a form, or as an <a><img></a> (a hyperlink wrapping the image, with ismap) outside one.

Give the image a source with exactly one of src, filename, data, or value, and give it something to do with an action, an href, or an actionClass/directActionName pair. When bound, x and y receive the clicked pixel coordinates; an imageMapFile can route different regions to different actions.

BindingTypeDescription
src ↓ String

A URL for the image source, emitted as the src attribute. Mutually exclusive with filename, data, and value.

filename ↓ String

The name of an image resource, resolved through the WOResourceManager (optionally within framework). Mutually exclusive with src, data, and value.

framework ↓ String

The framework to resolve filename against. Only meaningful together with filename.

data ↓ Object

Raw image data served inline through a generated URL. Requires mimeType. Mutually exclusive with src, filename, and value.

mimeType ↓ String

The MIME type of the inline data (e.g. image/png). Required when data is bound.

key ↓ String

A cache key for the inline data, used to build its resource URL.

value ↓ Object

An action invoked to produce the image content, whose result URL becomes the src. Pulled as the response when the image URL is requested; must be a resolvable keypath, not a constant. Mutually exclusive with src, filename, and data.

action ↓ WOActionResults

A component action invoked when the image is clicked; its result is the next page. Pulled at invocation time, so it must be a resolvable keypath, not a constant. Mutually exclusive with href, actionClass, and directActionName.

href ↓ String

A plain URL to follow when the image is clicked (outside a form, and when no image-map region is hit). Mutually exclusive with action, actionClass, and directActionName.

actionClass ↓ String

The direct-action class handling the click. Pairs with directActionName. Mutually exclusive with action and href.

directActionName ↓ String

The direct-action method name handling the click. Pairs with actionClass. Mutually exclusive with action and href.

imageMapFile ↓ String

The name of an image-map file defining clickable regions; a hit region's action is invoked in preference to the default action/href.

x ↑ Integer

Receives the clicked x-coordinate, in pixels. Pushed back on click, so it must be a settable keypath. Must be bound together with y.

y ↑ Integer

Receives the clicked y-coordinate, in pixels. Pushed back on click, so it must be a settable keypath. Must be bound together with x.

width ↓ String

The image width, rendered onto the image tag. Pulled.

height ↓ String

The image height, rendered onto the image tag. Pulled.

border ↓ String

The image's border attribute. Pulled; always rendered, defaulting to 0 when unbound.

default: 0
target ↓ String

The anchor target attribute, used only in the hyperlink (non-form) rendering.

disabled ↓ Object (truthy)

If truthy, renders a plain static <img> with no action wiring.

secure ↓ Object (truthy)

If truthy, generates an https action URL. Read by truthiness. Has no effect on href or on image-map (imageMapFile) actions.

name ↓ String

The HTML form-field name used to submit the click coordinates (name.x/name.y). Auto-assigned from the element id if unbound.

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.

Exactly one of 'data', 'filename', 'src' and 'value' must be bound.

Exactly one of 'action', 'href' and ('actionClass' or 'directActionName') must be bound.

'action' must be a keypath, not a constant.

'value' must be a keypath, not a constant.

'mimeType' must be bound when 'data' is bound.

'filename' must be bound when 'framework' is bound.

'x' must be bound when 'y' is bound.

'y' must be bound when 'x' is bound.

WOApplet Passthrough

deprecated

Java applets are obsolete.

Renders an HTML <applet> element for embedding a Java applet in the page. The applet's code (required) names the class to load; codebase, archive, and archiveNames locate its class files and jar archives, resolving archiveNames against the application's WebServerResources/Java resources at render time.

Client-side attributes that aren't recognized as applet tag attributes are emitted as nested <param> child elements. Obsolete — browsers dropped applet support long ago; this element remains only for legacy templates.

BindingTypeDescription
code • ↓ String

The applet's main class. Required — the element throws at construction if it is unbound. Forwarded onto the <applet> tag's code attribute.

codebase ↓ String

Base URL for locating the applet's class files. Pulled and, when non-null, emitted as the tag's codebase attribute.

archive ↓ String

A jar archive (or comma-separated list) for the applet. Pulled and appended to the archive list resolved from archiveNames, then emitted as the tag's archive attribute.

archiveNames ↓ String

A comma-separated list of archive names, each resolved to a WebServerResources/Java/<name>.jar resource URL at render time. Pulled, framework-consumed (not forwarded verbatim), and merged with archive into the tag's archive attribute.

width ↓ String

The applet's display width. Forwarded onto the <applet> tag's width attribute.

height ↓ String

The applet's display height. Forwarded onto the <applet> tag's height attribute.

object ↓ String

The serialized applet object attribute. Framework-consumed: excluded from the client-side <param> generation and handled specially rather than forwarded verbatim.

associationClass ↓ String

The client-side association class. Framework-consumed: when bound, the element emits it as a <param> child and enables generation of the standard client-side params (element id, action URL, context id). Bindings other than the applet's own attributes are then sent to the applet as WOKey parameters.

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.

WOBody Container Passthrough

Renders an HTML <body> tag whose background attribute is resolved dynamically. The background image can come from a framework resource (filename + framework), a static URL (background), inline data (with a mimeType), a component action (backgroundValue), a pageName, or a direct action (actionClass/directActionName). The element wraps the page body content.

At most one of filename, data, background, pageName and backgroundValue may be bound; none is required. All bindings are pulled — WOBody never pushes anything back.

BindingTypeDescription
filename ↓ String

The name of a resource (an image) to use as the background, looked up in framework. Pulled and resolved to a resource URL. Mutually exclusive with the other background sources.

framework ↓ String

The framework that owns filename, used to resolve the resource URL. Pulled. Only meaningful together with filename — ignored without it.

background ↓ String

A URL used directly as the background. Pulled; relative URLs are resolved against the application's resource base. Mutually exclusive with the other background sources.

backgroundValue ↓ WOActionResults

The action form of background: a component action whose returned WOActionResults is served as the background image when the browser requests it. Mutually exclusive with the other background sources.

pageName ↓ String

The name of a page component whose response is the background image. Pulled and rendered as a component-action URL. Mutually exclusive with the other background sources.

actionClass ↓ String

The direct-action class serving the background image. Pulled and combined with directActionName to build a direct-action URL.

directActionName ↓ String

The direct action serving the background image. Pulled and combined with actionClass to build a direct-action URL.

queryDictionary ↓ NSDictionary

Query parameters appended to a direct-action URL. Pulled.

data ↓ Object

Inline background data, served through a generated URL. Pulled; requires mimeType. Mutually exclusive with the other background sources.

mimeType ↓ String

The MIME type of the inline data. Pulled; required whenever data is bound.

key ↓ String

The cache key under which the inline data is stored, so it can be served from the generated URL. Pulled.

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.

At most one of 'filename', 'data', 'background', 'pageName' and 'backgroundValue' may be bound.

'mimeType' must be bound when 'data' is bound.

WOBrowser Passthrough

A scrolling list selector — an HTML <select> rendered with a size so several options are visible at once (the browser-widget form of a pop-up).

Iterate list with item as the loop variable, rendering each option's label from displayString (or the item's toString). Bind selections to collect the chosen objects, and set multiple truthy to allow more than one. Unlike a pop-up, the size attribute is always emitted (defaulting to 5) so the control shows as a list rather than a drop-down.

BindingTypeDescription
list • ↓ List

The collection of objects to offer as options. Required. Pulled and iterated; each element is bound to item in turn to render its option row. Must be a resolvable keypath, not a constant.

item ↑ Object

The loop variable. As list is iterated, each element is pushed into item so displayString (and value) can read the current object. Must be bound — and settable — whenever displayString or value is used.

displayString ↓ Object

The label to show for the current item. Pulled for each option and rendered as text (via its toString); binding it also makes option labels HTML-escape by default. When unbound, the value string is used, and failing that the item's own toString.

index ↑ Integer

The current option's zero-based position. Pushed as an Integer alongside item on each iteration when bound.

selections ↕ List

The selected objects. Pulled to decide which options render selected, and pushed back on submit as a List of the chosen items (a single-element list when multiple is falsy). Mutually exclusive with selectedValues.

selectedValues ↓ List

Has no effect in WOBrowser: WebObjects 5.4.3 rejects it together with selections, and only reads it when selections is bound and evaluates to null — so it is never consulted. Kept for compatibility.

size ↓ Integer

The number of visible rows, rendered as the size attribute. Pulled; defaults to 5.

default: 5
multiple ↓ Object (truthy)

If truthy, renders the <select multiple> so the user can choose several options; otherwise selection is limited to one. Pulled by truthiness.

name ↓ String

The HTML form-field name of the <select> (auto-assigned from the element id if unbound).

disabled ↓ Object (truthy)

If truthy, renders the control disabled and skips reading its submitted selection. Pulled by truthiness.

optionDisabled ↓ Object (truthy)

Whether the current item's <option> renders disabled. Pulled per item (with item pushed first), by truthiness.

prefix ↓ String

A raw string emitted before each option's label. Pulled.

suffix ↓ String

A raw string emitted after each option's label. Pulled.

escapeHTML ↓ Object (truthy)

Whether to HTML-escape option labels. Pulled by truthiness; defaults to escaping when displayString is bound. Set falsy only when the labels are already safe markup.

value deprecated ↓ Object

The value written into each option's value attribute for the current item. Pulled per option and rendered via its toString.

Avoid binding value — it forces the slow selection path and only affects the option's value attribute cosmetically. Rely on item/selections instead.

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.

'list' must be a keypath, not a constant.

'item' must be bound when 'displayString' or 'value' is bound.

'item' must be settable (assignable, not a constant) when 'displayString' or 'value' is bound.

At most one of 'selections' and 'selectedValues' may be bound.

WOCheckBox Passthrough

A checkbox (<input type="checkbox">). Use either checked (a truthy in, a Boolean out) or value (usually with selection, membership-style) — not both. A value without selection just renders the value and pushes nothing back.

BindingTypeDescription
checked
↓ Object (truthy)
↑ Boolean

The checked state. Pulled by truthiness to decide the initial state (null/0/false → unchecked); on submit it is pushed back as a java.lang.Boolean — true if the box was left checked, false otherwise. Mutually exclusive with value.

value ↓ Object

This checkbox's value (the value attribute). Together with selection, the box renders checked when selection equals value. Pulled only — its string form is compared against the submitted form value. Without selection the value is rendered and nothing is pushed on submit. Mutually exclusive with checked.

selection ↕ Object

The selected value, used with value. On submit it is pushed to value when the box is checked, or nulled when the box is unchecked. Accepted but ignored when checked is bound instead of value.

name ↓ String

The HTML form-field name. Pulled; auto-assigned from the element ID when unbound.

disabled ↓ Object (truthy)

If truthy, renders the checkbox disabled and skips reading its submitted value (so neither checked nor selection is pushed).

escapeHTML ↓ Object (truthy)

Whether the name and value attributes are HTML-escaped. Pulled by truthiness. WebObjects also renders it onto the tag as an escapeHTML attribute.

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.

Exactly one of 'checked' and 'value' must be bound.

WOCheckBoxList

deprecated

WOCheckBoxList is a deprecated dynamic element. Build a list of checkboxes with a WORepetition around a WOCheckBox instead.

Renders a parallel list of checkbox inputs — one per element of list — sharing a single form-field name so the checked options come back together. WebObjects 5.4.3 renders these inputs without a type attribute unless one is given as a constant attribute on the tag (e.g. type="checkbox").

For each item it pushes item (and index) so displayString/value can be evaluated per option, then on submit collects the checked options and pushes them back into selections.

Extra attributes with a constant value are copied onto every checkbox input; extra attributes with a dynamic value are ignored.

BindingTypeDescription
list • ↓ List

The list of option objects, one checkbox per element. Required. Pulled each cycle; must be a resolvable keypath, not a constant.

item ↑ Object

The loop variable. For each option the current element of list is pushed here so displayString and value can be evaluated against it — so it must be a settable keypath, and it must be bound whenever displayString or value is.

index ↑ Integer

The current option's zero-based position. Pushed as an Integer alongside item on each iteration when bound.

selections ↕ List

The selected options. Pulled to decide which boxes render checked (an option is checked when it is contained in this list); on submit the checked options are collected and pushed back as a new List.

selectedValues ↓ List

Values used to mark the initial selection. Pulled only, and only consulted when selections is bound and evaluates to null.

displayString ↓ Object

The label rendered after each checkbox. Pulled per option (with item pushed first) and rendered via toString(); falls back to the option's own value string when unbound or empty.

value ↓ Object

The value attribute emitted for each checkbox. Pulled per option and rendered as a string. Binding it forces the slower request-handling path (the framework matches submitted value strings against the list rather than by index) and is largely cosmetic — prefer leaving it unbound.

escapeHTML ↓ Object (truthy)

Whether to HTML-escape each label. Pulled by truthiness; defaults to true only when displayString is bound. Set it falsy only when the label is already safe markup.

optionDisabled ↓ Object (truthy)

Whether the current option's checkbox renders disabled. Pulled per item (with item pushed first), by truthiness.

disabled ↓ Object (truthy)

If truthy, the submitted selections are not taken (nothing is pushed to selections). It does not render anything disabled — use optionDisabled to disable individual checkboxes. Pulled by truthiness.

name ↓ String

The shared HTML form-field name applied to every checkbox in the group. Pulled; auto-assigned from the element ID when unbound.

prefix ↓ String

A raw string emitted before each option's label. Pulled; written verbatim, not HTML-escaped.

suffix ↓ String

A raw string emitted after each option's label. Pulled; written verbatim, not HTML-escaped.

class ↓ String

The class attribute copied onto each rendered checkbox input. Only a constant value is copied; a dynamic one is ignored.

id ↓ String

The id attribute copied onto each rendered checkbox input. Only a constant value is copied; a dynamic one is ignored.

style ↓ String

The style attribute copied onto each rendered checkbox input. Only a constant value is copied; a dynamic one is ignored.

title ↓ String

The title attribute copied onto each rendered checkbox input. Only a constant value is copied; a dynamic one is ignored.

'list' must be a keypath, not a constant.

'item' must be bound when 'displayString' or 'value' is bound.

WOComponentContent

The placeholder inside a reusable component's template that marks where the enclosing (parent) component's content is rendered.

When a parent uses this component as a container — <wo:MyPanel>…children…</wo:MyPanel> — the children are passed through to wherever the component's own template writes a WOComponentContent. During request handling, action invocation, and rendering, this element switches the active component back to the parent and forwards the phase to the parent's child template, so the wrapped content evaluates in the parent's context, not the component's.

It has no bindings: it is a pure slot. Write it self-closing (<wo:WOComponentContent/>); it takes no template content of its own.

BindingTypeDescription

The binding set is closed: only the bindings listed above are accepted.

WOConditional Container

Includes its child content only when a condition is true. WOConditional renders nothing of its own — it is a pure control-flow element that either appends its children to the response or skips them.

The bound condition is pulled and read by truthiness (null, 0 and false are false; everything else is true). Bind negate to invert that test, and result to capture the evaluated boolean.

BindingTypeDescription
condition • ↓ Object (truthy)

The condition that decides whether the content is rendered. Required. Pulled and read by truthiness — the content is included when the value is truthy (or falsy, if negate is set).

negate ↓ Object (truthy)

When truthy, inverts the test: the content is rendered when condition is false. Pulled and read by truthiness.

result ↑ Boolean

If bound, the final evaluated result (after negate is applied) is pushed into it as a java.lang.Boolean each time the condition is evaluated.

The binding set is closed: only the bindings listed above are accepted.

WOEmbeddedObject Passthrough

Renders an HTML <embed> tag whose src URL points at an embedded object — a resource file, a data blob, or a component/direct action that produces the content.

The source is at most one of src, filename, data, value, or pageName: bind a src for a static URL, a filename (with optional framework) for a framework resource, a data/mimeType pair for an in-memory blob served through the resource manager, a value action that returns the content on demand, or a pageName. Instead of a source, a direct action (actionClass/directActionName) can produce the content; one or the other must be given. All bindings are pulled — the element only reads them to build the tag's URL.

BindingTypeDescription
src ↓ String

A URL for the embedded object. Pulled as a string; a relative URL is resolved against the application's resources, an absolute one is used as-is. Mutually exclusive with the other sources.

filename ↓ String

The name of a resource file to embed. Pulled, resolved through the resource manager (optionally within framework) into the tag's src URL. Mutually exclusive with the other sources.

framework ↓ String

The framework that owns filename when it is not in the application itself. Pulled; use app (or leave unbound) for the application's own resources. Only meaningful together with filename — ignored without it.

data ↓ NSData

In-memory bytes to serve as the embedded object. Pulled as an NSData, cached by the resource manager and exposed through a generated src URL. Requires mimeType, and is mutually exclusive with the other sources.

mimeType ↓ String

The MIME content type of the data blob (e.g. image/png). Pulled; required whenever data is bound so the browser knows how to interpret the retrieved bytes.

key ↓ String

An optional cache key for a data blob. Pulled and stringified; when supplied, the resource manager caches and reuses the data under this key instead of recomputing it on every request.

value ↓ WOActionResults

An action that lazily produces the embedded content. Pulled when the browser requests the generated URL — the returned WOActionResults (an image, a document, etc.) is sent back as the response. Mutually exclusive with the other sources.

pageName ↓ String

The name of a page component whose response is the embedded content. Pulled and rendered as a component-action URL. Mutually exclusive with the other sources.

actionClass ↓ String

The direct-action class producing the content. Pulled and combined with directActionName to build a direct-action src URL.

directActionName ↓ String

The direct action producing the content. Pulled and combined with actionClass to build a direct-action src URL.

queryDictionary ↓ NSDictionary

Query parameters appended to a direct-action URL. Pulled.

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.

At most one of 'filename', 'data', 'src', 'pageName' and 'value' may be bound.

At least one of 'filename', 'data', 'src', 'pageName', 'value' and ('actionClass' or 'directActionName') must be bound.

'mimeType' must be bound when 'data' is bound.

WOFileUpload Passthrough

A file-upload field (<input type="file">). Must live inside a WOForm whose enctype is multipart/form-data. On submit it receives the uploaded bytes and delivers them to your component through exactly one of four sinks: data (all bytes in memory), inputStream (a stream you read), outputStream (a stream WO writes into), or streamToFilePath (WO streams straight to a file on disk). It also pushes the original filename and MIME type back when you bind filePath and mimeType. WOFileUpload never renders a value into the tag.

BindingTypeDescription
data ↑ NSData

The in-memory sink: on submit the entire uploaded file is pushed here as an NSData. Cannot be a constant (it must be settable). Mutually exclusive with inputStream, outputStream and streamToFilePath.

inputStream ↑ InputStream

The stream sink you read from: on submit an InputStream over the uploaded bytes is pushed here (or null for an empty upload). Cannot be a constant. Mutually exclusive with data, outputStream and streamToFilePath. Not usable inside a WOForm with multipleSubmit=true.

outputStream ↓ OutputStream

The stream sink WO writes into: WOFileUpload pulls this OutputStream and copies the uploaded bytes to it. Cannot be a constant. Mutually exclusive with data, inputStream and streamToFilePath.

streamToFilePath ↓ String

The file-path sink: WOFileUpload pulls this path and streams the upload straight to that file on disk. Mutually exclusive with data, inputStream and outputStream. Enables the overwrite and finalFilePath bindings.

filePath ↑ String

Receives the uploaded file's original client filename, pushed on submit when a non-empty file was chosen. Cannot be a constant.

mimeType ↑ String

Receives the uploaded file's declared content type, pushed on submit. Cannot be a constant.

copyData ↓ Object (truthy)

Used only with data. When truthy (the default), the bytes are deep-copied out of the request buffer before being pushed, so the NSData stays valid beyond the current request; set falsy when you consume the data within the same request and want to skip the copy.

default: true
bufferSize ↓ Object

The copy buffer size in bytes, used with outputStream or streamToFilePath. Pulled and coerced to an integer via toString(); defaults to 512 KB. Must be used together with outputStream or streamToFilePath.

default: 524288
overwrite ↓ Object (truthy)

Used only with streamToFilePath. When truthy, an existing file at the target path is overwritten; otherwise the upload is written to a temp file and the rename is skipped. Pulled by truthiness.

default: false
finalFilePath ↑ String

Used only with streamToFilePath. Receives the actual path the upload ended up at, pushed after the write — the target path on a successful rename, or the temp-file path if the rename failed. Cannot be a constant.

name ↓ String

The HTML form-field name. Pulled; auto-assigned from the element ID when unbound.

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.

Exactly one of 'data', 'inputStream', 'outputStream' and 'streamToFilePath' must be bound.

At most one of 'bufferSize' and ('data' or 'inputStream') may be bound.

'outputStream' must be settable (assignable, not a constant).

'streamToFilePath' must be bound when 'overwrite' or 'finalFilePath' is bound.

WOForm Container Passthrough

Renders an HTML <form> and establishes the form context its children submit into. Wraps the inputs, buttons and other form controls that make up a single submission.

Point the form at exactly one destination: a component action, a plain href, or a direct action named by directActionName (optionally scoped by actionClass). Extra query parameters can be supplied via queryDictionary or ?-prefixed bindings, which are appended as hidden fields.

BindingTypeDescription
action ↓ WOActionResults

A component action invoked when the form is submitted; its result becomes the next page. Pulled during action handling. Must be a resolvable keypath, not a constant. Mutually exclusive with href, directActionName and actionClass.

href ↓ String

A literal URL to submit to, used verbatim as the form's action attribute. Pulled and rendered via toString. Mutually exclusive with action, directActionName and actionClass.

directActionName ↓ String

The name of a direct action to submit to. Pulled and required to be a String. Combined with actionClass to build the request URL. Mutually exclusive with action and href.

actionClass ↓ String

The direct-action class handling the submission (defaults to DirectAction). Pulled and required to be a String. Used together with directActionName. Mutually exclusive with action and href.

queryDictionary ↓ NSDictionary

A dictionary of extra query parameters. Pulled and appended to the submission as hidden form fields. Individual parameters may also be supplied with ?-prefixed bindings.

multipleSubmit ↓ Object (truthy)

When truthy, the form may contain more than one submit button and the button that was actually pressed drives the action. Pulled by truthiness.

addDefaultSubmitButton ↓ Object (truthy)

With multipleSubmit, adds an off-screen default submit button to the form. Pulled by truthiness.

secure ↓ Object (truthy)

If truthy, the form's action URL is generated as https. Pulled by truthiness.

rendered ↓ Object (truthy)

If falsy, the <form> tags are omitted but the content still renders. Pulled by truthiness.

enctype ↓ String

The form's enctype attribute (for example multipart/form-data for file uploads). Pulled and rendered as a string when non-empty.

name ↓ String

The form's HTML name attribute. Pulled and rendered as a string when non-empty.

method ↓ String

The HTTP method used to submit the form. Forwarded to the rendered <form> tag; defaults to post when unbound.

default: post
target ↓ String

The browsing context the response is loaded into (the HTML target attribute). Forwarded to the rendered <form> tag.

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.

At most one of 'action', 'href' and ('actionClass' or 'directActionName') may be bound.

'action' must be a keypath, not a constant.

WOFrame Passthrough

Renders an HTML <frame> whose src points at another resource, page, or direct action. Supply the frame's URL with at most one source — a static src, a resource filename (optionally within a framework), inline data (with a mimeType), a component value action, or a pageName — or, instead, a direct action addressed with actionClass and directActionName. One source or a direct action must be given.

BindingTypeDescription
src ↓ String

A static URL for the frame. Pulled as a string; a relative value is resolved against the application's resources, an absolute one is used verbatim. Mutually exclusive with the other sources.

value ↓ Object

A component action backing the frame. Pulled and invoked when the frame's URL is requested; its result (a WOActionResults, typically a page) is what the frame loads. Mutually exclusive with the other sources.

pageName ↓ String

The name of a component to load into the frame. Pulled and rendered as a component-action URL; when requested, WebObjects instantiates the named page. Mutually exclusive with the other sources.

filename ↓ String

The name of a resource to load into the frame. Pulled and resolved through the resource manager (within framework if bound). Mutually exclusive with the other sources.

framework ↓ String

The framework to resolve filename against. Pulled; app targets the application itself. Only meaningful together with filename — ignored without it.

data ↓ Object

Inline content for the frame, served through a generated URL. Pulled; requires mimeType. Mutually exclusive with the other sources.

mimeType ↓ String

The MIME type of the inline data. Pulled; required whenever data is bound.

key ↓ String

A cache key under which the inline data is stored, so the generated URL can be reused across requests. Pulled; used only with data.

actionClass ↓ String

The direct-action class for the frame's URL. Pulled and combined with directActionName to build a direct-action URL. Defaults to DirectAction when only directActionName is bound.

directActionName ↓ String

The direct action to target. Pulled and combined with actionClass to build the frame's direct-action URL.

queryDictionary ↓ NSDictionary

Query parameters appended to a direct-action URL. Pulled.

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.

At most one of 'filename', 'data', 'src', 'pageName' and 'value' may be bound.

At least one of 'filename', 'data', 'src', 'pageName', 'value' and ('actionClass' or 'directActionName') must be bound.

'mimeType' must be bound when 'data' is bound.

WOGenericContainer Container Passthrough

Renders an arbitrary container HTML element whose tag name is chosen at runtime. Where WOGenericElement produces a self-closing tag, WOGenericContainer wraps its children in an open/close tag pair — <tag>…children…</tag>.

The tag name comes from elementName, any undeclared attributes are forwarded onto the rendered tag, and the element's content is the wrapped template. Use it when the tag itself must be dynamic (div vs. section, chosen in code) rather than fixed in the template.

BindingTypeDescription
elementName ↓ String

The HTML tag name to render (e.g. div, span, section). Pulled each time — its toString() becomes the open and close tag name. When it evaluates to null the element renders nothing at all (no tag, though the children are still appended).

otherTagString ↓ String

Raw text inserted inside the opening tag. Pulled and written verbatim.

omitTags ↓ Object (truthy)

When truthy, suppresses the surrounding tags: elementName is not evaluated and no open/close tag is written, so only the wrapped children render. Useful for conditionally unwrapping content.

name ↓ String

The HTML name attribute, forwarded onto the rendered tag. Required whenever formValue or formValues is bound — it names the request form value that gets pushed back.

formValue ↑ String

On form submission the request's string value for name is pushed here (null when absent). Requires name to be bound. May be bound together with formValues.

formValues ↑ List

On form submission all of the request's values for name are pushed here as a list (null when absent). Requires name to be bound. May be bound together with formValue.

invokeAction ↓ WOActionResults

An action invoked when this element is the sender of the request. Pulled to obtain the WOActionResults (typically the next page); when it returns null the current page is used.

elementID ↑ String

The framework pushes this element's context element ID here on every phase, so the component can correlate a request back to this element.

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.

'name' must be bound when 'formValue' or 'formValues' is bound.

WOGenericElement Passthrough

Renders an arbitrary, self-closing HTML tag whose name is chosen at runtime. The elementName binding supplies the tag name, and any attribute you write that isn't a recognized binding is passed through onto the rendered tag (its value evaluated like a binding).

Because it emits no closing tag, WOGenericElement is for void/empty elements (<input>, <br>, <img>, ...); use WOGenericContainer when you need a tag with content. It can also participate in form submission by pushing a request value into formValue/formValues.

BindingTypeDescription
elementName ↓ String

The HTML tag name to render (e.g. input, br, img). Pulled and converted to a string. When it evaluates to null no tag is rendered. When omitTags is truthy the tag is suppressed entirely and nothing is rendered.

name ↓ String

The HTML name attribute, forwarded onto the rendered tag. Required whenever formValue or formValues is bound — it names the request form value that gets pushed back.

otherTagString ↓ String

Raw text inserted inside the rendered tag. Pulled and written verbatim.

omitTags ↓ Object (truthy)

If truthy, suppresses the tag: elementName is not evaluated and no markup is emitted. Pulled by truthiness.

invokeAction ↓ WOActionResults

An action fired when this element is the sender of the request. Pulled during action invocation; its result becomes the response page (a null result stays on the current page). Used to make a generic element behave like a link or submit control.

formValue ↑ String

Receives this element's single request value on submit. Pushed as a java.lang.String (the raw form value for the field named by name, or null if absent). May be bound together with formValues. Requires name to be bound.

formValues ↑ List

Receives this element's multiple request values on submit. Pushed as a list of the form values for the field named by name. May be bound together with formValue. Requires name to be bound.

elementID ↑ String

Receives this element's context element ID. Pushed as a java.lang.String each cycle so the component can capture the element's position in the page.

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.

'name' must be bound when 'formValue' or 'formValues' is bound.

WOHiddenField Passthrough

A hidden form field (<input type="hidden">). Carries a value through a form round-trip without displaying it: the bound value is pulled to render the field, and on submit the submitted string is pushed back. Because value must be writable, it is required and may not be a constant.

BindingTypeDescription
value •
↓ Object
↑ String

The field's value. Required. Pulled and rendered as its string form into the value attribute; on submit the raw form string is pushed back as a java.lang.String. Must resolve to a settable keypath — a constant value is rejected at construction time.

name ↓ String

The HTML form-field name. Pulled; auto-assigned from the element ID when unbound.

escapeHTML ↓ Object (truthy)

Whether the name and value attributes are HTML-escaped. Pulled by truthiness. WebObjects also renders it onto the tag as an escapeHTML attribute.

disabled ↓ Object (truthy)

If truthy, renders the field disabled and skips reading its submitted value (so nothing is pushed back to value).

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.

Renders an HTML anchor (<a>). The destination is chosen by binding one of action, href, pageName, or a direct action (directActionName, optionally with actionClass); actionClass may not be combined with action. Its label comes from the tag's content and/or the string binding.

When disabled is truthy (or rendered is falsy) the <a> tags are dropped entirely — only the content and string are rendered, so the link becomes inert text.

BindingTypeDescription
action ↓ Object

A component action invoked when the link is clicked; its return value becomes the next page (a WOActionResults/WOComponent, or null to stay on the current page). Pulled at invoke time. Must be a resolvable keypath, not a constant. Mutually exclusive with href, pageName, directActionName, and actionClass.

href ↓ String

A static URL to link to. Pulled and rendered verbatim (relative resource names are resolved to a resource URL). Mutually exclusive with action, pageName and directActionName.

pageName ↓ String

The name of a page component to navigate to when clicked. Pulled at invoke time and instantiated via pageWithName. Mutually exclusive with action, href and directActionName.

directActionName ↓ String

The name of a direct action to target. Pulled to build a direct-action URL, combined with actionClass when present. Mutually exclusive with action, href, and pageName.

actionClass ↓ String

The direct-action class handling directActionName (defaults to DirectAction). Pulled as a string when building the direct-action URL. Mutually exclusive with action.

string ↓ Object

Text rendered between the <a> tags (in addition to any child content). Pulled, converted to a string, and HTML-escaped unless escapeHTML is falsy.

escapeHTML ↓ Object (truthy)

Whether string is HTML-escaped. Pulled by truthiness; defaults to true. Set falsy only when string is already safe markup.

default: true
prefix ↓ String

Text written inside the href attribute value, before the generated URL. Pulled.

suffix ↓ String

Text written inside the href attribute value, after the generated URL. Pulled.

disabled ↓ Object (truthy)

If truthy, the anchor is disabled: the <a>...</a> tags are omitted and only the label (content and string) is rendered. Pulled by truthiness.

rendered ↓ Object (truthy)

If falsy, the <a>...</a> tags are omitted but the content still renders, as with disabled. Pulled by truthiness.

secure ↓ Object (truthy)

Forces the generated action URL to be https (truthy) or http (falsy). Pulled by truthiness; defaults to the context's current mode. Has no effect on a static href.

fragmentIdentifier ↓ String

A URL fragment appended after a #. Pulled and rendered onto the generated URL.

queryDictionary ↓ NSDictionary

A dictionary of query-string parameters to append to the URL. Pulled and encoded as form values. Individual parameters can also be supplied with ?-prefixed bindings.

target ↓ String

The anchor's target attribute (e.g. _blank). Pulled and forwarded onto the rendered <a> tag.

name ↓ String

The anchor's name attribute, for use as a same-page fragment target. Pulled and forwarded onto the rendered <a> tag.

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.

At least one of 'action', 'href', 'pageName' and ('actionClass' or 'directActionName') must be bound.

At most one of 'action', 'href', 'pageName' and 'directActionName' may be bound.

At most one of 'action' and 'actionClass' may be bound.

'action' must be a keypath, not a constant.

WOIFrame

Renders an <iframe> whose source is produced by the component itself. Bind src for an explicit URL, or bind pageName, value, or actionName to have the frame's src point at a component action that renders the target page/element on demand.

The content bindings are all pulled — WOIFrame never pushes anything back. It renders a self-closing frame, so it takes no template content.

BindingTypeDescription
src ↓ String

An explicit URL for the frame's src. Pulled as a String. When bound it takes precedence over pageName, value and actionName.

pageName ↓ String

The name of a component page to render inside the frame. Pulled as a String; the frame's src becomes a component-action URL that renders pageWithName(pageName).

value ↓ WOElement

A WOElement to render inside the frame. Pulled; the frame's src becomes a component-action URL that renders this element directly.

actionName ↓ String

The name of an action on the parent component whose returned WOElement is rendered inside the frame. Pulled as a String, then resolved against parent() to produce the frame's content.

width ↓ String

The frame's width, forwarded onto the rendered <iframe>.

height ↓ String

The frame's height, forwarded onto the rendered <iframe>.

frameborder ↓ String

The frameborder attribute, forwarded onto the rendered <iframe>.

scrolling ↓ String

The scrolling attribute (yes/no/auto), forwarded onto the rendered <iframe>.

align ↓ String

The align attribute, forwarded onto the rendered <iframe>.

longdesc ↓ String

The longdesc attribute (a URL describing the frame's contents), forwarded onto the rendered <iframe>.

marginwidth ↓ String

The marginwidth attribute, forwarded onto the rendered <iframe>.

marginheight ↓ String

The marginheight attribute, forwarded onto the rendered <iframe>.

name ↓ String

The frame's name attribute, forwarded onto the rendered <iframe> (a link target can point at it).

style ↓ String

The style attribute forwarded onto the rendered <iframe> tag.

border ↓ String

The border attribute, forwarded onto the rendered <iframe>.

The binding set is closed: only the bindings listed above are accepted.

Exactly one of 'pageName' and ('src' or 'value') must be bound.

WOImage Passthrough

Renders an <img> tag. The image source is supplied by at most one of: a resource filename (resolved through the resource manager, optionally within a framework), a static or dynamic src URL, in-memory data (with a mimeType), a component action (value) or page (pageName) that returns the image — or, instead of any of those, a direct action (actionClass/directActionName). One source or a direct action must be given.

WOImage is display-only: every binding is pulled, nothing is pushed back. When neither width nor height is given for a filename image, the element reads the image's intrinsic dimensions and writes them onto the tag.

BindingTypeDescription
filename ↓ String

The name of an image resource to serve. Pulled and resolved through the resource manager (within framework if bound). Mutually exclusive with the other sources.

src ↓ String

A URL for the image's src attribute. Pulled as a string; a relative URL is resolved against the application's resource base, an absolute one is emitted verbatim. Mutually exclusive with the other sources.

data ↓ NSData

In-memory image bytes served inline. Pulled as an NSData; requires mimeType so the data URL can declare its content type. Mutually exclusive with the other sources.

value ↓ WOActionResults

A component action that returns the image. The src URL invokes it when the browser requests the image, and the returned WOActionResults is served. Mutually exclusive with the other sources.

pageName ↓ String

The name of a page component whose response is the image. Pulled and rendered as a component-action URL. Mutually exclusive with the other sources.

actionClass ↓ String

The direct-action class serving the image. Pulled and combined with directActionName to build a direct-action src URL.

directActionName ↓ String

The direct action serving the image. Pulled and combined with actionClass to build a direct-action src URL.

queryDictionary ↓ NSDictionary

Query parameters appended to a direct-action URL. Pulled.

mimeType ↓ String

The MIME type of the data image (e.g. image/png). Pulled; required whenever data is bound.

framework ↓ String

The framework to resolve filename against. Pulled as a string; app targets the application wrapper. Only meaningful together with filename — ignored without it.

key ↓ String

A cache key under which the data image is registered, so the generated data URL stays stable across requests. Pulled; used only with data.

width ↓ Object

The image width, written onto the tag. Pulled and rendered via toString(); bind it to "*" to force the element to compute the intrinsic width instead. Applies only to a filename image. When both width and height are unbound, the element computes both from the image itself.

height ↓ Object

The image height, written onto the tag. Pulled and rendered via toString(); bind it to "*" to force the element to compute the intrinsic height instead. Applies only to a filename image. When both width and height are unbound, the element computes both from the image itself.

alt ↓ String

The alt text forwarded onto the rendered <img> tag. Pulled and rendered via toString().

border ↓ String

The border attribute forwarded onto the rendered <img> tag. Pulled and rendered via toString().

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.

At most one of 'filename', 'data', 'src', 'pageName' and 'value' may be bound.

At least one of 'filename', 'data', 'src', 'pageName', 'value' and ('actionClass' or 'directActionName') must be bound.

'mimeType' must be bound when 'data' is bound.

WOImageButton Passthrough

An image that acts as a submit button (<input type="image">). Clicking it submits the enclosing form and reports the click coordinates back to the server.

The image source is chosen by binding exactly one of value, data, filename, or src. The click triggers exactly one of a component action or a direct action addressed by actionClass/directActionName. When an imageMapFile is supplied, the hit coordinates are matched against its regions to pick the action; the x/y bindings receive the raw click coordinates.

When rendered disabled the element degrades to a plain <img> and no longer submits.

BindingTypeDescription
action ↓ WOActionResults

The component action to invoke when the image is clicked. Pulled as an action and its result becomes the response page. Mutually exclusive with actionClass/directActionName, and must be a real method binding — a constant is rejected.

actionClass ↓ String

The direct-action class handling the click (defaults to DirectAction). Pulled. Used with directActionName as an alternative to a component action.

directActionName ↓ String

The name of the direct action to invoke (defaults to default). Pulled. Used with actionClass as an alternative to a component action.

value ↓ WOActionResults

A component action invoked directly through this button's own request URL, doubling as the image source. Pulled, and must be a real method binding — a constant is rejected. Mutually exclusive with data, filename, and src.

src ↓ String

A literal URL for the image. Pulled and rendered as the src attribute. Mutually exclusive with value, data, and filename.

filename ↓ String

The name of an image resource, resolved through the resource manager (optionally within framework). Pulled. Mutually exclusive with value, data, and src.

framework ↓ String

The framework in which filename is located. Pulled. Only meaningful together with filename.

data ↓ NSData

Raw image bytes to serve inline. Pulled. Requires mimeType, and is mutually exclusive with value, filename, and src.

mimeType ↓ String

The MIME type of the data bytes. Pulled. Required whenever data is bound.

key ↓ String

A cache key under which the data image is registered so its URL can be reused across requests. Pulled.

imageMapFile ↓ String

The name of a client-side image-map resource. Pulled; when the button is clicked the hit coordinates are tested against its regions to select the action to invoke.

x ↑ Integer

Receives the horizontal click coordinate on submit. Pushed as an Integer. Must be bound together with y, and neither may be a constant.

y ↑ Integer

Receives the vertical click coordinate on submit. Pushed as an Integer. Must be bound together with x, and neither may be a constant.

width ↓ String

The image width, rendered onto the tag. Pulled.

height ↓ String

The image height, rendered onto the tag. Pulled.

disabled ↓ Object (truthy)

If truthy, the element renders as a plain <img> rather than a submit button and no longer participates in form submission. Pulled by truthiness.

name ↓ String

The HTML form-field name. Pulled; auto-assigned from the element ID when unbound.

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.

Exactly one of 'value', 'data', 'filename' and 'src' must be bound.

Exactly one of 'action' and ('actionClass' or 'directActionName') must be bound.

'action' must be a keypath, not a constant.

'value' must be a keypath, not a constant.

'filename' must be bound when 'framework' is bound.

'mimeType' must be bound when 'data' is bound.

'y' must be bound when 'x' is bound.

'x' must be bound when 'y' is bound.

WOJavaScript Passthrough

Emits a <script> element carrying client-side JavaScript. The script body comes from exactly one of three sources: an inline string (scriptString), a resource file bundled with the application (scriptFile), or an external URL referenced via src (scriptSource).

When scriptSource is used the element renders an empty <script src="…"> tag; otherwise the script text is written as the element's content. Template content between the element's tags is discarded.

BindingTypeDescription
scriptString ↓ String

The JavaScript source to emit inline, pulled and written verbatim as the <script> body. Mutually exclusive with scriptFile and scriptSource.

scriptFile ↓ String

The name of a JavaScript resource bundled with the application. Pulled, resolved against the resource manager, and its file contents are emitted inline as the <script> body. Mutually exclusive with scriptString and scriptSource.

scriptSource ↓ String

A URL for an external script. Pulled and rendered as the src attribute of the <script> tag (relative URLs are resolved against the component's resources); no inline body is written. Mutually exclusive with scriptString and scriptFile.

hideInComment ↓ Object (truthy)

If truthy, the inline script body is wrapped in an HTML comment (<!-- … //-->) so legacy browsers that don't understand <script> ignore it. Pulled by truthiness. Has no effect when scriptSource is used.

language ↓ String

The language attribute of the <script> tag. Pulled; defaults to JavaScript.

default: JavaScript
type ↓ String

The type attribute of the <script> tag. Pulled; defaults to text/javascript.

default: text/javascript
protectInCDATA ↓ Object (truthy)

If truthy, the inline script is wrapped in CDATA comment markers. Pulled by truthiness.

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.

Exactly one of 'scriptFile', 'scriptSource' and 'scriptString' must be bound.

WONestedList

deprecated

WONestedList is a deprecated dynamic element. Build a nested list from WORepetitions (or a recursive component) instead.

Renders a hierarchical list as nested HTML <ul>/<ol> markup, walking each item's sublist recursively. Every rendered item is a component-action link: clicking one pushes the corresponding object into selection and fires action.

The element renders its own list markup and takes no template content.

BindingTypeDescription
list • ↓ List

The top-level list to render. Required. Pulled as an NSArray; a non-array value is wrapped in a single-element list. Must be a resolvable keypath, not a constant.

item ↑ Object

The loop variable. For each element the current object is pushed here so displayString/value and sublist can read it. Must be settable (not a constant) whenever displayString or value is bound.

sublist ↓ List

The child list of the current item, pulled to recurse one level deeper. When it resolves to a list, its elements are rendered as a nested <ul>/<ol> under the item.

displayString ↓ Object

The label rendered for the current item. Pulled and converted to a string; HTML-escaped by default. Takes precedence over the legacy value binding when both are bound.

value ↓ Object

A backward-compatible alias for displayString. Used as the item's label only when displayString is unbound, and rendered with HTML-escaping off by default. Ignored when displayString is also bound.

escapeHTML ↓ Object (truthy)

Whether to HTML-escape the rendered label. Read by truthiness. Defaults to true when displayString is used and false when the legacy value binding is used.

selection ↑ Object

Receives the clicked object. When a generated link is followed, the object at that index path is pushed here before action fires. Must be settable (not a constant).

action ↓ Object

The action invoked when an item's link is clicked, after selection has been set. Pulled for its result, which becomes the response page; if it returns null the current page is redisplayed.

index ↑ Integer

The current item's zero-based position within its immediate list. Pushed as an Integer on each iteration.

level ↑ Integer

The current nesting depth, starting at 0 for the top level. Pushed as an Integer before each level is rendered and restored after each recursive descent.

isOrdered ↓ Object (truthy)

When truthy, each level is rendered as an ordered list (<ol>); otherwise as an unordered list (<ul>). Read by truthiness.

prefix ↓ Object

Optional markup pulled and emitted immediately before each item's <li>. Rendered via its string form, unescaped.

suffix ↓ Object

Optional markup pulled and emitted immediately after each item's <li>. Rendered via its string form, unescaped.

The binding set is closed: only the bindings listed above are accepted.

'list' must be a keypath, not a constant.

'item' must be bound when 'displayString' or 'value' is bound.

'item' must be settable (assignable, not a constant) when 'displayString' or 'value' is bound.

WOParam Passthrough

Renders an HTML <param> tag, supplying a named parameter to a surrounding plugin container (<object>/<applet>). Its value attribute is filled either from a pulled value or from a component-action URL when an action is bound.

Bind exactly one of value or action: value supplies a literal parameter value, while action turns the value attribute into a URL that invokes a component action when requested.

BindingTypeDescription
value ↓ Object

The parameter value. Pulled, then rendered into the tag's value attribute via its string form. Mutually exclusive with action.

action ↓ WOActionResults

A component action. When bound, the tag's value attribute is rendered as a component-action URL; requesting it pulls and invokes this action, whose WOActionResults becomes the response (falling back to the current page when it returns null). Mutually exclusive with value.

name ↓ String

The parameter name, forwarded onto the rendered <param> tag as its name attribute.

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.

Exactly one of 'value' and 'action' must be bound.

WOPasswordField Passthrough

A masked text field (<input type="password">). The current value is pulled and rendered into the tag's value attribute; on submit the field pushes whatever the user entered into its value binding.

BindingTypeDescription
value •
↓ Object
↑ String

The field's value. Required, and must be a settable keypath — the element rejects a constant at construction. On submit the raw form string is pushed back as a java.lang.String (even when empty or null). The current value is also pulled when rendering the tag.

name ↓ String

The HTML form-field name. Pulled; auto-assigned from the element ID when unbound.

escapeHTML ↓ Object (truthy)

Whether the name and value attributes are HTML-escaped. Pulled by truthiness. WebObjects also renders it onto the tag as an escapeHTML attribute.

disabled ↓ Object (truthy)

If truthy, renders the field disabled and skips reading its submitted value (so nothing is pushed to value).

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.

WOPopUpButton Passthrough

A single-selection drop-down menu (<select>). It iterates list, binding each element to item in turn to render an <option>, and pushes the chosen element back through selection on submit.

Bind list (required) and, in the loop, item (the current element) plus optionally displayString (the label to show). Track the chosen element with either selection (which also selects the initial value) or the read-only selectedValue — never both. Use noSelectionString to add a leading placeholder option.

BindingTypeDescription
list • ↓ List

The collection of objects the menu iterates, one <option> per element. Required, and must be a resolvable keypath (not a constant) — the element pulls it on every phase.

item ↑ Object

The loop variable: on each pass the current list element is pushed here so displayString/value can read it. Must be a settable keypath whenever displayString or value is bound.

index ↑ Integer

The current option's zero-based position. Pushed as an Integer alongside item on each iteration when bound.

selection ↕ Object

The chosen list element. Pulled to pre-select the matching option when the page renders, and pushed back with the newly chosen element (or null) on submit. Must not be a constant. Mutually exclusive with selectedValue.

selectedValue ↓ Object

A read-only alternative to selection: pulled to pre-select the matching option, but never pushed back. Mutually exclusive with selection.

displayString ↓ String

The label rendered for the current item. Pulled each iteration and shown as the option text; when unbound the option falls back to the value string, and failing that to the element's own toString().

value ↓ Object

The value attribute emitted on each <option>. Pulled each iteration (and rendered via toString()). Binding it is cosmetic and slows submit handling — omit it unless you need explicit option values.

optionDisabled ↓ Object (truthy)

Whether the current item's <option> renders disabled. Pulled per item (with item pushed first), by truthiness.

noSelectionString ↓ String

When it evaluates to a non-empty string, prepends a placeholder <option> with this label representing "no selection". Pulled at render time.

name ↓ String

The HTML form-field name of the <select> (auto-assigned from the element id if unbound).

disabled ↓ Object (truthy)

If truthy, renders the menu disabled so its selection is not submitted. Pulled by truthiness.

escapeHTML ↓ Object (truthy)

Whether to HTML-escape the option labels. Pulled by truthiness; defaults to true only when displayString is bound. Set falsy only when the labels are already safe markup.

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.

'list' must be a keypath, not a constant.

'item' must be bound when 'displayString' or 'value' is bound.

'item' must be settable (assignable, not a constant) when 'displayString' or 'value' is bound.

At most one of 'selection' and 'selectedValue' may be bound.

WOQuickTime Passthrough

deprecated

The QuickTime browser plugin is obsolete.

Embeds a QuickTime object — movie, sound, or VR panorama — by rendering an <embed> tag. It supports QuickTime VR hotspots: bind hotspotList and action, and clicking a hotspot invokes action with the clicked hotspot set into selection. Should be used outside an HTML form.

Obsolete: the QuickTime browser plugin no longer exists in any modern browser. Use a native <video> / <audio> element instead.

BindingTypeDescription
filename ↓ String

The name of a resource (looked up via the resource manager, optionally in framework) used as the movie source. Pulled. Exactly one of filename, src and qtsrc must be bound.

src ↓ String

A URL used directly as the movie source (resolved as a resource when relative). Pulled. Mutually exclusive with filename and qtsrc.

qtsrc ↓ String

A QuickTime movie source URL (qtsrc), an alternative to src. Pulled. Mutually exclusive with filename and src.

width ↓ Object

The embed width. Pulled and rendered via toString() onto the width attribute.

height ↓ Object

The embed height. Pulled and rendered via toString() onto the height attribute.

framework ↓ String

The framework to resolve filename (and other resources) against. Pulled; the value app is treated as the application itself.

hotspotList ↓ List

A List of VR hotspot ids. Pulled and iterated; each entry becomes a hotspotN attribute wired to a component action. When a hotspot is clicked, its id is pushed into selection and action is invoked.

selection ↑ Object

Receives the clicked VR hotspot. Pushed (via setValue) with the id of the hotspot the user clicked before action fires — never read.

action ↓ WOActionResults

The parent action invoked when a VR hotspot is clicked. Pulled to obtain the returned WOActionResults.

href ↓ Object

A single-click target for a standalone (hotspot-free) object: either a URL string, or a page/component whose action result is returned. Pulled. Mutually exclusive with pageName (the element throws if both are bound).

pageName ↓ String

The name of a page to return on a single click. Pulled. Mutually exclusive with href.

pluginsPage ↓ Object

The page the browser should visit to obtain the QuickTime plugin: a URL string, or a page/component. Pulled and rendered onto the pluginspage attribute. Mutually exclusive with pluginsPageName.

pluginsPageName ↓ String

The name of a page component to use as the plugin page, as an alternative to pluginsPage. Pulled. Mutually exclusive with pluginsPage.

qtnextList ↓ Object

QuickTime 4 playlist: a single movie URL String, or a List of movie URLs / {movie, target} dictionaries. Pulled and rendered as qtnextN attributes.

qtnextAction deprecated ↓ WOActionResults

Action for dynamically serving the next movie in a QuickTime 4 playlist. Not implemented — the element throws if this is bound.

WebObjects 5.4.3 throws a "not implemented" error when qtnextAction is bound. Use qtnextList instead.

volume ↓ Object

The playback volume, forwarded onto the embed tag. Pulled and rendered via toString().

bgcolor ↓ Object

The background color, forwarded onto the embed tag. Pulled and rendered via toString().

target ↓ Object

The single target for VR actions, forwarded onto the embed tag. Pulled and rendered via toString().

node ↓ Object

The initial VR node, forwarded onto the embed tag. Pulled and rendered via toString().

pan ↓ Object

The initial VR pan angle, forwarded onto the embed tag. Pulled and rendered via toString().

tilt ↓ Object

The initial VR tilt angle, forwarded onto the embed tag. Pulled and rendered via toString().

fov ↓ Object

The initial VR field of view, forwarded onto the embed tag. Pulled and rendered via toString().

correction ↓ Object

The VR image correction mode, forwarded onto the embed tag. Pulled and rendered via toString().

prefixHost ↓ Object

Whether to prefix the host on generated URLs, forwarded onto the embed tag. Pulled and rendered via toString().

hidden ↓ Object

Whether the object is hidden, forwarded onto the embed tag. Pulled and rendered via toString().

cache ↓ Object (truthy)

Whether the browser may cache the object. Pulled by truthiness — rendered as TRUE unless the value is null or "0".

autoplay ↓ Object (truthy)

Whether the object plays automatically. Pulled by truthiness — rendered as TRUE unless the value is null or "0".

controller ↓ Object (truthy)

Whether the playback controller is shown. Pulled by truthiness — rendered as TRUE unless the value is null or "0".

playeveryframe ↓ Object (truthy)

Whether every frame is played (no dropping). Pulled by truthiness — rendered onto the playeveryframe attribute as TRUE unless the value is null or "0".

otherTagString ↓ String

Raw text inserted inside the rendered <embed> tag. Pulled and written verbatim.

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.

Exactly one of 'src', 'filename' and 'qtsrc' must be bound.

At most one of 'href' and 'pageName' may be bound.

At most one of 'pluginsPage' and 'pluginsPageName' may be bound.

WORadioButton Passthrough

A radio button (<input type="radio">). Use it in one of two modes: bind checked for a simple truthy-in / Boolean-out toggle, or bind value (usually with selection) so a group of buttons sharing a selection behaves as a single-choice set (the button whose value equals selection is the one selected). A value without selection just renders the value and pushes nothing back.

BindingTypeDescription
checked
↓ Object (truthy)
↑ Boolean

The checked state. Pulled by truthiness to decide whether the button renders selected (null/0/false → not selected); pushed back as a java.lang.Boolean on submit — true if this button was the one chosen, false otherwise. Mutually exclusive with value.

value ↓ Object

This button's value (the <input>'s value attribute). Used with selection: the button renders selected when selection equals this value; without selection the value is rendered and nothing is pushed on submit. If unbound (and checked is used instead) the element falls back to the context element ID. Mutually exclusive with checked.

selection ↕ Object

The group's currently selected value (used with value). Pulled to decide which button in the group is selected; on submit it is pushed — set to this button's value when this button was chosen. Bind the same selection to every button in a group. Accepted but ignored when checked is bound instead of value.

name ↓ String

The HTML form-field name. Radio buttons in one group must share a name to be mutually exclusive; auto-assigned from the element ID if unbound.

disabled ↓ Object (truthy)

If truthy, renders the button disabled (it won't submit and won't push selection/checked).

escapeHTML ↓ Object (truthy)

Whether the name and value attributes are HTML-escaped. Pulled by truthiness. WebObjects also renders it onto the tag as an escapeHTML attribute.

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.

Exactly one of 'checked' and 'value' must be bound.

WORadioButtonList

deprecated

WORadioButtonList is a deprecated dynamic element. Build a radio-button group with a repetition over WORadioButton instead.

Renders a group of radio buttons (<input type="radio">), one per element of list. Iterating over list, it pushes each element to item (and its position to index), renders a radio button for it, and on submit pushes the chosen element back to selection. displayString supplies each button's label; prefix/suffix wrap it.

Bind either selection or a selectedValue (never both — the framework rejects that combination), and note that binding value selects a slower option-matching path the runtime warns against.

Extra attributes with a constant value are copied onto every radio input; extra attributes with a dynamic value are ignored.

BindingTypeDescription
list • ↓ List

The list of options to render, one radio button each. Required. Pulled once per rendering; must resolve to a List (or NSArray) and must not be a constant.

item ↑ Object

The iteration variable. For each option the current element is pushed here so displayString/value can read it, exactly like a repetition's item. Must be bound, and settable, whenever value or displayString is bound.

index ↑ Integer

The current option's zero-based position. Pushed as an Integer alongside item on each iteration; bind it only if you need the index.

selection ↕ Object

The selected option. Pulled to decide which button renders checked (the option equals to the selection wins); on submit the matching option is pushed back, or null when nothing was chosen. Cannot be combined with a selectedValue.

selectedValue ↓ Object

A read-only alternative to selection: pulled to decide which button renders checked, but never pushed back. Cannot be combined with selection.

displayString ↓ Object

The label shown next to each button. Pulled for the current item and rendered via toString(); when unbound the option's value string is used, and failing that the item's own toString(). Binding it requires item to be settable.

value ↓ Object

The HTML value attribute for each button, pulled for the current item and rendered via toString(). Binding it selects a slower option-matching submit path that the runtime warns against; prefer omitting it. Binding it requires item to be settable.

name ↓ String

The shared HTML form-field name tying the radio buttons into one group. Pulled; auto-assigned from the element ID when unbound.

prefix ↓ String

A raw string emitted before each button's label. Pulled; useful for wrapping each option in markup.

suffix ↓ String

A raw string emitted after each button's label. Pulled; the companion to prefix.

escapeHTML ↓ Object (truthy)

Whether to HTML-escape each label. Pulled by truthiness; defaults to escaping when displayString is bound. Set it falsy only when the label is already safe markup.

optionDisabled ↓ Object (truthy)

Whether the current option's radio button renders disabled. Pulled per item (with item pushed first), by truthiness.

disabled ↓ Object (truthy)

If truthy, the submitted value is not taken (nothing is pushed to selection). It does not render anything disabled — use optionDisabled to disable individual buttons. Pulled by truthiness.

class ↓ String

The class attribute copied onto each rendered <input type="radio">. Only a constant value is copied; a dynamic one is ignored.

id ↓ String

The id attribute copied onto each rendered <input type="radio">. Only a constant value is copied; a dynamic one is ignored.

style ↓ String

The style attribute copied onto each rendered <input type="radio">. Only a constant value is copied; a dynamic one is ignored.

title ↓ String

The title attribute copied onto each rendered <input type="radio">. Only a constant value is copied; a dynamic one is ignored.

'list' must be a keypath, not a constant.

'item' must be bound when 'displayString' or 'value' is bound.

'item' must be settable (assignable, not a constant) when 'value' is bound.

At most one of 'selection' and 'selectedValue' may be bound.

WORedirect

Redirects the browser to another URL. Renders no markup: it emits an HTTP 302 response with a Location header pointing at url.

Intended to be returned from an action method as the page response, not embedded as a tag in a template — its only job is to send the client elsewhere.

BindingTypeDescription
url ↓ String

The URL to redirect to. Pulled and written to the response's Location header. If it is unbound or resolves to null, an empty location is sent and a warning is logged.

The binding set is closed: only the bindings listed above are accepted.

WORepetition Container

Repeats its child content once per element of a collection (or a fixed number of times). Drive it either with list+item (iterate a collection, exposing each element through item) or with count (repeat a fixed number of times) — never both.

WORepetition renders no tag of its own; it only loops over the content between its tags.

BindingTypeDescription
list ↓ List

The collection to iterate over — an NSArray or a java.util.List. Pulled once per phase; each element is handed to item in turn. Mutually exclusive with count, and must be a resolvable keypath (not a constant).

item ↑ Object

The loop variable. On each iteration the current element of list is pushed here, so the child content can read it; it is nulled after the loop. Required whenever list is bound, and must be a settable keypath.

count ↓ Number

A fixed repeat count. Pulled and read as an integer (a null count is treated as 0). Use this for a plain N-times loop with no collection. Mutually exclusive with list and item.

index ↑ Integer

The current zero-based iteration index. Pushed here before each iteration so the child content can read the position. Optional; must be a settable keypath when bound.

The binding set is closed: only the bindings listed above are accepted.

Exactly one of 'list' and 'count' must be bound.

At most one of 'count' and 'item' may be bound.

'item' must be bound when 'list' is bound.

'list' must be a keypath, not a constant.

WOResetButton Passthrough

A reset button (<input type="reset">). Clicking it clears the enclosing HTML form's fields back to their initial values — a purely client-side action that never round-trips to the server.

Because a reset performs no submission, this element reads its bindings only: it overrides takeValuesFromRequest as a no-op, so nothing is ever pushed back.

BindingTypeDescription
value ↓ Object

The button's label — the value attribute of the rendered <input>. Pulled and converted to a string via toString(). Never pushed: a reset button does not read form values on submit.

disabled ↓ Object (truthy)

If truthy, renders the button disabled. Pulled by truthiness (null/0/false → enabled).

name ↓ String

The HTML form-field name of the rendered <input>. Pulled; auto-assigned from the element ID when unbound.

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.

WOResourceURL

Renders the URL of a resource as text into the page — not a tag, just the URL string. Use it to build src/href values by hand, or anywhere a bare resource URL is needed. Because no tag is written, extra attributes have nowhere to go: they are accepted but not rendered.

Bind exactly one of filename (a resource in the bundle), src (a URL), pageName (a component-action callback URL), value (a component action whose result is served), or data (an inline data source). A framework scopes a filename lookup; a mimeType types a data payload.

BindingTypeDescription
filename ↓ String

The name of a resource in the application (or framework) bundle. Pulled and resolved to the resource's URL, which is emitted as text. Mutually exclusive with src, pageName, value and data.

framework ↓ String

The framework bundle to resolve filename against (app for the application itself). Pulled during the resource lookup; only meaningful alongside filename — ignored without it.

src ↓ String

A URL to emit. Pulled as a string; a relative URL is resolved as a resource, an absolute one is emitted verbatim. Mutually exclusive with filename, pageName, value and data.

pageName ↓ String

The name of a page component. Pulled (and read via toString) to emit a component-action callback URL that, when requested, returns that page. Mutually exclusive with filename, src, value and data.

value ↓ WOActionResults

A component action. The emitted URL invokes it when requested, and the WOActionResults it returns is served as the response. Mutually exclusive with filename, src, pageName and data.

data ↓ Object

An inline data payload to expose at a generated URL. Pulled and, together with mimeType, encoded into a data URL. Mutually exclusive with filename, src, pageName and value; requires mimeType.

mimeType ↓ String

The MIME type of the data payload. Pulled when building the data URL. Required when data is bound.

key ↓ String

A cache key for the data payload, letting the same bytes be reused across requests instead of re-encoded. Pulled during data-URL construction.

Exactly one of 'filename', 'data', 'src', 'pageName' and 'value' must be bound.

'mimeType' must be bound when 'data' is bound.

WOString

Renders a dynamic string into the page. The bound value is converted to text and HTML-escaped by default.

Use a dateformat, numberformat, or formatter to format non-string values, and valueWhenEmpty to substitute a placeholder when the value is null or empty.

BindingTypeDescription
value • ↓ Object

The value to display. Required. Pulled, formatted to a string via toString(), then HTML-escaped unless escapeHTML is falsy. WOString is display-only — it never pushes anything back.

escapeHTML ↓ Object (truthy)

Whether to HTML-escape the rendered value. Pulled by truthiness; set it falsy only when value is already safe markup.

default: true
dateformat ↓ String

A date format pattern used to render a date value. Mutually exclusive with numberformat and formatter.

numberformat ↓ String

A number format pattern used to render a numeric value. Mutually exclusive with dateformat and formatter.

formatter ↓ Format

A Format instance used to render value. Mutually exclusive with dateformat and numberformat.

valueWhenEmpty ↓ Object

Substituted when value is null or empty, so the element still renders something.

The binding set is closed: only the bindings listed above are accepted.

At most one of 'formatter', 'dateformat' and 'numberformat' may be bound.

WOSubmitButton Passthrough

A form submit button (<input type="submit">). Clicking it submits the enclosing form and triggers a component action — or, via actionClass/directActionName, a direct action.

Bind at most one of action or the direct-action pair (actionClass/directActionName). With neither, the button just submits the form: the form's own action runs, or the page is redisplayed with the submitted values. The button label comes from value (default Submit).

BindingTypeDescription
action ↓ WOActionResults

A component action to invoke when the button is clicked. Pulled on submit; its result (a WOActionResults, typically the next page) becomes the response, or the current page if it returns null. Must be a resolvable keypath — a constant action is rejected at parse time. Mutually exclusive with actionClass/directActionName.

actionClass ↓ String

The direct-action class to target. Pulled and combined with directActionName to build the form's action URL. Use instead of action for a direct action; mutually exclusive with action.

directActionName ↓ String

The direct-action method name to target. Pulled and combined with actionClass to build the form's action URL. Use instead of action for a direct action; mutually exclusive with action.

value ↓ Object

The button's label (the value attribute). Pulled and rendered as text; defaults to Submit when unbound. Unlike other inputs, a submit button never pushes its value back — the value is not writable.

default: Submit
name ↓ String

The HTML form-field name. Pulled; auto-assigned from the element ID when unbound. When a direct action is used, the name is derived from actionClass/directActionName instead.

disabled ↓ Object (truthy)

If truthy, renders the button disabled and skips invoking its action on submit.

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.

At most one of 'action' and ('actionClass' or 'directActionName') may be bound.

'action' must be a keypath, not a constant.

WOSwitchComponent

Renders a component chosen at runtime by name. The bound WOComponentName is pulled, converted to a string, and used to look up the real component (or dynamic element) via WOApplication.dynamicElementWithName; the request/response phases are then forwarded to that component.

Any extra attributes bound on the tag are collected and handed to the resolved component as its bindings — they are not rendered as HTML attributes — and the tag's content is forwarded as that component's template. Because the target name is resolved at runtime, the editor cannot know which component is being rendered, so it cannot validate those forwarded bindings; that is why the unknown-attribute policy here is allowed (accepted, not checked) rather than passthrough.

BindingTypeDescription
WOComponentName ↓ Object

The name of the component to render. Pulled and read via toString(), so any object is accepted. If it resolves to null or empty, rendering fails with an IllegalStateException ("componentName not specified or componentName association evaluated to null"). This is the one binding the switch consumes itself — every other attribute on the tag is forwarded to the resolved component. Bind this or _componentName, not both.

_componentName ↓ String

An older name for WOComponentName, used when WOComponentName isn't bound. Pulled and read the same way. Prefer WOComponentName.

At least one of 'WOComponentName' and '_componentName' must be bound.

WOText Passthrough

A multi-line text input (<textarea>). The bound value fills the textarea's body on render and receives whatever the user typed on submit — so it is a genuine two-way binding.

Unlike single-line fields, WOText writes value into the tag's content rather than a value attribute; soft line-wrap returns (\r\n) are removed when the value is rendered; the submitted text is pushed back unchanged.

BindingTypeDescription
value •
↓ Object
↑ String

The textarea's text. Required, and must be a settable keypath (a constant is rejected at construction). Pulled to fill the textarea body — rendered via toString(), HTML-escaped, with soft line-wrap returns removed — and pushed back as the submitted java.lang.String, unchanged, when the form is submitted.

disabled ↓ Object (truthy)

If truthy, renders the textarea disabled and skips reading its submitted value, so nothing is pushed to value. Pulled by truthiness.

name ↓ String

The HTML form-field name. Pulled; auto-assigned from the element ID when unbound.

escapeHTML ↓ Object (truthy)

Whether the name attribute and the rendered value are HTML-escaped. Pulled by truthiness. WebObjects also renders it onto the tag as an escapeHTML attribute.

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.

WOTextField Passthrough

A single-line text input (<input type="text">). Pulls value to render the field's initial contents and pushes the submitted text back on form submission.

Bind a dateformat, numberformat, or formatter to convert between the bound object and its displayed/parsed string form. dateformat and numberformat are mutually exclusive; a formatter may be bound together with either.

BindingTypeDescription
value • ↕ Object

The field's value. Required, and must be a settable keypath (a constant is rejected at construction). Pulled to render the initial contents — formatted to a string via the bound formatter, or toString() otherwise. On submit it is pushed back: the raw submitted String when no formatter is bound, the formatter's parsed object when one is (optionally wrapped in a BigDecimal if useDecimalNumber is set).

formatter ↓ Format

A Format instance used to render value on output and parse the submitted text on input. May be bound together with dateformat or numberformat.

dateformat ↓ String

A date format pattern used to render and parse a date value. Mutually exclusive with numberformat.

numberformat ↓ String

A number format pattern used to render and parse a numeric value. Mutually exclusive with dateformat.

useDecimalNumber ↓ Object (truthy)

If truthy, a value parsed by the formatter is converted to a java.math.BigDecimal before being pushed to value. Pulled by truthiness.

disabled ↓ Object (truthy)

If truthy, renders the field disabled and skips reading its submitted value (so nothing is pushed to value). Pulled by truthiness.

name ↓ String

The HTML form-field name. Pulled; auto-assigned from the element ID when unbound.

escapeHTML ↓ Object (truthy)

Whether the name and value attributes are HTML-escaped. Pulled by truthiness. WebObjects also renders it onto the tag as an escapeHTML attribute.

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.

At most one of 'dateformat' and 'numberformat' may be bound.

WOVBScript Passthrough

deprecated

VBScript is obsolete.

Renders a <script> block (by default language="VBScript" type="text/vbscript"). The script body comes from exactly one of scriptString, scriptFile, or scriptSource: scriptString supplies the script inline, scriptFile names a resource whose contents are inlined, and scriptSource emits a src reference instead of a body.

VBScript ran only in legacy Internet Explorer and no current browser executes it — this element exists for backward compatibility only.

BindingTypeDescription
scriptString ↓ Object

The script source, supplied inline. Pulled and rendered (via toString()) as the body of the <script> tag. Mutually exclusive with scriptFile and scriptSource.

scriptFile ↓ String

The name of a resource file whose contents are inlined as the script body. Pulled, resolved against the application's resources (then the component's), and read into the <script> tag. Mutually exclusive with scriptString and scriptSource.

scriptSource ↓ String

A URL emitted as the src attribute of the <script> tag. Pulled; relative names are resolved against the component's resources. When bound, no inline body is rendered. Mutually exclusive with scriptString and scriptFile.

hideInComment ↓ Object (truthy)

If truthy, wraps the inline script in an HTML comment (<!-- ... //-->) so pre-scripting browsers ignore it. Pulled by truthiness. Has no effect when scriptSource is used.

language ↓ String

The language attribute of the <script> tag. Pulled; defaults to VBScript.

default: VBScript
type ↓ String

The type attribute of the <script> tag. Pulled; defaults to text/vbscript.

default: text/vbscript
protectInCDATA ↓ Object (truthy)

If truthy, the inline script is wrapped in CDATA comment markers. Pulled by truthiness.

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.

Exactly one of 'scriptFile', 'scriptSource' and 'scriptString' must be bound.

WOXMLNode Container Passthrough

Renders a single XML element into the response, using elementName as the tag name. Any child content is wrapped between an open and close tag; with no content the element is written self-closing (<name/>).

Every other binding is forwarded onto the rendered element as an XML attribute — the attribute name is preserved and its value is XML-escaped. This is the building block for emitting arbitrary XML markup from a component template.

BindingTypeDescription
elementName • ↓ String

The XML tag name to render. Required. Pulled and written verbatim as both the opening (and, when the element has content, closing) tag name. Consumed by the framework — it is not itself forwarded as an attribute.

Any other attribute (data-*, aria-*, role, class, …) is passed through verbatim onto the rendered tag.