===== The Element ===== ==== Definition and Usage ==== The [[property|]] element defines a property or a group of properties for its parent [[media|]], [[context|]], [[body|]], or [[switch|]] elements. These properties may be used in relationships with other objects of an NCL application, if the externable attribute of the [[property|]] element has "true" as its value. The [[property|]] element defines the name attribute, which indicates the name of the property or property group, and the value attribute. The parent element may not have more than one [[property|]] element with the same name attribute value. The //value// attribute is optional and defines an initial value for the property declared in the //name// attribute. When the value is not specified, the property is initialized with the value defined in homonym attributes of the [[descriptor|]] or [[region|]] elements associated with the parent element that defines the [[property|]], or else with a default value (that depends on the value of the name attribute). When the value is specified in the [[property|]] element, it has precedence over the value defined in homonym attributes of the [[descriptor|]] or [[region|]] elements associated with the parent element that defines the [[property|]]. ==== Syntax ==== ^ Element ^ Attributes ^ Content ^ Parent ^ | [[property|]] | //name//, //value//, //externable// | -- | [[media|]] or [[context|]] or [[body|]] | ==== Attributes ==== ^ Name ^ Value ^ Description ^ | //name// | It may receive any string value that begins with a letter or an underscore and that only contains letters, digits, "." and "_". | The //name// attribute uniquely identifies the property within its parent element. | | //value// | Depends on the name value. | The //value// attribute defines an initial value for the //name// attribute. | | //externable// | "false" or "true". The default value is: "true" if the property is defined in a [[property|]] element, or "false" if the property is defined in a [[descriptor|]] element. | The //externable// attribute determines if a property can (externable="true") or cannot (externable="false") be used in relationships. | ==== Predefined Properties ==== Several reserved words are used to specify properties with pre-defined semantic known by NCL players. These properties, their semantic, their possible values and their default values are presented below. === Predefined properties for all elements === ^ Name ^ Value ^ Description ^ | style | URI. | The locator of a stylesheet file that specifies other properties for the object. | | player | String. |

Identifies the presentation tool to be used.

If not specified, the player is determined by the object type, defined by the //type// attribute of the [[media|]] element, or inferred by the file extension of the //src// attribute value of the [[media|]] element.

| | reusePlayer |

"true" or "false".

The default value is "false".

| Specifies if a new player must be instantiated ("false") or if a player already instantiated must be used ("true"). | | playerLife |

"close" or "keep".

The default value is "close.

| Specifies what will happen to the player instance at the end of the object presentation. | | deviceClass |

"systemScreen(i)" or "systemAudio(i)", where //i// is a non-negative integer.

The default value is the same device class that runs the NCL player.

|

Specifies the device class where the media object will be presented.

There are two different types of device classes: active and passive. In an active class, a device is able to run some media players for [[media|]] element presentations. In a passive class, a device is not required to run media players, only to exhibit a bit map or a sequence of audio samples received from another device.

The "systemScreen(1)" and "systemAudio(1)" are reserved to passive classes, and "systemScreen(2)" and "systemAudio(2)" are reserved to active classes.

| | explicitDur |

The "explicitDur" property is specified according with one of the following syntax:

  1. "Hours:Minutes:Seconds.Fraction", where "Hours" is an integer in the [0,23] interval, "Minutes" is an integer in the [0,59] interval, "Seconds" is an integer in the [0,59] interval, and "Fraction" is a positive integer.
  2. Seconds"s", where Seconds is a positive real number.

For continuous media, the default value is set to the duration of the content, otherwise, it must be set to nil.

| Gives the duration of an object. | | focusIndex |

Positive integer.

When this property is not defined, the object is considered as if no focus could be set to it.

|

Specifies an index for the [[media|]] element to which the focus may be applied.

Note: When an element on focus is selected by pressing the "activate (select or enter) key", the focus control shall be passed to the [[media|]] element renderer (player). The player may then follow its own rules for navigation. The focus control shall be passed back to the NCL Player when the "back key" is pressed. In this case, the focus goes to the element identified by the the "service.currentFocus" property of the settings node ([[media|]] element of "application/x-ncl-settings" type).

| | moveLeft | Positive integer. | Specifies a value equal to the //focusIndex// value associated to the element to which the focus should be applied when the "left arrow key" is pressed. When the focus is applied to an element with the visible property set to false, or to an element that it is not being presented, the current focus does not move. | | moveRight | Positive integer. | Specifies a value equal to the //focusIndex// value associated to the element to which the focus should be applied when the "right arrow key" is pressed. When the focus is applied to an element with the visible property set to false, or to an element that it is not being presented, the current focus does not move. | | moveUp | Positive integer. | Specifies a value equal to the //focusIndex// value associated to the element to which the focus should be applied when the "up arrow key" is pressed. When the focus is applied to an element with the visible property set to false, or to an element that it is not being presented, the current focus does not move. | | moveDown | Positive integer. | Specifies a value equal to the //focusIndex// value associated to an element to which the focus should be applied when the "down arrow key" is pressed. When the focus is applied to an element with the visible property set to false, or to an element that it is not being presented, the current focus does not move. | === Predefined properties for elements with visual content === ^ Name ^ Value ^ Description ^ | top |

