FROGANS A. Tamas FSDL 2.1 STG Interactive October 2002 Frogans Slide Description Language - 2.1 Status Destined to the developer community, this document specifies version 2.1 of the FSDL and replaces and renders obsolete any previous specifications concerning the FSDL. Distribution of this document is unlimited under the terms of the copyright statement. Comments on this document are welcome and may be made by e-mail at the address: fsdl@frogans.com. Abstract This document serves as a reference guide for the markup language called the Frogans Slide Description Language (FSDL) which is used for developing frogans. The frogans are a means for end-users to consult content on the Internet. Frogans are independent from, but compatible with, other existing applications such as WWW, Newsgroup, E-mail, and IRC. Copyright Notice Copyright (C) STG Interactive (2000-2002). All Rights Reserved. Document URL: http://www.frogans.com/en/doc/FSDL21.txt See 21.1. Full Copyright Statement of the FSDL Specifications. Terms of Use for Developers and Software Publishers The free use of the FSDL as a markup language for developers of frogans and publishers of authoring tools and server applications is subject to their respective terms of use. See 21.2. Use of the FSDL by Developers of Frogans. See 21.3. Use of the FSDL by Publishers of Authoring Tools. See 21.4. Use of the FSDL by Publishers of Server Applications. STG Interactive Frogans Page [1] FSDL 2.1 Frogans Slide Description Language October 2002 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 3. FSDL Documents . . . . . . . . . . . . . . . . . . . . . . . 6 3.1. Frogans Root Directory . . . . . . . . . . . . . . . . . . 6 3.2. Document Structure . . . . . . . . . . . . . . . . . . . . 7 3.3. Document Character Set and Encoding . . . . . . . . . . . . 8 3.4. File Sizes . . . . . . . . . . . . . . . . . . . . . . . . 8 4. Starting and Ending the Slide - FROGANS element . . . . . . . 9 5. Setting Image Resources - SETIMAGE element . . . . . . . . . 11 6. Setting Pixels Resources - SETPIXELS and PIX elements . . . . 15 7. Setting Draw Resources - SETDRAW element . . . . . . . . . . 18 8. Managing Text Resources . . . . . . . . . . . . . . . . . . . 21 8.1. Defining Fonts - FONT element . . . . . . . . . . . . . . . 21 8.2. Setting Text Resources - SETTEXT and TEXT elements . . . . 24 9. Setting Duplicated Resources - SETCOPY element . . . . . . . 31 10. Pre-processing of Resources - PROCESS and FILTER elements . . 32 11. Defining the Shape of the Slide - SHAPE element . . . . . . . 36 12. Defining the Content of the Slide - CONTENT element . . . . . 40 13. Enhancing the Content of the Slide . . . . . . . . . . . . . 46 13.1. Applying Masks - MASK element . . . . . . . . . . . . . . . 46 13.2. Sketching Reliefs - RELIEF element . . . . . . . . . . . . 50 13.3. Adding Shadows - SHADOW element . . . . . . . . . . . . . . 52 14. Linking and Navigation - BUTTON element . . . . . . . . . . . 54 15. Auto-Refresh and Slide Show - NEXT element . . . . . . . . . 59 16. Redirecting to Another Slide - REDIRECT element . . . . . . . 61 17. Creating and Maintaining Sessions - SESSION element . . . . . 62 18. Planning for Statistics - STATS element . . . . . . . . . . . 64 19. Going On-line . . . . . . . . . . . . . . . . . . . . . . . . 66 19.1. Requesting PIDs from End-users . . . . . . . . . . . . . . 66 19.2. Choosing a Network Protocol . . . . . . . . . . . . . . . . 67 19.3. Hosting a Frogans on a HTTP Server . . . . . . . . . . . . 67 20. Creating Short-cuts and Links to a Frogans . . . . . . . . . 72 20.1. Making a Frogans Short-cut File . . . . . . . . . . . . . . 72 20.2. Editing a leaptofrogans.net Hyperlink . . . . . . . . . . . 72 20.3. Hosting a Proprietary Script . . . . . . . . . . . . . . . 73 21. Working with the FSDL . . . . . . . . . . . . . . . . . . . . 74 21.1. Full Copyright Statement of the FSDL Specifications . . . . 75 21.2. Use of the FSDL by Developers of Frogans . . . . . . . . . 76 21.3. Use of the FSDL by Publishers of Authoring Tools . . . . . 76 21.4. Use of the FSDL by Publishers of Server Applications . . . 76 STG Interactive Frogans Page [2] FSDL 2.1 Frogans Slide Description Language October 2002 1. Introduction The Frogans Slide Description Language (FSDL) is a complete markup language exclusively dedicated to the development of frogans. Frogans is a hyperlink-based, distributed information system on the Internet which was created by STG Interactive to provide the Internet community with a very simple means of publishing and consulting content, on multiple devices. Frogans are known for their unique and creative format which is easy to use, light and does not compete with open applications on the end-user's screen. Each frogans can contain an unlimited number of pages (slides) which are developed using the FSDL. Any creative and eye-catching format may attract an end-user's attention once. However, as for all information systems, the way the end-user interacts with the content (access, classify, share, etc.) relies on the way that content is addressed. To create greater affinity between the editor's content and the end-user, each frogans is identified by a frogans address which is short, easy to remember, universal, extensible and targeted. The FSDL eliminates barriers for developers in working with enhanced graphics and hyperlinks, by providing a clear and comprehensible structure for the code which is closely related to the slide's layout. FSDL documents can be quickly and easily hand-coded. They can also be produced dynamically on a server to automatically update or personalize the frogans for the end-user. As it supports all reading directions for written languages and is ISO 10646/Unicode compliant, the FSDL actively helps to promote the compatible exchange of information over the Internet. This document specifies version 2.1 of the FSDL. Future versions presenting additional features of this markup language will be released with higher version numbers, following input from the frogans developer community. STG Interactive Frogans Page [3] FSDL 2.1 Frogans Slide Description Language October 2002 2. Terms end-user A person using the Frogans Player software to consult frogans on the Internet. end-user's system A computer or device connected to the Internet which is able to display frogans. frogans Sets of uniquely shaped slides, which can be visualized on the Internet. Frogans can be published from anywhere in the world, in any language, through a frogans address. frogans address A frogans address is an Internet address which serves to reference a frogans. It is made up of the prefix 'frogans*' followed by one or two signs chosen by its editor. frogans family A frogans family is made up of different frogans addresses, leading to separate frogans, which have the same first sign. frogans favorites An end-user's selection of frogans addresses. Each frogans favorite has its session information saved on the end-user's system until the end-user reopens the frogans. Frogans Player A free downloadable software, published by STG Interactive, that lets end-users browse and navigate frogans on the Internet. frogans root directory A server directory which contains the frogans (FSDL documents and resources). Its location on the Internet is transmitted through the frogans address. frogans short-cut A file containing a frogans address which is destined to facilitate the opening and the transfer of a frogans by the end-user. frogans slide A frogans slide is comparable to a page on the World Wide Web. A frogans slide is a set of files containing a FSDL document and its related resources. An unlimited number of slides can be grouped together to make up a frogans. STG Interactive Frogans Page [4] FSDL 2.1 Frogans Slide Description Language October 2002 Frogans Slide Publisher A free downloadable software, published by STG Interactive, that helps developers create frogans slides. FSDL document A file containing a sequence of characters which are organized according to the FSDL specifications. home slide A frogans slide which is displayed every time the end-user opens the frogans. PID, personal identifier A personal identifier given by the frogans editor to the end-user to gain access to the frogans. PIDs can be used to personalize the content or services in the frogans. STG Interactive Frogans Page [5] FSDL 2.1 Frogans Slide Description Language October 2002 3. FSDL Documents 3.1. Frogans Root Directory All files of a frogans must be regrouped into a single directory called the frogans root directory. The frogans root directory contains FSDL documents and associated resources; it can be organized with sub-directories. For example: --Frogans root directory | |--SubDir1 | | | | Slide2.fsdl | | Pix2.gif | | Slide1.fsdl | Pix1a.png | Pix1b.jpg In a FSDL document, file names of resources and other associated FSDL documents must include the complete file path from the frogans root directory. The name of the frogans root directory is not included in the file path. File names always start with a slash (/). For example: the files in the preceding example are named '/Slide1.fsdl', '/Pix1a.png', '/Pix1b.jpg', '/SubDir1/Slide2.fsdl' and '/SubDir1/pix2.gif'. File names, including their path, are case sensitive strings of alphanumeric characters: A-Z, a-z, 0-9, underscore, dash, dot and slash (/). Spaces and backslashes (\) are not accepted. File names must contain between 2 and 128 characters. The file name of a FSDL document should have the extension '.fsdl' or '.fsd', but is not obligatory. For example, if the FSDL document is delivered dynamically by the server hosting the frogans, file name extensions such as '.php', '.asp' or '.jsp' may also be used. For more information about hosting the frogans on a server, see 19. Going On-line. STG Interactive Frogans Page [6] FSDL 2.1 Frogans Slide Description Language October 2002 3.2. Document Structure The FSDL document conforms to XML 1.0 specifications to assure maximum interoperability with servers and end-user systems. The FSDL document must start with one of the following XML declarations: As the FSDL document encoding is transmitted through the frogans address, the encoding attribute in the XML declaration is not used by the Frogans Player. See 3.3. Document Character Set And Encoding. The XML declaration is then followed by one of these document type declarations: To maintain FSDL document clarity and readability, the document type declaration must not contain an internal subset. The root element of the FSDL document is FROGANS. See 4. FROGANS element. All element names and their attributes are always written in uppercase in the FSDL document. Attribute values are delimited by single or double quotation marks. All elements contained in the FSDL document must have an end tag. For example: Block Of Text Empty elements must either have an end tag or the start tag must end with />. For example: can also be written The FSDL document may contain comments using the common syntax . An error left in the FSDL document will lead to a parsing error message. STG Interactive Frogans Page [7] FSDL 2.1 Frogans Slide Description Language October 2002 3.3. Document Character Set and Encoding The FSDL document encoding is specified in 'my account' on frogans.com (frogans address parameters). The encoding is not specified in the XML declaration as it is transmitted through the frogans address. At the time of publication (October 2002), the character set of the FSDL document is ISO 10646/Unicode and the format used to encode the FSDL document must be either UTF-8 (RFC 2279) or UTF-16 (RFC 2781). In the future, other character sets and formats used to encode the FSDL document may be recognized by the Frogans Player. The list of accepted encodings can be consulted on frogans.com. 3.4. File Sizes The total file size of the FSDL document and the resources used to display the slide, are categorized as follows: - Very light: up to 4,095 bytes - Light: 4,096 to 8,191 bytes - Normal: 8,192 to 16,383 bytes - Heavy: 16,384 to 32,767 bytes - Very Heavy: 32,768 to 65,535 bytes The total file size should not exceed 32,767 bytes in order to minimize the loading time of the slide on the end-user's system. The total file size must not exceed 65,535 bytes. STG Interactive Frogans Page [8] FSDL 2.1 Frogans Slide Description Language October 2002 4. Starting and Ending the Slide - FROGANS element The FROGANS element defines the beginning and the end of the FSDL document. It is a root element as it contains all other elements necessary to define the frogans slide: - Resource management elements are SETIMAGE, SETPIXELS, SETDRAW, FONT, SETTEXT, SETCOPY and PROCESS, - Layout elements are SHAPE and CONTENT, - Linking and navigation elements are BUTTON, NEXT, REDIRECT, SESSION and STATS. The attributes associated with the FROGANS element are: VERSION - Required The version of the specifications to which the FSDL document conforms. The value of this attribute must be identical to the FSDL version which is specified in 'my account' on frogans.com (frogans address parameters). The FSDL version is transmitted through the frogans address. * "FSDL2.1" : FSDL specifications version 2.1 COLOR - Optional The background color of the slide. Is a six-digit hexadecimal number prefixed by a hash mark (each color component is represented by two digits, in the order of red, green, blue). The default value is "#FFFFFF" (white). Examples of accepted values: COLOR="#FFFFFF" (white) COLOR="#ffffff" (white) COLOR="#000000" (black) COLOR="#808080" (gray) COLOR="#FF0000" (red) COLOR="#008000" (green) COLOR="#0000FF" (blue) COLOR="#FFFF00" (yellow) Examples of refused values: COLOR="" COLOR="# FF0000" COLOR="FF0000" COLOR="#FF000" COLOR="#F00" COLOR="red" STG Interactive Frogans Page [9] FSDL 2.1 Frogans Slide Description Language October 2002 EDGECOLOR - Optional The color of the inner edge of the slide. Is a six-digit hexadecimal number prefixed by a hash mark (each color component is represented by two digits, in the order of red, green, blue). The inner edge is used to make the frogans slide stand out on the screen of the end-user's system and therefore, can not be removed or enlarged. Its thickness is constant in all sizes of the slide on the screen. The default value is "#000000" (black). Examples of accepted values: EGDECOLOR="#000000" (black) EDGECOLOR="#FFFFFF" (white) EDGECOLOR="#ffffff" (white) EGDECOLOR="#C0C0C0" (silver) EGDECOLOR="#800000" (maroon) EGDECOLOR="#800080" (purple) EGDECOLOR="#FF00FF" (fuchsia) EGDECOLOR="#00FF00" (lime) EGDECOLOR="#808000" (olive) EGDECOLOR="#008080" (teal) EGDECOLOR="#00FFFF" (aqua) Examples of refused values: EGDECOLOR="" EGDECOLOR="# FF0000" EGDECOLOR="FF0000" EGDECOLOR="#FF000" EGDECOLOR="#F00" EGDECOLOR="red" STG Interactive Frogans Page [10] FSDL 2.1 Frogans Slide Description Language October 2002 5. Setting Image Resources - SETIMAGE element The SETIMAGE element designs an image resource which can be used to contribute to the shape of the slide (see 11. SHAPE element), to fill an area within the slide (see 12. CONTENT element), or to apply a mask to a content (see 13.1. MASK element). The SETIMAGE element is placed between the start and end tags of the FROGANS element. The SETIMAGE element does not contain any other elements. A single image resource can be reused many times within the same slide. The format used to encode the image file must be either JPEG, PNG or GIF (if GIF file is animated, only the first frame is displayed). The image file may contain transparency information (such as certain PNG or GIF image files) to define transparent areas in the resource. The image file is limited to 1024 pixels width by 768 pixels height in order to minimize the loading and processing time of image resources on the end-user's system. The total file size of the slide, including its image files, is limited to 65,535 bytes. See 3.4. File Sizes. To display a larger image file on the end-user's system, a separate viewer can be used. See 14. Linking and Navigation. If different image resources have identical FILE attributes in the FSDL document, the specified image file is loaded only once by the Frogans Player. If there is no SHAPE, CONTENT or MASK element in the FSDL document which refers to the image resource, the image file will only be loaded by the Frogans Player if the CACHE attribute is set to "ON". The attributes associated with the SETIMAGE element are: RESID - Required The unique identifier of the image resource for the slide. Is a non-case sensitive string of alphanumeric characters: A-Z, a-z, 0-9, underscore, without spaces. The string must contain between 1 and 16 characters. Examples of accepted values: RESID="foo1" RESID="Foo1" RESID="foo2" STG Interactive Frogans Page [11] FSDL 2.1 Frogans Slide Description Language October 2002 RESID="foo_1" Examples of refused values: RESID="" RESID="foo-1" RESID="foo/1" RESID="foo.1" RESID="foo 1" RESID="foo1, foo2" ASPECT - Required The way the image resource occupies the areas of its associated SHAPE, CONTENT or MASK elements (defined by their SIZE or RSIZE attributes). * "BASE" specifies that the whole image resource is displayed in its original proportions to occupy the largest part of the area. Can be combined with ADJUST attribute to pan the image resource * "SPREAD" specifies that the image resource is spread out to completely occupy the area. Does not preserve the original proportions of the image resource * "ECHO" specifies that the whole image resource is displayed in its original proportions to occupy the largest part of the area, and is then duplicated to occupy the remaining parts. Can be combined with ADJUST attribute to pan the image resource * "ZOOM" specifies that a part of the image resource is displayed in its original proportions to completely occupy the area. Can be combined with ADJUST attribute to pan the image resource ADJUST - Optional Applicable only if ASPECT="BASE", "ECHO" and "ZOOM" Adjusts the position of the image resource, through a left to right or top to bottom pan effect, on the areas of its associated SHAPE, CONTENT or MASK elements. Is a whole decimal number between -100 to 100. The default value is "0" (centered). Examples of accepted values: ADJUST="0" (centered) ADJUST="-100" (far left or top position) ADJUST="100" (far right or bottom position) STG Interactive Frogans Page [12] FSDL 2.1 Frogans Slide Description Language October 2002 ADJUST="33" (one third of the position to the right or bottom of center) ADJUST="- 100" ADJUST="+100" Examples of refused values: ADJUST="" ADJUST="33.3" ADJUST="200" FILE - Required The file name of the image in the frogans root directory. Is a case sensitive string of alphanumeric characters: A-Z, a-z, 0-9, underscore, dash, dot and slash (/). Spaces and backslashes (\) are not accepted. The string must contain between 2 and 128 characters. The file name always starts with a slash (/). If the image is located in a sub-directory, the file name must include the complete file path from the frogans root directory. See 3.1. Frogans Root Directory. An image file extension is not relevant and therefore, is not required. Examples of accepted values: FILE="/pic1.jpg" FILE="/pic-1.jpg" FILE="/pic_1.jpg" FILE="/subdir/pic1.jpg" FILE="/pic1.png" FILE="/pic1.gif" FILE="/pic1" Examples of refused values: FILE="" FILE="pic1.jpg" FILE="/.jpg" FILE="/pic1." FILE="\pic1.jpg" FILE="./pic1.jpg" FILE="../pic1.jpg" FILE="subdir/pic1.jpg" FILE="/subdir/" FILE="/subdir//pic1.jpg" FILE="/subdir\pic1.jpg" FILE="/pic1.jpg?option=2" FILE="/pic1.jpg?option=2&language=Swedish" STG Interactive Frogans Page [13] FSDL 2.1 Frogans Slide Description Language October 2002 FILE="frogans*GateName/pic1.jpg" FILE="http://SpecificDomainName.com/pic1.jpg" CACHE - Optional Indicates if the image file must be temporarily saved in or removed from a cache directory on the end-user's system. All image files are automatically removed from the cache directory when the end-user closes the frogans or after 24 hours. Cache is used to avoid the repeated loading of the same image file for display in other slides of the same frogans. When the Frogans Player receives a demand from the end-user to reload the slide, the image file will also reload even if the value of the CACHE attribute is set to "ON". An image file is included in the total file size of the slide, even if it has already been saved in the cache directory. See 3.4. File Sizes. The default value is "OFF". * "OFF" specifies image file must not be saved in the cache directory. If the image file is already in the cache directory, it must be removed. * "ON" specifies image file must be saved in the cache directory. STG Interactive Frogans Page [14] FSDL 2.1 Frogans Slide Description Language October 2002 6. Setting Pixels Resources - SETPIXELS and PIX elements The SETPIXELS element designs a resource made up of pixels which can be used to contribute to the shape of the slide (see 11. SHAPE element), to fill an area within the slide (see 12. CONTENT element), or to apply a mask to a content (see 13.1. MASK element). The SETPIXELS element is placed between the start and end tags of the FROGANS element. The SETPIXELS element only contains PIX elements. A single pixels resource can be reused many times within the same slide. The size of a pixels resource is 1 to 16 pixels in width and 1 to 16 pixels in height. A pixels resource can be used to handle color gradients, masks and other effects, without loading an image file (see 5. SETIMAGE element). The pixels are regrouped line by line, between the start and end tags of PIX elements. The number of PIX elements represents the height of the pixel resource. All PIX elements are placed between the start and end tags of the SETPIXELS element. The PIX element does not contain any other element, just characters. Each line in a PIX element is a comma separated list of pixels organized from left to right. Each pixel is specified by a hexadecimal number prefixed by a hash mark. Each PIX element contains the number of pixels specified in the WIDTH attribute of the SETPIXELS element. The format for the hexadecimal number depends on the type of pixels resource specified in the BITMAP attribute of the SETPIXELS element. For example: #FF000080,#00FF00FF,#0000FFFF #00FF00FF,#0000FF80,#FF000000 The SETPIXELS element can contain between 1 and 16 PIX elements. The PIX element can contain between 1 and 16 pixels. There are no attributes associated with the PIX element. STG Interactive Frogans Page [15] FSDL 2.1 Frogans Slide Description Language October 2002 The attributes associated with the SETPIXELS element are: RESID - Required The unique identifier of the pixels resource for the slide. Is a non-case sensitive string of alphanumeric characters: A-Z, a-z, 0-9, underscore, without spaces. The string must contain between 1 and 16 characters. Examples: see 5. SETIMAGE element WIDTH - Required The width of the pixels resource in number of pixels. Is a whole decimal number between 1 and 16. Examples of accepted values: WIDTH="1" (minimum width) WIDTH="16" (maximum width) WIDTH="8" (average width) Examples of refused values: WIDTH="" WIDTH="+1" WIDTH="8.5" WIDTH="20" BITMAP - Required Denotes the type of pixels resource to be used. When using "RGBA", "A" or "YA", an alpha channel is available to create transparent pixels. A pixel is opaque if its alpha component is "FF"; it is fully transparent if its alpha component is "00". * "RGB" specifies a color bitmap. Each pixel is represented by #RRGGBB where RR, GG and BB are the two-digit hexadecimal numbers for the red, green and blue components * "RGBA" specifies a color bitmap with an alpha channel. Each pixel is represented by #RRGGBBAA where RR, GG, BB and AA are the two-digit hexadecimal numbers for the red, green, blue and alpha components * "A" specifies a single color bitmap with an alpha channel. Each pixel is represented by #AA where AA is the two-digit hexadecimal number for the alpha component. The color of the pixels is specified in the COLOR attribute STG Interactive Frogans Page [16] FSDL 2.1 Frogans Slide Description Language October 2002 * "Y" specifies a grayscale bitmap. Each pixel is represented by #YY where YY is the two-digit hexadecimal number for the gray component * "YA" specifies a grayscale bitmap with an alpha channel. Each pixel is represented by #YYAA where YY and AA are the two-digit hexadecimal numbers for the gray and alpha components COLOR - Optional Applicable only if BITMAP="A" The uniform color of the pixels resource. Is a six-digit hexadecimal number prefixed by a hash mark (each color component is represented by two digits, in the order of red, green, blue). The default value is "#0000FF" (blue). Examples: see 4. FROGANS element STG Interactive Frogans Page [17] FSDL 2.1 Frogans Slide Description Language October 2002 7. Setting Draw Resources - SETDRAW element The SETDRAW element designs a graphic resource which can be used to contribute to the shape of the slide (see 11. SHAPE element), to fill an area within the slide (see 12. CONTENT element), or to apply a mask to a content (see 13.1. MASK element). The SETDRAW element is placed between the start and end tags of the FROGANS element. The SETDRAW element does not contain any other elements. A single graphic resource can be reused many times within the same slide. The attributes associated with the SETDRAW element are: RESID - Required The unique identifier of the graphic resource for the slide. Is a non-case sensitive string of alphanumeric characters: A-Z, a-z, 0-9, underscore, without spaces. The string must contain between 1 and 16 characters. Examples: see 5. SETIMAGE element FORM - Required Denotes the form of the graphic resource. * "RECT-P" specifies a rectangular perimeter * "RECT-A" specifies a rectangular area * "RREC-P" specifies a rounded rectangular perimeter * "RREC-A" specifies a rounded rectangular area * "ELLI-P" specifies an elliptical perimeter * "ELLI-A" specifies an elliptical area * "POLY-P" specifies a polygonal line * "POLY-A" specifies a polygonal area * "POLX-A" specifies an alternating polygonal area (for complex polygons with crisscrossing coordinates) STG Interactive Frogans Page [18] FSDL 2.1 Frogans Slide Description Language October 2002 THICK - Optional Applicable only if FORM="RECT-P", "RREC-P", "ELLI-P" and "POLY-P" Thickness of the line which designates the perimeter. Is a whole decimal number between 0 and 100. It represents the percentage of the width or the height of the resource, whichever is lower, divided by two (SIZE or RSIZE attributes of SHAPE, CONTENT and MASK elements). Signs are not accepted. The default value is "25" (one quarter of the maximum thickness). Examples of accepted values: THICK="25" (one quarter of the maximum thickness) THICK="0" (no thickness) THICK="100" (maximum thickness) THICK="33" (one third of the maximum thickness) Examples of refused values: THICK="" THICK="+33" THICK="33.3" THICK="200" THICK="-33" RSIZE - Optional Applicable only if FORM="RREC-P" and "RREC-A" Relative width and height of the ellipse defined for the corners of the rounded rectangular perimeter/area. Is a comma separated, pair of whole decimal numbers between 0 and 100. It represents the percentage of the width or the height of the resource (SIZE or RSIZE attributes of SHAPE, CONTENT and MASK elements). Signs are not accepted. The default value is "25,25" (quarter width, quarter height). Examples of accepted values: RSIZE="25,25" (quarter width, quarter height) RSIZE="100,100" (full width, full height) RSIZE="50,100" (half width, full height) RSIZE="50,50" (half width, half height) RSIZE="50, 50" (half width, half height) Examples of refused values: RSIZE="" RSIZE="+100,100" RSIZE="200,100" RSIZE="-50,100" STG Interactive Frogans Page [19] FSDL 2.1 Frogans Slide Description Language October 2002 RSIZE="100" RSIZE="50.5,100" COORDS - Required Applicable only if FORM="POLY-P", "POLY-A" and "POLX-A" Relative X,Y coordinates of the points of the polygonal perimeter/area. Is a comma separated, pair of whole decimal numbers between 0 and 100. The coordinate 0,0 is top-left of the resource and the coordinate 100,100 is bottom-right. Signs are not accepted. A maximum of 256 X,Y coordinates is possible. If FORM="POLY-P", the first X,Y coordinate must be repeated at the end of the value to close the polygon. If FORM="POLY-P", at least two different points must be specified. If FORM="POLY-A" and "POLX-A", at least three different points must be specified. Examples of accepted values: COORDS="0,100,50,50,75,75,100,0" (chart graphic line) COORDS="50,0,100,100,0,50" (triangular area) COORDS="50,0,100,100,0,50,50,0" (triangular perimeter) COORDS="50,0,75,100,0,30,100,30,25,100" (star shaped area) COORDS="50,0,75,100,0,30,100,30,25,100,50,0" (star shaped perimeter) COORDS="50, 0, 100, 100, 0, 50" (triangular area) Examples of refused values: COORDS="" COORDS="50,0" COORDS="+50,0,100,100,0,-50" COORDS="50,0,100,100,0,50,100" COLOR - Optional The uniform color of the form. Is a six-digit hexadecimal number prefixed by a hash mark (each color component is represented by two digits, in the order of red, green, blue). The default value is "#0000FF" (blue). Examples: see 4. FROGANS element STG Interactive Frogans Page [20] FSDL 2.1 Frogans Slide Description Language October 2002 8. Managing Text Resources To set a text resource, one or more fonts must be defined in the FSDL document using FONT elements. 8.1. Defining Fonts - FONT element The FONT element designs a font which can be used in the context of a text resource (see 8.2. SETTEXT and TEXT elements). The FONT element is placed between the start and end tags of the FROGANS element. The FONT element does not contain any other elements. Up to 32 different FONT elements can be used in the slide. A single font can be reused for different text resources within the same slide. The attributes associated with the FONT element are: FONTID - Required The unique identifier of the font for the slide. Is a non-case sensitive string of alphanumeric characters: A-Z, a-z, 0-9, underscore, without spaces. The string must contain between 1 and 16 characters. Examples of accepted values: FONTID="foo1" FONTID="Foo1" FONTID="foo2" FONTID="foo_1" Examples of refused values: FONTID="" FONTID="foo-1" FONTID="foo/1" FONTID="foo.1" FONTID="foo 1" FONTID="foo1, foo2" NAME - Optional The name of the font used to display the characters of the text. Is a comma separated list of five possible font names, which takes into account non-recognition of a font by the end-user's system. A font name is a non-case sensitive string of alphanumeric characters: A-Z, a-z, 0-9, dash, commercial at (@), and spaces. STG Interactive Frogans Page [21] FSDL 2.1 Frogans Slide Description Language October 2002 The string must contain between 1 and 31 characters. The end-user's system will display the first available font on the list. If none is available, a substitute font will be displayed. The default value is "Arial,Verdana,Times New Roman". Examples of accepted values: NAME="Arial,Verdana,Times New Roman" NAME="Arial, Verdana ,Times New Roman" NAME="Arial" NAME="Verdana" NAME="Times New Roman" Examples of refused values: NAME="" NAME="Arial," NAME="Arial,,Verdana" NAME="Arial+Verdana" STYLE - Optional The style of the font used to display the characters of the text. Is a comma separated list of up to four letters which can be used individually or in combination, in any order. The default value is "" (no style). * "B" specifies bold style * "I" specifies italic style * "U" specifies underline style * "S" specifies strikeout style Examples of accepted values: STYLE="" (no style) STYLE="B" (bold style) STYLE="b" (bold style) STYLE="B,I" (bold + italic styles) STYLE="B, I" (bold + italic styles) STYLE="I,B" (bold + italic styles) STYLE="B,I,U,S" (bold + italic + underline + strikeout styles) Examples of refused values: STYLE="," STYLE="B," STYLE="B,B" STG Interactive Frogans Page [22] FSDL 2.1 Frogans Slide Description Language October 2002 STYLE="BI" STYLE="B I" STYLE="B,,I" STYLE="B,I," STYLE="B,I,A" COLOR - Optional The color of the font used to display the characters of the text. Is a six-digit hexadecimal number prefixed by a hash mark (each color component is represented by two digits, in the order of red, green, blue). The default value is "#0000FF" (blue). Examples: see 4. FROGANS element SPACING - Optional The spacing between each character of the text. Is a whole decimal number between -100 and 100. The default value is "0" (default spacing). Examples of accepted values: SPACING="0" (default spacing) SPACING="100" (maximum spacing) SPACING="33" (one third of the maximum spacing) SPACING="-100" (no spacing, fully superimposed) SPACING="+100" SPACING="- 100" Examples of refused values: SPACING="" SPACING="33.3" SPACING="200" STG Interactive Frogans Page [23] FSDL 2.1 Frogans Slide Description Language October 2002 8.2. Setting Text Resources - SETTEXT and TEXT elements The SETTEXT element designs a text resource which can be used to contribute to the shape of the slide (see 11. SHAPE element), to fill an area within the slide (see 12. CONTENT element), or to apply a mask to a content (see 13.1. MASK element). The SETTEXT element is placed between the start and end tags of the FROGANS element. The SETTEXT element only contains TEXT elements. A single text resource can be reused many times within the same slide. The text characters are regrouped block by block between the start and end tags of TEXT elements. All TEXT elements are placed between the start and end tags of the SETTEXT element. The TEXT element does not contain any other element, just text characters. For example: This is a block of text This is a second block of text The text characters can be displayed horizontally or vertically, to be read from left to right (LTR), right to left (RTL), top to bottom (TTB) or bottom to top (BTT), using the FORMAT attribute of the SETTEXT element. The text resource can be made up of 1 to 16 lines (rows or columns) of text characters. The number of lines is specified in the LINES attribute of the SETTEXT element. If the line is horizontal, the default height of the font used to display the text characters is the height of the associated SHAPE, CONTENT or MASK elements (defined by their SIZE or RSIZE attributes) divided by the specified number of lines. If the line is vertical, the default width of the font used to display the text characters (column width) is the width of the associated SHAPE, CONTENT or MASK elements (defined by their SIZE or RSIZE attributes) divided by the specified number of lines. The spacing between the lines of the text resource can be changed using the LINESPACE attribute of the SETTEXT element. The font's width or height will be increased or reduced in proportion to the value of the LINESPACE attribute. STG Interactive Frogans Page [24] FSDL 2.1 Frogans Slide Description Language October 2002 The text characters of a block of text are displayed on one or more lines of the text resource. When using the STRETCH attribute of the SETTEXT element, the block of text is displayed in a single line of the text resource. Each block of text begins on a new line of the text resource, except when using the JOIN attribute of the TEXT element. If there is not enough space for all of the text characters defined in the SETTEXT element to be displayed, the remaining text characters will be ignored. If the text characters do not completely fill the available space, the last lines of the text resource can remain empty. The font used to display the text characters must be designed in a preceding FONT element (see 8.1. FONT element). The font's identifier is specified in the FONTID attribute of the SETTEXT element. Each TEXT element can have a different font (FONTID attribute of the TEXT element) and can reverse the direction of the text when it is displayed (REVDIR attribute of the TEXT element). To use different fonts and text directions in a single block of text, several TEXT elements can be joined together (JOIN attribute of the TEXT element). For example: This is a block of text This is dnoces a block of text The SETTEXT element can contain up to 16 TEXT elements. Each block of text can contain up to 768 text characters. Numeric character references can be used with the syntax: &#D; or &#xH; where D is the decimal value, and H the hexadecimal value of the character in ISO 10646/Unicode. Examples: N (letter N) N (letter N) N (letter N) STG Interactive Frogans Page [25] FSDL 2.1 Frogans Slide Description Language October 2002 Recognized entity references are: < less than sign (<) (<) > greater than sign (>) (>) " double quote sign (") (") & ampersand (&) (&) ' apostrophe (') (') © copyright sign (©) ® registered trademark (®) # number sign (#) (#) $ dollar sign ($) ($) € euro sign (€)   non-breaking space ( ) Entity references are case sensitive. The following text characters are automatically replaced by the space character ( ) : horizontal tabulation ( ), carriage return ( ), line feed ( ), form feed ( ) and zero-width space (​). Any combination of two or more values denoting a space will result in a single space. Spaces immediately following or preceding the TEXT element tags are not taken into account. Non-breaking spaces can be used to place succeeding spaces anywhere in a line of text. The attributes associated with the SETTEXT element are: RESID - Required The unique identifier of the text resource for the slide. Is a non-case sensitive string of alphanumeric characters: A-Z, a-z, 0-9, underscore, without spaces. The string must contain between 1 and 16 characters. Examples: see 5. SETIMAGE element FORMAT - Required The format of the text resource. * "H-TTB-LTR" specifies that the characters must be displayed horizontally, in rows organized from top to bottom, reading left to right * "H-TTB-RTL" specifies that the characters must be displayed horizontally, in rows organized from top to bottom, reading right to left STG Interactive Frogans Page [26] FSDL 2.1 Frogans Slide Description Language October 2002 * "H-BTT-LTR" specifies that the characters must be displayed horizontally, in rows organized from bottom to top, reading left to right * "H-BTT-RTL" specifies that the characters must be displayed horizontally, in rows organized from bottom to top, reading right to left * "V-LTR-TTB" specifies that the characters must be displayed vertically, in columns organized from left to right, reading top to bottom * "V-LTR-BTT" specifies that the characters must be displayed vertically, in columns organized from left to right, reading bottom to top * "V-RTL-TTB" specifies that the characters must be displayed vertically, in columns organized from right to left, reading top to bottom * "V-RTL-BTT" specifies that the characters must be displayed vertically, in columns organized from right to left, reading bottom to top LINES - Required The number of lines (rows or columns) to make up the text resource. Is a whole decimal number between 1 and 16. Examples of accepted values: LINES="1" (one line) LINES="16" (sixteen lines) LINES="8" (eight lines) Examples of refused values: LINES="" LINES="+1" LINES="8.5" LINES="20" FONTID - Required The unique identifier of the default font to be used to display the text resource. Is a non-case sensitive string of alphanumeric characters: A-Z, a-z, 0-9, underscore, without spaces. The string must contain between 1 and 16 characters. Examples: see 8.1. FONT element STG Interactive Frogans Page [27] FSDL 2.1 Frogans Slide Description Language October 2002 TALIGN - Optional The default alignment of the blocks of text in the text resource (horizontal or vertical). The default value is "BEGIN" (align start of the block of text). * "BEGIN" specifies align start of the block of text * "END" specifies align end of the block of text * "CENTER" specifies align center * "JUSTIFY" specifies align justified LINESPACE - Optional The spacing between each line of the text resource. Is a whole decimal number between -100 and 100. Has no effect if there is only one line in the text resource (LINES attribute). The default value is "0" (default spacing). Examples of accepted values: LINESPACE="0" (default spacing) LINESPACE="100" (maximum spacing) LINESPACE="33" (one third of the maximum spacing) LINESPACE="-100" (no spacing, fully superimposed) LINESPACE="+100" LINESPACE="- 100" Examples of refused values: LINESPACE="" LINESPACE="33.3" LINESPACE="200" STRETCH - Optional Forces each block of text to occupy a single line in the text resource, in relation to the other blocks of text. The longest block of text to be displayed will completely occupy its line in the text resource by changing the original proportions of the font. The other blocks of text will be displayed using the same font proportions as the longest line. STG Interactive Frogans Page [28] FSDL 2.1 Frogans Slide Description Language October 2002 Must be set to "OFF" in order to preserve the original proportions of the font. The default value is "OFF" (no stretch). * "OFF" specifies no stretch * "ON" specifies stretch The attributes associated with the TEXT element are: FONTID - Optional The unique identifier of the font to be used to display the text characters placed between the start and end tags of the TEXT element. Is a non-case sensitive string of alphanumeric characters: A-Z, a-z, 0-9, underscore, without spaces. The string must contain between 1 and 16 characters. The default value is specified in the FONTID attribute of the SETTEXT element which contains the TEXT element. Examples: see 8.1. FONT element TALIGN - Optional The alignment of the block of text (horizontal or vertical). If the block of text is made up of several TEXT elements (JOIN attribute), the value of the TALIGN attribute used to align the block of text is found in the first TEXT element. The default value is specified in the TALIGN attribute of the SETTEXT element which contains the TEXT element. Examples: see 8.2. SETTEXT element REVDIR - Optional Reverses the direction of the text characters placed between the start and end tags of the TEXT element. The initial direction is specified in the FORMAT attribute of the SETTEXT element which contains the TEXT element. The default value is "OFF" (direction is not reversed) * "OFF" specifies direction is not reversed * "ON" specifies direction is reversed STG Interactive Frogans Page [29] FSDL 2.1 Frogans Slide Description Language October 2002 JOIN - Optional Indicates if the text characters, placed between the start and end tags of the TEXT element, must be joined with the text characters of the previous TEXT element to display a single block of text with different fonts or text directions. Has no effect on the first TEXT element of the SETTEXT element. The default value is "OFF" (text characters are not joined). * "OFF" specifies text characters are not joined * "ON" specifies text characters are joined with a space character * "NOSPACE" specifies text characters are joined without a space character STG Interactive Frogans Page [30] FSDL 2.1 Frogans Slide Description Language October 2002 9. Setting Duplicated Resources - SETCOPY element The SETCOPY element initializes a copy of an existing resource (image, graphic, pixels or text) designed in a preceding element. The SETCOPY element is placed between the start and end tags of the FROGANS element. The SETCOPY element does not contain any other elements. The new resource has the identical attribute values of the original resource and retains the processes already applied on the original (see 10. PROCESS and FILTER elements). Additional processes can be applied on the new resource. The attributes associated with the SETCOPY element are: RESID - Required The unique identifier of the new resource for the slide. Is a non-case sensitive string of alphanumeric characters: A-Z, a-z, 0-9, underscore, without spaces. The string must contain between 1 and 16 characters. Examples: see 5. SETIMAGE element SOURCE - Required The unique identifier of the original resource for the slide. Is a non-case sensitive string of alphanumeric characters: A-Z, a-z, 0-9, underscore, without spaces. The string must contain between 1 and 16 characters. Examples of accepted values: SOURCE="foo1" SOURCE="Foo1" SOURCE="foo2" SOURCE="foo_1" Examples of refused values: SOURCE="" SOURCE="foo-1" SOURCE="foo/1" SOURCE="foo.1" SOURCE="foo 1" SOURCE="foo1, foo2" STG Interactive Frogans Page [31] FSDL 2.1 Frogans Slide Description Language October 2002 10. Pre-processing of Resources - PROCESS and FILTER elements The PROCESS element defines a series of processes to be applied on a resource (image, graphic, pixels or text), before it is used in the SHAPE, CONTENT and MASK elements. The resource must be designed in a preceding element. The PROCESS element is placed between the start and end tags of the FROGANS element. The PROCESS element only contains FILTER elements. Up to 16 different processes can be applied on the same resource using successive FILTER elements. The first FILTER element represents the first process to be applied, and so on. All FILTER elements are placed between the start and end tags of the PROCESS element. The FILTER element does not contain any other elements. For example: To reuse the same resource in the slide, but each with different processes, the original resource must be duplicated using the SETCOPY element before applying processes on the copies. By treating the original resource, all copies will be affected. The only attribute associated with the PROCESS element is: RESID - Required The unique identifier of the resource to be processed. Is a non-case sensitive string of alphanumeric characters: A-Z, a-z, 0-9, underscore, without spaces. The string must contain between 1 and 16 characters. Examples: see 5. SETIMAGE element The attributes associated with the FILTER element are: CUE - Required Denotes the filter used to process the red, green and blue (RGB) and alpha (A) components of the resource. * "LIGHT" specifies a filter which modifies the brightness of the resource (affects RGB components) STG Interactive Frogans Page [32] FSDL 2.1 Frogans Slide Description Language October 2002 * "CONTRAST" specifies a filter which modifies the contrast of the resource (affects RGB components) * "SATURATION" specifies a filter which modifies the color saturation of the resource (affects RGB components) * "HUE" specifies a filter which modifies the color hue of the resource (affects RGB components) * "SOLARIZE" specifies a filter which applies color solarization to the resource (affects RGB components) * "ADDCOLOR" specifies a filter which adds or subtracts a certain color uniformly to/from the resource (affects RGB components) * "MIXCOLOR" specifies a filter which blends a certain color uniformly with the resource (affects RGB components) * "NEGATIVE" specifies a filter which applies a negative effect to the resource (affects RGB components) * "ADDTRANS" specifies a filter which adds or subtracts a uniform transparency to/from the resource (affects A component) * "REVERSE" specifies a filter which reverses the transparency of the resource (affects A component) * "LUMAKEY" specifies a filter which gives transparency to areas of the resource whose luminance is of a certain value (affects A component) * "CHROMAKEY" specifies a filter which gives transparency to areas of the resource whose color is of a certain value (affects A component) * "LUMATOALPHA" specifies a filter which transfers the luminance of the resource to its alpha/transparency channel (affects A component) * "ALPHATOLUMA" specifies a filter which transfers the alpha/transparency channel of the resource to its luminance (affects RGB components) STG Interactive Frogans Page [33] FSDL 2.1 Frogans Slide Description Language October 2002 LEVEL - Optional Applicable only if CUE="LIGHT", "CONTRAST", "SATURATION", "SOLARIZE", "ADDCOLOR", "MIXCOLOR" and "ADDTRANS" The level of the effect to be applied on the resource. Is a whole decimal number between -100 and 100. Level zero is considered as having no effect. If CUE="SOLARIZE" and "MIXCOLOR", only positive levels are processed. The default value is "25" (one quarter of the maximum positive effect). Examples of accepted values: LEVEL="25" (one quarter of the maximum positive effect) LEVEL="100" (maximum positive effect) LEVEL="0" (no effect) LEVEL="-25" (one quarter of the maximum negative effect) LEVEL="-100" (maximum negative effect) LEVEL="+25" LEVEL="- 25" Examples of refused values: LEVEL="" LEVEL="33.3" LEVEL="200" ANGLE - Optional Applicable only if CUE="HUE" The angle added to the H component of each pixel of the resource (in HSV color space). Is a whole decimal number representing degrees between -180 and 180. The default value is "90" (90 degrees). Examples of accepted values: ANGLE="90" (90 degrees) ANGLE="0" (0 degree) ANGLE="-45" (-45 degrees) ANGLE="+90" ANGLE="- 45" Examples of refused values: ANGLE="" ANGLE="33.3" ANGLE="270" STG Interactive Frogans Page [34] FSDL 2.1 Frogans Slide Description Language October 2002 TOLERANCE - Optional Applicable only if CUE="LUMAKEY" and "CHROMAKEY" The tolerance of the effect to be applied on the resource. Is a whole decimal number between 0 and 100. Level zero means no tolerance. Signs are not accepted. The default value is "10" (one tenth of the maximum tolerance). Examples of accepted values: TOLERANCE="10" (one tenth of the maximum tolerance) TOLERANCE="100" (maximum tolerance) TOLERANCE="0" (no tolerance) Examples of refused values: TOLERANCE="" TOLERANCE="33.3" TOLERANCE="+25" TOLERANCE="-25" TOLERANCE="200" COLOR - Optional Applicable only if CUE="ADDCOLOR", "MIXCOLOR", "LUMAKEY" and "CHROMAKEY" The color to be used in the process. Is a six-digit hexadecimal number prefixed by a hash mark (each color component is represented by two digits, in the order of red, green, blue). If CUE="LUMAKEY", only the luminance of the specified color is used (a gray value can be specified, such as "#A0A0A0"). The default value is "#FF0000" (red). Examples: see 4. FROGANS element STG Interactive Frogans Page [35] FSDL 2.1 Frogans Slide Description Language October 2002 11. Defining the Shape of the Slide - SHAPE element The SHAPE element defines a specific shape, which contributes to the overall shape of the slide, by using an existing resource (image, graphic, pixels or text). The resource must be designed in a preceding element. The SHAPE element is placed between the start and end tags of the FROGANS element. The SHAPE element does not contain any other elements. Up to 64 different SHAPE elements can be combined successively to define complex shapes (COMBINE attribute). The slide layout is conducted on a grid which is used for sizing and positioning specified shapes. The size of the grid is 800 units width by 600 units height which corresponds to a 4 by 3 ratio. The grid uses vector units of measurement, which are the same for both horizontal and vertical axes. For example, an elliptical area whose width and height are identical on the grid will appear as a circle. Coordinate 0,0 is left-top on the grid. The coordinate 799,599 is right-bottom. If no SHAPE element is found in the FSDL document, or if the shape (can be a combined shape) is less than 25% of the grid area, the default shape of the slide is a rounded rectangle. The attributes associated with the SHAPE element are: RESID - Required The unique identifier of the resource to be used in specifying the shape. Is a non-case sensitive string of alphanumeric characters: A-Z, a-z, 0-9, underscore, without spaces. The string must contain between 1 and 16 characters. Examples: see 5. SETIMAGE element SIZE - Required The size of the specified shape on the grid before rotation. Is a comma separated, pair of whole decimal numbers, representing its width and height. The width is a number between 0 and 800 and the height is a number between 0 and 600. Signs are not accepted. STG Interactive Frogans Page [36] FSDL 2.1 Frogans Slide Description Language October 2002 Examples of accepted values: SIZE="80,40" SIZE="80, 40" SIZE="80 ,40" SIZE="100,200" Examples of refused values: SIZE="" SIZE="+80,40" SIZE="80" SIZE="80.5,40" POS - Required The position of the specified shape on the grid. Is a comma separated, pair of whole decimal numbers representing its X,Y coordinate. X is a number between 0 and 799 and Y is a number between 0 and 599. Signs are not accepted. Examples of accepted values: POS="400,300" (center of the grid) POS="0,0" (left-top of the grid) POS="799,599" (right-bottom of the grid) POS="400, 300" POS="400 ,300" Examples of refused values: POS="" POS="+400,300" POS="800,600" POS="400" POS="400.5,300" POS="-200,300" ALIGN - Optional The alignments of the specified shape in relation to its position on the grid (POS attribute). Is a comma separated list of two constants representing its horizontal and vertical alignments. The horizontal alignment can be left, center or right. The vertical alignment can be top, middle or bottom. The horizontal alignment always precedes the vertical alignment. The default value is "CENTER,MIDDLE" (center and middle align). * "LEFT,TOP" specifies left and top align * "LEFT,MIDDLE" specifies left and middle align STG Interactive Frogans Page [37] FSDL 2.1 Frogans Slide Description Language October 2002 * "LEFT,BOTTOM" specifies left and bottom align * "CENTER,TOP" specifies center and top align * "CENTER,MIDDLE" specifies center and middle align * "CENTER,BOTTOM" specifies center and bottom align * "RIGHT,TOP" specifies right and top align * "RIGHT,MIDDLE" specifies right and middle align * "RIGHT,BOTTOM" specifies right and bottom align ANGLE - Optional The clockwise rotation angle of the specified shape on the grid. The rotation axis corresponds to the position of the specified shape on the grid (POS attribute). Is a whole decimal number representing degrees between -180 and 180. The default value is "0" (no rotation). Examples: see 10. FILTER element FLIP - Optional Flips the specified shape on the grid. The default value is "OFF" (the shape is not flipped). * "OFF" specifies that the shape is not flipped * "ON" specifies that the shape is to be flipped along its horizontal and vertical dimensions * "XDIR" specifies that the shape is to be flipped along its horizontal dimension * "YDIR" specifies that the shape is to be flipped along its vertical dimension DROPOUT - Optional The transparency threshold over which areas of the resource are dropped out when defining the shape. Is a two-digit hexadecimal number prefixed by a hash mark. STG Interactive Frogans Page [38] FSDL 2.1 Frogans Slide Description Language October 2002 The default value is "#80" (areas with a transparency of less than "#80" are dropped out). Examples of accepted values: DROPOUT="#80" (areas with a transparency of less than "#80" are dropped out) DROPOUT="#FF" (all areas are dropped out unless opaque) DROPOUT="#00" (no area is dropped out) DROPOUT="#ff" Examples of refused values: DROPOUT="" DROPOUT="# FF" DROPOUT="FF" DROPOUT="#F" COMBINE - Optional The mode used to combine the specified shape with preceding SHAPE elements in the FSDL document. Has no effect on the first SHAPE element in the FSDL document. The default value is "OR" (union of the specified shape to the existing). * "OR" specifies the union of the specified shape to the existing * "AND" specifies the intersection of the specified shape with the existing * "DIFF" specifies the subtraction of the specified shape from the existing * "XOR" specifies the exclusive union of the specified shape to the existing STG Interactive Frogans Page [39] FSDL 2.1 Frogans Slide Description Language October 2002 12. Defining the Content of the Slide - CONTENT element The CONTENT element defines a content to be displayed on the slide by using an existing resource (image, graphic, pixels or text). The resource must be designed in a preceding element. The CONTENT element is placed between the start and end tags of the FROGANS element or between the start and end tags of the BUTTON element. The CONTENT element only contains MASK, RELIEF and SHADOW elements. Up to 128 different CONTENT elements can be used to create complex content. Specified contents are displayed within the slide, one on top of the other, in the order that their CONTENT elements appear in the FSDL document. The slide layout is conducted on a grid which is used for sizing and positioning specified content. The size of the grid is 800 units width by 600 units height which corresponds to a 4 by 3 ratio. The grid uses vector units of measurement, which are the same for both horizontal and vertical axes. For example, an elliptical area whose width and height are identical on the grid will appear as a circle. Coordinate 0,0 is left-top on the grid. The coordinate 799,599 is right-bottom. To enhance the specified content, optional elements can be placed between the start and end tags of the CONTENT element. See 13. MASK, RELIEF and SHADOW elements. The attributes associated with the CONTENT element are: RESID - Required The unique identifier of the resource to be used in specifying the content. Is a non-case sensitive string of alphanumeric characters: A-Z, a-z, 0-9, underscore, without spaces. The string must contain between 1 and 16 characters. Examples: see 5. SETIMAGE element STG Interactive Frogans Page [40] FSDL 2.1 Frogans Slide Description Language October 2002 SIZE - Required The size of the specified content on the grid before rotation. Is a comma separated, pair of whole decimal numbers, representing its width and height. The width is a number between 0 and 800 and the height is a number between 0 and 600. Signs are not accepted. Examples: see 11. SHAPE element POS - Required The position of the specified content on the grid. Is a comma separated, pair of whole decimal numbers representing its X,Y coordinate. X is a number between 0 and 799 and Y is a number between 0 and 599. Signs are not accepted. Examples: see 11. SHAPE element ALIGN - Optional The alignments of the specified content in relation to its position on the grid (POS attribute). Is a comma separated list of two constants representing its horizontal and vertical alignments. The horizontal alignment can be left, center or right. The vertical alignment can be top, middle or bottom. The horizontal alignment always precedes the vertical alignment. The default value is "CENTER,MIDDLE" (center and middle align). * "LEFT,TOP" specifies left and top align * "LEFT,MIDDLE" specifies left and middle align * "LEFT,BOTTOM" specifies left and bottom align * "CENTER,TOP" specifies center and top align * "CENTER,MIDDLE" specifies center and middle align * "CENTER,BOTTOM" specifies center and bottom align * "RIGHT,TOP" specifies right and top align * "RIGHT,MIDDLE" specifies right and middle align * "RIGHT,BOTTOM" specifies right and bottom align STG Interactive Frogans Page [41] FSDL 2.1 Frogans Slide Description Language October 2002 ANGLE - Optional The clockwise rotation angle of the specified content on the grid. The rotation axis corresponds to the position of the specified content on the grid (POS attribute). Is a whole decimal number representing degrees between -180 and 180. The default value is "0" (no rotation). Examples: see 10. FILTER element FLIP - Optional Flips the specified content on the grid. The default value is "OFF" (the content is not flipped). * "OFF" specifies that the content is not flipped * "ON" specifies that the content is to be flipped along its horizontal and vertical dimensions * "XDIR" specifies that the content is to be flipped along its horizontal dimension * "YDIR" specifies that the content is to be flipped along its vertical dimension BLUR - Optional The level of the blur effect to be applied on the content. Is a whole decimal number between 0 and 100. Signs are not accepted. The default value is "0" (no effect). Examples of accepted values: BLUR="0" (no effect) BLUR="100" (maximum effect) BLUR="33" (one third of the maximum effect) Examples of refused values: BLUR="" BLUR="33.3" BLUR="200" BLUR="+25" BLUR="-25" STG Interactive Frogans Page [42] FSDL 2.1 Frogans Slide Description Language October 2002 OPACITY - Optional The percentage of opacity for the content, after optional masks have been applied. Is a whole decimal number between 0 and 100. Signs are not accepted. The default value is "100" (opacity is not modified). Examples of accepted values: OPACITY="100" (opacity is not modified) OPACITY="0" (fully transparent) OPACITY="50" (half opacity) Examples of refused values: OPACITY="" OPACITY="33.3" OPACITY="200" OPACITY="+25" OPACITY="-25" ANTIALIAS - Optional Indicates if an antialiasing effect is applied on the content, before its rotation. Antialias is applied on content specified with graphic and text resources (SETDRAW and SETTEXT elements). The default value is "ON" (antialias is applied). * "ON" specifies antialias is applied * "OFF" specifies antialias is not applied REPEAT - Optional The mode used to repeat the content in the slide. The default value is "OFF" (the content is not repeated). * "OFF" specifies that the content is not repeated * "ON" specifies that the content is to be repeated along its horizontal and vertical dimensions throughout the slide * "XDIR" specifies that the content is to be repeated along its horizontal dimension * "YDIR" specifies that the content is to be repeated along its vertical dimension STG Interactive Frogans Page [43] FSDL 2.1 Frogans Slide Description Language October 2002 VISIBLE - Optional Applicable only if the CONTENT element is contained in a BUTTON element The conditions under which the content is visible in the button, in relation to the mouse cursor position on the slide. The default value is "ALWAYS" (the content is displayed at all times). * "ALWAYS" specifies that the content is displayed at all times * "MOUSEOVER" specifies that the content is displayed only if the mouse cursor passes over the button * "MOUSEAWAY" specifies that the content is displayed only if the mouse cursor is not on the button CURSOR - Optional The transparency threshold over which areas of the content are not reactive to the mouse cursor. Is a two-digit hexadecimal number prefixed by a hash mark. Can be used whether or not the CONTENT element is contained in a BUTTON element. The default value is "#80" (areas with a transparency of less than "#80" are not reactive to the mouse cursor). Examples of accepted values: CURSOR="#80" (areas with a transparency of less than "#80" are not reactive to the mouse cursor) CURSOR="#FF" (only opaque areas are reactive) CURSOR="#00" (all areas are reactive to the mouse cursor) CURSOR="#ff" Examples of refused values: CURSOR="" CURSOR="# FF" CURSOR="FF" CURSOR="#F" STG Interactive Frogans Page [44] FSDL 2.1 Frogans Slide Description Language October 2002 LEAPOUT - Optional The conditions under which the content is displayed depending on the size of the slide on the screen (of the end-user's system). If the CONTENT element is contained in a BUTTON element, the default value is "LARGE". Otherwise, it is "ANYSIZE". * "ANYSIZE" specifies that the content is displayed in all sizes of the slide on the screen * "SMALL" specifies that the content is displayed only when the slide on the screen is smaller than one quarter of its largest size * "LARGE" specifies that the content is displayed only when the slide on the screen is larger than one quarter of its largest size STG Interactive Frogans Page [45] FSDL 2.1 Frogans Slide Description Language October 2002 13. Enhancing the Content of the Slide To enhance a content to be displayed on the slide, MASK, RELIEF and SHADOW elements can be defined and placed between the start and end tags of the CONTENT element. 13.1. Applying Masks - MASK element The MASK element defines a mask which is applied to a content on the slide. The mask is defined by using an existing resource (image, graphic, pixels or text) whose transparency is combined with the transparency of the content (COMBINE attribute). Up to eight different masks can be applied on the content using successive MASK elements. The masks are combined in the order that their MASK elements appear in the FSDL document. The MASK element is placed between the start and end tags of the CONTENT element. The MASK element does not contain any other elements. For example: The specified mask is positioned on the same grid used for the CONTENT element. See 12. CONTENT element. The attributes associated with the MASK element are: RESID - Required The unique identifier of the resource to be used in specifying the mask. Is a non-case sensitive string of alphanumeric characters: A-Z, a-z, 0-9, underscore, without spaces. The string must contain between 1 and 16 characters. Examples: see 5. SETIMAGE element RSIZE - Optional The relative size of the specified mask on the grid. Is a comma separated, pair of whole decimal numbers between 0 and 100. It represents the percentage of the width or the height of the content on the grid. Signs are not accepted. STG Interactive Frogans Page [46] FSDL 2.1 Frogans Slide Description Language October 2002 The size of the mask is always equal to or smaller than the content size. The default value is "100,100" (full width, full height). Examples: see 7. SETDRAW element RPOS - Optional The relative position of the specified mask on the grid. Is a comma separated, pair of whole decimal numbers, representing the X,Y coordinate of the center of the mask, relative to where the content is placed. X is a number between -399 and 400 and Y is a number between -299 and 300. The default value is "0,0" (same position) Examples of accepted values: RPOS="0,0" (same position) RPOS="20,20" (bottom-right) RPOS="-20,-20" (top-left) RPOS="20 , 20" RPOS="+20,20" Examples of refused values: RPOS="" RPOS="20" RPOS="20.5,20" ANGLE - Optional The clockwise rotation angle of the specified mask, relative to the content's rotation angle, on the grid. The rotation axis corresponds to the center of the specified mask. Is a whole decimal number representing degrees between -180 and 180. The default value is "0" (no rotation). Examples: see 10. FILTER element STG Interactive Frogans Page [47] FSDL 2.1 Frogans Slide Description Language October 2002 FLIP - Optional Flips the specified mask on the grid. The default value is "OFF" (the mask is not flipped). * "OFF" specifies that the mask is not flipped * "ON" specifies that the mask is to be flipped along its horizontal and vertical dimensions * "XDIR" specifies that the mask is to be flipped along its horizontal dimension * "YDIR" specifies that the mask is to be flipped along its vertical dimension BLUR - Optional The level of the blur effect to be applied on the specified mask. Is a whole decimal number between 0 and 100. Signs are not accepted. The default value is "0" (no effect). Examples: see 12. CONTENT element OPACITY - Optional The percentage of opacity for the specified mask. Is a whole decimal number between 0 and 100. Signs are not accepted. The default value is "100" (opacity is not modified). Examples: see 12. CONTENT element ANTIALIAS - Optional Indicates if an antialiasing effect is applied on the specified mask, before its rotation. Antialias is applied on masks specified with graphic and text resources (SETDRAW and SETTEXT elements). The default value is "ON" (antialias is applied). * "ON" specifies antialias is applied * "OFF" specifies antialias is not applied STG Interactive Frogans Page [48] FSDL 2.1 Frogans Slide Description Language October 2002 COMBINE - Optional The mode used to combine the transparency of the specified mask with the transparency of the existing content. The default value is "OR" (union of the specified mask to the existing). * "OR" specifies the union of the specified mask to the existing * "AND" specifies the intersection of the specified mask with the existing * "DIFF" specifies the subtraction of the specified mask from the existing * "XOR" specifies the exclusive union of the specified mask to the existing STG Interactive Frogans Page [49] FSDL 2.1 Frogans Slide Description Language October 2002 13.2. Sketching Reliefs - RELIEF element The RELIEF element defines a relief which is applied to a content. Up to four different reliefs can be applied to the content using successive RELIEF elements. Reliefs are displayed, one on top of the other, in the order that their RELIEF elements appear in the FSDL document. The RELIEF element is placed between the start and end tags of the CONTENT element. The RELIEF element does not contain any other elements. For example: The specified relief is positioned on the same grid used for the CONTENT element. See 12. CONTENT element. The attributes associated with the RELIEF element are: RPOS - Optional The relative position of the specified relief on the grid. Is a comma separated, pair of whole decimal numbers, representing the X,Y coordinate of the center of the relief, relative to where the content is placed. X is a number between -399 and 400 and Y is a number between -299 and 300. The default value is "20,20" (bottom-right) Examples: see 13.1. MASK element COLOR - Optional The color of the specified relief. Is a six-digit hexadecimal number prefixed by a hash mark (each color component is represented by two digits, in the order of red, green, blue). The default value is "#FFFFFF" (white). Examples: see 4. FROGANS element STG Interactive Frogans Page [50] FSDL 2.1 Frogans Slide Description Language October 2002 BLUR - Optional The level of the blur effect to be applied on the specified relief. Is a whole decimal number between 0 and 100. Signs are not accepted. The default value is "0" (no effect). Examples: see 12. CONTENT element OPACITY - Optional The percentage of opacity for the specified relief. Is a whole decimal number between 0 and 100. Signs are not accepted. The default value is "100" (opacity is not modified). Examples: see 12. CONTENT element STG Interactive Frogans Page [51] FSDL 2.1 Frogans Slide Description Language October 2002 13.3. Adding Shadows - SHADOW element The SHADOW element defines a shadow which is applied to a content. A shadow is displayed next to the content on the slide. If the content contains transparent areas, the transparency of those areas will be applied to the shadow. Up to four different shadows can be added to the content using successive SHADOW elements. Shadows are displayed, one on top of the other, in the order that their SHADOW elements appear in the FSDL document. The SHADOW element is placed between the start and end tags of the CONTENT element. The SHADOW element does not contain any other elements. For example: The specified shadow is positioned on the same grid used for the CONTENT element. See 12. CONTENT element. Shadows are not reactive to the mouse cursor. The attributes associated with the SHADOW element are: RPOS - Optional The relative position of the specified shadow on the grid. Is a comma separated, pair of whole decimal numbers, representing the X,Y coordinate of the center of the shadow, relative to where the content is placed. X is a number between -399 and 400 and Y is a number between -299 and 300. The default value is "20,20" (bottom-right) Examples: see 13.1. MASK element STG Interactive Frogans Page [52] FSDL 2.1 Frogans Slide Description Language October 2002 COLOR - Optional The color of the specified shadow. Is a six-digit hexadecimal number prefixed by a hash mark (each color component is represented by two digits, in the order of red, green, blue). The default value is "#000000" (black). Examples: see 4. FROGANS element BLUR - Optional The level of the blur effect to be applied on the specified shadow. Is a whole decimal number between 0 and 100. Signs are not accepted. The default value is "0" (no effect). Examples: see 12. CONTENT element OPACITY - Optional The percentage of opacity for the specified shadow. Is a whole decimal number between 0 and 100. Signs are not accepted. The default value is "100" (opacity is not modified). Examples: see 12. CONTENT element STG Interactive Frogans Page [53] FSDL 2.1 Frogans Slide Description Language October 2002 14. Linking and Navigation - BUTTON element The BUTTON element defines a button on the slide which is made up of one or more specified contents. The BUTTON element is placed between the start and end tags of the FROGANS element. The BUTTON element only contains CONTENT elements. Up to 32 different BUTTON elements can be used to create complex content. Multiple contents can be combined to create complex roll-over buttons. The CONTENT elements which define the specified contents are placed between the start and end tags of the BUTTON element. For example: The VISIBLE attribute of each CONTENT element indicates how the content in the button is displayed in relation to the mouse cursor position on the slide. See 12. CONTENT element. A button on the slide always takes priority over any button which may be displayed under it. The area of the frogans slide covered by one or more buttons should not exceed 50% of the grid area, so the end-user can easily move the frogans on screen. Buttons are not reactive on the edge of the frogans slide, as this area is reserved to let the end-user resize the frogans on screen. The attributes associated with the BUTTON element are: GOTO - Required Denotes the type of button to be used. * "SLIDE" specifies a button which leads to another slide in the same frogans * "PIC" specifies a button which opens a separate viewer to display a larger image loaded from the frogans root directory. The format used to encode the image file must be either JPEG, PNG or GIF (if GIF file is animated, only the first frame is displayed) STG Interactive Frogans Page [54] FSDL 2.1 Frogans Slide Description Language October 2002 * "DOWNLOAD" specifies a button which begins the process of downloading a file from the frogans root directory * "REOPEN" specifies a button which closes the frogans and reopens it automatically, to re-request a PID for example. * "FROGANS" specifies a button which opens another frogans, that has a different frogans address * "WEB" specifies a button which opens the end-user's default browser to display a World Wide Web document * "EMAIL" specifies a button which opens the end-user's default mailer to send an e-mail FILE - Required Applicable only if GOTO="SLIDE", "PIC" and "DOWNLOAD" The file name in the frogans root directory. Is a case sensitive string of alphanumeric characters: A-Z, a-z, 0-9, underscore, dash, dot and slash (/). Spaces and backslashes (\) are not accepted. The string must contain between 2 and 128 characters. The file name always starts with a slash (/). If the file is located in a sub-directory, the file name must include the complete file path from the frogans root directory. See 3.1. Frogans Root Directory. Examples: see 5. SETIMAGE element and 15. NEXT element DATA - Optional Applicable only if GOTO="SLIDE" Additional data that can be sent to the server hosting the frogans, at the time of the request for the FSDL document by the Frogans Player. Is a case sensitive, comma separated list of items in the 'name=value' format. A maximum of 32 items is accepted in the list. The default value is "" (no data). 'name' is a case sensitive string of alphanumeric characters: A-Z, a-z, 0-9, underscore, without spaces. The string must contain between 1 and 16 characters. Each string of characters must be different from the others and cannot contain the non-case sensitive string of characters 'FROGANS'. The following STG Interactive Frogans Page [55] FSDL 2.1 Frogans Slide Description Language October 2002 non-case sensitive strings of characters are reserved and cannot be used: 'PID', 'SESSION', 'CERTIFICATE', 'KEY', 'LOGIN', 'PASSWORD'. 'value' is a case sensitive string of alphanumeric characters: A-Z, a-z, 0-9, underscore, dash and percent sign, without spaces. The string must contain between 1 and 128 characters. Examples of accepted values: DATA="" (no data) DATA="option=2" DATA="option=2,language=Swedish" DATA="option=2 , language=Swedish" DATA="option=2,language=Swedish,First_Name=Laura" DATA="referer=http%3A%2F%2Fwww%2ESpecificDomainName%2Ecom" Examples of refused values: DATA="?option=2" DATA="option=2&language=Swedish" DATA="slide2.fsdl?option=2" DATA="session=abc123" DATA="referer=http://www.SpecificDomainName.com" ADDRESS - Required Applicable only if GOTO="FROGANS" The address of another frogans. Is a registered frogans address whose format is defined on frogans.com. Examples of accepted values: ADDRESS="frogans*GateName" ADDRESS="frogans*GateName.Extension" Examples of refused values: ADDRESS="" ADDRESS="Frogans*GateName" ADDRESS="frogans*" ADDRESS="GateName" ADDRESS="GateName.Extension" ADDRESS="*GateName" ADDRESS="frogans * GateName" ADDRESS="frogans*GateName . Extension" ADDRESS="frogans*GateName/subdir/" ADDRESS="http://www.SpecificDomainName.com" ADDRESS="http://www.SpecificDomainName.com/subdir/" STG Interactive Frogans Page [56] FSDL 2.1 Frogans Slide Description Language October 2002 URL - Required Applicable only if GOTO="WEB" The URL of a document on the World Wide Web (html page, image, mp3, video, etc.). The URL must begin with 'http://' and can contain up to 255 characters. The & entity reference must be used in place of an ampersand (&) in the URL. Examples of accepted values: URL="http://www.SpecificDomainName.com" URL="http://www.SpecificDomainName.com/" URL="http://www.SpecificDomainName.com/page.htm" URL="http://www.SpecificDomainName.com/pic1.jpg" URL="http://www.SpecificDomainName.com/music.mp3" URL="http://www.SpecificDomainName.com/video.asx" URL="http://www.SpecificDomainName.com/video.rm" URL="http://www.SpecificDomainName.com/home.asp?a=7&b=2" URL="http://1.2.3.4/" Examples of refused values: URL="" URL="www.SpecificDomainName.com" URL="http://www.SpecificDomainName.com/home.asp?a=7&b=2" URL="https://www.SpecificDomainName.com" URL="mailto:Name@SpecificDomainName.com" URL="Name@SpecificDomainName.com" URL="rtsp://www.SpecificDomainName.com/video.rm" URL="http://frogans*GateName" URL="frogans*GateName" EMAIL - Required Applicable only if GOTO="EMAIL" The e-mail address. It can contain up to 128 characters. Examples of accepted values: EMAIL="Name@SpecificDomainName.com" Examples of refused values: EMAIL="" EMAIL="Name@SpecificDomainName.com, Name2@SpecificDomainName.com" EMAIL="mailto:Name@SpecificDomainName.com" EMAIL="Name@SpecificDomainName.com?subject=Hello" EMAIL="http://www.SpecificDomainName.com" EMAIL="frogans*GateName" STG Interactive Frogans Page [57] FSDL 2.1 Frogans Slide Description Language October 2002 SUBJECT - Optional Applicable only if GOTO="EMAIL" The subject of the e-mail. Is a case sensitive string of up to 32 alphanumeric characters: A-Z, a-z, 0-9, spaces and .-,_()!*:; The default value is "" (no subject). Examples of accepted values: SUBJECT="" (no subject) SUBJECT="Hello" SUBJECT="Hello, :-)" SUBJECT="Hello 19." Examples of refused values: SUBJECT="Date & Time" SUBJECT="Name@SpecificDomainName.com" SUBJECT="Name@SpecificDomainName.com?subject=Hello" STG Interactive Frogans Page [58] FSDL 2.1 Frogans Slide Description Language October 2002 15. Auto-Refresh and Slide Show - NEXT element The NEXT element defines another slide in the same frogans to be loaded and displayed automatically. The NEXT element is placed between the start and end tags of the FROGANS element. The NEXT element does not contain any other elements. The NEXT element is optional. Only one NEXT element can be used in the FSDL document. The next slide is displayed after a delay, plus the time necessary to load the slide file and its image resources. Loading times will vary according to network capacity between the server hosting the frogans and the end-user's system. If the end-user clicks on a button leading to another slide in the same frogans before the delay has expired or before the next slide is fully loaded, the procedure is cancelled. If the end-user closes the Frogans Player, all frogans navigation is stopped. The attributes associated with the NEXT element are: DELAY - Required The period of time until the next slide begins to load. Is a whole decimal number representing seconds between 5 and 86400. Signs are not accepted. Examples of accepted values: DELAY="5" (minimum delay, 5 seconds) DELAY="86400" (maximum delay, 24 hours) DELAY="60" (60 seconds delay) Examples of refused values: DELAY="" DELAY="0" DELAY="3" DELAY="+5" FILE - Required The file name of the FSDL document in the frogans root directory representing the next slide. Is a case sensitive string of alphanumeric characters: A-Z, a-z, 0-9, underscore, dash, dot and slash (/). Spaces and backslashes (\) are not accepted. The string must contain between 2 and 128 characters. The file name always starts with a slash (/). STG Interactive Frogans Page [59] FSDL 2.1 Frogans Slide Description Language October 2002 If the FSDL document is located in a sub-directory, the file name must include the complete file path from the frogans root directory. See 3.1. Frogans Root Directory. Examples of accepted values: FILE="/slide2.fsdl" FILE="/slide2.fsd" FILE="/slide-2.fsdl" FILE="/slide_2.fsdl" FILE="/subdir/slide2.fsdl" FILE="/slide2.php" FILE="/slide2.asp" FILE="/slide2.jsp" FILE="/slide2" Examples of refused values: FILE="" FILE="slide2.fsdl" FILE="/.fsdl" FILE="/slide2." FILE="\slide2.fsdl" FILE="./slide2.fsdl" FILE="../slide2.fsdl" FILE="subdir/slide2.fsdl" FILE="/subdir/" FILE="/subdir//slide2.fsdl" FILE="/subdir\slide2.fsdl" FILE="/slide2.fsdl?option=2" FILE="/slide2.fsdl?option=2&language=Swedish" FILE="frogans*GateName/slide2.fsdl" FILE="http://SpecificDomainName.com/slide2.fsdl" DATA - Optional Additional data that can be sent to the server hosting the frogans, at the time of the request for the FSDL document by the Frogans Player. See 14. DATA attribute of the BUTTON element. The default value is "" (no data). STG Interactive Frogans Page [60] FSDL 2.1 Frogans Slide Description Language October 2002 16. Redirecting to Another Slide - REDIRECT element The REDIRECT element indicates that another slide in the same frogans must be loaded and displayed automatically without delay. The FSDL document containing the REDIRECT element will not result in a displayed slide. A session can be maintained with a redirect (see 17. SESSION element). The REDIRECT element is placed between the start and end tags of the FROGANS element. The REDIRECT element does not contain any other elements. The REDIRECT element is optional. Only one REDIRECT element can be used in the FSDL document. When using the REDIRECT element, the SESSION element is the only other element which can be placed between the start and end tags of the FROGANS element. The REDIRECT element cannot be used if the FSDL document has been loaded from another FSDL document containing a REDIRECT element. The attributes associated with the REDIRECT element are: FILE - Required The file name of the FSDL document in the frogans root directory. Is a case sensitive string of alphanumeric characters: A-Z, a-z, 0-9, underscore, dash, dot and slash (/). Spaces and backslashes (\) are not accepted. The string must contain between 2 and 128 characters. The file name always starts with a slash (/). If the FSDL document is located in a sub-directory, the file name must include the complete file path from the frogans root directory. See 3.1. Frogans Root Directory. Examples: see 15. NEXT element DATA - Optional Additional data that can be sent to the server hosting the frogans, at the time of the request for the FSDL document by the Frogans Player. See 14. DATA attribute of the BUTTON element. The default value is "" (no data). STG Interactive Frogans Page [61] FSDL 2.1 Frogans Slide Description Language October 2002 17. Creating and Maintaining Sessions - SESSION element The SESSION element defines a session identifier for the slide (SESSID attribute). The SESSION element is placed between the start and end tags of the FROGANS element. The SESSION element does not contain any other elements. The SESSION element is optional. Only one SESSION element can be used in the FSDL document. The session identifier is sent to the server hosting the frogans by the Frogans Player, at the time of the request for FSDL documents representing other slides in the frogans (files are defined in the FILE attribute of the BUTTON, NEXT and REDIRECT elements). No session identifier is sent by the Frogans Player to the server when there is no SESSION element in the FSDL document or if the SESSID attribute is "". Additional data may also be sent to the server at the time of the request (DATA attribute of the BUTTON, NEXT and REDIRECT elements). The session identifier can be changed from slide to slide by the server hosting the frogans in order to update the information contained within the session identifier. In order to maintain a session when the end-user navigates from slide to slide, it is necessary to place the SESSION element in each slide of the frogans. The session ends when no SESSION element is found in the FSDL document or if the SESSID attribute is "". If the value of the RETURN attribute is set to "ON" and if the end-user has added the frogans to his frogans favorites, the session identifier is saved on the end-user's system at the time the frogans is closed. This session identifier will be sent to the server hosting the frogans by the Frogans Player when the end-user reopens the frogans; at that time, the PID would not be requested by the Frogans Player nor sent to the server. STG Interactive Frogans Page [62] FSDL 2.1 Frogans Slide Description Language October 2002 The attributes associated with the SESSION element are: SESSID - Required The session identifier for the slide. Is a case sensitive string of alphanumeric characters: A-Z, a-z, 0-9, underscore, dash and percent sign, without spaces. The string can contain up to 2048 characters. Examples of accepted values: SESSID="" (no session identifier) SESSID="123" SESSID="abc-ABC" SESSID="abc_ABC" SESSID="abc%20ABC" SESSID="abc%2FABC" Examples of refused values: SESSID="abc ABC" SESSID="abc/123" SESSID="abc?123" SESSID="abc=123" SESSID="abc#123" SESSID="abc:123" SESSID="abc.123" RETURN - Required Indicates if the session identifier can be saved on the end-user's system at the time the frogans is closed. A session identifier is saved only if the end-user has added the frogans to his frogans favorites. If the server hosting the frogans changes the session identifier from slide to slide, the last identifier received from the server is saved. * "OFF" specifies that the session identifier cannot be saved. If a previous session identifier has been saved, it must be removed. * "ON" specifies that the session identifier can be saved STG Interactive Frogans Page [63] FSDL 2.1 Frogans Slide Description Language October 2002 18. Planning for Statistics - STATS element The STATS element indicates that a hit must be processed automatically on a server used for collecting statistics about the end-user's navigation on the frogans. The hit is processed by the Frogans Player just before the slide is displayed on the end-user's system. The STATS element is placed between the start and end tags of the FROGANS element. The STATS element does not contain any other elements. The STATS element is optional. Only one STATS element can be used in the FSDL document. When the Frogans Player receives a demand from the end-user to reload the slide, the hit will be processed again. The attributes associated with the STATS element are: HIT - Required Denotes the type of hit to be processed. * "WEB" specifies a hit on a World Wide Web document URL - Required Applicable only if HIT="WEB" The URL of a document on the World Wide Web. The URL must begin with 'http://' and can contain up to 255 characters. The & entity reference must be used in place of an ampersand (&) in the URL. The hit is processed using HTTP 1.0 (RFC 1945) GET method on port 80. The only request header fields sent by the Frogans Player are: 'Pragma', 'User-Agent', 'Accept' and 'Host'. The value of 'Pragma' is: 'no-cache' The value of 'User-Agent' is: 'Frogans Player/x.y' where 'x.y' indicates the release version of the Frogans Player. The value of 'Accept' is: '*/*' STG Interactive Frogans Page [64] FSDL 2.1 Frogans Slide Description Language October 2002 No entity-header field is sent. Response status code, response header fields, entity-header fields (except 'Content-Length'), cookies and the document content are not used by the Frogans Player. The document's maximum size is 128 bytes. Examples: see 14. BUTTON element STG Interactive Frogans Page [65] FSDL 2.1 Frogans Slide Description Language October 2002 19. Going On-line 19.1. Requesting PIDs from End-users The editor's use of PID requests is optional and is specified in 'my account' on frogans.com (frogans address parameters). A PID is a case sensitive string of alphanumeric characters: A-Z, a-z, 0-9, without spaces. The string must contain between 6 and 16 characters. The PID is entered by the end-user when he opens the frogans, before its home slide is displayed. The personal identifier is sent to the server hosting the frogans by the Frogans Player at the time of the request for the FSDL document representing the home slide. The personal identifier will not be re-sent by the Frogans Player during navigation on the frogans. If the end-user specifies that he has no PID, the personal identifier sent by the Frogans Player to the server hosting the frogans is 'PID_UNKNOWN'. If the end-user specifies that he has forgotten his PID, the personal identifier sent by the Frogans Player to the server hosting the frogans is 'PID_FORGOT'. If the PID entered is not recognized by the server, the return slide may contain a button to reopen the frogans. See 14. BUTTON element. By clicking on this button, the end-user will be asked to enter the PID again. If the frogans is in the end-user's frogans favorites and if a session identifier was saved on the end-user's system during the last visit, the PID is not requested and no personal identifier will be sent by the Frogans Player to the server. See 17. SESSION element. There are two kinds of PID requests that can be set by the editor in 'my account' on frogans.com (frogans address parameters): - Standard Request: the PID is requested for each frogans independently from any other frogans in the same frogans family. - Grouped Request: the PID is requested for a chosen group of frogans in the same family. The PID is requested when any of the frogans in the group is opened and will not be requested again as long as one of those frogans remains open on screen. The group is made up of frogans in the same frogans family that have their End-user PID parameter set to "Grouped Request". STG Interactive Frogans Page [66] FSDL 2.1 Frogans Slide Description Language October 2002 Only one group can be defined in the same frogans family for grouped requests. Grouped requests can be used by editors who permit the end-user to access several frogans in the same family with the same PID. The Frogans Player does not save the PID on the end-user's system. 19.2. Choosing a Network Protocol The location of the frogans root directory on the Internet and the file name of the home slide's FSDL document are specified in 'my account' on frogans.com (frogans address parameters). The server hosting the frogans must be able to communicate using a network protocol recognized by the Frogans Player. The network protocol is specified in 'my account' on frogans.com (frogans address parameters). At the time of publication (October 2002), the Frogans Player only recognizes the network protocol HTTP. See 19.3. Hosting a Frogans on a HTTP Server. In the future, other network protocols may be recognized by the Frogans Player to let the end-user benefit from new functions while browsing frogans on the Internet, or to permit access from other devices and networks. The addition of other protocols will be indicated in future releases of the FSDL specifications and on frogans.com. 19.3. Hosting a Frogans on a HTTP Server Hosting the frogans on a HTTP server does not need specific knowledge of HTTP protocol, unless dynamic content is being delivered. The Frogans Player applies the following HTTP protocol rules: - Version: HTTP/1.0 (RFC 1945) - Port: 80 - Request method: GET or POST, depending on the type of file and the context of the request. When opening the frogans without a PID request: * if no session identifier was saved on the end-user's system during the last visit, the method to request the FSDL document representing the home slide of the frogans is GET. STG Interactive Frogans Page [67] FSDL 2.1 Frogans Slide Description Language October 2002 * if a session identifier was saved on the end-user's system during the last visit, the method to request the FSDL document representing the home slide of the frogans is POST. When opening the frogans with a PID request: * the method to request the FSDL document representing the home slide of the frogans is POST During navigation on the frogans: * If the requested file is an image file specified in a SETIMAGE element or in a BUTTON element (where GOTO="PIC"), the method is GET. * If the requested file is specified in a BUTTON element (where GOTO="DOWNLOAD"), the method is GET. A FSDL document with additional data (DATA attribute) can be specified in a BUTTON element (where GOTO="SLIDE") or in a NEXT element or in a REDIRECT element: * If there is no additional data nor session for the slide, the method to request the FSDL document representing the slide is GET. * If there is additional data or session for the slide, the method to request the FSDL document representing the slide is POST. For information about sessions, see 17. SESSION element. - Request header fields: The request header fields sent by the Frogans Player are: 'Pragma', 'User-Agent', 'Accept' and 'Host'. The value of 'Pragma' is: 'no-cache' The value of 'User-Agent' is: 'Frogans Player/x.y' where 'x.y' indicates the release version of the Frogans Player. Note: the value of 'User-Agent' of the Frogans Slide Publisher is 'Frogans Slide Publisher/x.y' where 'x.y' indicates its release version. The value of 'Accept' is: '*/*' The following request header fields are not sent by the Frogans Player: 'Date', 'Authorization', 'From', 'If-Modified-Since', 'Referer', 'Accept-Charset', 'Accept-Encoding', STG Interactive Frogans Page [68] FSDL 2.1 Frogans Slide Description Language October 2002 'Accept-Language' and 'MIME-Version'. When GET method is used by the Frogans Player, no entity-header field is sent. When POST method is used by the Frogans Player, the only entity-header fields sent are: 'Content-Length' and 'Content-Type'. The value of 'Content-Type' is: 'application/x-www-form-urlencoded' Note: the values of the DATA attribute (see 14. BUTTON element) and the SESSID attribute (see 16. SESSION element) may contain URL encoded characters. Therefore, the Frogans Player does not URL encode any of the values in the FSDL document. The following entity-header fields are not sent by the Frogans Player: 'Allow', 'Content-Encoding', 'Expires', 'Last-Modified', 'Content-Language', 'Link', 'Title' and 'URI'. - Data sent: only when POST method is used by the Frogans Player. When opening the frogans: * If there is a session for the home slide, data is sent with the format 'session=value' where value is the session identifier saved on the end-user's system. For example, if the saved session identifier is "abc%20ABC", the data sent is: 'session=abc%20ABC'. * If a PID has been entered by the end-user, data is sent with the format 'pid=value' where value is the personal identifier. For example, if the personal identifier is "LauraWhite22", the data sent is: 'pid=LauraWhite22'. During navigation on the frogans: * If there is additional data, but no session for the slide, data is sent in an ampersand separated list of items with the 'name=value' format. Items are taken from the DATA attribute's value, in the order they appear. For example, if DATA="name1=value1,name2=value2", the data sent is: 'name1=value1&name2=value2'. * If there is a session for the slide, but no additional data, data is sent with the format 'session=value' where value is the session identifier (SESSID attribute). STG Interactive Frogans Page [69] FSDL 2.1 Frogans Slide Description Language October 2002 For example, if SESSID="abc%20ABC", the data sent is: 'session=abc%20ABC'. * If there is additional data and a session for the slide, data is sent by joining the information with an ampersand (&). The session data appears first. For example, if DATA="name1=value1,name2=value2" and SESSID="abc%20ABC", the data sent is: 'session=abc%20ABC&name1=value1&name2=value2'. Note: when the Frogans Player receives a demand from the end-user to reload a slide, it will re-send all the data for that slide. - Response Status Code: the only valid status codes recognized by the Frogans Player are 200 (OK) and 201 (Created). All other status codes, in particular 301 (Moved Permanently) and 302 (Moved Temporarily), will lead to an error message displayed in the frogans. In order to redirect to another slide with FSDL, see 16. REDIRECT element. - Response header fields: The following response header fields are not used by the Frogans Player: 'Date', 'Pragma', 'Location', 'Server', 'WWW-Authenticate', 'MIME-Version' and 'Retry-After'. No other response header field is used by the Frogans Player. The only entity-header field used by the Frogans Player is: 'Content-Length', if it is sent by the server. The following entity-header fields are not used by the Frogans Player: 'Allow', 'Content-Encoding', 'Content-Type', 'Expires', 'Last-Modified', 'Content-Language', 'Link', 'Title' and 'URI'. - Cache: not applicable Cache and time information supplied by the server in the header of the response are not used by the Frogans Player for managing the cache directory of the end-user's system. FSDL documents are never cached on the end-user's system. In order to reuse an image file in different slides of the frogans without repeated loading of the same file by the end-user's system, see 5. SETIMAGE element (CACHE attribute). STG Interactive Frogans Page [70] FSDL 2.1 Frogans Slide Description Language October 2002 - Cookies: not applicable The HTTP State Management Mechanism (RFC 2109 and 2965) is not supported by the Frogans Player. To create and maintain a session with the FSDL, see 17. SESSION element. - Access Authentication: not applicable Basic Access Authentication of HTTP/1.0 and the extension of HTTP known as Digest Access Authentication (RFC 2069 and 2617) are not supported by the Frogans Player. A basic authentication mechanism for the frogans can be created by using information supplied by the end-user during navigation on dedicated slides. To allow access to the frogans with a PID (personal identifier), see 19.1. Requesting PIDs from End-users. - Security: not applicable The network protocol HTTP/1.0 is not secure as data is transmitted in clear text across the physical network, between the Frogans Player and the server. Future releases of the FSDL specifications may contain an encryption mechanism (including certificate delivery) that would be associated with the frogans addresses. STG Interactive Frogans Page [71] FSDL 2.1 Frogans Slide Description Language October 2002 20. Creating Short-cuts and Links to a Frogans The end-user can open the frogans by entering the frogans address in the Frogans Player, by selecting the address in a menu (favorites, recently visited, family...), or by clicking on a button in another frogans. It is also possible to open the frogans by clicking on a frogans short-cut or by following a hyperlink on the World Wide Web, if the end-user has already downloaded the Frogans Player. Links to download the free Frogans Player can be placed on any Web page, newsgroup, e-mail, etc. 20.1. Making a Frogans Short-cut File A frogans short-cut is a short file with the extension '.ltf' (leap to frogans), which contains: '' or: '' where 'frogans*GateName' and 'frogans*GateName.Extension' are registered frogans addresses on frogans.com. These short-cuts can be transmitted as attachments in e-mails and saved on the end-user's system, to be reused at any time. A frogans short-cut can be hand-coded or it can be created automatically using the Frogans Player. Its encoding is UTF-8. On any WWW server, the extension '.ltf' can be associated with the MIME type 'application/leaptofrogans' to create hyperlinks on a web page leading to a frogans. 20.2. Editing a leaptofrogans.net Hyperlink A leaptofrogans.net hyperlink is a link to a script which brings the end-user to a frogans. The URL format for the hyperlink is: http://leaptofrogans.net/?address=frogans*GateName or: http://leaptofrogans.net/?address=frogans*GateName.Extension where 'frogans*GateName' and 'frogans*GateName.Extension' are registered frogans addresses on frogans.com. STG Interactive Frogans Page [72] FSDL 2.1 Frogans Slide Description Language October 2002 Example of HTML code for the hyperlink: frogans*GateName The hyperlink can also be associated with an image, a script, or used within a form (form parameter is 'address', method is GET or POST). Leaptofrogans.net is a service hosted by STG Interactive which is not meant to be used by editors with very large audiences. See conditions on frogans.com. 20.3. Hosting a Proprietary Script To create and host a proprietary script on a WWW server that lets the end-user open a frogans, the specifications are: - Request parameters: 'address' (required) - Request method: GET or POST - If 'address' parameter is empty: Response MIME type: 'text/html' Response content (example): 'Leap to frogans error: missing "address" parameter' - If 'address' parameter is not empty: Response MIME type: 'application/leaptofrogans' Response encoding: UTF-8 Response content: '' The following comment can be added: '' Editors with very high audiences must use this option to lead end-users to their frogans. STG Interactive Frogans Page [73] FSDL 2.1 Frogans Slide Description Language October 2002 21. Working with the FSDL The use of the FSDL specifications document and of the FSDL as a markup language for developing frogans is subject to the following terms and conditions. Under these terms and conditions, no user declaration is required, nor is there any fee due to STG Interactive. Any use which has not been explicitly laid out in the present document is unauthorized except by prior written agreement from STG Interactive. In particular, these terms and conditions do not allow for the development of software to consult frogans (browser), no matter what the operating system or end-user device is, nor do they allow for the partial or total use of the FSDL for anything other than the creation of FSDL documents for the publication of frogans on the Internet according to the FSDL specifications. Should any doubt arise about possible uses of the FSDL that have not been specified under the present terms and conditions, please send your question to: fsdl-use@frogans.com. Should any doubt arise about the interpretation of the FSDL specifications, please send your question to: fsdl@frogans.com. Questions and answers will be posted on the frogans.com web site in the "Developers" section to complement the FSDL specifications, or will be taken into account for future versions of the FSDL specifications. Frogans is a registered trademark of STG Interactive, in France, in the United-States and other countries. STG Interactive permits the use of the Frogans trademark as a reference relating to the FSDL and the Frogans publishing technology, only in the context limited to the uses which have been explicitly laid out in the present document. The mention "Frogans is a registered trademark of STG Interactive" must be included in the appropriate sections of any medium concerned and in their documentation. Under no conditions can the Frogans trademark be used by an individual or an organization to name a product or a service, even one relating to the FSDL and the Frogans publishing technology, except by prior written agreement from STG Interactive. The following limitation of liability applies to all of the present terms and conditions: STG INTERACTIVE PROVIDES THE FSDL SPECIFICATIONS DOCUMENT FREE OF CHARGE, "AS IS", WITH NO EXPRESS NOR IMPLIED WARRANTY OF ANY KIND, INCLUDING WARRANTY OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE DEVELOPER, EITHER AN INDIVIDUAL OR AN ORGANIZATION, ACKNOWLEDGES THAT HE IS SOLELY RESPONSIBLE FOR QUALITY AND EFFECTS RELATING TO THE USE OF THE FSDL SPECIFICATIONS DOCUMENT AND OF THE FSDL AS A MARKUP LANGUAGE FOR DEVELOPING FROGANS. STG Interactive Frogans Page [74] FSDL 2.1 Frogans Slide Description Language October 2002 EXCEPT AS OTHERWISE SPECIFIED BY LAW OR WRITTEN AGREEMENT, STG INTERACTIVE SHALL NOT BE HELD LIABLE FOR ANY DAMAGES, DIRECT OR INDIRECT, CONSEQUENTIAL OR OTHER (DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, ETC.) THAT MAY ARISE FROM THE USE OF OR INABILITY TO USE THE FSDL SPECIFICATIONS DOCUMENT OR THE FSDL AS A MARKUP LANGUAGE FOR DEVELOPING FROGANS. STG Interactive is a "Societe Anonyme" incorporated under French Law, whose headquarters are located at 29 avenue Mozart, 75016 Paris, France. Any difficulties arising from the interpretation or conformance to the present terms and conditions of use and all disputes relating to the use of the FSDL specifications document and the FSDL as a markup language for developing frogans shall be governed by French Law and the Paris courts shall have sole jurisdiction. 21.1. Full Copyright Statement of the FSDL Specifications Copyright (C) STG Interactive (2000-2002). All Rights Reserved. Document URL: http://www.frogans.com/en/doc/FSDL21.txt The FSDL specifications document can be freely reproduced, translated into any language, in whole or in part, distributed to third parties, by any means, in exchange for a fee paid by third parties or not, in any country, provided that the copyright mention, the FSDL specifications document's URL as it is written above and this paragraph are included in all copies. The contents of the FSDL specifications document cannot be modified in any manner, except for the purpose of translation to a language other than English. If the document has been translated, all copies shall bear the notice "free translation" next to the title of the document. In all circumstances, the original document published by STG Interactive, in its original English version, prevails over any copy or translation that may exist. STG Interactive disclaims all responsibility for reproductions and translations, as well as their use by third parties. The FSDL specifications document can be freely used to create and distribute to third parties any derivative works aimed at informing about or teaching how to publish frogans on the Internet with the FSDL, in any medium, in exchange for a fee paid by third parties or not, in any language, in any country, provided that they respect all the FSDL specifications specified in the present document and that the copyright mention, the FSDL specifications document's URL as it is written above and this paragraph are included in all derivative works and their copies. STG Interactive disclaims all responsibility for derivative works and their use by third parties. STG Interactive Frogans Page [75] FSDL 2.1 Frogans Slide Description Language October 2002 21.2. Use of the FSDL by Developers of Frogans All developers, both individuals and organizations, can freely use the FSDL to create FSDL documents for the publication of frogans on the Internet, for themselves or for third parties, in exchange for a fee paid by third parties or not, in any country, provided that they respect in all circumstances, including when using an authoring tool to help create FSDL documents, all the FSDL specifications specified in the present document. STG Interactive disclaims all responsibility for all FSDL documents created by developers and their use by third parties. 21.3. Use of the FSDL by Publishers of Authoring Tools All software publishers, both individuals and organizations, can freely use the FSDL to create and distribute to third parties any authoring tools to help create FSDL documents for the publication of frogans on the Internet, for themselves or for third parties, in exchange for a fee paid by third parties or not, in any country, provided that they respect all the FSDL specifications specified in the present document and that the copyright mention, the FSDL specifications document's URL as it is written above and this paragraph are included in all software license agreements. STG Interactive disclaims all responsibility for any authoring tools created by software publishers, and their use by third parties. 21.4. Use of the FSDL by Publishers of Server Applications All software publishers, both individuals and organizations, can freely use the FSDL to create and distribute to third parties, any server applications which permit FSDL documents to be delivered dynamically for the publication of frogans on the Internet, for themselves or for third parties, in exchange for a fee paid by third parties or not, in any country, provided that they respect all the FSDL specifications specified in the present document and that the copyright mention, the FSDL specifications document's URL as it is written above and this paragraph are included in all software license agreements. STG Interactive disclaims all responsibility for any server applications created by software publishers, and their use by third parties. STG Interactive Frogans Page [76]