A real number in the range [0,100] ending with the character <"%"> (e.g. 30%), or an integer non-negative value specifying the attribute in pixels. For pixel values, the "px" unit qualifier may be omitted.

The default value is "0%", if the //bottom// value is not specified.

| Top position of the content, expressed as a percentage of the exhibition device height dimension, or as an absolute value. It places the top position of the content to be exhibited in the specified distance away from the top edge of the exhibition device. | | bottom |

If the "top" and "height" values are specified, it must be computed based on these values. Otherwise, it must be a real number in the range [0,100] ending with the character <"%"> (e.g. 30%), or an integer non-negative value specifying the attribute in pixels. For pixel values, the "px" unit qualifier may be omitted.

The default value is "0%", if the attribute value cannot be computed from the //height// and //top// attributes.

| Bottom position of the content, expressed as a percentage of the exhibition device height dimension, or as an absolute value. It places the bottom position of the content to be exhibited in the specified distance away from the bottom edge of the exhibition device. | | left |

A real number in the range [0,100] ending with the character <"%"> (e.g. 30%), or an integer non-negative value specifying the attribute in pixels. For pixel values, the "px" unit qualifier may be omitted.

The default value is "0%", if the //right// value is not specified.

| Left position of the content, expressed as a percentage of the exhibition device width dimension, or as an absolute value. It places the left position of the content to be exhibited in the specified distance away from the left edge of the exhibition device. | | right |

If the left and width values are specified, it must be computed based on these values. Otherwise, it must be a real number in the range [0,100] ending with the character <"%"> (e.g. 30%), or an integer non-negative value specifying the attribute in pixels. For pixel values, the "px" unit qualifier may be omitted.

The default value is "0%", if the attribute value cannot be computed from the //width// and //left// attributes.

| Right position of the content, expressed as a percentage of the exhibition device width dimension, or as an absolute value. It places the right position of the content to be exhibited in the specified distance away from the right edge of the exhibition device. | | width |

A real number in the range [0,100] ending with the character <"%"> (e.g. 30%), or an integer non-negative value specifying the attribute in pixels. For pixel values, the "px" unit qualifier may be omitted.

The default value is "0%".

| Width of the content to be exhibited, expressed as a percentage of the exhibition device width dimension, or as an absolute value. | | height |

A real number in the range [0,100] ending with the character <"%"> (e.g. 30%), or an integer non-negative value specifying the attribute in pixels. For pixel values, the "px" unit qualifier may be omitted.

The default value is "0%".

| Height of the content to be exhibited, expressed as a percentage of the exhibition device height dimension, or as an absolute value. | | location | See "left" and "top" properties. | Two numbers separated by comma, each one following the rule specified for "left" and "top" properties, respectively. | | size | See "width" and "height" properties. | Two numbers separated by comma, each one following the rule specified for "width" and "height" properties, respectively. | | bounds | See "left", "top", "width", and "height" properties. | Four numbers separated by comma, each one following the rule specified for "left", "top", "width", and "height" properties, respectively. | | background |

"white", "black", "silver", "gray", "red", "maroon", fuchsia", "purple", "lime", "green", "yellow", "olive", "blue", "navy", "aqua", or "teal". It may also be the reserved value "transparent".

The default value is "transparent".

| The background color used to fill the area of a region for displaying the media content that is not filled by the content itself. | | rgbChromakey |

RGB color defined using a hexadecimal (hex) notation for the combination of Red, Green, and Blue color values (RGB). The lowest value that can be given to one of the light sources is 0 (hex 00). The highest value is 255 (hex FF).

It may also be defined by the reserved words: "white", "black", "silver", "gray", "red", "maroon", fuchsia", "purple", "lime", "green", "yellow", "olive", "blue", "navy", "aqua", or "teal".

| The RGB color to be set as transparent. | | visible |

"true" or "false".

The default value is "false".

|

Allows the object presentation to be seen or hidden.

When the visible property associated with a [[context|]] or [[body|]] element is equal to "true", the visible property of each child element of the composition is taken into account to define how each of these child element will be exhibited.

When the visible property associated with a [[context|]] or [[body|]] element is equal to "false", all child elements of the composition are exhibited as hidden.

It should be remarked that an object with a visible property equal to "false", that is, an object exhibited as hidden, may not have any of its content anchors selected while the visible property value persists as "false".

When a document has its [[body|]] element with its visible property set to "false" and its presentation event is in the paused state, the document is said to be in stand-by. In ISDB-T standard, when there is only one application in execution and this application is in stand-by, the service's main video is dimensioned to 100% of the screen, and the main audio is set to 100% of its volume.

| | transparency |

A real number in the range [0,1] or a real number in the range [0,100] ending with the character <"%"> (e.g. "30%").

The default value is "0%".

| Indicates the degree of transparency of an object presentation: "1" or "100%" means full transparency and "0" or "0%" means opaque. | | fit |

"fill", "hidden", "meet", "meetBest", or "slice".

The default value is "fill".

|

Indicates how an object will be presented.

"fill": scale the object's media content so that it touches all edges of the box defined by the object's "width" and "height" properties.

"hidden": if the intrinsic "height" ("width") of the media content is smaller than the "height" ("width") property, the object must be rendered starting from the "top" ("left") edge and have the remaining "height" ("width") filled up with the background color; if the intrinsic "height" ("width") of the media content is greater than the "height" ("width") property, the object must be rendered starting from the top (left) edge until the height (width) defined in the property is reached; the part of the media content below (to right of) the height (width) is clipped.

"meet": scale the visual media object while preserving its aspect ratio until its height or width is equal to the value specified by the "height" or "width" properties. The media content left-top corner is positioned at the top-left coordinates of the box; the empty space at the right or the bottom must be filled up with the background color.

"meetBest": the semantic is identical to "meet", except that the image is not scaled greater than 100% in either dimension. "slice": scale the visual media content while preserving its aspect ratio until its height or width are equal to the value specified in the "height" and "width" properties and the defined presentation box is completely filled. Some parts of the content may get clipped. Overflow width is clipped from the right of the media object. Overflow height is clipped from the bottom of the media object.

| | scroll |

"none", "horizontal", "vertical", "both", or "automatic".

The default value is 0.

| Allows for the specification of how the scroll is configured in an exhibition region. | | zIndex |

An integer number in the range [0,255].

The default value is 0.

| The //zIndex// attribute specifies the superposition precedence, where objects with greater //zIndex// values are stacked on top of objects with smaller //zIndex// values. | | plan |

"video", "graphic", or "background".

The default is "video" for media with //src// attribute referring to a PES of a transport stream, or "graphic" for all other cases.

| Defines in which plan of a structured screen an object will be placed. | | focusBorderColor |

"white", "black", "silver", "gray", "red", "maroon", fuchsia", "purple", "lime", "green", "yellow", "olive", "blue", "navy", "aqua", or "teal".

The default value is defined by the "default.focusBorderColor" property of the //settings// object.

| Defines the color to decorate the screen region where the object on focus is being presented, before it is selected. | | selBorderColor |

"white", "black", "silver", "gray",""red", "maroon", fuchsia", "purple", "lime", "green", "yellow", "olive", "blue", "navy", "aqua", or "teal".

The default value is defined by the "default.selBorderColor" property of the //settings// object.

| Defines the color to decorate the screen region where the object on focus is being presented, after it is selected. | | focusBorderWidth |

Integer.

The default value is defined by the "default.focusBorderWidth" property of the //settings// object.

| Width (in pixels) applied to the border of an element in focus (0 means that no border will appear, positive values means that the border is outside the object content, and negative values means that the border is drawn over the object content). | | focusBorderTransparency |

A real value between 0 and 1, or a real value in the range [0,100] ending with the character <"%"> (e.g. "30%").

The default value is defined by the "default.focusBorderTransparency" property of the //settings// object.

| Transparency applied to the border of an element in focus, with "1" or "100%" meaning full transparency and "0" or "0%" meaning no transparency. | | focusSrc |

The following are valid values:

  • <"file:///file_path/#fragment_identifier"> -- for local files,
  • <"http://server_identifier/file_path/#fragment_identifier"> -- for remote files downloaded using the HTTP protocol,
  • <"https://server_identifier/file_path/#fragment_identifier"> -- for remote files downloaded using the HTTPS protocol,
  • <"rtsp://server_identifier/file_path/#fragment_identifier"> -- for streams downloaded using the RTSP protocol,
  • <"rtp://server_identifier/file_path/#fragment_identifier"> -- for streams downloaded using the RTP protocol,
  • <"ncl-mirror://media_element_identifier"> -- for a content flow identical to the one in presentation by another [[media|]] element,
  • <"sbtvd-ts:"> or <"isdb-ts:"> or <"ts://program_number.component_tag"> -- for elementary streams received from the transport stream.

For //focusSrc// attribute whose value identifies the <"sbtvd-ts">, <"isdb-ts">, or <"ts"> scheme, the "program_number.component_tag", can be substituted by the following reserved words:

  • "video" -- corresponding to the primary video ES being presented on the video plan,
  • "audio" -- corresponding to the primary audio ES,
  • "text" -- corresponding to the primary text ES,
  • "video(i)" -- corresponding to the //i//-th smaller video ES "component_tag" listed in the PMT of the tuned services,
  • "audio(i)" -- corresponding to the //i//-th smaller audio ES "component_tag" listed in the PMT of the tuned services, or
  • "text(i)" -- corresponding to the //i//-th smaller text ES "component_tag" listed in the PMT of the tuned services.
| Specifies an alternative media source to be presented, instead of the current presentation, if an element receives the focus. This attribute follows the same rules of the //src// attribute of the [[media|]] element. | | focusSelSrc | Same as for //focusSrc//. | Specifies an alternative media source to be presented, instead of the current presentation, when an element on focus is selected by pressing the activation (select or enter) key. This attribute follows the same rules of the //src// attribute of the [[media|]] element. | | freeze | "true" or "false". The default value is "false". | Defines what will happen with an object at the end of its presentation, if the end content is frozen ("true") or not ("false"). Defaults to "false" | | transIn, transOut |

List of (type, subtype, dur, startProgress, endProgress, direction, fadeColor, horzRepeat, vertRepeat, borderWidth, borderColor) separated by semicolons where:

  • Required //type// can be: "barWipe", "irisWipe", "clockWipe", "snakeWipe", or "fade". For the complete list of the predefined transition types see: http://www.w3.org/TR/SMIL2/smil-transitions.html#TransitionEffects-Appendix.
  • Required //subtype// values depend on the //type// values, as defined: "leftToRight" for "barWipe", "rectangle" for "irisWipe", "clockwiseTwelve" for "clockWipe", "topLeftHorizontal" for "snakeWipe", and "crossfade" for "fade". For the complete list of the predefined transition subtypes see: http://www.w3.org/TR/SMIL2/smil-transitions.html#TransitionEffects-Appendix.
  • //dur// attribute is specified according with one of the following syntax: (i) "Hours:Minutes:Seconds.Fraction", where "Hours" is an integer in the [0,23] interval, "Minutes" is an integer in the [0,59] interval, "Minutes" is an integer in the [0,59] interval, and "Fraction" is a positive integer; (ii) Seconds<"s">, where "Seconds" is a positive real number. The default value is "0s".
  • //startProgress// and //endProgress// are real number in the range [0,1].
  • //direction// values are "forward" and "reverse".
  • //fadeColor// is "white", "black", "silver", "gray", "red", "maroon", fuchsia", "purple", "lime", "green", "yellow", "olive", "blue", "navy", "aqua", or "teal".
  • //horzRepeat// and //vertRepeat// is a positive integer.
  • //borderWidth// is a non-negative integer.
  • //borderColor// is "white", "black", "silver", "gray", "red", "maroon", fuchsia", "purple", "lime", "green", "yellow", "olive", "blue", "navy", "aqua", or "teal".

The default value for the property is the empty string. If a transition type is specified then:

  • "dur" default duration is "1s",
  • "startProgress" default value is 0,
  • "endProgress" default value is 1,
  • "direction" default value is "forward",
  • "fadeColor" default value is "black",
  • "horzRepeat" default value is 1,
  • "vertRepeat" default value is 1,
  • "borderWidth" default value is 0,
  • "borderColor" default value is "black".
|

The value of the //transIn// and //transOut// is a semicolon-separated list of transitions.

The purpose of the semicolon-separated list is to allow authors to specify a set of fallback transitions if the preferred transition is not available. The first transition in the list should be performed if the user-agent has implemented this transition. If this transition is not available, then the second transition in the list should be performed, and so on.

The //type// and //subtype// define the transition. The //dur// attribute specifies the duration of the transition.

The //startProgress// attribute specifies the amount of progress through the transition at which to begin execution. For instance, we can want to begin a crossfade with the destination image being already 30% faded in. For this case, //startProgress// would be 0.3.

The //endProgress// attribute specifies the amount of progress through the transition at which to end execution. The value of this attribute must be greater than or equal to the value of the //startProgress// attribute. If //endProgress// is equal to //startProgress//, then the transition remains at a fixed progress for the duration of the transition.

The //direction// attribute specifies the direction the transition will run. Note that not all transitions will have meaningful reverse interpretations. For instance, a crossfade is not a geometric transition, and therefore has no interpretation of reverse direction. Transitions that do not have a reverse interpretation should have the direction attribute ignored and the default value of "forward" assumed.

If the value of the //type// attribute is "fade" and the value of the subtype attribute is "fadeToColor" or "fadeFromColor", then the //fadeColor// attribute specifies the ending or starting color of the fade. If the value of the //type// attribute is not "fade", or the value of the //subtype// attribute is not "fadeToColor" or "fadeFromColor", then the //fadeColor// attribute is ignored.

If the value of the //type// attribute is not "fade", then the following attributes can be specified:

The //horzRepeat// attribute specifies how many times to perform the transition pattern along the horizontal axis.

The //vertRepeat// attribute specifies how many times to perform the transition pattern along the vertical axis.

The //borderWidth// attribute specifies the width of a generated border along a wipe edge.

The //borderColor// attribute specifies the content of the generated border along a wipe edge. If the value of this attribute is a color, then the generated border along the wipe or warp edge is filled with this color. If the value of this attribute is "blend", then the generated border along the wipe blend is an additive blend (or blur) of the media sources.

| === Predefined properties for elements with continuous-media content (read-only) === ^ Name ^ Value ^ Description ^ | contentId |

String.

(Set only by the NCL player.)

The default value is nil.

| The "contentId" property is associated to continuous-media objects whose content is defined referring to an elementary stream. It has //null// as its initial value and it is set to the identifier value transported in the NPT reference descriptor (in a field of the same name: contentId), as soon as the associated continuous-media object is started. | | standby |

"true" or "false".

(Set only by the NCL player.)

The default value is "false".

| The "standby" property is set to "true" while an already started continuous-media object content referring to an elementary stream is temporarily interrupted by another interleaved content, in the same elementary stream. | === Predefined properties for elements with audible contents === ^ Name ^ Value ^ Description ^ | soundLevel | A real number in the range [0,1] or a real number in the range [0,100] ending with the character <"%"> (e.g. "30%").

The default value is 1.

| Audio volume relative to the recorded audio. | | balanceLevel | A real number in the range [-1,1] or a real number in the range [-100,100] ending with the character <"%"> (e.g. "30%").

The default value is 0.

| Balance level of the audio (-1 to the left and +1 to the right). | | trebleLevel | A real number in the range [0,1] or a real number in the range [0,100] ending with the character <"%"> (e.g. "30%").

The default value is 1.

| Treble setting, relative to the recorded audio. | | bassLevel | A real number in the range [0,1] or a real number in the range [0,100] ending with the character <"%"> (e.g. "30%").

The default value is 1.

| Bass setting, relative to the recorded audio. | | freeze |

"true" or "false".

The default value is "false".

| This property defines what will happen with an object at the end of its presentation, if the end content is frozen ("true") or not ("false"). | | transIn, transOut | A list of the form <"(type,subtype,dur,startProgress,endProgress)"> where:
  • "type" is "fade" by default,
  • "subtype" is "fade" by default,
  • The "explicitDur" property is specified according with one of the following syntax:
    1. "Hours:Minutes:Seconds.Fraction", where "Hours" is an integer in the [0,23] interval, "Minutes" is an integer in the [0,59] interval, "Seconds" is an integer in the [0,59] interval, and "Fraction" is a positive integer.
    2. Seconds"s", where Seconds is a positive real number.
  • "startProgress" is a real number in the range [0,1], and "endProgress" is a real number in the range [0,1].

The default value for the property is the empty string. If a transition is specified then:

  • "dur" default duration is "1s",
  • "startProgress" default value is 0,
  • "endProgress" default value is 1.
|

The type of the //transIn// and //transOut// is always "fade" and the //subtype// is always "fade" and is defined by default.

The //dur// attribute specifies the duration of the transition.

The //startProgress// attribute specifies the amount of progress through the transition at which to begin execution.

The //endProgress// attribute specifies the amount of progress through the transition at which to end execution. The value of this attribute must be greater than or equal to the value of the //startProgress// attribute. If //endProgress// is equal to //startProgress//, then the transition remains at a fixed progress for the duration of the transition.

| === Predefined properties for elements with textual contents === ^ Name ^ Value ^ Description ^ | fontColor |

"white", "black", "silver", "gray", red", "maroon", "fuchsia", "purple", "lime", "green", "yellow", "olive", "blue", "navy", "aqua", or "teal".

The default value is "white".

| Defines the font color. | | fontFamily |

A prioritized list of font family names and/or generic family names.

There are two types of font family names:

  • "family-name" the name of a font family of choice, or
  • "generic-family"; the following generic families are defined: "serif", "sans-serif", "cursive", "fantasy", or "monospace".

The default value of this property is system-dependent.

| The list values are separated by a comma to indicate that they are alternatives. | | textAlign |

"left", "right", "center", or "justify".

The default value is "left".

| This property describes how text content is aligned. | | fontStyle |

"normal" or "italic".

The default value is "normal".

| Defines the font style. | | fontSize |

Positive integer ending with the character "px" or "pt", for relative font size expressed in pixels, or absolute font size expressed in points, respectively.

The default value of this property is system-dependent.

| Sets the font-size to a fixed size in pixel or in points. | | fontVariant |

"small-caps" or "normal".

The default value is "normal".

| Defines a variation type within a font family. | | fontWeight |

"normal" or "bold".

The default value is "normal".

| This property selects the weight of the font. | | freeze |

"true" or "false".

The default value is "false".

| This property defines what will happen with an object at the end of its presentation, if the end content is frozen ("true") or not ("false"). | | transIn, transOut |

List of (type, subtype, dur, startProgress, endProgress, direction, fadeColor, horzRepeat, vertRepeat, borderWidth, borderColor) separated by semicolons where:

  • Required //type// can be: "barWipe", "irisWipe", "clockWipe", "snakeWipe", or "fade". For the complete list of the predefined transition types see: http://www.w3.org/TR/SMIL2/smil-transitions.html#TransitionEffects-Appendix.
  • Required //subtype// values depend on the //type// values, as defined: "leftToRight" for "barWipe", "rectangle" for "irisWipe", "clockwiseTwelve" for "clockWipe", "topLeftHorizontal" for "snakeWipe", and "crossfade" for "fade". For the complete list of the predefined transition subtypes see: http://www.w3.org/TR/SMIL2/smil-transitions.html#TransitionEffects-Appendix.
  • //dur// attribute is specified according with one of the following syntax: (i) "Hours:Minutes:Seconds.Fraction", where "Hours" is an integer in the [0,23] interval, "Minutes" is an integer in the [0,59] interval, "Minutes" is an integer in the [0,59] interval, and "Fraction" is a positive integer; (ii) Seconds<"s">, where "Seconds" is a positive real number. The default value is "0s".
  • //startProgress// and //endProgress// are real number in the range [0,1].
  • //direction// values are "forward" and "reverse".
  • //fadeColor// is "white", "black", "silver", "gray", "red", "maroon", fuchsia", "purple", "lime", "green", "yellow", "olive", "blue", "navy", "aqua", or "teal".
  • //horzRepeat// and //vertRepeat// is a positive integer.
  • //borderWidth// is a non-negative integer.
  • //borderColor// is "white", "black", "silver", "gray", "red", "maroon", fuchsia", "purple", "lime", "green", "yellow", "olive", "blue", "navy", "aqua", or "teal".

The default value for the property is the empty string. If a transition type is specified then:

  • "dur" default duration is "1s",
  • "startProgress" default value is 0,
  • "endProgress" default value is 1,
  • "direction" default value is "forward",
  • "fadeColor" default value is "black",
  • "horzRepeat" default value is 1,
  • "vertRepeat" default value is 1,
  • "borderWidth" default value is 0,
  • "borderColor" default value is "black".
|

The value of the //transIn// and //transOut// is a semicolon-separated list of transitions.

The purpose of the semicolon-separated list is to allow authors to specify a set of fallback transitions if the preferred transition is not available. The first transition in the list should be performed if the user-agent has implemented this transition. If this transition is not available, then the second transition in the list should be performed, and so on.

The //type// and //subtype// define the transition. The //dur// attribute specifies the duration of the transition.

The //startProgress// attribute specifies the amount of progress through the transition at which to begin execution. For instance, we can want to begin a crossfade with the destination image being already 30% faded in. For this case, //startProgress// would be 0.3.

The //endProgress// attribute specifies the amount of progress through the transition at which to end execution. The value of this attribute must be greater than or equal to the value of the //startProgress// attribute. If //endProgress// is equal to //startProgress//, then the transition remains at a fixed progress for the duration of the transition.

The //direction// attribute specifies the direction the transition will run. Note that not all transitions will have meaningful reverse interpretations. For instance, a crossfade is not a geometric transition, and therefore has no interpretation of reverse direction. Transitions that do not have a reverse interpretation should have the direction attribute ignored and the default value of "forward" assumed.

If the value of the //type// attribute is "fade" and the value of the subtype attribute is "fadeToColor" or "fadeFromColor", then the //fadeColor// attribute specifies the ending or starting color of the fade. If the value of the //type// attribute is not "fade", or the value of the //subtype// attribute is not "fadeToColor" or "fadeFromColor", then the //fadeColor// attribute is ignored.

If the value of the //type// attribute is not "fade", then the following attributes can be specified:

The //horzRepeat// attribute specifies how many times to perform the transition pattern along the horizontal axis.

The //vertRepeat// attribute specifies how many times to perform the transition pattern along the vertical axis.

The //borderWidth// attribute specifies the width of a generated border along a wipe edge.

The //borderColor// attribute specifies the content of the generated border along a wipe edge. If the value of this attribute is a color, then the generated border along the wipe or warp edge is filled with this color. If the value of this attribute is "blend", then the generated border along the wipe blend is an additive blend (or blur) of the media sources.

| === Predefined properties for elements of "application/x-ncl-settings" type === The //system// group. Set of properties managed by the receiver system. They may be read, but they may not have their values changed by an NCL application, a Lua procedure or any other imperative or declarative code procedure. Receiver's native applications may change these properties' values. They must persist during all receiver life-cycle. ^ Name ^ Value ^ Description ^ | system.language | ISO 639-1 code. | Audio language. | | system.caption | ISO 639-1 code. | Caption language. | | system.subtitle | ISO 639-1 code. | Subtitle Language. | | system.returnBitRate(i) | Real number. | The whole bit rate of the interactive channel (i) in kilobytes per second. | | system.screenSize | (Integer, Integer). | Device screen size, in (lines, pixels/line), when a class is not defined. | | system.screenGraphicSize | (Integer, Integer). | Resolution set for the device's screen graphics plane, in (lines, pixels/line), when a class is not defined. | | system.audioType | "mono", "stereo", or "5.1". | Type of the device audio, when a class is not defined. | | system.screenSize(i) | (Integer, Integer). | Screen size of the class (i) of devices, in (lines, pixels/line). | | system.screenGraphicSize(i) | (Integer, Integer). | Resolution set for the screen graphics plane of the class (i) of devices, in (lines, pixels/line). | | system.audioType(i) | "mono", "stereo", or "5.1". | Type of the audio of the class (i) of devices. | | system.devNumber(i) | Integer. | Number of exhibition devices registered in the class (i). | | system.classType(i) | "passive" or "active". | Type of the class (i). | | system.parentDeviceRegion(i) | Five numbers separated by comma; each one following the value rule specified for "left", "top", "width", "height", and "zIndex" properties, respectively. | Identifies a [[region|]] element in another [[regionbase|]] associated with the parent device that creates the bit map sent to the passive-class devices (i); in the specified region the bit map sent must also be exhibited. | | system.info(i) | String. | List of class (i)'s media players. | | system.classNumber | Integer. | Number of classes that has been defined. | | system.CPU | Real number. | CPU performance in MIPS, regarding its capacity to run applications. | | system.memory | Integer. | Minimum memory space in megabytes provided to applications. | | system.operatingSystem | String (to be defined). | Type of the operating system. | | system.luaVersion | String (to be defined). | Version of the Lua engine supported by the receiver. | | system.ncl.version | String (to be defined). | NCL language version. | | system.GingaNCL.version | String (to be defined). | Ginga-NCL environment version. | | system.xyz | String. | Any property with the "system" prefix is reserved for future use. | The //user// group. Set of properties managed by the receiver system. They may be read, but they may not have their values changed by an NCL application, a Lua procedure or any other imperative or declarative code procedure. Receiver's native applications may change the properties' values. They must persist during all receiver life-cycle. ^ Name ^ Value ^ Description ^ | user.age | Integer. | User age. | | user.location | String. | User location. | | user.genre | "m" (male) or "f" (female). | User genre. | | user.xyz | String. | Any property with the "user" prefix is reserved for future use. | The //default// group. Set of properties managed by the receiver system. They may be read and have their values changed by an NCL application, a Lua procedure or any other imperative or declarative code procedure. Receiver's native applications may change the properties' values. They must persist during all receiver life-cycle, however, they are set to their initial values when a new channel is tuned. ^ Name ^ Value ^ Description ^ | default.focusBorderColor | "white", "black", "silver", "gray", "red", "maroon", "fuchsia", "purple", "lime", "green", "yellow", "olive", "blue", "navy", "aqua", or "teal". | Default color applied to the border of an element in focus. | | default.selBorderColor | "white", "black", "silver", "gray", "red", "maroon", "fuchsia", "purple", "lime", "green", "yellow", "olive", "blue", "navy", "aqua", or "teal". | Default color applied to the border of an element in focus when activated. | | default.focusBorderWidth | Integer. | Default width (in pixels) applied to the border of an element in focus. | | default.focusBorderTransparency | Number in the range [0,1] or [0,100], ending with the character <"%"> (e.g. "30%"), with "1" or "100%" meaning full transparency and "0" or "0%" meaning no transparency. | Default transparency applied to the border of an element in focus. | | default.xyz | String. | Any property with the "default" prefix is reserved for future use. | The //service// group. Set of properties managed by the NCL formatter. They may be read and have their values changed by an NCL application of the same service. They may be read but they may not have their values changed by a Lua procedure or any other imperative or declarative code procedure. Variable changes must be done using NCL commands. They must persist at least during the service life-cycle. ^ Name ^ Value ^ Description ^ | service.currentFocus | Integer. | The //focusIndex// value of the [[media|]] element on focus. | | service.currentKeyMaster | String. | Identifier //id// of the [[media|]] element that controls the navigational keys; if the [[media|]] element is not being presented or is not paused, the navigational key control pertains to the NCL formatter. | | service.xyz | String. | Any property with the "service" prefix follow the rules specified for the group. | The //si// group. Set of properties managed by the middleware. They may be read, but they may not have their values changed by an NCL application, a Lua procedure or any other imperative or declarative code procedure. They must persist at least until the next channel tuning. ^ Name ^ Value ^ Description ^ | si.numberOfServices | Integer. | Number of services available in the country for the tuned channel. Note: The value for this variable should be obtained from the number of PMT tables specified in the PAT table of the transport stream received in the tuning channel (see ISO/IEC 13818-1:2007). The variable value should take into account only the PMT tables whose fields country_code, specified in the country_availability_descriptor (see Section 8.3.6 of ABNT NBR 15603-2:2007) related with the table, are equivalent to the value of the "user.location" variable of the //settings// node. | | si.numberOfPartialServices | Integer | Number of 1-seg services available in the country for the tuned channel. Note: The value for this variable should be obtained from the number of PMT tables specified in the PAT table of the transport stream received in the tuning channel (see ISO/IEC 13818-1:2007). The variable value should take into account only the PMT tables whose country_code fields, specified in the country_availability_descriptor (see Section 8.3.6 of ABNT NBR 15603-2:2007) related with the table, are equal to the value of the "user.location" variable of the //settings// node, and whose program_number fields are equivalent to the service_id fields of the partial_reception_descriptor related with the NIT tables. | | si.channelNumber | Integer | Number of the tuned channel. Note: The value for this variable should be obtained from the remote_control_key_id filed of the ts_information_descriptor (see Section 8.3.42 of ABNT NBR 15603-2:2007) of the NIT table (see Section 7.2.4 of ABNT NBR 15603-2:2007) that describes the current service. | | si.xyz | String | Any property with the "si" prefix follows the rules specified for the group. | The //channel// group. Set of properties managed by the NCL formatter. They may be read and have their values changed by an NCL application of the same channel. They may be read but they may not have their values changed by a Lua procedure or any other imperative or declarative code procedure of the same channel; variable changes must be done using NCL commands. They must persist at least until the next channel tuning. ^ Name ^ Value ^ Description ^ | channel.keyCapture | String | Request of alphanumeric keys for NCL applications. | | channel.virtualKeyboard | "true" or "false" | Request of a virtual keyboard for NCL applications. | | channel.keyboardBounds | (Integer, Integer, Integer, Integer) | Virtual keyboard region (left, top, width, height). | | channel.xyz | String | Any variable with the "channel" prefix follows the rules specified for the group. | The //shared//. Set of properties managed by the NCL formatter. They may be read and have their values changed by an NCL application. They may be read but they may not have their values changed by a Lua procedure or any other imperative or declarative code procedure; variable changes must be done using NCL commands. They must persist at least during the life-cycle of the service that has defined them. ^ Name ^ Value ^ Description ^ | shared.xyz | String | Any property with the "shared" prefix follows the rules specified for the group. | === Reserved names for color definition ===
Color Name Hexadecimal (R,G,B) Hue (Saturation, Light) (Saturation, Value)
White #ffffff (100%, 100%, 100%) (0%, 100%) (0%, 100%)
Silver #c0c0c0 (75%, 75%, 75%) (0%, 75%) (0%, 75%)
Gray #808080 (50%, 50%, 50%) (0%, 50%) (0%, 50%)
Black #000000 (0%, 0%, 0%) (0%, 0%) (0%, 0%)
Red #ff0000 (100%, 0%, 0%) (100%, 50%) (100%, 100%)
Maroon #800000 (50%, 0%, 0%) (100%, 25%) (100%, 50%)
Yellow #ffff00 (100%, 100%, 0%) 60° (100%, 50%) (100%, 100%)
Olive #808000 (50%, 50%, 0%) 60° (100%, 25%) (100%, 50%)
Lime #00ff00 (0%, 100%, 0%) 120° (100%, 50%) (100%, 100%)
Green #008000 (0%, 50%, 0%) 120° (100%, 25%) (100%, 50%)
Aqua #00ffff (0%, 100%, 100%) 180° (100%, 50%) (100%, 100%)
Teal #008080 (0%, 50%, 50%) 180° (100%, 25%) (100%, 50%)
Blue #0000ff (0%, 0%, 100%) 240° (100%, 50%) (100%, 100%)
Navy #000080 (0%, 0%, 50%) 240° (100%, 25%) (100%, 50%)
Fuchsia #ff00ff (100%, 0%, 100%) 300° (100%, 50%) (100%, 100%)
Purple #800080 (50%, 0%, 50%) 300° (100%, 25%) (100%, 50%)